Hi everyone, I've worked with the HD44780 parallel LCD's a few years back and had good results in 4 bit mode using a shift register. I am now revisiting the topic (and trying to re-learn everything I forgot) and am building a circuit with an HD44780 compatable display and Picaxe 20M2 with idrect connection using 8 bit mode, however, I cannot seem to get anything to display at all. I don't know if it is my initialization routine, code, or both. Can anyone point me in the right direction? I've included the schematic (DS1307 is currently not connected). I've always found this forum extremely helpful. Thanks!
Code:
pause 100
'low c.4
i2cslave %11010000, i2cslow, i2cbyte 'Set slave address for DS3231 module
let dirsB = %11111111
'###################Define Sysmbols for 74HC595 and HD44780 pins
symbol LCD_ENABLE=c.4 'Enable pin on HD44780 LCD module
symbol LCD_RS=c.3 'Register Select pin on HD77480, HIGH=Data, LOW=Command
symbol outbyte =b0
symbol counter = b1
'############Initialization sequence for HD44780 Module#############
for counter = 0 to 7
lookup counter ,($30, $30, $30, $38, $10, $01, $06, $0C), outbyte
gosub lcd_cmd
pause 5
next counter
'#####################################################################
'readi2c 0, (seconds, mins, hour, day, date, month, year)
'writei2c 0, (seconds, mins, hour, day, date, month, year) 'Write Time to RTC
TABLE 0,("Time: ")
TABLE 6, ("Date: ")
MAIN:
outbyte=$80: gosub lcd_cmd
for counter = 0 to 5
readtable counter, outbyte: gosub lcd_data
next counter
goto main
lcd_cmd: 'Write Commands to LCD
low LCD_RS
let pinsB=outbyte
pulsout LCD_ENABLE, 1
return
lcd_data: 'Write Data to LCD
high LCD_RS
outpinsB=outbyte
pulsout LCD_ENABLE, 1
return
[ATTACH=CONFIG]20522.vB[/ATTACH]