对程序进行解释序号1(程序解释,以下同):程序分隔及说明。
序号2:定义LCM的RS引脚由89C51的P3.3脚控制。
序号3:定义LCM的R_W引脚由89C51的P3.4脚控制。
序号4:定义LCM的E引脚由89C51的P3.5脚控制。
序号5:定义LCM的数据口DBO_DB7由89C51的P1口控制。
序号6:程序分隔及说明。
序号7:程序从地址OOOOH开始。
序号8:跳转到MAIN主程序处。
序号9:程序分隔及说明。
序号10:主程序MAIN从地址0030H开始。
序号11:主程序开始,堆栈指针指向70H。
序号12:寄存器RO置初值O。
序号13:调用启动LCM子程序进行初始化。
序号14:调用清除LCM子程序。
序号15:向累加器送立即数10000000B.设定显示地址为第一行第1列。
序号16:将RO与累加器相或,结果存累加器内。
序号17:若累加器内容不为100011118,转NEXT1;否则顺序执行。
序号18:清除RO。
序号19:跳转到标号AGAIN处。
序号20:调用写指令到LCM子程序。
序号21:将第一行字符串的起始地址送入DPTR中。
序号22:调用显示字符串到LCM子程序。
序号23:向累加器送立即数11000000B,设定显示地址为第二行第1列。
序号24:将RO与累加器相或,结果存累加器内。
序号25:若累加器内容不为11001111B,转NEXT2;否则顺序执行。
序号26:清除RO。
序号27:跳转到标号AGAIN处。
序号28:调用写指令到LCM子程序。
序号29:将第二行字符串的起始地址送入DPTR中。
序号30:调用显示字符串到LCM子程序。
序号31:寄存器RO加1。
序号32:置寄存器R1立即数255。
序号33:调用2.7mS延时子程序。
序号34:判断R1减1后若不为O转DEL_LOOP循环,这样共延时0.5秒。
序号35:跳转到AGAIN处反复执行。
序号36:程序分隔及说明。
序号37:第一行字符串。
序号38:第二行字符串。
序号39:程序分隔及说明。
序号40~46:启动LCM子程序。
序号47:程序分隔及说明。
序号48~58:查询忙碌标志信号子程序。
序号59:程序分隔及说明。
序号60~67:写指令到LCM子程序。
序号68:程序分隔及说明。
序号69~76:写数据到LCM子程序。
序号77:程序分隔及说明。
序号78~80:清除LCM子程序。
序号81:程序分隔及说明。
序号82~86:2.7mS延时子程序。
序号87:程序分隔及说明。
序号88~96:显示字符串到LCM子程序。
序号97:程序分隔及说明。
序号98:程序结束。
上一页 [1] [2]
本文关键字:暂无联系方式显示电路-显示屏,单元电路 - 显示电路-显示屏