Originally posted HERE
Here's another example of 2 LCD's on 1 PIC (See schematics)
Gif format http://www.pbpgroup.com/files/2_LCDs.gif
PDF format http://www.picbasic.co.uk/forum/atta...ttachmentid=91
With this method, you can send to either LCD independantly, or to both LCD's at the same time. The only additional parts required are 2 resistors.
By taking the LCD?_Disable pins LOW, it prevents the Enable signal from getting to that particular display. So, just disable the one you don't want to send to, and it sends the data to the one you want.
This method can have more than 2 displays attached to the same pic. The only limitation is the number of pins that are available.
DO NOT attempt to use the R/W pin on the LCD's! The displays will be damaged when more than 1 display is enabled at the same time.
Here's a simple program:Best regards,Code:DEFINE LCD_DREG PORTB ' LCD Data port DEFINE LCD_DBIT 0 ' starting Data bit (0 or 4) if 4-bit bus DEFINE LCD_RSREG PORTB ' LCD Register Select port DEFINE LCD_RSBIT 4 ' LCD Register Select bit DEFINE LCD_EREG PORTB ' LCD Enable port DEFINE LCD_EBIT 7 ' LCD Enable bit DEFINE LCD_BITS 4 ' LCD bus size (4 or 8 bits) DEFINE LCD_LINES 4 ' Number of lines on LCD LCD1_Disable VAR PORTB.5 LCD2_Disable VAR PORTB.6 LCDOUT $FE,1 ' Initialize both LCD's PAUSE 200 GOSUB USE_LCD1 LCDOUT "This is LCD 1" GOSUB USE_LCD2 LCDOUT "This is LCD 2" GOSUB USE_BothLCD LCDOUT $FE,$C0,"Both LCD's" END USE_LCD1: INPUT LCD1_Disable LOW LCD2_Disable RETURN USE_LCD2: LOW LCD1_Disable INPUT LCD2_Disable RETURN USE_BothLCD: INPUT LCD1_Disable INPUT LCD2_Disable RETURN
Darrel
Bookmarks