已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课课 程程 设设 计计 课程名称 单片机课程设计 题目名称 温度控制语音播报 专业班级 11 电信 2 班 学生姓名 学 号 指导教师 罗少轩 黄迎辉 陈章宝 二 一四年 三月 三十一 概述 1 系统介绍 在无人值守的情况下实现对温度实时监测 并在温度超过设定范围时及时通知相关人员 设 计了基于 STC89C52 单片机的智能语音报警系统 本设计采用了 STC89C52 单片机作为控制核 心 对数字温度传感器 DS18b20 控制 读取温度信号并进行计算处理 当测量温度超过设定的 温度范围时 控制语音芯片 WT588D 自动报警 整个设计系统分为部分 单片机控制 温度传 感器 液晶显示 语音播报以及独立按键控制等模块 2 硬件设计 2 1 MCS 51 单片机 MCS 51 单片机 8K 字节在系统可编程 Flash 存储器 1000 次擦写周期 全静态操作 0Hz 33Hz 三级加密程序存储器 32 个可编程 I O 口线 三个 16 位定时器 计数器八个中 断源 全双工 UART 串行通道 低功耗空闲和掉电模式 掉电后中断可唤醒 看门狗定时器 双数据指针 掉电标识符 P0 口 P0 口是一个 8 位漏极开路的双向 I O 口 作为输出口 每位能驱动 8 个 TTL 逻辑电 平 对 P0 端口写 1 时 引脚用作高阻抗输入 当访问外部程序和数据存储器时 P0 口也被作为低 8 位地址 数据复用 在这种模式下 P0 具有内部上拉电阻 P1 口 P1 口是一个具有内部上拉电阻的 8 位双向 I O 口 p1 输出缓冲器能驱动 4 个 TTL 逻辑电平 对 P1 端口写 1 时 内部上拉电阻把端口拉高 此时可以作为输入口使用 作为输入使用时 被外部拉低的引脚由于内部电阻的原因 将输出电流 IIL 此外 P1 0 和 P1 2 分别作定时器 计数器 2 的外部计数输入 P1 0 T2 和时器 计数器 2 的触发输入 P1 1 T2EX 具体如下表所示 引脚号第二功能 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 口 p2 输出缓冲器能驱动 4 个 TTL 逻辑电平 对 P3 端口写 1 时 内部上拉电阻把端口拉高 此时可以作为输入口使用 作为输入使用时 被外部拉低的引脚由于内部电阻的原因 将输出电流 IIL P3 口亦作为 STC89C52 特殊功能 第二功能 使用 如下表所示 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 脉冲 PSEN 程序储存允许 PSEN 输出是外部程序存储器的读选通信号 当 STC89C52 由外 部程序存储器取指令 或数据 时 每个机器周期两次 PSEN 有效 即输出两个脉冲 在此期 间 当访问外部数据存储器 将跳过两次 PSEN 信号 EA VPP 外部访问允许 欲使 CPU 仅访问外部程序存储器 地址为 0000H FFFFH EA 端必须保持低电平 接地 需注意的是 如果加密位 LB1 被编程 复位 时内部会锁存 EA 端状态 如 EA 端为高电平 接 Vcc 端 CPU 则执行内部程序存储器的指令 VCC 电源 GND 地 2 2 复位电路的设计 复位使单片机处于起始状态 并从该起始状态开始运行 AT89C52 的 RST 引脚为复位端 该引脚连续保持 2 个机器周期 24 个时钟振动周期 以上高电平 则可使单片机复位 内部复 位电路在每一个机器周期的 S5P2 期间采样斯密特触发器的输出端 该触发器可抑制 RST 引脚 的噪声干扰 并在复位期间不产生 ALE 信号 内部 RAM 处于不断电状态 其中的数据信息不 会丢失 也即复位后 只影响 SFR 中的内容 内部 RAM 中的数据不受影响 外部复位有上电 复位和按键电平复位 由于单片机运行过程中 其本身的干扰或外界干扰会导致出错 此时我 们可按复位键重新开始运行 为了便于本设计运行调试 复位电路采用按键复位方式 2 3 时钟电路设计 时钟电路是单片机的心脏 它控制着单片机的工作节奏 MCS 51 单片机允许的时钟频率是因 型号而异的 其典型值为 12MHZ AT89C51 内部有一个反相振荡放大器 XTAL1 和 XTAL2 分别是该反向振荡放大器的输入端和输出端 该反向放大器可配置为片内振荡器 石晶振荡和 陶瓷振荡均可采用 本设计采用的晶振频率为 12MHZ 其时钟电路如图 3 4 所示 51 系列单 片机还可使用外部时钟 在使用外部时钟时 外部时钟必须从 XTAL1 输入 而 XTAL2 悬空 2 4 电源电路设计 此设计采用 5V 直流电直接给整个模块供电 并连接 D3 用来检测系统是否已经供电 C8 为 滤波电容 可使总的供电电源更稳定 以保护单片机正常工作 2 5 串口通信电路 串口通信采用的是 MAX232 由于单片机所使用是 TTL 电平 高低电平为 0 5V 而上位机使用 的二 RS232 电平 高低电平范围为 12V 12V 所以要使用 MAX232 实现电平转换 其中 C3 C5 C6 C7 四个电容和 MAX232 共同组成电荷泵 实现改变电压的目的 J11 为串行接 口 2 号为接收串口 3 号为发射串口 5 号接地 与 MAX232 和外围器件共同组成串口通信 实现上位机与单片机之间的数据传输 2 6 独立按键 设计独立按键使用杜邦线与单片机相连 用于实现各种功能的控制 2 7 显示模块 采用 LCD1602 显示屏进行显示 LCD 显示屏是一种低压 微功耗的显示器件 可以显示大量 信息 除数字外 还可以显示字母 比传统的 LED 数码显示器的画面有了质的提高 虽然 LCD 显示器的价格比传统的 LED 数码管要贵些 但它的显示效果更好 是当今显示器的主流 所以采用 LCD 作为显示器 采用 LCD 更容易实现题目的要求 对后续的功能兼容性高 只 需将软件修改即可 可操作性强 易于度数 采用 1602 两行十六字符的显示 能同时显示时 间 温度 同时 R5 为电位器 可以用来调节 LCD1602 的屏幕显示亮度 2 8 语音播报模块 在本次设计中采用了 DS18B20 作为数据采集器 它的精度最少可以精确到 0 0625 完全可 以用来进行环境温度的测量 DS18B20 是美国 DALLAS 公司生产的单总线数字温度传感器 可 把温度信号直接转换成串行数字信号供微处理器处理 而且可以在一条总线上挂接任意多个 DS18B20 芯片 构成多点温度检测系统无需任何外加硬件 DS18B20 数字温度传感器可提供 9 12 位温度读数 读取或写入 DS18B20 的信息仅需一根总线 总线本身可以向所有挂接的 DS18B20 芯片提电源 而不需额外的电源 由 DS18B20 这一特点 非常适合于多点温度检测系统 硬 件结构简单 方便联网 在仓储管理 工农业生产制造 气象观测 科学研究以及日常生活中被 广泛应用 语音芯片采用的是 WT588D WT588D 是一款具有单片机内核的语音芯片 因此 可以冠 名为 WT588D 系列语音单片机 WT588D 系列语音单片机是广州唯创科技有限公司联合台湾 华邦共同研发出来的集单片机和语音电路于一体的可编辑语音芯片 功能多音质好应用范围广 性能稳定是 WT588D 系列语音单片机的特长 弥补了以往各类语音芯片应用领域狭小的缺陷 MP3 控制模式 按键控制模式 按键组合控制模式 并口控制模式 一线串口控制模式 三 线串口控制模式以及三线串口控制控制端口扩展输出模式 作为一款以语音为基础的芯片 完 全支持 6K 22KHz 采样率的音频加载 芯片的独到之处便是将加载的音频音质几乎完整无损 的展现出来 WT588D 系列语音单片机能通过配套软件 WT588D voiceChip 轻而易举的做到语 音组合播放 插入完美的陶冶静音 可控制的语音地址位能达到 220 个 每个地址位里能加 载可组合语音为 128 段语音 WT588D 系列语音单片机模块内置 SPI FLASH 存储器 WT588D 系列语音单片机芯片可根据实际用法外置 SPI FLASH 存储器 众多的控制模式 语 音组合只需更换 SPI FLASH 的内容 即可完全实现操作方式的切换 3 软件设计 3 1 开发工具介绍 单片的使用除了硬件 同样也要软件的使用 我们写汇编程序编程 CPU 可执行的机器码 有两种方法 一种是手工汇编 一种是机器汇编 机器汇编通过汇编软件变为机器码 用于 MSC 51 单片机的汇编软件有早期的 A51 随着单片机开发技术的不断发展 从使用普通汇编 语言到高级语言的不断发展 Keil 是目前最流行开发 MCS 51 系列单片机的软件 Keil c51 汇 编 PLM 语言和 C 语言的程序设计 界面友好 Keil 是美国 keil software 公司出品的 52 系列 兼容单片机 c 语言开发系统 用过汇编语言后再使用 C 语言来开发 体会更加深刻 Keil C51 软件提供丰富的库 与汇编相比 C 语言在功能上 结构上 可读性 可维护性上有 明显的优势 因而易学易用函数和功能强大的集成开发调试工具 全 Windows 界面 另外重要 的一点 只要看一下编译后生产的汇编代码 就能体会到 KeilC51DE 生成的目标代码效率非常 之高 多数语句生成的汇编代码很紧凑 容易理解 在开发大型软件时更能体现高级语言的优 势 3 2 程序设计 整个系统的功能实现是由硬件配合软件来实现的 当硬件基本确定后 软件的功能也就基 本确定下来了 从软件的功能不同可分为两大类 一是监控软件 主程序 它是整个控制系 统的核心 专门用来协调各执行模块和操作者的关系 二是执行程序 子程序 它是用来完 成各种实质性的功能如测量 计算 显示 通讯等 每一个执行软件是一个小的执行模块 各 执行模块规划好后 就可以规划监控程序了 首先要根据系统的总体功能选择一种最合适的监 控程序结构 然后根据实质行的要求 合理的安排监控软件和各执行模块之间的调度关系 主 程序需要以下几个模块 1 1602 液晶显示模块 向 1602 的显示送数 控制系统的显示部分 2 温度测试及处理模块 对芯片送过来的数据进行处理 3 语音播报模块 进行对当时的温度进行播报 4 温度采集模块 用于环境温度的采集 传给单片机 进行数据处理 主程序流程图如下 开始 结束 DS18b20 初 始化 1602 显示 温度 T 300 度 电机停止 工作 语音播报 YES NO 3 3 代码程序 1 主程序及显示模块 显示部分使用 1602 液晶显示 主函数实现对其他子函数的调用 从而实现温度控制播报 sbit rs P2 0 sbit wr P2 1 sbit lcden P2 2 sbit DC P0 5 电动机控制 bit flag0 uchar display 2 uchar bai shi ge uchar num 0 void delayus uint s uint i for i 0 i s i for i 0 i0 x for y 110 y 0 y void write com uchar com 液晶写指令 rs 0 P1 com lcden 0 delay 5 lcden 1 delay 5 lcden 0 void write data uchar date 液晶写数据 rs 1 P1 date lcden 0 delay 5 lcden 1 delay 5 lcden 0 void init 液晶初始化 wr 0 write com 0 x38 write com 0 x0c write com 0 x06 write com 0 x01 write com 0 x80 void distwo uchar add uchar temp 液晶显示两位数字 uchar shi ge shi temp 10 ge temp 10 write com 0 x80 add write data shi 0 x30 write data ge 0 x30 void diszifu uchar add uchar temp uchar i write com 0 x80 add for i 0 temp i 0 i write data temp i delay 5 void distemp uchar add uint temp bai temp 100 shi temp 100 10 ge temp 100 10 write com 0 x80 0 x40 add write data bai 0 x30 write data shi 0 x30 write data 0 x2e write data ge 0 x30 write data 0 x43 display 2 bai 300 当温度大于 30 度时 电动机工作 语音播报 DC 0 send oneline 13 delay 1500 sound temp if temp0 x for y 110 y 0 y void dsreset void send reset and initialization command uint i DS 0 i 103 while i 0 i DS 1 i 4 while i 0 i bit tmpreadbit void read a bit uint i bit dat DS 0 i i for delay DS 1 i i dat DS i 8 while i 0 i return dat uchar tmpread void read a byte date uchar i j dat dat 0 for i 1 i 8 i j tmpreadbit dat j 1 读出的数据最低位在最前面 这样刚好一个字节在 DAT 里 return dat void tmpwritebyte uchar dat write a byte to ds18b20 uint i uchar j bit testb for j 1 j 1 if testb write 1 DS 0 i i DS 1 i 8 while i 0 i else DS 0 write 0 i 8 while i 0 i DS 1 i i void tmpchange void DS18B20 begin change dsreset delay1 1 tmpwritebyte 0 xcc address all drivers on bus tmpwritebyte 0 x44 initiates a single temperature conversion uint tmp get the temperature float tt uchar a b dsreset delay1 1 tmpwritebyte 0 xcc tmpwritebyte 0 xbe a tmpread b tmpread temp b temp 0 x for y 110 y 0 y void delayu uint z uint x y for x z x 0 x for y 10 y 0 y void send oneline uchar add uchar i rst 0 delaym 1 rst 1 delaym 17 复位延时 17MS rst 1 delaym 6 delay 6ms sda 0 delaym 5 delay 5ms for i 0 i 1 sda 1 五 总结 近年来 随着集成电路的飞速发展 单片语音集成电路领域出现重大变革 产生了许多新 的技术和产品 开拓了更广泛的应用领域 并朝着更大容量 更优音质 更高智能 更具灵活 性的发展 通信设备电话机 智能仪器仪表 治安报警系统 语音报站 报数 报价器 语音讲 解系统 便携式语音记录装置 语音复读机 教学仪器 智能玩具和高档电子礼品等语音产品 飞进了我们的生活里 语音技术的发展使得许多系统更加友好 更方便我们对他们的控制 几乎在各个方面都可 以充分发挥它的优势 比如本文中的具有语音播报功能的水温控制系统 当然在其他方面也可 以有很好的应用 比如说具有语音功能的键盘 有语音功能的计算机控制系统 语音功能的家 电 玩具等等 语音功能的实现 可以减少事故的发生 更可以节省资源的利用 所以说 语音功能的实 现有助于生活的改善 有着良好的市场前景 然而 此设计毕竟有它的局限性 它并不能随时修改语音芯片中的存储信息 根据个人的 喜好来放音 因为其语音地址对于普通人来说是不可知的和不可操作的 在手机应用中 已经可以用自己的或者是下载的铃声来作为来电声 因此 语音系统必将 朝着有操作系统的嵌入式方向发展 来满足人们日益增长的需求 新的时代已经来临 嵌入式系统同语音系统的有机结合将越来越方便人类的利用 个人个 性的需求也将得到很好的满足 附录一 Bill of Materials Bill of Materials For Project 主系统主系统 PrjPCB No PCB Document Selected Source Data From 主系统主系统 PrjPCB Project 主系统主系统 PrjPCB FootprintCommentLibRefDesignatorDescriptionQuantity 08050 1uFCapC3 C4 C5 C6 C7 C8 Capacitor6 080522PCapC9 C10Capacitor2 080510uFCapC11Capacitor1 RAD 0 3104CapC12 C13Capacitor2 LED5LEDLED 发光二极管D3 D4 D5 3 SIP16CON16CON16J7 1 SIP20CON20CON20J8 J9Connector2 SIP9CON9CON9J10Connector1 DB9 fDB9DB9J11 1 SIP3CON3CON3J12 J23Connector2 SIP4CON4CON4J13 J14Connector2 SIP8CON8CON8J15Connector1 POWER3PCON3CON3J16 1 SIP2CON2CON2J17 J24Connector2 SIP1CON1CON1J20 J21 J22Connector3 SWSW PBSW PBK1 K2 K3 K4 K5 K6 K7 K8 S2 Switch9 TO 92CPNPPNPQ3PNP Transistor1 RP310KRESISTR5 1 08050Res2R6Resistor1 0805Res2Res2R7 R11 R13Resistor3 080510KRes2R8Resistor1 08051KRes2R9Resistor1 0805510Res2R10 R14Resistor2 POWER3X拨动开关拨动开关S1 1 DIP40AT89C52RCAT89C52RCU5 1 DIP16MAX232MAX232U6 1 Tl431DS18B20DS18B20U7 1 SIP3AMS1117 3 3LM117KU8CI LM117K1 JDQRELAY5VRELAY SPDTU9 1 DIP16WT588DWT588DU10 1 XTAL111 0592MHZXTALXT1Crystal Oscillator1 附录二 EA VPP 31 XTAL1 19 XTAL2 18 RST VPD 9 P3 7 RD 17 P3 6 WR 16 P3 2 INT0 12 P3 3 INT1 13 P3 4 T0 14 P3 5 T1 15 P1 0 T 1 P1 1 T 2 P1 2 3 P1 3 4 P1 4 5 P1 5 6 P1 6 7 P1 7 8 P0 0 39 P0 1 38 P0 2 37 P0 3 36 P0 4 35 P0 5 34 P0 6 33 P0 7 32 P2 0 21 P2 1 22 P2 2 23 P2 3 24 P2 4 25 P2 5 26 P2 6 27 P2 7 28 PSEN 29 ALE PROG 30 P3 1 TXD 11 P3 0 RXD 10 Vcc 40 Gnd 20 AT89C52RC U5 AT89C52RC 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 J8 CON20 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 J9 CON20 1 2 3 4 5 6 7 8 9 J10 CON9 1 2 3 4 J13 CON4 1 2 3 4 J14 CON4 VCC GND VCC VCC GND R6 0 VCC 12 XT1 11 0592MHZ C9 22P C10 22P GND X1X2 S2 SW PB VCC R9 1K C11 10uF R8 10K GND RST C1 1 V 2 C1 3 C2 4 C2 5 V 6 2Cout 7 2Cin 8 251out 9 25 1in 10 151 in 11 151out 12 1C in 13 1Cout 14 GND 15 VCC 16 MAX232 U6 MAX232 1 6 2 7 3 8 4 9 5 J11 DB9 1 2 3 J12 CON3 C5 0 1uF C6 0 1uF C7 0 1uF C3 0 1uF C4 0 1uF VCC GND 1 2 3 J16 CON3 C8
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 提升当地文化自信滑手的责任和挑战相关专题分析报告
- XR演播室技术面试高分攻略
- 车间主任生产任务分配与班组管理计划
- 中学物理教师面试常见问题
- 高标准下的过氧化技术工作安排及执行策略
- 中级水土保持工程师的考核结果分析与改进措施
- 复卷工安全教育培训资料
- 商务中心前台接待服务标准及实施计划
- 销售助理月度工作计划与客户支持方案
- 海洋工程潜水员初级职业技能鉴定在个人职业档案中的作用
- 浙江安全生产条例培训课件
- 铁路冬季劳动安全培训课件
- 教改课题申报书
- 博物馆人员安全培训课件
- 2024年西安培华学院公开招聘辅导员笔试题含答案
- 检验科日常医疗质量分析
- 2025年秋期国家开放大学《形势与政策》专题测验1-5+大作业答案
- 均质机全套课件
- 2025年学位英语题库真题及答案
- 女性素质提升培训课件
- 北京版六年级英语重点词汇归纳
评论
0/150
提交评论