8 数据存储器地址 0 0 1 显示数据存贮器地址
9 读忙地址或标志 0 1 BF 计数器地址
10 数据存储器写入数据 1 0 要写的数据内容
11 从数据存储器中读数据 1 1 读出的数据内容
1602[8]液晶模块中的各种操作都是由对指令的编程来完成的。
指令1:清显示,指令码01H,光标复位。
指令2:复位指令,光标返回。
指令3:显示模式和光标设置。I/D:光标的移动方向,高电平时右移,低电平时左移。S:屏幕上所有文字是否左移或者右移。高电平表示有效,低电平则表示无效。
指令4:显示开关的控制。D:控制整个显示屏的开与关,高电平显示开,低电平显示关。C:控制光标的开和关。B:控制光标闪烁。
指令5:光标或者显示的移位。S/C:若高电平,则移动显示文字,低电平则移动光标。
指令6:设置功能命令。DL:高电平是4位总线,低电平是8位总线。N:低电平的时候是单行显示,高电平的时候是双行显示。F:低电平的时候为5x7点阵字符,高电平的时候为5x10点阵字符。
指令7:设置RAM的地址。
指令8:设置DDRAM的地址。
指令9:读忙信号和光标地址。BF:忙标志位,高电平时表示忙,此时模块不能接收命令或者数据,若为低电平则表示不忙。
指令10:写数据指令。
指令11:读数据指令。
LCD1602与单片机的连接如图15所示。
4. 软件设计
4.1 系统方案流程图
主程序开始时需要对其进行初始化,然后进入中断,调用红外线检测子程序检测是否有人,若无人,则主程序程序结束。若有人,再调用温度控制子程序检测房间温度,选择是否设定房间温度,然后对设定的温度进行对比,若和设定温度不一样,则驱动压缩机进行升温或降温,最后达到设定温度,返回到主程序。在程序设计中,为了仿真的需要,就把压缩机的升温降温用两个灯泡代替,热释温度传感器用按键代替,系统流程图如图16所示。
4.2 温度检测程序设计
本设计使用DS18B20作为温度检测电路的核心部件,由于DS18B20单总线结构,所以它有严格的时隙概念,因此读写时序是很重要,时序图如图17所示,单片机对DS18B20的各种操作必须按时序来进行[9]。
4.3 键盘扫描程序设计
本设计采用的是独立式键盘,独立式键盘是指各个按键相互独立的连接到个个单片机的I/O口,I/O口只需要做输入口就能读出所有的按键。我们把按键的一端接地,另一端与单片机的某个I/O口相连,如图8和图9所示。开始时先给I/O口赋一高电平,然后让单片机不断地检测该I/O口是否变为了低电平,当按键闭合时,即当该I/O口通过键盘与地相连时,就变成了低电平。此时单片机一旦检测到,就会执行相应的命令。本计使用了4个键盘,分别是:升温键、降温键、转换键和复位键。
5. 系统的调试与仿真
在用proteus仿真中,由于热释红外线传感器在其中没有相应的器件,所以就用了一个普通开关来代替,压缩机用指示灯泡代替,一个代表升温(UP),一个表示降温(DOWN)。通过控制灯泡的亮灭来模拟单片机对空调压缩机的控制。经仿真验证方案可行,如图18所示,当检测按键(JIANCE)没有闭合的时候引脚P2.3为低电平说明没有人进入,此时两个灯泡都不亮,表明压缩机都不工作。
- 上一篇:基于uCOS-II的多功能数据采集系统的开发+源代码+流程图
- 下一篇:VHDL基于FPGA的电梯控制器设计+Quartus仿真+电路图
-
-
-
-
-
-
-
java+mysql车辆管理系统的设计+源代码
河岸冲刷和泥沙淤积的监测国内外研究现状
乳业同业并购式全产业链...
酸性水汽提装置总汽提塔设计+CAD图纸
十二层带中心支撑钢结构...
杂拟谷盗体内共生菌沃尔...
电站锅炉暖风器设计任务书
当代大学生慈善意识研究+文献综述
中考体育项目与体育教学合理结合的研究
大众媒体对公共政策制定的影响