




已阅读5页,还剩12页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
基于单片机施药监测系统的设计与实现 LCD显示和键盘模块的设计电信071 周超超 指导老师 翟长远Design and Implementation of Pesticide monitoring system based on MCU Design of LCD Module and Keyboard Module摘 要:精准农业是当今世界农业发展的新潮流,是由信息技术支持的根据空间变异,定位、定时、定量地实施一整套现代化农事操作技术与管理的系统,施药监测系统能够对施药机械流速、压力、车速以及果树到喷头之间的距离等,最多可扩展到八个数据的实时监测,制作一个能实时监测施药量、记录施药状况的系统是必不可少的,是精准施药系统不可缺的部分。给出利用单片机控制点阵图形液晶显示模块实现汉字显示与图像显示的基本设计思路与主要程序,针对单片机应用中的不同场合,提出了几种实用的键盘接口方法、按键编码方式和按键识别方法,并在此基础上给出了相关的软件实现方法,最后结合工作实际介绍几种键盘设计实用技巧。关键词: 单片机;点阵图形液晶显示模块;键码Abstract:This paper presented basic design conception and key process of Chinese characters manifestation and the sketch manifestation by making use of MCU controlled order and sketch LCD module In this article .Besides, several common and practical methods of keyboard interface, key coding and key identification are introduced for kinds of MCU Application. Accordingly, the software implementation is given. In the end, some skills of keyboard design are introduced.Keywords:MCU;Order and Sketch LCD Module;Key code;1引言在单片机应用中,人机交互对话最通用的方法就是通过键盘和显示器进行的。操作者通过键盘向系统发送各种指令或置入必要的数据信息。同时通过显示器将控制选项或处理结果实时的显示给操作人员,因此键盘模块和显示模块设计的好坏,直接关系到系统的可靠性和稳定性及实用性。本文将结合工作实际,系统地介绍单片机的按键设计方法和显示模块的设计方法。2 键盘模块的设计21 常用的按键接口介绍常用的按键接口一般分为“独立式按键接口设计”、“ 专用芯片式设计”和“矩阵式接口设计”几种。具体采用哪种方式,应该根据所设计系统的实际情况而定。下面分别介绍不同接口方式的优缺点及适用场合。2.1.1 独立式按键接口设计独立式按键接口设计优点是电路配置灵活,软件实现简单,但缺点也很明显,每个按键需要占用一根口线,若按键数量较多,资源浪费将比较严重,电路结构也变得复杂。因此本方法主要用于按键较少或对操作速度要求较高的场合。软件实现时,可以采用中断方式,也可以采用查询方式,示意图如图1 所示。图1 独立式按键接口设计2.1.2专用芯片式设计专用键盘处理芯片一般功能比较完善,芯片本身能完成对按键的编码、扫描、消抖和重键等问题的处理,甚至象8279还集成了显示接口功能。专用键盘处理芯片的优点很明显,可靠性高,接口简单,使用方便,适合处理按键较多的情况。但在很多应用场合,考虑成本因素,可能并不是最佳选择。2.1.3矩阵式接口设计矩阵式按键设计适应于按键数量较多,又不想使用专用键盘芯片的场合。这种方式的按键接口由行线和列线组成,按键位于行、列的交叉点上。这种方式的优点就是相对于独立接口方式可以节省很多I/ O 资源,相对于专用芯片式可以节省成本,且更为灵活。缺点就是需要用软件处理消抖、重键等问题。接口示意图如图2 所示。矩阵式按键接口根据采用的按键识别方法不同基本有两种接法:线反转法和扫描法。其中扫描法的列线始终为输入,行线始终为输出;线反转法则需要改变列线和行线的方向。图2 矩阵接口方式示意图2.2按键编码方式按键接口方式确定后,需要对按键进行编码。按键编码没有特殊约定,只要有利于按键处理即可,同时应根据情况确定是否对按键进行缓冲。但对于矩阵式按键接口一般是先获得按键的扫描码,然后将其转换为事先约定的按键编码。2.3 按键识别方法不同的按键接口方式对应不同的按键识别方法,但无论哪种接口方式,按键的闭合与否都反映在电压的高低上,因此系统可以通过检测不同的电平状态来识别按键是否按下。实际设计时可以根据需要设定键闭合或断开的电平状态。例如,我们利用低电平表示键按下,高电平表示键释放。对应上述三种按键接口方法,独立式按键识别方法很简单,只需要检测相应口线的电平即可,没有键按下时为高电平,有键按下时为低电平;而专用芯片则直接完成了该项工作,因此下面主要讲述矩阵式按键接口方式对应的按键识别方法。2.3. 1 按键识别原理如图2 所示,按键设置在行、列的交点上,行列线分别连接到按键开关的两端,行线或列线通过上拉电阻接到+ 5V上。平时无按键动作时,处于高电平状态,而当有键按下时,电平状态将发生改变。这一点是按键识别的关键所在。由于矩阵键盘中行线和列线为多键共用,各按键均影响该键所在的行和列的电平,即各键相互间有影响,必须协调处理。2.3. 2 扫描法识别按键扫描法识别按键分两步进行:第一步,识别有无按键按下;第二步,若有键按下,识别出该键。具体方法如下:识别键盘有无按键按下方法:让所有列线均置为0 电平,检查各行线是否有变化,如果有变化,则说明有键被按下,如果没有变化,则说明无键被按下。识别具体按键的方法:逐列置零电平,其余各列置为高电平,检查各行线电平的变化,如果某行电平由高电平变为低电平,则可确定此行此列交叉点处的按键被按下。2.3. 3 线反转法识别按键扫描法要逐列扫描查询,若被按下的键处于最后一列时,要经过多次扫描才能最后获得此按键的行列值。而线反转法则很简练,无论被按键处于第一列或是最后一列,均只需两步便能获得按键的行列值。第一步:将行线编程为输入线,列线编程为输出线,并使输出线输出为全零电平,则行线中电平由高到低所在行为按键所在行。第二步:同第一步相反,将行线编程为输出线,列线编程为输入线,并使输出线输出为全零电平,则列线中电平由高到低所在行为按键所在列。综合一、二两步的结果,可确定按键所在行和列,从而识别所按的键。该方法的优点是:非常简单适用。2.4 键盘模块处理方式单片机应用系统中,键盘扫描只是MCU 的工作之一,MCU 在忙于各项工作任务时,如何兼顾键盘的输入,取决于键盘的工作方式。键盘工作方式的选取原则是既要保证能及时响应按键操作,又要不过多占用MCU 的工作时间。一般而言,有三种工作方式:编程扫描、定时扫描和中断扫描。2.4. 1 编程扫描方式本方式中MCU 对键盘的扫描采取程序控制方式,一旦进入键扫描状态,则反复地扫描键盘,等待用户从按键上输入命令或数据。而在执行键入命令或处理键入数据过程中,MCU 将不再响应键入要求,直到MCU 返回重新扫描键盘为止。编程扫描程序流程图如图3 所示。图3 键盘编程扫描方式流程图2.4. 2 定时扫描方式定时扫描工作方式是利用MCU 内部的定时器产生定时中断(例如:10ms) ,CPU 响应中断时对键盘进行扫描,并在有键按下时识别出该键并执行相应的键功能程序。该种方式不再需要单独的延迟去抖动处理。2.4. 3 中断扫描方式键盘工作在编程扫描方式时,MCU 要不间断地对键盘进行扫描,其间MCU 不能进行其它任何工作,若MCU 工作量较大,该方式不适应;定时扫描方式前进了一大步,只是定时的监视一下键盘输入情况,其它时间MCU 可以做其它事情;若想进一步提高MCU 利用率,可以用中断扫描方式,即只有在有键按下时才理睬键盘,否则不理。综上所述,键盘工作分为三个层次: 第一层:监视键盘输入。根据需要选择合适的键盘工作方式(如上所述三种方式) 。第二层:确定具体按键。根据需要选择合适的识别方法(扫描法或线反转法) 。第三层:键功能程序执行。上述三种键盘工作方式都可以根据系统需要灵活选用,并非任何情况下都要使用中断方式,也不是任何时候都不能用编程扫描方式。本次键盘模块采用矩阵式接口设计,编程扫描方式,电路图如下:图4 键盘模块仿真电路图3 LCD模块设计3.1 12864液晶的介绍:带中文字库的128X64是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为12864, 内置8192个16*16点汉字,和128个16*8点ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。可以显示84行1616点阵的汉字. 也可完成图形显示.低电压低功耗是其又一显著特点。由该模块构成的液晶显示方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。12864的基本特性:低电源电压(VDD:+3.0-+5.5V)显示分辨率:12864点内置汉字字库,提供8192个1616点阵汉字(简繁体可选)内置 128个168点阵字符2MHZ时钟频率显示方式:STN、半透、正显驱动方式:1/32DUTY,1/5BIAS视角方向:6点背光方式:侧部高亮白色LED,功耗仅为普通LED的1/51/10通讯方式:串行、并口可选内置DC-DC转换电路,无需外加负压无需片选信号,简化软件设计工作温度: 0 - +55 ,存储温度: -20 - +603.2 LCD介绍ST7920 控制器系列中文图形液晶模块的软件特性主要由ST7920 控制驱动器决定。ST7920 同时作为控制器和驱动器,它可提供33 路com 输出和64 路seg输出。在驱动器ST7921 的配合下,最多可以驱动25632 点阵液晶。ST7920 系列产品硬件特性如下:提供 8 位,4 位并行接口及串行接口可选并行接口适配 M6800 时序自动电源启动复位功能内部自建振荡源6416 位字符显示RAM(DDRAM 最多16 字符4 行,LCD 显示范围162 行)2M 位中文字型ROM(CGROM),总共提供8192 个中文字型(1616 点阵)16K 位半宽字型ROM(HCGROM),总共提供126 个西文字型(168 点阵)6416 位字符产生RAM(CGRAM)1516 位总共240 点的ICON RAM(ICONRAM)ST7920 系列产品软件特性如下:文字与图形混合显示功能画面清除功能光标归位功能显示开/关功能光标显示/隐藏功能显示字体闪烁功能光标移位功能功能显示移位功能垂直画面旋转功能反白显示功能休眠模式中文字库选择:ST7920-0A 内建BIG-5 码繁体中文字型库ST7920-0B 内建GB 码简体中文字型库3.1 LCD介绍3.2 LCD与MCU的接口LCD与单片机的连接方式由串行和并行之分,两种连接方式的不同在于PSB所接的电平不同。PSB 接高时选择并口,接低时选择串口。模块上一般都有跳线方式将PSB 接高或接低,使用时可以不再处理PSB 脚(事先需声明是用并口还是串口)。也可以选择不在模块上处理,而由自己选择并口还是串口。图5 ST7920端口及功能 *注释1:如在实际应用中仅使用串口通讯模式,可将PSB接固定低电平,也可以将模块上的J8和“GND”用焊锡短接。*注释2:模块内部接有上电复位电路,因此在不需要经常复位的场合可将该端悬空。*注释3:如背光和模块共用一个电源,可以将模块上的JA、JK用焊锡短接。3.3 LCD与MCU的接口电路图3.3.1 并口直接访问方式 图6 并口直接访问方式3.3.2. 并口间接访问方式 图7 并口间接访问方式3.3.3 串口接线图图7 串口访问方式3.3.4 单片机与LCD仿真图图8 单片机与LCD仿真图5总结5.1 总结本次设计的基于单片机施药监测系统的LCD显示和键盘模块的设计,键盘模块采用矩阵式接口设计,这种方式的优点就是相对于独立接口方式可以节省很多I/ O 资源且相对于专用芯片式可以节省成本,且更为灵活。LCD模块选用12864液晶ST7920控制器,采用并行模式与单片机进行通信。与串行模式相比,虽然占用的I/O引脚,但是,编程要相对简单。参考文献1 姚德法 单片机应用中的键盘模块设计J. 信息技术与信息化,2005,(6).2 杨龙,李建国 单片机系统键盘的设计小结J. 大众科技,2006,(7).3 陈少航,李山,苗亮亮,苏宪龙 基于Proteus的单片机应用系统的设计与仿真J. 现代电子技术,2008,(6).4 李东勋,沈文浩,陈小泉,. 基于Proteus的液晶模块仿真J. 微计算机信息,2009,(13).附录1单片机键盘模块C程序:#include #include uchar k;void delay(void) /延时程序 uchar i,j; for(i=20;i0;i-) for(j=248;j0;j-); void Getch ( ) uchar X,Y,Z;P3=0xff;P3=0x0f; /先对P3置数 行扫描if(P3!=0x0f) /判断是否有键按下delay(); /延时,软件去干扰 if(P3!=0x0f) /确认按键按下X = P3; X=P3; /保存行扫描时有键按下时状态P3=0xf0; /列扫描Y=P3; /保存列扫描时有键按下时状态 Z=X|Y; /取出键值switch ( Z ) /判断键值(那一个键按下)case 0xe7: k=0; break; /对键值赋值case 0xeb: k=1; break; case 0xed: k=2; break; case 0xee: k=3; break; case 0xd7: k=4; break; case 0xdb: k=5; break; case 0xdd: k=6; break; case 0xde: k=7; break; case 0xb7: k=8; br
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电子设备手工装接工前沿技术考核试卷及答案
- 手工具广告投放策略探讨分析
- 德州学院大学护理考试题及答案
- 井下充填制备工成本预算考核试卷及答案
- 专项施工方案审核审批
- 雷管制造工上岗考核试卷及答案
- 运营安全评估报告
- 吉林长春版《心理健康》四年级上 第九课 勇敢不逞强 教案
- 果蔬国际贸易壁垒应对措施分析报告
- 附着升降脚手架安装拆卸工综合考核试卷及答案
- 2025-2030中国程控交换机行业竞争战略规划与未来前景研究报告
- 上市公司账户管理制度
- 小学生金融知识科普课件
- 检验科设备管理制度
- 工程项目借款管理制度
- GB/T 21711.3-2025基础机电继电器第3部分:强制定位(机械联锁)触点继电器
- CJ/T 338-2010生活垃圾转运站压缩机
- 电价合同补充协议书
- 糖尿病前期治未病干预指南(2025版)解读
- 儿童人工智能科普小课堂教学课件
- 羊肚菌种植合作协议合同
评论
0/150
提交评论