Вот кусок кода, используемый для чтения
в DB7_PIN адрес DB7 пина дисплея (соответственно в DB6_PIN - 6го и т.д.)
в DB7_BN номер бита куда подключен дисплей, так же и для остальных DB
(в Delay4us используется другой регистр temp1)
CODE
ReadC:
sbi E_PORT,E_BN
rcall Delay4us
clr temp
sbic DB7_PIN,DB7_BN
sbr temp,7
sbic DB6_PIN,DB6_BN
sbr temp,6
sbic DB5_PIN,DB5_BN
sbr temp,5
sbic DB4_PIN,DB4_BN
sbr temp,4
cbi E_PORT,E_BN
nop
sbi E_PORT,E_BN
rcall Delay4us
sbic DB7_PIN,DB7_BN
sbr temp,3
sbic DB6_PIN,DB6_BN
sbr temp,2
sbic DB5_PIN,DB5_BN
sbr temp,1
sbic DB4_PIN,DB4_BN
sbr temp,0
cbi E_PORT,E_BN
ret
;Чтение данных из активной области
Read:
;Пины дисплея - входы Z-состояние
cbi DB4_DDR,DB4_BN
cbi DB5_DDR,DB5_BN
cbi DB6_DDR,DB6_BN
cbi DB7_DDR,DB7_BN
cbi DB4_PORT,DB4_BN
cbi DB5_PORT,DB5_BN
cbi DB6_PORT,DB6_BN
cbi DB7_PORT,DB7_BN
;Переводим дисплей в режим чтения данных
;из активной области
sbi A0_PORT,A0_BN
sbi RW_PORT,RW_BN
rcall ReadC
;Переводим дисплей в режим записи команды
cbi A0_PORT,A0_BN
cbi RW_PORT,RW_BN
;Пины дисплея - выходы, на них еденицы
sbi DB4_DDR,DB4_BN
sbi DB5_DDR,DB5_BN
sbi DB6_DDR,DB6_BN
sbi DB7_DDR,DB7_BN
sbi DB4_PORT,DB4_BN
sbi DB5_PORT,DB5_BN
sbi DB6_PORT,DB6_BN
sbi DB7_PORT,DB7_BN
rcall Delay40us
ret
sbi E_PORT,E_BN
rcall Delay4us
clr temp
sbic DB7_PIN,DB7_BN
sbr temp,7
sbic DB6_PIN,DB6_BN
sbr temp,6
sbic DB5_PIN,DB5_BN
sbr temp,5
sbic DB4_PIN,DB4_BN
sbr temp,4
cbi E_PORT,E_BN
nop
sbi E_PORT,E_BN
rcall Delay4us
sbic DB7_PIN,DB7_BN
sbr temp,3
sbic DB6_PIN,DB6_BN
sbr temp,2
sbic DB5_PIN,DB5_BN
sbr temp,1
sbic DB4_PIN,DB4_BN
sbr temp,0
cbi E_PORT,E_BN
ret
;Чтение данных из активной области
Read:
;Пины дисплея - входы Z-состояние
cbi DB4_DDR,DB4_BN
cbi DB5_DDR,DB5_BN
cbi DB6_DDR,DB6_BN
cbi DB7_DDR,DB7_BN
cbi DB4_PORT,DB4_BN
cbi DB5_PORT,DB5_BN
cbi DB6_PORT,DB6_BN
cbi DB7_PORT,DB7_BN
;Переводим дисплей в режим чтения данных
;из активной области
sbi A0_PORT,A0_BN
sbi RW_PORT,RW_BN
rcall ReadC
;Переводим дисплей в режим записи команды
cbi A0_PORT,A0_BN
cbi RW_PORT,RW_BN
;Пины дисплея - выходы, на них еденицы
sbi DB4_DDR,DB4_BN
sbi DB5_DDR,DB5_BN
sbi DB6_DDR,DB6_BN
sbi DB7_DDR,DB7_BN
sbi DB4_PORT,DB4_BN
sbi DB5_PORT,DB5_BN
sbi DB6_PORT,DB6_BN
sbi DB7_PORT,DB7_BN
rcall Delay40us
ret