基于单片机的炉温温度控制系统设计(编辑修改稿)内容摘要:

统各个模块的工作。 ( 2)温度温度传感器 DS18B20:负责温度与数字量的转化。 其精度可精确到小数点后四位。 ( 3)驱动模块:采用固态继电器控制加热 4000W 加热器设备的方式。 固态继电器采用低电压输入方式,一般为 DC 3~ 10V,本设计用 +5V 输入方式。 这样控制部分与大功率部分实现隔离,可抑制干扰。 实现以弱控强。 数字控制器 执行器 恒温装置 测量与变送装置 给定值 输出值 河南理工大学毕业设计论文 7 图 22 系统基本硬件结构 框图 ( 4)键盘输入模块:用 4*1 独立的键盘。 可以实现人工对温度上、下限值的设定。 ( 5) LCD 显示模块:采用常用的 LCD1602 显示温度传感器采集到的温度,并且显示采值时的时间,以及温度上下限值。 ( 6)红、蓝色 LED,蜂鸣器:负责系统的报警功能。 当温度超过用户设定的上、下限值时系统将报警。 LED 灯在单片机的控制下点亮,同时蜂鸣器发出报警声,通知用户采取相应的措施。 系统主要元件介绍 本设计采用采用总线型结构的设计。 由 P0 口作数据线, P0 口和 P2 口共同作地址线。 P2口地址高 8位, P0 口地址低 8位。 AT89S52 单片机 简介 本设计采用的 AT89S52 是一种低功耗、高性能 CMOS8 位微控制器。 使用 Atmel公司高密度非易失性存储器技术制造,与工业 80C51 产品指令和引脚完全兼容。 片上8K 字节 Flash 允许程序存储器在系统可编程,亦适于常规编程器。 在单芯片上,拥有灵巧的 8 位 CPU和在系统可编程 Flash,使得 AT89S52 为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。 AT89S52 单片机主要功能特点有:与 MCS51 单片机产品兼容; 8K 字节在系统可编程 Flash 存储器; 256 字节 RAM; 1000 次擦写周期;全静态操作:三级加密程序存储器; 32 位可编程 I/O 口线;双数据指针;三个 16 位定时器 /计数器;八个中断源(一个 AT89S52 DS18B20 采温度 声光报警 LCD 显示模块 驱动模块 键盘输入模块 河南理工大学毕业设计论文 8 6 向量 2 级中断结构);全双工 UART 串行通道;片内晶振及时钟电路;看门狗定时器;掉电标识符; 0Hz~ 33Hz, AT89S52 可降至 0Hz 静态逻辑操作,支持 2 种软件可选择节电模式。 空闲模式下, CPU停止工作,允许 RAM、定时器 /计数器、串口、中断继续工作。 掉电保护方式下, RAM 内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止,掉电后中断可唤醒 [12]。 引脚图如图 23 所示。 1234567891 01 11 21 31 41 51 61 71 81 92 04 03 93 83 73 63 53 43 33 23 13 02 92 82 72 62 52 42 32 22 1V C CP 0 . 0 / A D 0P 0 . 1 / A D 1P 0 . 2 / A D 2P 0 . 3 / A D 3P 0 . 4 / A D 4P 0 . 5 / A D 5P 0 . 6 / A D 6P 0 . 7 / A D 7P 2 . 7 / A D 1 5P 2 . 6 / A D 1 4E A / V D DA L E / P R O GP S E NP 2 . 0 / A D 8P 2 . 1 / A D 9P 2 . 2 / A D 1 0P 2 . 3 / A D 1 1P 2 . 4 / A D 1 2P 2 . 5 / A D 1 3V s sX T A L 1X T A L 2R D / P 3 . 7W R / P 3 . 6T 1 / P 3 . 5T 0 / P 3 . 4I N T I / P 3 . 3I N T 0 / P 3 . 2T X D / P 3 . 1R X D / P 3 . 0R E S TP 1 . 7P 1 . 6P 1 . 5P 1 . 4P 1 . 3P 1 . 2P 1 . 1P 1 . 0 图 23 AT89S52单片机引脚结构示意图 VCC:电源( +5V)。 GND:地。 P0 口: 本次设计中 P0 口与 P2 口共同实现 LCD 显示功能。 P0 口是一个 8 位漏极开路的双向 I/O 口。 作为输出口,每位能驱动 8 个 TTL 逻辑电平。 对 P0 端口写 “ 1” 时,引脚用作高阻抗输入。 当访问外部程序和数据存储器时, P0 口也被作为低 8 位地址 /数据复用。 在这种模式下, P0 具有内部上拉电阻。 在 flash 编程时, P0 口也用来接收指令字节;在程 序校验时,输出指令字节。 程序校验时,需要外部上拉电阻。 P2 口: P2 口是一个具有内部上拉电阻的 8 位双向 I/O 口, P2 输出缓冲器能驱动 4个 TTL 逻辑电平。 对 P2 端口写 “ 1” 时,内部上拉电阻把端口拉高,此时可以作为输河南理工大学毕业设计论文 9 入口使用。 作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL)。 在访问外部程序存储器或用 16 位地址读取外部数据存储器(例如执行 MOVX @DPTR)时, P2 口送出高八位地址。 在这种应用中, P2 口使用很强的内部上拉发送 1。 在使用 8位地址(如 MOVX @RI)访问外部数据存储器时, P2 口输出 P2 锁存器的内容。 在 flash编程和校验时, P2 口也接收高 8 位地址字节和一些控制信号。 P1 口:本次设计 P1 口中 到 接 4 个按键。 按键 P1 口是一个具有内部上拉电阻的 8 位双向 I/O 口, p1 输出缓冲器能驱动 4 个 TTL 逻辑电平。 对 P1 端口写 “ 1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL)。 此外, 和 分别作定时器 /计数器 2 的外部计数输( )和时器 /计数器 2 的触发输入( )。 在 flash编程和校验时, P1 口接收低 8 位地址字节。 P1 口第二功能有, : T2(定时器 /计数器 T2 的外部计数输入,时钟输出) : T2EX(定时器 /计数器 T2 的捕捉 /重载触发信号和方向控制) : MOSI(在系统编程用) : MISO(在系统编程用) : SCK(在系统编程用) P3 口:本设计中 P3 口将用于接收温 度 信号。 P3 口是一个具有内部上拉电阻的 8位双向 I/O 口, P2 输出缓冲器能驱动 4 个 TTL 逻辑电平。 对 P3 端口写 “ 1” 时,内部上拉电阻把端口拉高,此时可以作为输入口使用。 作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流( IIL)。 P3 口亦作为 AT89S52 特殊功能(第二功能)使用,如下表所示。 在 flash 编程和校验时, P3 口也接收一些控制信号。 本次设计 P3口中 将用于接收发送温度型号。 P3 引脚号第二功能有, : RXD(串行输入) : TXD(串行输出) : INT0(外部中断 0) : INT1(外部中断 1) : T0(定时器 0 外部输入) : T1(定时器 1 外部输入) : WR(外部数据存储器写选通) : RD(外部数据存储器读选通) RESET:复位输入。 晶振工作时, RST 脚持续 2 个机器周期高电平将使单片机复位。 河南理工大学毕业设计论文 10 看门狗计时完成后, RST 脚输出 96 个晶振周期的高电平。 特殊寄存器 AUXR(地址 8EH)上的 DISRTO 位可以使此功能无效。 DISRTO 默认状态下,复位高电平有效。 ALE/PROG:地址锁存控制信号( ALE)是访问外部程序存储器时,锁存低 8 位地址的输出脉冲。 在 flash 编程时,此引脚( PROG)也用作编程输入脉冲。 在一般情况下,ALE 以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。 然而,特别强调,在每次访问外部数据存储器时, ALE 脉冲将会跳过。 如果需要,通过将地址为 8EH 的 SFR 的第 0 位置“ 1”, ALE 操作将无效。 这一位置“ 1”, ALE 仅在执行 MOVX 或 MOVC 指令时有效。 否则, ALE 将被微弱拉高。 这个 ALE 使能标志位(地址为 8EH的 SFR 的第 0 位)的设置对微控制器处于外部执行模式下无效。 PSEN:外部程序存储器选通信号( PSEN)是外部程序存储器选通信号。 AT89S52从外部程序存储器执行外部代码时, PSEN 在每个机器周期被激活两次,而在访问外部数据存储器时, PSEN 将不被激活。 EA/VPP:访问外部程序存储器控制信号。 为使能从 0000H 到 FFFFH 的外部程序存储器读取指令, EA 必须接 GND。 为了执行内部程序指令, EA 应该接 Vcc。 在 flash 编程期间, EA 也接收 12 伏 Vpp 电压。 XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。 XTAL2:振荡器反相放大器的输出端。 1602 液晶显示器 液晶显示模块具有体积小 、 功耗低、显示内容丰富、超薄轻巧等优点,因此,在袖珍式仪表和低功耗应用系统中得到越来越广泛的应用,现在字符型液晶显示模块已经是单片机应用设计中最常用 的信息显示器件了。 本系统采用 LCD1602 液晶显示模块,它可以显示两行,每行 16 个字符,采用单 +5V电源供电,外围电路配置简单,价格便宜,具有很高的性价比。 1602 采用标准的 16 脚接口,其中 VSS 为地电源, VDD 接 5V正电源, VEE 为液晶显示器对比度调整端,接正电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生 “ 鬼影 ” ,可通过一个 10KΩ的电位器调整对比度。 RS 为寄存器选择,高电平时选择数据寄存器、低电平时选择指令寄存器。 RW 为读写信号线,高电平时进行读操作,低电平时进行写操作。 当 RS 和 RW 共同 为低电平时可以写入指令或者显示地址,当 RS 为低电平 RW 为高电平时可以读忙信号,当 RS 为高电平 RW 为低电平时可以写入数据。 E 端为使能端,当 E 端由高电平跳变成低电平时,液晶模块执行命令。 D0~D7河南理工大学毕业设计论文 11 为 8 位双向数据线 [13]。 LCD1602 管脚图在 Proteus 中的代替元件 如图 24 所示。 图 24 LCD1602芯片管脚图 1602 的接口与管脚功能表如表 21 所示。 表 21接口引脚及其功能 引脚号 符号 状态 功能 1 Vss — 电源地 2 Vdd — 电源 +5V 3 VEE — 液晶驱动电源 4 RS 输入 寄存器选择 5 R/W 输入 读、写操作 6 E 输入 使能信号 7 DB0 三态 数据总线( LSB) 8 DB1 三态 数据总线 9 DB2 三态 数据总线 10 DB3 三态 数据总线 11 DB4 三态 数据总线 12 DB5 三态 数据总线 13 DB6 三态 数据总线 14 DB7 三态 数据总线( MSB) 15 LEDA 输入 背光 +5V 16 LEDK 输入 背光地 河南理工大学毕业设计论文 12 1602 液晶模块内部的字符发生存储器( CGROM)存储了 160 个点阵字符图形,这些字符 有:阿拉伯数字、英文字母的大小写、常用的符号、和日文假名等,每一个字符都有一个固定的代码,比如大写的英文字母“ A”的代码是 01000001B( 41H),显示时模块把地址 41H 中的点阵字符图形显示出来,我们就能看到字母“ A”。 1602 液晶模块内部的控制器共有 11 条控制指令,如 表 22所示。 表 22 1602液晶模块指令表 指令 RS R/W D7 D6 D5 D4 D3 D2 D1 D0 清显示 0 0 0 0 0 0 0 0 0 1 光标返回 0 0 0 0 0 0 0 0 1 — 置输入模式 0 0 0 0 0 0 0 1 I/D S 显示开 /关控制 0 0 0 0 0 0 1 D C B 光标或字符移位 0 0 0 0 0 1 S/C R/L — — 置功能 0 0 0 0 1 DL N F — — 置字符发生存储器地址 0 0 0 1 字符发生存储器地址( ACG) 置数据存储器地址 0 0 1 显示数据存储器地址( ADD) 读忙标志或地址 0 1 BF 计数器地址( AC) 写数到 CGRAM 或 DDRRAM 1 0 要写的数据 从 CGRAM 或 DDRRAM 读数 1 1 读出的数据 1602 液晶模块的读写操作、屏幕和光标的操作都 可以 通过指令编程来实现。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。