Comunicación Virtual COM

7
Instituto Tecnológico de Lerma Ing. Mecatrónica Balzarc Comunicación virtual COM Cuando tenemos la necesidad de realizar un proyecto entre dos aplicaciones hardware - software y no tenemos medio de comunicación serial COM. Para les presento una solución: Presento la herramienta COMPIN de proteus isi s una potente herramienta de simulación virtual para comunicación serial rs232. y hypertemina , como medio de comunicación serial (puede ser cualquier programa que tenga este tipo de comunicación). Más información visita: http://perso.wanadoo.es/pictob/rs232virtual.htm Aquí un pequeño ejemplo: Prueba 1 Realizaremos un circuito donde el microcontrolador en esta ocasión es 18f 4550 leerá y enviará la información del ADC0 que se encuentra en el Pin_A0, primera modalidad con un botón de usuario Pin_b0 como se aprecia en la imagen siguiente. Programa con desarrollado en CCS compiler v6.65 prueba 1 ///////////////////////////////////////////////////////// /// Balzarc //// /// publicacion forma general //// /// ing. BALTAZAR DE JESUS ZAPATA ARCEO //// /// envía por botón #include <18F4550.h> #DEVICE ADC=10 /// RESOLUCION DEL ADC 1024 #fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN,MCLR #use delay(clock=48000000) ////////serial//////////// #use rs232(baud=9600, xmit=PIN_C6,rcv=PIN_C7,PARITY=N) ///si se quiere utilizar comunicacion serial habilitar

description

comunicasion com

Transcript of Comunicación Virtual COM

  • Instituto Tecnolgico de Lerma

    Ing. Mecatrnica

    Balzarc

    Comunicacin virtual COM

    Cuando tenemos la necesidad de realizar un proyecto entre dos aplicaciones hardware - software

    y no tenemos medio de comunicacin serial COM. Para les presento una solucin:

    Presento la herramienta COMPIN de proteus isis una potente herramienta de simulacin virtual

    para comunicacin serial rs232.

    y hypertemina , como medio de comunicacin serial (puede ser cualquier programa que tenga

    este tipo de comunicacin).

    Ms informacin visita: http://perso.wanadoo.es/pictob/rs232virtual.htm

    Aqu un pequeo ejemplo: Prueba 1

    Realizaremos un circuito donde el microcontrolador en esta ocasin es 18f 4550 leer y enviar la

    informacin del ADC0 que se encuentra en el Pin_A0, primera modalidad con un botn de usuario

    Pin_b0 como se aprecia en la imagen siguiente.

    Programa con desarrollado en CCS compiler v6.65 prueba 1

    ///////////////////////////////////////////////////////// /// Balzarc //// /// publicacion forma general //// /// ing. BALTAZAR DE JESUS ZAPATA ARCEO //// /// enva por botn #include #DEVICE ADC=10 /// RESOLUCION DEL ADC 1024 #fuses HSPLL,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN,MCLR #use delay(clock=48000000) ////////serial//////////// #use rs232(baud=9600, xmit=PIN_C6,rcv=PIN_C7,PARITY=N) ///si se quiere utilizar comunicacion serial habilitar

  • Instituto Tecnolgico de Lerma

    Ing. Mecatrnica

    Balzarc

    int16 sen1; // funciones //// void lee_adc(){// funcion de lectura para el adc set_adc_channel(0);// canal de lectura adc0 (pin an0) delay_us(10); sen1 = read_adc(); } void main() { /// Configuracion Embebida //// setup_adc_ports(AN0); ///ACTIVA ADC setup_adc(ADC_CLOCK_DIV_64); setup_wdt(WDT_OFF); setup_timer_0(RTCC_8_BIT|RTCC_DIV_128); setup_timer_1(T1_DISABLED); setup_timer_2(T2_DISABLED,0,1); setup_timer_3(T3_DISABLED|T3_DIV_BY_1); setup_comparator(NC_NC_NC_NC); setup_vref(FALSE); for(;;){ ///////////poner programa desde aqui//////////// if(input(pin_b0)){/// si el usuario quiere mandar la informacion por serial(manualmente) lee_adc(); printf("\f"); // limpia printf("F%Lu",sen1);// envia la variable del sen1 valor del adc y F de inicializacion delay_ms(200); //////////fin de programa/////// } } }

  • Instituto Tecnolgico de Lerma

    Ing. Mecatrnica

    Balzarc

    Circuito propuesto cargamos el programa a nuestro pic con la directiva COF.

    La informacin del ADC0 se mostrar en la pantalla de hyperterminal.

    Instalamos virtual serial port Driver 7.1 y ejecutamos el software, damos clic en add pair. Aqu se

    genera la terminales virtuales de comunicacin bidireccional (en mi caso COM2 y COM4)

  • Instituto Tecnolgico de Lerma

    Ing. Mecatrnica

    Balzarc

    Podemos colaborar esto abriendo administrador de dispositivo, observamos el trabajo de virtual

    serial port genera la comunicacin bidireccional entre COM2 y COM4.

    Iniciamos con la configuracin hyperteminal (previamente instalado)

    Colocamos nombre y damos click en OK

  • Instituto Tecnolgico de Lerma

    Ing. Mecatrnica

    Balzarc

    Este momento es importante ya que aqu seleccionamos el primer puerto de comunicacin virtual

    puede ser cualquiera de los dos que gener el programa virtual serial port.

    Seleccionamos los bits por segundos: 9600, seguidamente clic en aceptar

  • Instituto Tecnolgico de Lerma

    Ing. Mecatrnica

    Balzarc

    Ahora pasaremos a configurar cada una de las terminales que usaremos, primero el COMPIM de

    proteus isis. Daremos doble click sobre el elemento COMPIM de nuestro circuito en proteus.

    Configuracin de COMPIM. Colocamos el COM2 y los baud 9600 physical y virtual.

    Realizado esto podemos comenzar con la primera prueba, hyperterminal est a la espera de la

    llegada de cualquier carcter (importante si no se visualiza las letras tendrn que activar el echo

    del mismo).

    Iniciamos la simulacin en proteus y cmo podemos ver tiene una terminal virtual que tambin

    rastrea lo que estamos enviando por el puerto serial, esto se ve en la siguiente imagen.

  • Instituto Tecnolgico de Lerma

    Ing. Mecatrnica

    Balzarc

    Notamos que los valores estn en la comunicacin.