毕 业 论 文(设 计)用 纸
所示。
(5)字符串与变量的液晶显示
便携式仪表一般要利用液晶显示测量的数值与相应单位,因此需要了解在上述单个字符输出基础上的字符串与变量数值的输出。
由于FranklinC51编译器给出了函数“printf”的字符输出核心程序putchar.c的源程序代码,可以根据用户LCD的硬件连接加以修改,因此只需要用以上单个字符输出的子程序替换原来的“putchar.c”,就可以方便地利用priritf函数完成字符串与变量数值的输出了。
原有的“putchar.c”的源程序代码是针对RS-232串行通信的单个字符传输printf函数就可以完成数据的串行通信传输。但是系统中还有RS-232要将printf函数保留给串行通信使用就必须重新编制字符串与变量数值输出的函数。
有确定长度的字符串输出很容易实现,但对于变量数值的输出,从数值转换成字符,其字符长度是变化不确定的。解决的方法是使用Sprintf函数,将变量的数值转换成字符串存放到输出缓冲区中,并返回字符串长度,再利用确定长度的字符串输出函数进行输出,完成字符串与变量数值的输出。
佳木斯大学教务处 第 17 页
毕 业 论 文(设 计)用 纸
佳木斯大学教务处单个字符显示 指定字符点阵首列位置 字符换行判断: 点阵列数>114? 字符行数=字符行数+1 点阵列数=0 字符元素列=0 点阵列数>=60? 点阵列数=点阵列数-60 点阵列数送至E2控制器 在E2该列写入字符列控制字 点阵列数送至E1控制器 在E1该列写入字符列 点阵列数=点阵列数+1 字符元素列=字符元素列+1 字符元素列=6? 返回 图3-7 单个字符输出子程序流程
第 18 页
毕 业 论 文(设 计)用 纸
3.具体实现
单片机和LCD的接口电路如图3-8所示。
(1) 电路原理和器件选择
(2) 在这里仅列出单片机和LCD接口部分电路的器件名称和相关的主要功能。 ·89C52:LCD的控制器,控制字符的发送和点阵显示的时序。
·LCD:液晶显示模块。在单片机的控制下,按照要求的格式显示接收到的数据。 ·74LS00、74LS04:由于LCD并没有独立的片选信号,所以使用单片机的读写信号进行选通,而74LS00、74LS04则是转换读写信号的电平,同时作为片选信号。
(2)地址分配和连接:
此处只列出和本设计相关的、关键部分的单片机管脚连接和相关的地址分配。主要是单片机和LCD之间的信号连接和地址分配。
·E1、E2:连接经过74LS00、74LS04转换后的单片机读写信号,作为单片机对
佳木斯大学教务处 第 19 页
毕 业 论 文(设 计)用 纸
LCD的片选信号。
·A8:单片机对LCD的数据/指令通道的选择。 ·A9:单片机对LCD的读写选择信号。 ·D0-D7:单片机和LCD的数据总线。 (3)液晶显示的程序
液晶的显示程序是整个程序中最为重要的程序,主要包括3个子程序模块,分别是:
·液晶驱动cdwe.a51的程序:向液晶的驱动模块写入控制字,具体的控制字格式和内容可以参看液晶驱动模决手册中的规定。
·液晶驱动inclr.a51的程序:液晶模决的清屏功能。 ·液晶字符显示程序disp.c的程序:液晶的数据显示功能。 在这里分别列出它们关键部分的程序代码: ·液晶驱动cdwe.a51的内容;
;定义全局变量COM和DAT,全局函数CWE1(),DWE1(),CWE2(),DWE2() PUBLIC COM,DAT,CWE1, DWE1,CWE2,DWE2 ;COM存放控制指令,DAT存放显示数据 RAM SEGMENTDATA PGM SEGMENTCODE
;CWE1()子函数,传递变量COM到控制器E1,参数为#CWADD1实现控制指令的传递
CWE1: PUSH DPL PUSH DPH
MOV DPTR #CRADD1 CWE101: MOVX A, @DPTR JB ACC7, COM MOV DPTR, #CRADD1 MOV A, COM MOVX @DPTR A
佳木斯大学教务处 第 20 页
毕 业 论 文(设 计)用 纸
POP DPH POP DPL RET
DWE1()子函数,传递变量DAT到控制器E1,参数为#CRADD1 PUSH DPL PUSH DPH
MOV DPTR, #CRADD 1 DWE101 MOVX A, @DYTR JB ACC.7, DWE101 MOV DPTR, #DWADDI MOV A DAT MOVX @DPTR, A POP DPH POP DPL RET
CWE2()子函数,传递变量COM到控制器E2,参数为#CWADDz,实现控制指令的传递
CWE2 PUSH DPL PUSH DPH
MOV DPTR, #CRADD2 CWE201 MOVX A, @DPTR JB ACC.7, CWE201 MOV DPTR #CRADD2 MOV A, COM MOVX @DPTR, A POP DPH POP DPL RET
DWE2()子函数,传递变量DAT到控制器E2,参数为#CRADD2,实现控制数据的
佳木斯大学教务处 第 21 页
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库毕业设计11说明书(5)在线全文阅读。
相关推荐: