I removed the midi connections and just connected the TX of the transmitting PIC to the RC of the receiving PIC. Here is the code I'm using for each:
transmitting:
receiving:Code:define OSC 20 define HSER_RCSTA 90h define HSER_TXSTA 20h define HSER_BAUD 31250 DEFINE HSER_SPBRG 39 ' 31250 Baud @ SPBRGH = 0 ANSEL = %00000000 ANSELH = %00000000 TRISD = %00000000 TRISE = %00000000 TRISA = %00000000 TRISB = %00000000 TRISC = %10000000 main: hserout [dec 1] PORTA.0 = 1 pause 300 hserout [dec 0] PORTA.0 = 0 pause 300 goto main
So now it's sorta working. The LCD does display something. It displays "216" when it should be displaying "0" and it displays "217" when it should be displaying 1.Code:CLEAR define LOADER_USED 1 define OSC 20 define HSER_RCSTA 90h define HSER_TXSTA 20h define HSER_BAUD 31250 define HSER_CLROERR 1 DEFINE HSER_SPBRG 39 ' 31250 Baud @ SPBRGH = 0 define LCD_DREG PORTD define LCD_DBIT 0 define LCD_RSREG PORTE define LCD_RSBIT 0 define LCD_EREG PORTE define LCD_EBIT 1 define LCD_RWREG PORTE define LCD_RWBIT 2 define LCD_BITS 4 define LCD_LINES 4 define LCD_COMMANDUS 2000 define LCD_DATAUS 50 ANSEL = %00000000 ANSELH = %00000000 TRISD = %00000000 TRISE = %00000000 TRISA = %00000000 TRISB = %00000000 TRISC = %10000000 character var byte pause 250 lcdout $FE, 1 lcdout $fe, $d4, "ready to receive" pause 500 lcdout $fe, 1 pause 250 main: hserin [character] lcdout $fe, 1 lcdout $fe, $94, dec character goto main




Bookmarks