AMIGOS

Hacemos toda clase de trabajos con microcontroladores PIC, comunicarse a proyectoselectronicos_@hotmail.com.

Vendemos motores paso a paso unipolares y bipolares para proyectos desde 0,5 amperios hasta 1.5 amperios envio a todo el Peru previo deposito a mi cuenta.

viernes, 14 de octubre de 2011

TEMPERATURA con PIC16F876A y LM35

Esta vez mediremos la temperatura con el sensor LM35 y usando el pic16f876 y para visualizar la PC, con lo cual nos ahorraremos el uso de un LCD que  a veces es muy costoso. Aprovecharemos el programa de microcode studio en la PC via comunicacion serial usando un MAX232.
;EL PROGRAMA
INCLUDE "modedefs.bas"            ;incluyen los modos de comunicación
@ device XT_OSC                       ;cambia a oscilador XT 
;Definimos parametros del conversor A/D
Define ADC_BITS 10                   ;Numero bits del resultado=10
Define ADC_CLOCK 3               ;fuente del Reloj 3 (3=rc)
Define ADC_SAMPLEUS 50       ;tiempo de muestreo del ADC en useg
Resultado var word                     ;Historia de la conversion
TRISA = %11111111                  ;PORTA configurado como entradas
ADCON1 = %10000010             ;PORTA analog y justificacion del resultado

;Programa Principal
inicio:
ADCIN 0, Resultado                          ;lee Ra0 y guarda en resultado
SEROUT portc.6,T2400,[#Resultado,"-"] ; envia el contenido en decimal de resultado
PAUSE 1000
GOTO inicio                                    
END

COMUNICACION SERIAL PIC16F877A con MAX232 y PC

El CI. MAX232 es la solución para transmitir a mayor distancia, ya que incrementa los niveles de voltaje de 5 V. a +10V. gracias a un juego de capacitores que le ayuda a doblar los voltajes, por lo que para su alimentación sólo requiere una fuente de 5V. que puede ser la misma que utiliza el PIC. El MAX232 dispone de 2 juegos de transmisores y receptores, de los cuales sólo ocuparemos un par de ellos, el MAX232 enviará el dato invertido, por lo tanto debemos invertir el dato de la salida del PIC y esto lo conseguimos utilizando T2400 de la siguiente forma:

SEROUT portc.6,T2400,[“hola”]   ;enviar dato serial "hola" por pin Rc6 a 2400bits/s en dato verdadero.
;EL PROGRAMA

INCLUDE “modedefs.bas”                       ;incluyen los modos de comunicación
@ device XT_OSC                                  ;cambia a oscilador XT
Inicio:
SEROUT portc.6, T2400, [“HOLA ”]        ;enviar serialmente caracteres “HOLA”
HIGH portc.4                                           ; led indica que ya envio "HOLA "
PAUSE 500                                             ;retardo de 0.5 seg
LOW portc.4                                           ;apagado led
PAUSE 500                                             ;retardo de 0.5 seg
GOTO inicio                                            ;volver a repetir el proceso
END


Para visualizar el mensaje enviado por el pic emplearemos el programa microcode studio como en el caso anterior , aunque si no lo tuvieran pueden emplear el HYPERTERMINAL de windowsy por ultimo emplear cualquier programa, recomiendo el labview que tienen uno listo para emplear.



miércoles, 12 de octubre de 2011

COMUNICACION RS232 PIC-PC

Hola amigos, despues de tiempo vuelvo a publicar, la comunicacion serial de un  PIC a  la PC para distancias menores a 2 metros lo cual se puede hacer  sin usar  el MAX232. En la PC usaremos el mismo programa de microcode studio.

LA DECLARACIÓN SEROUT.  Esta declaración sirve para enviar datos seriales en un formato standar asincrónico usando 8 bits de dato, sin paridad y 1 stop bit, (8N1). Un ejemplo de como se usa:

SEROUT  portC.6, N2400,[“HOLA”]     ;enviar el caracteres ASCII “HOLA”por el puerto C6 a 2400 bits por seg. 8 bits de dato, sin paridad y 1 stop bit, (8N1), en dato invertido.
PortC.6 es el bit TX (transmisor en rs232) del pic16f876a cuyo pin es el 17.

;EL PROGRAMA

INCLUDE “modedefs.bas”                      ;incluyen los modos de comunicación
@ device XT_OSC                                 ;cambia a oscilador XT
Inicio:
SEROUT portc.6, N2400, [“HOLA ”]     ;enviar serialmente caracteres “HOLA”
HIGH  portc.4                                        ; led indica que ya envio "HOLA "
PAUSE 500                                          ;retardo de 0.5 seg
LOW  portc.4                                        ;apagado led
PAUSE 500                                           ;retardo de 0.5 seg                         
GOTO inicio                                         ;volver a repetir el proceso
END


Si se fijaron el programa es simple, ahora para visualizar el mensaje enviado por el PIC emplearemos el microcode  studio, lo abrimos y en VIEW escoger SERIAL COMUNICATOR  y ahi configuramos los parametros:
port number(com1), baudrate(2400),parity(No paryti), Byte size(8),Stop bits(1). Luego presionamos F9 y listo ya estamos recibiendo  datos del pic por  el puerto serie RS232

Si quisieramos enviar a mayor distancia  que es 15 metros maximo para comunicacion serial tendriamos que emplear el conocido MAX232. Y como siempre aqui les dejo el link para descargar el archivo HEX.