华北水利水电大学毕业设计
3.3 液晶显示模块
液晶显示模块在执行每一条指令之前,都要先确认模块的忙标志位,低电平时,表示不忙,若为高电平则此指令失效,显示字符之前先要输入显示字符地址,告诉模块那里显示了字符。1602LCD直接和单片机的P0口通过排阻连接,无需再加驱动。
LCD1602显示数据的过程是首先进行液晶初始化,初始化之后执行延时程序,等待数据的采集,演示完成后先写入一些指令和显示字符的地址,之后单片机向LCD发送数据即写数据,数据发送完成后,LCD读取写入的地址并显示出来,最后返回。软件流程图如图3-3所示:
图3-3 液晶显示模块程序流程图
返回 读数据并显示 写数据 写显示行列地址 写LCD指令 延时 液晶1602初始化 开始 取显示首地址 19
华北水利水电大学毕业设计
第4章 仿真和实物制作
4.1 仿真
在完成系统的硬件电路图之后,与软件相结合,检验设计是否正确就是系统的仿真。 本设计采用的画图软件是Proteus,另外它自带仿真功能,能有效的实现硬件电路图跟程序的调试与仿真。
4.1.1 protues 软件介绍
Proteus是一款电子设计自动软件,可以实现原理布图、PCB自动或人工布线和电路
仿真。可以仿真51系列、PIC、AVR等市面上的主流单片机。还可以在含有模拟原型的原理图的基础上,进行编程,配合LED/LCD、键盘或PRS232终端等动态的外设等的输入,可以看到运行后的输入输出效果。在Proteus绘制完原理图后,调入在Keil软件中编译好的*.HEX文件,运行后就可以看到实物的模拟运行状态和过程。另外,在仿真运行的过程中,系统的每个连接引脚旁边都会显示出一个小正方形的指示灯,蓝色代表低电平,红色代表高电平,这样就可以直观的看到每个管教的高低电平变化,不需要再借助虚拟工具测量,从而对系统的软件和硬件的性能有了最基本的判断,优化单片机的开发流程。在软件调试和仿真完成之后,就可以将最终的程序HEX文件烧录进单片机,检测硬件系统。使用Proteus进行单片机的仿真调试可以大幅的简化硬件的调试工作,不仅可以弥补元器件和实验仪器的缺乏带来的不足,而且降低了原材料的消耗还避免了一起损坏等问题。节省焊接电路板的时间,提高产品的开发效率和降低开发成本,但相对的在软件编写和调试过程中就要更加认真。
由于Proteus中没有湿度传感器DHT11,所以仿真时代替DHT11输入的数字信号,将实时湿度固定位30%,写入1602LCD。上电之后由于加湿器默认是自动模式,最佳相对湿度默认为40%,从仿真图中可以看到,室内湿度为30%低于最佳湿度,加湿器开始加湿,LED小灯变亮。上电之后的界面如图4-1所示:
20
华北水利水电大学毕业设计
图4-1 上电之后的仿真界面
按下水位报警后的界面如图4-2所示:
图4-2 按下水位报警后的仿真界面
21
华北水利水电大学毕业设计
按下自动/手动选择键,选择手动模式后的仿真界面如图4-3所示:
图4-3 选择手动模式后的仿真界面
按下设置键K3,通过调节K2加键和K3减键设定最佳湿度后的界面如图4-4所示:
图4-4 手动设置最佳湿度后的界面
22
华北水利水电大学毕业设计
4.2 实物制作
实物制作包括硬件焊接和软件调试。硬件焊接按照模块进行,每焊接完一个模块,都要将对应的软件程序通过烧写软件烧写进单片机,检测运行情况并调试,只有完全正确以后才能焊接后续模块。烧写软件选择STC_ISP_V480,在使用之前要将MCU Type设置为STC89C52RC,之后将.hex文件选择对应的COM端口,然后点击下载就能实现硬件和软件的连接。
4.2.1硬件焊接
制作硬件时首先从焊接电源部分,电源电路里添加一个二极管既能降压又能防止电源一旦接反,烧坏器件。电源电路焊好后进行测试,如果红色led灯亮,开始焊接单片机的最小系统,按照模块一点一点增加元器件。硬件焊接要完全的按照电路图。焊接之前最好根据元器件的尺寸,合理的放置每个模块,然后逐个焊接每个小模块。每焊接完一个模块要用万用表测量电源和地之间是否短路,如果出现短路,就要立即检测是哪一处的焊接导致的短路。
烙铁不要长时间接触面包板,若长时间接触会因为高温导致焊盘或者器件的损坏;温度太低,容易造成冷焊点。焊接时焊锡用的少,引脚容易脱落;焊锡太多,容易和相邻的引脚接触导致短路。
先焊接单片机和1602液晶显示的底座,然后焊接小元件,特别是先焊接单组这一类器件。为了保证焊接的质量,焊接元件时要先固定一个引脚,然后再调整元件的位置以及高低合适后,再焊接其余引脚,以免焊歪,因为一旦固定好两个以上引脚,元件的位置就不可动,在焊接时要注意避免虚焊、缺焊、短路等情况,而且要尽量减少跳线的出现。
在每次焊接时,都要注意元器件是否要区分正负极、区分的话哪个脚接单片机的引脚。例如:发光二极管有正负极所以就要考虑极性,长针是正极,短针是负极;蜂鸣器是有源蜂鸣器,长针是正极,短针是负极;三极管使用8550PNP型,三极管发射极接电源正极,基极和单片机的I/O口连接,集电极接蜂鸣器的正极,而蜂鸣器的负极接地;开关、陶瓷电容没有正负极,焊接时就不用考虑引脚的极性。
4.2.2硬件问题及解决办法
23