大学本科生毕业设计(论文)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 VSS VCC VO RS R/W E DB0 DB1 DB2 DB3 DB4 DB5 DB6 DB7 BLA BLK LCD1602
图3-5 LCD1602引脚图
LCD1602引脚功能说明: 第1脚:VSS为地电源。 第2脚:VDD接5V正电源。
第3脚:VL为液晶显示器对比度调整端,接正电源时对比度最弱,接地时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度。
第4脚:RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。
第5脚:R/W为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和R/W共同为低电平时可以写入指令或者显示地址,当 RS为低电平R/W为高电平时可以读忙信号,当RS为高电平R/W为低电平时可以写入数据。
第 6 脚:E端为使能端,当E端由高电平跳变成低电平时,液晶模块执行命令。
第 7~14脚:D0~D7为8位双向数据线。 第 15脚:背光源正极。 第 16脚:背光源负极。
LCD显示屏在使用之前须根据具体配置情况初始化,初始化可在复位之后完成,过程一般如下:
(1)清屏。清除屏幕,将显示缓冲区DDRAM的内容全部写入空格。光标复位,回到显示器的左上角。地址计数器AC清零。
22
大学本科生毕业设计(论文)
(2)功能设置。设置数据位数,根据LCD1602与处理器的连接选择(LCD1602为双行显示)。设置字形大小。
(3)开/关显示设置。控制光标显示,字符是否闪烁等。
(4)输入方式设置。设定光标的移动方向以及后面的内容是否移动。 图3-6是LCD1602与单片机连接的电路图:
图3-6 LCD显示电路
其中,单片机的P0.0~P0.7引脚与LCD1602的7~14引脚相连,因为AT89S52单片机的P0口没有上拉电阻,所以在它们中间接入10K的排阻,以实现数据的通讯传输。单片机的P2.5~P2.7引脚与LCD1602的4~6引脚相连,进行寄存器的选择及读写功能操作的选择。
3.5 蜂鸣器报警电路
图3-7 蜂鸣器报警电路
23
大学本科生毕业设计(论文)
本系统中采用蜂鸣器报警,由于单片机输出电流较小,所以用三极管S9013驱动蜂鸣器发出声音。单片机的P3.3口连接三极管基极,当检测到火灾隐患时,P3.3输出高电平,三极管工作在放大状态,电路导通,蜂鸣器报警。
3.6 继电器控制电路
图3-8 继电器控制电路
本系统采用9012三极管驱动继电器工作,来控制继电器工作,当温度低于设定的下限时,或者当温度高于设定的上限时,或者当烟雾浓度高于设置的烟雾报警等级时,单片机控制继电器动作,同时点亮发光二极管D2。
3.7 按键电路
报警数值用按键S2,S3,S4来设置,S2为调整键,按一下调整烟雾报警限值,按第二下调整温度报警下限值,按第三下调节温度报警上限值,按第四下取消光标显示,屏幕恢复正常显示。S3、S4、分别为减小键和增大键,和调整键配合使用。
24
大学本科生毕业设计(论文)
图3-9 按键电路
3.8 本章小结
本章对烟雾报警器的硬件设计进行了简单的介绍,画出了系统各部分的接线图,为后面的系统软件设计奠定了硬件基础。分别设计了烟雾浓度采集电路、温度采集电路、LCD显示电路、蜂鸣器报警电路、继电器控制电路和按键电路,使我对各芯片的组成结构、工作方式及实际应用有了进一步的认识和理解。
25
大学本科生毕业设计(论文)
第4章 软件设计
4.2 主程序初始化流程图
开始 设置定时初值50ms 设置定时器0,选择方式1 打开定时器0中断允许 关闭蜂鸣器 打开绿灯 是否保存报警初值 Y 结束 图4-1 主程序初始化流程图
N 设定初值
主程序初始化流程图如图4-1所示。系统上电后,程序开始执行初始化子程序。所谓初始化,是对将要用到AT89S52单片机内部部件或扩展芯片进行初始化工作状态设定。这部分实现的功能包括各种I/O口输入输出状态的设定、寄存器初始化、允许某些中断源和设置中断优先级等。
4.3 按键控制子程序流程图
按键由于弹性作用的影响,在闭合及断开均有抖动过程,从而使电压也出现抖动,所以在识别按键时要消除抖动的影响。按键的识别方法采用扫描法,不同的按键控制不同的功能。
26