Hi, here is the code...
regards,Code:' Name : Coin_Internet_CDC.pbp ' Compiler : PICBASIC PRO Compiler 2.6 ' Assembler : PM or MPASM ' Target PIC : PIC18F4550 ' Hardware : Easypic6 Experimenter Board ' Oscillator : 4MHz external crystal (only???) ' Thanks : To Henrik, and other PBP experts ' Description : PICBASIC PRO program to show virtual serial comm. Working asm __CONFIG _CONFIG1L, _PLLDIV_1_1L & _CPUDIV_OSC1_PLL2_1L & _USBDIV_2_1L __CONFIG _CONFIG1H, _FOSC_HSPLL_HS_1H & _FCMEN_OFF_1H & _IESO_OFF_1H __CONFIG _CONFIG2L, _PWRT_ON_2L & _BOR_ON_2L & _BORV_2_2L & _VREGEN_ON_2L __CONFIG _CONFIG2H, _WDT_OFF_2H __CONFIG _CONFIG3H, _MCLRE_ON_3H & _LPT1OSC_OFF_3H & _PBADEN_OFF_3H & _CCP2MX_ON_3H __CONFIG _CONFIG4L, _STVREN_ON_4L & _LVP_OFF_4L & _ICPRT_OFF_4L & _XINST_OFF_4L & _DEBUG_OFF_4L endasm DEFINE OSC 48 DEFINE LCD_DREG PORTB DEFINE LCD_DBIT 0 DEFINE LCD_EREG PORTB DEFINE LCD_EBIT 5 DEFINE LCD_RSREG PORTB DEFINE LCD_RSBIT 4 DEFINE LCD_BITS 4 DEFINE LCD_LINES 2 DEFINE LCD_COMMANDUS 2000 DEFINE LCD_DATAUS 50 PAUSE 100 Include "cdc_desc.bas" ' Include the HID descriptors Buffer VAR BYTE[10] Buffer2 VAR BYTE[10] Cnt VAR BYTE i var byte INTCON2.7 = 0 ' Enable PORTB pull-ups TRISB = 110000 ' Enable all buttons ADCON1 = 15 ' Set all I/Os to Digital CMCON = 7 ' Disable Comparators Cnt = 3 '**************************************************** TRISA.4 = 1 ' RA4/T0CKI = input to TMR0 counter TRISA.0 = 0 ' RA0 = output for LED CMCON = 7 ' All digital ADCON1 = 001111 ' A/D converter off 'If you prefer, then increment on low-to-high transitions T0CON = 111000 '***************************************************** USBInit ' Initialize USART ' Main Program Loop Loop1: Lcdout $fe, 128, "Counter: ", #i USBService ' Must service USB regularly '**************ADDED COde Buffer2[0] = 99 Buffer2[1] =13 USBOut 3, Buffer2, cnt,Loop1 'goto Loop1 '**************************** TMR0L = 0 ' Clear TMR0 count before start Loop2: USBService WHILE TMR0L = 0 ' Wait for high-to-low transition USBService WEND ' on RA4/T0CKI pause 5 PORTB.0 = 1 ' LED on to indicate transition seen i=i+1 ' Clear screen USBService buffer[0] = 49 Buffer[1] = 13 USBOut 3, Buffer, cnt,Loop2 Lcdout $fe, 128, "Counter: ", #i 'PAUSE 30 PORTB.0 = 0 ' LED off goto Loop1
tacbanon




Bookmarks