Pana LordLafebre,
Aqui hay un ejemplo para proton+ sacado del manual:
"Programa que dibuja un triangulo con el cursor del mouse
DEVICE = 16C765
XTAL = 24
USB_DESCRIPTOR = "MOUSDESC.ASM" " descriptor
USB_CLASS_FILE = "HIDCLASS.ASM" " CLASS
USB_COUNT_ERRORS = False "chekeo de errores
USB_SHOW_ENUM = False " chekeo de portb
DIM BUFFER[8] AS Byte
DIM LOOPCNT AS Byte
DIM DIRECTION AS Byte
SYMBOL LED = PORTA.5 " LEd en portb.5
ON_INTERRUPT GOTO USBINT
GOTO START
---------------------------------------------------------------------------------------------------------
USBINT:
MOVLW (Service@USBInt >>
MOVWF PCLATH
BTFSC PIR1, USBIF " Es una interrupcion del USB????
CALL (Service@USBInt) " USB rutina
CONTEXT RESTORE " restaura registros
------------------------------------------------------------------------------------------------------
START:
ALL_DIGITAL = True
LOW LED
USBINIT " inicialisamos USB
HIGH LED " encendemos LEd
STR BUFFER = 0,0,0,0,0,0,0,0 " limpiamos el array del buffer
--------------------------------------------------------------------------------------------------------
MOVECURSOR:
DIRECTION = 0
REPEAT
LOOPCNT = 0
REPEAT
IF DIRECTION = 0 THEN BUFFER#1 = 0 : BUFFER#2 = -2 : GOTO SENDIT
IF DIRECTION = 1 THEN BUFFER#1 = -2 : BUFFER#2 = 0 : GOTO SENDIT
IF DIRECTION = 2 THEN BUFFER#1 = 0 : BUFFER#2 = 2 : GOTO SENDIT
IF DIRECTION = 3 THEN BUFFER#1 = 2 : BUFFER#2 = 0
SENDIT: USBOUT 1, BUFFER, 4, SENDIT " envia BUffer a ENDPOINT1
INC LOOPCNT
UNTIL LOOPCNT = 16 " 16 pasos
INC DIRECTION
UNTIL DIRECTION = 4
GOTO MOVECURSOR "Regresamos al trazar de nuevo
Como ves depende de estos dos archivos, CLASS y DESC
Hay un libro interesante que podria serte aun de mas ayuda(claro suponiendo que no lo hayas leido ya) se llama USB complete, por ahora te recomiendos eguir estudiando, para la proxima salida del !8F4455 que tiene USB , es Flash y es USB 2.0. ademas de modificaciones en comandos y rutinas mas avanzadas dependiendo del compilador que uses.
Espero y te sriva de algo.
Un abrazo pana