单片机的数字温度控制系统
温度的测量和控制是一件常见却又重要的事,从最初的酒精、水银温度计到现在的数字化、集成化的温度控制系统,人们对于温度的检测和控制也提出了越来越高的要求。
本文设计了基于AT89S52单片机的数字温度控制系统。该系统由硬件和软件两部分组成,通过单片机AT89S52控制温度传感器DS18B20实现对温度的测量控制。本设计的核心在于温度传感器、1602LCD、蜂鸣器在单片机下的硬件连接,通过对软件的编程将各模块系统联系在一起。系统硬件由电源电路、控制电路、报警系统电路、温度采集电路和LCD显示电路组成,通过DS18B20采集温度并在1602LCD上显示出来,对周围的环境温度进行准确的检测、控制和报警。软件方面,根据设计需要达到的功能,我将设计思路构思出来,设计出软件系统框图,并通过整体的思路,逐步分析各模块之间的算法和联系,将它们串联起来形成一个整体。该系统能够方便的实现温度采集和显示,上下限报警温度可以根据实际需要任意设定,满足了温度控制的要求。 HM000063
该温控系统使用起来非常方便,具有体积小、超调量小、精度高、量程宽、采样值与设定值基本一致、灵敏度高、功耗低、操作简单等优点。单片机AT89S52与温度传感器DS18B20结合实现最简温度控制系统,该系统结构简单,抗干扰能力强,适用于恶劣环境下的现场温度控制,拥有极为广泛的应用前景。 查看完整请+Q:351916072获取
关键词:温度控制;AT89S52;DS18B20;LCD显示器
2.1.1 单片机的选择
针 对 本 设 计 所 需 要 的 功 能 , 选 择 合 适 的 单 片 机 是 十 分 重 要 的 。 选 择 功 能 过少的 单 片 机 , 无 法 完 成 控 制 任 务 ; 选 择 功 能 过 多 的 单 片 机 , 则 会 造 成 资 源 浪 费 , 使 产 品 的 性 能 价 格 比 下 降 。 因 此 通 过 查 询 资 料 , 对 于 单 片 机 , 决 定 选 择 使 用 8 0 3 1 与 8 0 5 1 系 列 。 由 于 8 0 3 1 没 有 内 部 R A M , 而 系 统 需 要 大 量 内 存 存 储 数 据 , 因 而 不 适 用 , 所 以 选 择 5 1 系 列 。 A T 8 9 S 5 2 是 美 国 A T M E L 公 司 生 产 的 低 功 耗 , 高 性 能 C MOS8 位 微 控 制 器 , 具 有 8 K 在 系 统 可 编 程 F l a s h 存 储 器 。 使 用 A T M E L 公 司 高 密 度 非 易 失 性 存 储 器 技 术 制 造,与 工 业 8 0 C 5 1 产 品 指 令 和 引 脚 完 全 兼 容 。 片 上 F l a s h 允 许 程 序 存 储 器 在 系 统 可 编 程 , 亦 适 于 常 规 编 程 。 在 单 芯 片 上 , 拥 有 灵 巧 的 8 位 C P U 和 在 系 统 可 编 程 F l a s h, 使 得 A T 8 9 S 5 2 为 众 多 嵌 入 式 控 制 应 用 系 统 提 供 高 灵 活 、 超 有 效 的 解 决 方 案 。 A T 8 9 S 5 2 具 有 以 下 标 准 功 能: 8K 字 节 F l a s h , 2 5 6 字 节 R A M, 3 2 位 I / O 口 线 , 看 门 狗 定 时 器,2 个 数 指 针 , 三 个 1 6 位 定 时 器 / 计 数 器 , 一 个 6 向 量 2 级 中 断 结 构 , 全 双 工 串 行 口 ,片 内 晶 振 及 时 钟 电 路 。 另 外 , A T 8 9 S 5 2 可 降 至 0 H z 静 态 逻辑 操 作 , 支 持 2 种 软 件 可 选 择 节 电 模 式 。 空 闲 模 式 下, C P U 停 止 工 作 , 允 许 R A M 、 定 时 器 / 计 数 器 、 串 口 、 中 断 继 续 工 作 。 掉电保 护 方 式 下 , R A M 内 容 被 保 存 , 振 荡 器 被 冻 结 , 单 片 机 一 切 工 作 停 止 , 直 到 下 一 个 中 断 或 硬 件 复 位 为 止 。
AT89S52具有以下特点:(1)与MCS-51单片机产品兼容;(2)8K字节在线系统可编程Flash存储器;(3)1000次擦写周期;(4)全静态操作:0Hz-33MHz;(5)三级加密程序存储器;(6)32个可编程I/O口线;(7)三个16位定时器/计数器;(8)8个中断源;(9)全双工UART串行通道;(10)低功耗空闲和掉电模式;(11)掉电后中断可唤醒;(12)看门狗定时器;(13)双数据指针;(14)掉电标识符。
2.1.2 AT89S52单片机引脚图
图2.1 单片机引脚图
2.1.3 AT89S52单片机引脚说明
P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0不具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。
P1口:P1口是一个具有内部上拉电阻的8位双向I/O 口,P1输出缓冲器能驱动4个TTL逻辑电平。此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。在flash编程和校验时,P1口接收低8位地址字节。
引脚号第二功能: 查看完整请+Q:351916072获取
P1.0:T2(定时器/计数器T2的外部计数输入),时钟输出
P1.1:T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)
P1.5:MOSI(在系统编程用)
P1.6:MISO(在系统编程用)
P1.7:SCK(在系统编程用)
P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2 输出缓冲器能驱动4个TTL逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX @DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。
端口引脚第二功能:
P3.0:RXD(串行输入口)
P3.1:TXD(串行输出口)
P3.2:INTO(外中断0)
P3.3:INT1(外中断1)
P3.4:TO(定时/计数器0)
P3.5:T1(定时/计数器1)
P3.6:WR(外部数据存储器写选通)
P3.7:RD(外部数据存储器读选通)
此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。
RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。
ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 查看完整请+Q:351916072获取
EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:振荡器反相放大器的输出端。[1]
摘要 I
ABSTRACTII
第1章 绪 论1
1.1 系统背景.1
1.2 设计的意义和实现功能.2
1.3 本章小结.2
第2章 电路硬件选择3
2.1 单片机AT89S523
2.1.1 单片机的选择4
2.1.2 单片机引脚4
2.2 温度传感器DS18B206
2.3 1602LCD.9
2.4 蜂鸣器.11
2.5 本章小结.11
第3章 硬件系统设计.12
3.1 系统总体设计.12
3.2 各部分硬件电路设计.12
3.2.1 电源部分设计12
3.2.2 时钟电路设计13
3.2.3系统复位电路.13
3.2.4报警与控制电路设计.14
3.2.5 LCD显示电路设计15
3.2.6 按键电路16
3.2.7 温度检测电路设计16
3.3 本章小结.18
第4章 软件设计.19
4.1 概述.19
4.2 主程序.19
4.3 各模块子程序设计.21
4.4 Keil C5122
4.5 本章小结.23
第5章 系统仿真和测试.24
5.1 Protues简介24
5.2 对系统的测试.27
5.3 本章小结.27
总结与展望28
参考文献30
致谢31
附录、附图32 查看完整请+Q:351916072获取
本文设计了基于AT89S52单片机的数字温度控制系统。该系统由硬件和软件两部分组成,通过单片机AT89S52控制温度传感器DS18B20实现对温度的测量控制。本设计的核心在于温度传感器、1602LCD、蜂鸣器在单片机下的硬件连接,通过对软件的编程将各模块系统联系在一起。系统硬件由电源电路、控制电路、报警系统电路、温度采集电路和LCD显示电路组成,通过DS18B20采集温度并在1602LCD上显示出来,对周围的环境温度进行准确的检测、控制和报警。软件方面,根据设计需要达到的功能,我将设计思路构思出来,设计出软件系统框图,并通过整体的思路,逐步分析各模块之间的算法和联系,将它们串联起来形成一个整体。该系统能够方便的实现温度采集和显示,上下限报警温度可以根据实际需要任意设定,满足了温度控制的要求。 HM000063
该温控系统使用起来非常方便,具有体积小、超调量小、精度高、量程宽、采样值与设定值基本一致、灵敏度高、功耗低、操作简单等优点。单片机AT89S52与温度传感器DS18B20结合实现最简温度控制系统,该系统结构简单,抗干扰能力强,适用于恶劣环境下的现场温度控制,拥有极为广泛的应用前景。 查看完整请+Q:351916072获取
关键词:温度控制;AT89S52;DS18B20;LCD显示器
2.1.1 单片机的选择
针 对 本 设 计 所 需 要 的 功 能 , 选 择 合 适 的 单 片 机 是 十 分 重 要 的 。 选 择 功 能 过少的 单 片 机 , 无 法 完 成 控 制 任 务 ; 选 择 功 能 过 多 的 单 片 机 , 则 会 造 成 资 源 浪 费 , 使 产 品 的 性 能 价 格 比 下 降 。 因 此 通 过 查 询 资 料 , 对 于 单 片 机 , 决 定 选 择 使 用 8 0 3 1 与 8 0 5 1 系 列 。 由 于 8 0 3 1 没 有 内 部 R A M , 而 系 统 需 要 大 量 内 存 存 储 数 据 , 因 而 不 适 用 , 所 以 选 择 5 1 系 列 。 A T 8 9 S 5 2 是 美 国 A T M E L 公 司 生 产 的 低 功 耗 , 高 性 能 C MOS8 位 微 控 制 器 , 具 有 8 K 在 系 统 可 编 程 F l a s h 存 储 器 。 使 用 A T M E L 公 司 高 密 度 非 易 失 性 存 储 器 技 术 制 造,与 工 业 8 0 C 5 1 产 品 指 令 和 引 脚 完 全 兼 容 。 片 上 F l a s h 允 许 程 序 存 储 器 在 系 统 可 编 程 , 亦 适 于 常 规 编 程 。 在 单 芯 片 上 , 拥 有 灵 巧 的 8 位 C P U 和 在 系 统 可 编 程 F l a s h, 使 得 A T 8 9 S 5 2 为 众 多 嵌 入 式 控 制 应 用 系 统 提 供 高 灵 活 、 超 有 效 的 解 决 方 案 。 A T 8 9 S 5 2 具 有 以 下 标 准 功 能: 8K 字 节 F l a s h , 2 5 6 字 节 R A M, 3 2 位 I / O 口 线 , 看 门 狗 定 时 器,2 个 数 指 针 , 三 个 1 6 位 定 时 器 / 计 数 器 , 一 个 6 向 量 2 级 中 断 结 构 , 全 双 工 串 行 口 ,片 内 晶 振 及 时 钟 电 路 。 另 外 , A T 8 9 S 5 2 可 降 至 0 H z 静 态 逻辑 操 作 , 支 持 2 种 软 件 可 选 择 节 电 模 式 。 空 闲 模 式 下, C P U 停 止 工 作 , 允 许 R A M 、 定 时 器 / 计 数 器 、 串 口 、 中 断 继 续 工 作 。 掉电保 护 方 式 下 , R A M 内 容 被 保 存 , 振 荡 器 被 冻 结 , 单 片 机 一 切 工 作 停 止 , 直 到 下 一 个 中 断 或 硬 件 复 位 为 止 。
AT89S52具有以下特点:(1)与MCS-51单片机产品兼容;(2)8K字节在线系统可编程Flash存储器;(3)1000次擦写周期;(4)全静态操作:0Hz-33MHz;(5)三级加密程序存储器;(6)32个可编程I/O口线;(7)三个16位定时器/计数器;(8)8个中断源;(9)全双工UART串行通道;(10)低功耗空闲和掉电模式;(11)掉电后中断可唤醒;(12)看门狗定时器;(13)双数据指针;(14)掉电标识符。
2.1.2 AT89S52单片机引脚图
图2.1 单片机引脚图
2.1.3 AT89S52单片机引脚说明
P0口:P0口是一个8位漏极开路的双向I/O口。作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0不具有内部上拉电阻。在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。
P1口:P1口是一个具有内部上拉电阻的8位双向I/O 口,P1输出缓冲器能驱动4个TTL逻辑电平。此外,P1.0和P1.1分别作定时器/计数器2的外部计数输入(P1.0/T2)和定时器/计数器2的触发输入(P1.1/T2EX)。在flash编程和校验时,P1口接收低8位地址字节。
引脚号第二功能: 查看完整请+Q:351916072获取
P1.0:T2(定时器/计数器T2的外部计数输入),时钟输出
P1.1:T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)
P1.5:MOSI(在系统编程用)
P1.6:MISO(在系统编程用)
P1.7:SCK(在系统编程用)
P2口:P2口是一个具有内部上拉电阻的8位双向I/O口,P2 输出缓冲器能驱动4个TTL逻辑电平。对P2 端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX @DPTR)时,P2口送出高八位地址。在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX @RI)访问外部数据存储器时,P2口输出P2锁存器的内容。在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号。
P3口:P3口是一个具有内部上拉电阻的8位双向I/O口,P3输出缓冲器能驱动4个TTL逻辑电平。P3口亦作为AT89S52特殊功能(第二功能)使用,如下表所示。在flash编程和校验时,P3口也接收一些控制信号。
端口引脚第二功能:
P3.0:RXD(串行输入口)
P3.1:TXD(串行输出口)
P3.2:INTO(外中断0)
P3.3:INT1(外中断1)
P3.4:TO(定时/计数器0)
P3.5:T1(定时/计数器1)
P3.6:WR(外部数据存储器写选通)
P3.7:RD(外部数据存储器读选通)
此外,P3口还接收一些用于FLASH闪存编程和程序校验的控制信号。
RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将是单片机复位。
ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。一般情况下,ALE仍以时钟振荡频率的1/6输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。对FLASH存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能寄存器(SFR)区中的8EH单元的D0位置位,可禁止ALE操作。该位置位后,只有一条MOVX和MOVC指令才能将ALE激活。此外,该引脚会被微弱拉高,单片机执行外部程序时,应设置ALE禁止位无效。
PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S52由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲,在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 查看完整请+Q:351916072获取
EA/VPP:外部访问允许,欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器的指令。FLASH存储器编程时,该引脚加上+12V的编程允许电源Vpp,当然这必须是该器件是使用12V编程电压Vpp。
XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。
XTAL2:振荡器反相放大器的输出端。[1]
摘要 I
ABSTRACTII
第1章 绪 论1
1.1 系统背景.1
1.2 设计的意义和实现功能.2
1.3 本章小结.2
第2章 电路硬件选择3
2.1 单片机AT89S523
2.1.1 单片机的选择4
2.1.2 单片机引脚4
2.2 温度传感器DS18B206
2.3 1602LCD.9
2.4 蜂鸣器.11
2.5 本章小结.11
第3章 硬件系统设计.12
3.1 系统总体设计.12
3.2 各部分硬件电路设计.12
3.2.1 电源部分设计12
3.2.2 时钟电路设计13
3.2.3系统复位电路.13
3.2.4报警与控制电路设计.14
3.2.5 LCD显示电路设计15
3.2.6 按键电路16
3.2.7 温度检测电路设计16
3.3 本章小结.18
第4章 软件设计.19
4.1 概述.19
4.2 主程序.19
4.3 各模块子程序设计.21
4.4 Keil C5122
4.5 本章小结.23
第5章 系统仿真和测试.24
5.1 Protues简介24
5.2 对系统的测试.27
5.3 本章小结.27
总结与展望28
参考文献30
致谢31
附录、附图32 查看完整请+Q:351916072获取
版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/jsj/jsjkxyjs/3255.html