TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: juanaca en 22 de Febrero de 2007, 13:51:23
-
Hola a todos
tengo problemas al compilar un programa que envia datos por usb desde el pc a pic 18F2550.
El pic realiza la suma y envía el resultado al pc.
El código es el siguiente y seguramente lo conocen (BIDIRECCIONAL)
DEFINE OSC 48
USBBufferSizeMax con 8 ' maximum buffer size
USBBufferSizeTX con 8 ' input
USBBufferSizeRX con 8 ' output
' the USB buffer...
USBBuffer Var Byte[USBBufferSizeMax]
USBBufferCount Var Byte
a var byte
b var byte
c var byte
' ************************************************************
' * main program loop - remember, you must keep the USB *
' * connection alive with a call to USBService every couple *
' * of milliseconds or so... *
' ************************************************************
usbinit ' initialise USB...
ProgramStart:
gosub DoUSBIn
if usbbuffer[4]=5 then
gosub DoUSBIn
a=usbbuffer[6]
b=usbbuffer[7]
c=a+b
USBService
usbbuffer[5]=c
gosub DoUSBOut
endif
goto ProgramStart
' ************************************************************
' * receive data from the USB bus *
' ************************************************************
DoUSBIn:
USBBufferCount = USBBufferSizeRX ' RX buffer size
USBService ' keep connection alive
USBIn 1, USBBuffer, USBBufferCount, DoUSBIn ' read data, if available
return
' ************************************************************
' * wait for USB interface to attach *
' ************************************************************
DoUSBOut:
USBBufferCount = USBBufferSizeTX ' TX buffer size
USBService ' keep connection alive
USBOut 1, USBBuffer, USBBufferCount, DoUSBOut ' if bus available, transmit data
return
Al compilar con MCSP enlazado con MPASM me arroja los errores:
ERROR: Macro USBINIT? not found in macro file.
ERROR: Macro USBSERVICE? not found in macro file.
ERROR: Macro USBIN?CBBL not found in macro file.
ERROR: Macro USBOUT?CBBL not found in macro file.
Ocurre lo mismo al compilar directamente con PBP 2.47 en DOS
Al compilar un programa simple (como parpadear un led) con el mismo PIc funciona o.k.
Si alguien puede ayudarme le agradezco desde ya.
Saludos :(
-
Hola:
Ese programa es de mi autoría, y ahora mismo no recuerdo como es que corregí esos errores de macros :?.
Asegurate que el PBP este dentro de C, asi el directorio: C:\PBP.
Me parece que sólo debe ser eso, si lo descargaste de mi web, asegurate que los archivos esten dentro de un directorio no muy largo.
-
Hola Lord
He intentado varias cosas pero el problema persiste.
Lo que me sugieres con respecto a :Pl tamaño del directorio no lo he probado.
Lo hago y te comento
Gracias
-
Eso es cierto, de preferencia que el PBP esté desde la raíz (C: por ejemplo).
Si tienes el 2.47 (lo más seguro) es que tengas la licencia y si eso es cierto, debes tener el 2.46. Si por alguna razón no te llegara a funcionar con el 2.47, re-instala el 2.46, ese junto con el parche que provee Microengineering labs no debería provocarte problemas.
-
Lord
Probé lo que me indicaste pero los errores persisten.Gracias de todas formas.
Si tienes otra sugerencia te la agradeceré.
Saludos :)
-
Mario
Voy a probar tus sugerencias y ver que pasa.
Luego te comento
Muchas gracias
juanaca :)
-
Se acuerdan de un hilo que puso WASTY a mi me salian esos errores y a wasty tambien, pues en ese hilo esta como lo resolvimos. Echate un clavado en el buscador
-
Gracias Navaismo voy a intentar lo que me indicas.
Saludos :)
-
Hola a todos
he probado con lo que ustedes amablemente me indicaron pero los errores no desaparecen.
He pensado que puede ser la version del MCSP (V2.2.1.1) que utilizo la causa del problema.
Si alguien de ustedes me puede confirmar esto le agradezco desde ya.
Saludos :)