TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: E_Castillo en 07 de Abril de 2012, 11:59:16
-
buenos dias... tengo un enorme dolos de cabeza con este simple programita en PicBasic
como el titulo lo dice estoy usando el pic16f877 y quiero recivir un dato a travez del puerto serie y mostrarlo en el puerto D, pero no me sale :(
el codigo que tengo es:
define osc 20
include "MODEDEFS.bas"
Entrada var byte
TrisC = %10000000 'C7 como entrada, las demás salidas
TrisD = %00000000 'puerto D como salida
Loop1:
serin portc.7,T9600,entrada
portD=entrada
goto Loop1
P.D. el transmisor lo he echo con VB6.0 y en proteus se mira que efectivamente manda los datos, pero no se porque el pic no los recive o reconoce ni los muestra en el puertoD.
P.D2. agrego un zip con el programa en VB6.0, el programa del pic en PicBasic Pro y el archivo de proteus.
-
Este sencillo programa lo he probado sobre un hard con Pic16F88 y funciona correctamente, me devuelve la tecla pulsada en el hyperterminal.
Puedes hacer pruebas a partir de aquí.
'PIC16F88, Basic PSI
Define CLOCK_FREQUENCY = 8
Const hser_rcsta = 0x90
Const hser_tsta = 0x20
Const hser_baud = 9600
AllDigital
OSCCON = 0x7e 'Reloj interno a 8Mhz
TRISA = 0xff 'Puerto A como Entradas
TRISB = 0x00 'Puerto B como Salidas
PORTB = 0
Hseropen 9600
Dim i As Byte
WaitMs 100
loop:
Hserin i
Hserout i
Goto loop
End
PD: Te dejo el archivo .Hex probado en la realidad.