elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Proyecto Dev C
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Proyecto Dev C  (Leído 293 veces)
elcheco

Desconectado Desconectado

Mensajes: 1


Ver Perfil
Proyecto Dev C
« en: 9 Diciembre 2018, 19:46 pm »

Código
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. #include <Windows.h>
  4. #include <unistd.h>
  5.  
  6. #include "rs232.h"
  7. #include "rs232.c"
  8.  
  9. //CONFIGURACION DEL PUERTO DE COMUNICACION CON LA ARDUINO UNO.
  10. int cport_nr=4;              //dev/ttyS4, COM2 EN WINDOWS, VER INFORMACION EN LINK
  11. int bdrate=9600;             //VELOCIDAD DE PUERTO
  12. char mode[]={'8','N','1',0}; //CONFIGURACION DE PUERTO SERIAL
  13. void DATA_IN();              //FUNCION DE DATA_IN DE DATOS PUERTO SERIAL
  14. char cadena[37];             //INFORMACION DE LOS SENSORES DEL LA TARJETA DE PERIFERICOS
  15.                             // POT1 POT2 A-EXT LDR SW1 SW2 TEMP
  16.  
  17. int main()
  18. {
  19.  if(RS232_OpenComport(cport_nr, bdrate, mode)) //VERIFICACION DE PUERTO SERIAL
  20.    {
  21.     printf("Can not open comport\n");
  22.     return(0);
  23.    }
  24.  
  25.  
  26.   while(1)
  27.       {
  28.        DATA_IN();
  29.        printf("%s\n",cadena);
  30.        Sleep(500);
  31.       }
  32.  
  33.  
  34. }
  35.  
  36. void DATA_IN()
  37. {
  38. int i=0;
  39. char datos[37];              
  40. unsigned char buf[2];        
  41. memset(cadena,0,strlen(cadena));
  42. while(1)
  43.      {
  44.       RS232_PollComport(cport_nr, buf, 1);
  45.       datos[i]=buf[0];
  46.       if(i==0)
  47.         while(datos[i] != '$')
  48.              {
  49.               RS232_PollComport(cport_nr, buf, 1);
  50.               datos[i]=buf[0];
  51.              }
  52.       i++;
  53.       if(datos[i-1]=='*')
  54.         {
  55.  
  56.          datos[i]=0;          
  57.          //printf("%s\n",datos);
  58.          strcpy(cadena,datos);
  59.          memset(datos,0,strlen(datos));
  60.          buf[0]=0;
  61.          i=0;
  62.          break;
  63.         }
  64.       Sleep(5);
  65.      }  
  66. }
Citar
Buenas estamos comenzando a usar los puertos serie de entrada y salida de datos con Dev C y Arduino UNO.
Tenemos el problema hacer encender 2 lamparas virtuales en Dev C por medio de 1 switch conectado al arduino pero no sabemos como recibir los datos para poder encender y apagar una de las dos lamparas


En línea

MAFUS


Desconectado Desconectado

Mensajes: 1.479



Ver Perfil
Re: Proyecto Dev C
« Respuesta #1 en: 9 Diciembre 2018, 20:58 pm »

Código:
while(datos[i] != '$')
{
    RS232_PollComport(cport_nr, buf, 1);
    datos[i]=buf[0];
}
i++;
Tienes un problema con la adquisición de datos, aquí un ejemplo:
Vas adquiriendo datos pero terminan siempre en el mismo sitio así que realmente es cómo si no recibieras nada.


En línea

while(is_alive(yourself)) {
    make_true(yourself, yourdreams);
}
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
PROYECTO
Diseño Gráfico
kåhjî£ 1 1,428 Último mensaje 30 Julio 2004, 08:00 am
por Morris
Proyecto php « 1 2 ... 11 12 »
Sugerencias y dudas sobre el Foro
programatrix 111 14,203 Último mensaje 18 Septiembre 2005, 12:27 pm
por programatrix
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines