初始化定时器 T0
图? 主程序
启动T0 装入中断次数:#03H->24H 开中断 调用显示子程序 (2)逐字依次输入模块(就是显示“Voltage=0.000”子程序)
清0命令:#01H->COM 调用写指令代码子程序 输入方式:#06H->COM
调用写指令代码子程序
设置地址:#80H->COM
调用写指令代码子程序
指向字符表首地址:#TAB->DPTR
总字符数:#10->R2 起始偏移量:#00H->R3
R3->A 查表:MOVC A,@A+DPTR A->DAT 调用写显示数据子程序 INC R3 否 R2=R2-1; R2==0? 返回
图? 逐字依次输入子程序
是
(3)定时器中断服务模块
保护现场 设置寄存器:#08H->PSW
停止计数 重装定时常数 中断次数减1:DEC 24H 24H->A 否 A==0? 是 重装中断次数 设置并启动0809,等待一段时间 禁止LCD 读取0809装换结果: 30H-34H地址空间 把结果转换为10进制数值,存在 开启计数 把10进制结果转化为ASSIC显示值 恢复现场 中断返回
图? 定时器中断服务子程序
(3)LCD间接方式初始化模块
#38H->P0 0->RS 0->RW #03H->R2 1->E 0->E 否 R2=R2-1 R2==0? 是
#38H->COM 调用写指令代码子程#01H->COM 调用写指令代码子程 #06H->COM
图? LCD初始化子程序
调用写指令代码子程 #0EH->COM 调用写指令代码子程 返回 (4)LCD间接方式驱动模块
图? 判忙子程序(读到A中)
保护现场 #0FFH->P0 0->RS 1->BW 1->E 延时 0->E P0->A 恢复现场 保护现场