If you do not want to setup all of the defines and want to change things around on the fly here is an example that I use for testing on a particular chip. Displays the serial input on an LCD. The RCSTA.4 part clears any overruns.
Did you have a MAX232 or equivalent when you tried the hardware serial?
Code:'****************************************** '18F6680 02/14/09 INFEED PARSE TEST BAUD 9600 DEFINE OSC 20 @ __CONFIG _CONFIG1H, _OSC_HS_1H @ __CONFIG _CONFIG2H, _WDT_ON_2H & _WDTPS_128_2H @ __CONFIG _CONFIG4L, _LVP_OFF_4L DEFINE LCD_DREG PORTG define LCD_DBIT 0 DEFINE LCD_RSREG PORTE DEFINE LCD_RSBIT 0 DEFINE LCD_EREG PORTE DEFINE LCD_EBIT 1 DEFINE LCD_BITS 4 DEFINE LCD_LINES 4 DEFINE LCD_COMMANDUS 3000 DEFINE LCD_DATAUS 150 '############################################### PAUSE 100 : LCDOUT $FE,1,"TEST" N1 VAR LONG:N2 VAR LONG START: N1 = 0 : N2 = 0 HIGH PORTG.4 :PAUSE 250:LOW PORTG.4 RCSTA.4 = 0 : RCSTA.4 = 1 'CHANGE LINE FEED AND CARRIAGE RETURN AS REQUIRED RCSTA=$90:TXSTA=$24:SPBRG=129:HSERIN[WAIT($a),WAIT($d),DEC N1,WAIT(","),DEC N2] LCDOUT $FE,1,DEC N1 : lcdout $FE,$C0,DEC N2 : GOTO START





Bookmarks