




已阅读5页,还剩35页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
沈阳航空航天大学毕业设计(论文)uC/OS-教学实验系统开发-硬件系统设计摘 要嵌入式系统课程教学需要开发一套课堂教学演示系统,以80C51系列单片机为核心,具备数据采集、数字显示、键盘控制以及串行通信功能,可以开展C/OS-II嵌入式实时操作系统的原理、系统移植、BSP开发以及嵌入式系统设计与应用开发等教学内容,通过应用案例提升教学效果。根据任务要求,本文设计开发了一套嵌入式系统课程教学演示系统的硬件部分。该系统以AT89C52单片机为核心,以数字温度传感器DS18B20为温度传感器,数字显示采用工业字符型液晶1602LCD,以嗡鸣器作为温度阈值报警装置,设计RS-232C串行通信接口支持系统串行通信功能。基于该硬件系统,可以开发一套温度在线实时采集系统,具备温度数值实时显示、温度阈值报警功能,可通过键盘进行系统控制及参数设定,同时基于RS-232C串行接口可进行串行通信。经过系统调试,该硬件系统工作正常,实现了系统要求的各项功能,为应用开发提供了较好的硬件平台。关键词:嵌入式系统;80C51;教学系统;C/OS-IITeaching Experiment System Development uC/OS- Hardware system designAbstractIn order to Embedded Systems course intended to introduce case teaching model, teaching need to develop a test system, the application runs through the embedded system teaching process, to enhance teaching effectiveness. I have to do here is that the teaching demonstration system to be used C8052 Series MCU core, based on uC / OS-II real-time operating system, design a real-time temperature acquisition system with temperature-line detection, LCD display, high and low alarm, RS-232 serial communications. Temperature sensor DS18B20, is a network of available high-precision digital temperature sensor, all-digital output signal with the unique advantages of a single bus; LCD using 1602 model, dual line 16 character; warning device is a buzzer alarm ; RS-232 serial communication PC and the next bi-directional communication. In the debugging process to achieve a temperature acquisition and display, keyboard control and low temperature alarm limit, the buzzer sounds (ringing sound is very small).Keywords: microcontroller; communication; embedded目 录1 绪论11.1课题背景11.2课题任务及要求11.3课题内容及安排22 系统总体方案设计33单片机模块53.1单片机89C52各管脚描述53.2时钟电路73.3复位电路73.4外部RAM扩展84 RS-232串行通信104.1 串口基本结构104.2 电平转换电路设计114.3 电路设计145 温度采集155.1 DS18B20工作原理155.2 电路设计196 LCD显示及报警206.1 LCD显示206.2 蜂鸣报警217 键盘设计238 硬件的调试分析258.1串行通信的调试258.2温度采集的调试268.3 报警的调试278.4 调试问题分析28结论29参考文献30致 谢31附录 元件清单32附录II 仿真原理图33331 绪论1.1课题背景根据IEEE(电气和电子工程师协会)的定义,嵌入式系统是“控制、监视或者辅助装置、机器和设备运行的装置”(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。从中可以看出嵌入式系统是软件和硬件的综合体,还可以涵盖机械等附属装置。其特点为应用的特定性和广泛性;技术、知识、资金的密集性;高效性;较长的生命周期;高可靠性;软硬一体,软件为主;无自举开发能力;目前国内一个普遍被认同的定义是:以应用为中心、以计算机技术为基础、软件硬件可裁剪、适应应用系统对功能、可靠性、成本、体积、功耗严格要求的专用计算机系统。在中国嵌入式系统领域,比较认同的嵌入式系统概念是:嵌入式系统是以应用为中心,以计算机技术为基础,并且软硬件可裁剪,适用于应用系统对功能、可靠性、成本、体积、功耗有严格要求的专用计算机系统。它一般由嵌入式微处理器、外围硬件设备、嵌入式操作系统以及用户的应用程序等四个部分组成,用于实现对其他设备的控制、监视或管理等功能。嵌入式系统本身是一个相对模糊的定义。目前嵌入式系统已经渗透到我们生活中的每个角落,工业、服务业、消费电子,而恰恰由于这种范围的扩大,使得“嵌入式系统”更加难于明确定义。随着国内外,嵌入式系统的快速发展和广泛运用,嵌入式系统越来越重要了。所以嵌入式课程也被引进我们教学系统里。为了更直观的为学生展现嵌入式系统运用,这里我们要运用嵌入式系统开发一套教学开发系统,提高教学效果。1.2课题任务及要求该嵌入式系统教学演示系统拟采用80C52系列单片机为核心,基于uC/OS-II实时操作系统,设计一套温度实时采集系统,具有温度在线检测、LCD显示、高低报警及RS232串行通信功能。温度传感器采用DS18B20的硬件系统设计。1.3课题内容及安排uC/OS-教学实验系统开发-硬件系统设计,进行了详细的介绍,共分为5章。第1章简要介绍了整个课题的研究背景、国内外现状、科学意义及整个任务的要求安排;第2章是对系统总体设计方案的介绍;第3章是介绍单片机模块,包括时钟电路和复位电路以及单片机的外部RAM扩展。第4章是RS-232串行通信的设计,主要叙述RS-232串行通信设计思路和方法; 第5章介绍温度采集设计;第6章介绍的是LCD显示;第7章讲的是键盘控制系统;第8章是报警设计;第9章为各单元的调试分析。2 系统总体方案设计嵌入式系统的快速发展和广泛运用,使其越来越重要了。所以嵌入式课程也被引进我们教学系统里。为了更直观的为学生展现嵌入式系统运用,这里我们要运用嵌入式系统开发一套教学开发系统,提高教学效果。系统功能分为5部分,分别是RS-232串行通信、温度在线采集(温度传感器采用DS18B20)、LCD显示、高低报警、键盘控制。总原理框图如图2-1:单片机被侧温度DS18B20传感器PC机MAX232LCD显示高低限报警键盘控制图2-1总原理框图各部分模块实现功能的简介:(1)温度采集采用数字温度芯片DS18B20测量温度,输出信号全数字化。DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS1820和微控制器AT89C52构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。(2)串口通信串口通信是一种在计算机与计算机之间或者计算机与外围设备之间数据的常用方法。串行通信使用计算机内建的串口,用户无需再购买任何特殊硬件,只要一根串口线就可以达到发送或接收数据的目的,而且不失测试的准确性。采用RS-232接口标准可以实现比较短距离的测量,若采用RS-485接口标准可以实现更远的传输距离。所以,串口通信现在仍广泛应用于数据采集、监测监控以及仪表控制等场合。本系统采用RS-232接口进行串口通信,单片机通过此模块发送数据给上位机。(3)报警系统在这里使用压电蜂鸣器,这种蜂鸣器只需要在其两引脚线上加3-15V的直流电压,就能产生3kHz左右的蜂鸣震荡音响,其结构简单,耗电少,且更适于单片机系统中应用。(4)键盘控制系统键盘控制需要4个按键,一个要控制键盘输入的开始、一个要控制数据的递加、另一个控制数据的递减。这里采用独立式键盘接口电路,特点是直接采用I/O结构成单个键电路,各个键之间相互独立。(5)LCD显示采用了1602型号的LCD,实现双行16字节显示。3单片机模块主控电路中,以单片机为主体,通过分析键盘输入的数字值,对RS-232和DS18B20写入相应的控制字。它是系统的大脑。单片机(MICROCONTROLLER,又称微控制器)是在一块硅片上集成了各种部件的微型机算计,这些部件包括中央处理器CPU、数据存贮器RAM、程序存贮器ROM、定时器/计数器和多种I/O接口电路。3.1单片机89C52各管脚描述单片机引脚图如图3-1所示:图3-1 单片机89C52引脚结构图Vss;地。Vcc:电源。P0.0-0.7: P0口是开漏双向口可以写为1,使其状态为悬浮用作高阻输入。P0也可以在访问外部程序存储器时作地址的低字节在访问外部数据存储器时作数据总线此时通过内部强上拉输出1。P1.0-1.7: P1口是带内部上拉的双向I/O口,向P1口写入1时,P1口被内部上拉为高电平可用作输入口。当作为输入脚时被外部拉低的P1口会因为内部上拉而输出电流(见DC 电气特性)P1口第2功能T2(P1.0)定时/计数器2 的外部计数输入/时钟输出(见可编程输出)T2EX(P1.1)定时/计数器2重装载/捕捉/方向控制P2.0-2.7: P2口是带内部上拉的双向I/O口,向P2口写入1时,P2口被内部上拉为高电平可用作输入口。当作为输入脚时被外部拉低的P2口会因为内部上拉而输出电流(见DC 电气特性) 在访问外部程序存储器和外部数据时分别作为地址高位字节和16位地址(MOVX DPTR)此时通过内部强上拉传送1。当使用8位寻址方式(MOVRi)访问外部数据存储器时,P2口发送P2特殊功能寄存器的内容P3.0-3.7: P3口是带内部上拉的双向I/O口,向P3口写入1时,P3口被内部上拉为高电平可用作输入口。当作为输入脚时被外部拉低的P3口会因为内部上拉而输出电流(见DC 电气特性)P3 口还具有以下特殊功能:RxD(p3.0)串行输入口。TxD(P3.1)串行输出口。INT0(P3.2)外部中断0。INT1(P3.3)外部中断1。T0(P3.4)定时器0外部输入。T1(P3.5)定时器1外部输入。WR(P3.6)外部数据存储器写信号。RD(P3.7)外部数据存储器读信号。RST:复位 。当晶振在运行中只要复位管脚出现2 个机器周期高电平即可复位内部有扩散电阻连接到Vss 仅需要外接一个电容到Vcc 即可实现上电复位。ALE:地址锁存使能 。在访问外部存储器时输出脉冲锁存地址的低字节在正常情况下ALE 输出信号恒定为1/6 振荡频率并可用作外部时钟或定时注意每次访问外部数据时一个ALE 脉冲将被忽略ALE 可以通过置位SFR 的auxlilary.0 禁止置位后ALE 只能在执行MOVX 指令时被激活。PSEN:程序存储使能当执行外部程序存储器代码时PSEN 每个机器周期被激活两次在访问外部数据存储器时PSEN无效访问内部程序存储器时PSEN 无效。EA/Vpp:外部寻址使能/编程电压在访问整个外部程序存储器时EA 必须外部置低如果EA 为高时将执行内部程序除非程序计数器包含大于片内FLASH 的地址该引脚在对FLASH 编程时接5V/12V 编程电压(Vpp) 如果保密位1 已编程EA 在复位时由内部锁存。XTAL1:晶体1。反相振荡放大器输入和内部时钟发生电路输入。XTAL2:晶体2。反相振荡放大器输出。3.2时钟电路XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。晶振的频率可以在1MHz-24MHz内选择。电容取30PF左右。引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。这个放大器与作为反馈元件的片外石英晶体或者陶瓷谐振器一起构成自激振荡器5。片外石英晶体或者陶瓷谐振器及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,这里采用电容22pF,晶振采用11.0592MHz。晶振电路如图3-2所示:图3-2时钟电路图3.3复位电路MCU-89C52的外部复位电路有上电自动复位和手动按键复位。上电复位用电容充电来实现。手动按键复位又分为按键电平复位和按键脉冲复位。本设计采用上电自动复位方式。如下图3-3所示:图3-3复位电路图3.4外部RAM扩展由于MCS-51系列单片机外部RAM为64K,在往我的硬件烧入嵌入式操作程序是,外部RAM远不能满足需要,就AT89C52论MCS-51系列单片机大容量RAM的扩展方法。数据存储器就是随机存储器(Random Access Memory)简称为RAM。数据存储器扩展用典型芯片,常用的数据存储器有6116、6264等。以6116为例进行说明,其引脚如图3-4所示:图3-4 6116芯片6116芯片各接口介绍:A10A0 地址线,D7D0 数据线,CS 片选信号,WE 写选通信号,Vcc 电源(+5 V)、GND地,OE 数据输出允许信号,6116芯片的容量为2K8位:有102416个基本存储电路,有10242个存储单元,形成1286个存储阵列。需要11个存储线,7根用于行地址译码,4根用于列地址译码,可以选择2048个存储单元中的任意一个。每个存储单元有8位,是通过数据线写入或读出的。6116共有4种工作方式,如表3-1所示表3-1 6116的工作方式状 态CSOEWED7D0未选中1高 阻禁 止011高 阻读 出001数据读出写 入010数据写入单片机的外部数据RAM扩展电路原理图如图3-5所示:图3-5 单片机外部RAM扩展电路图4 RS-232串行通信PC机与单片机之间可以由RS-232C、接口相连,在PC机系统内部装有异步通信适配器,利用它可以实现异步串行通信。该适配器的核心元件是可编程的Intel 8250芯片,它使PC机有能力与其他具有标准的RS-232C接口的计算机或设备进行通信。而51单片机本身具有一个全双工的串行口,因此只要配以电平换换的驱动电路、隔离电路就可以组成一个简单的通信接口。同样,PC机和单片机之间的通信也分为双机通行与多机通信。4.1 串口基本结构单片机的串行口的功能是与外部器件进行串行数据通信。串行口电路也称为通用异步收发器(UART)。从原理上说,一个UART包括发送器电路、接收器电路和控制电路。8052单片机的UART已集成在其中,构成一个全双工串口,全双工通信是指同时可以作双向通信,两个即可同时发送、接收,又可同时接收、发送。其示意图如图4-1所示。这个口即可以实现串行异步通信,也可以作为同步移位寄存器使用。发 送发 送接 受接 受图4-1 全双工通信示意图8052的串行口通过引脚RXD(P3.0串行口数据接收端)和引脚TXD(P3.1串行口数据发送端)与外部设备进行串行通信。如图4-2为8052单片机内部串行口结构示意图。图4-2 8052单片机内部串行口结构示意图图中共有两个串口双缓冲寄存器(SBUF),一个是发送寄存器,一个是接收寄存器,以便8052能以全双工方式进行通信。串行发送时,从片内总线向发送SBUF写入数据;串行接收时,从接收SBUF向片内总线读出数据。它们都是可寻址的寄存器,但因为发送与接收不能同时进行,所以给这两个寄存器赋一同一地址99H。在接收方式下,串行数据通过引脚RXD进入,由于在接收寄存器之前还有移位寄存器,从而构成了串行接收的双缓冲结构,以避免在数据接收过程中出现帧重叠错误,即在下一帧数据来时,前一帧数据还没有走。在发送方式下口,串行数据通过引脚TXD发出。与接收数据情况不同,发送数据时,由于CPU是主动的,不会发生帧重叠错误,因此发送电路就不需要双缓冲结构,这样可以提高数据发送速度。4.2 电平转换电路设计和其他的单片机器件一样,作为单片机的标准外围电路,串口的电平转换也有专用的芯片,但也可以使用三极管自行调整电平匹配。本次设计我主要采用专用芯片进行电平转换的方法。目前较为广泛的是使用集成电路转换器件,如MC1488、SN75150芯片可完成TTL电平到EIA电平的转换,而MC1489、SN75154可实现EIA电平到TTL电平的转换。MAX232芯片可完成TTL和RS-232C的双向电平转换。在这里我采用的芯片是MAX232。如图4-3所示:图4-3 电平转换芯片MAX232 在电气特性上RS-232C采用负逻辑,要求高、低两信号间有较大的幅度,标准规定为:逻辑1:-5-15V ,逻辑0:+5+15V 。而单片机的信号电平与TTL电平兼容,逻辑1大于+2.4V,逻辑0为0.4V以下。很显然,RS-232C信号电平与TTL电平不匹配,为了实现两者的连接,必须进行电平转换。MAX232C为单一+5V供电,内置自升压电平转换电路,一个芯片能同时完成发送转换和接收转换的双重功能。MAX232 的引脚主要为5个部分:(1)外接电容:有5个外接电容、进行电压匹配和电源去耦。(2)TTL的输入:电路TTL电平的输入引脚11和10引脚,连接单片机的TXD输出端口。(3)TTL的输出:电路TTL电平的输出引脚12和9引脚,连接单片机的RXD输出端口。(4)RS-232的输入:两路RS-232电平的输入引脚13和8引脚,连接RS-232的TXD的输出端口。(5)RS-232的输出:两路RS-232电平的输出引脚14和7引脚,连接RS-232的RXD的输出端口。通过MAX232的TTL和RS-232 的输入/输出端口,自动地调节了单片机串口的TTL电平信号和RS-232的串行通信信号的电平匹配。电平转换芯片与单片机的连接电路如下:地址分配和连接:只列出和系统相关的、关键部分的单片机与各个模块管脚的连接和相关的地址分配。MAX232的11引脚:MAX232 的TTL电平输入引脚,连接单片机的TXD,TTL串口输入信号。MAX232的12引脚:MAX232的TTL电平输出引脚,连接单片机的RXD、TTL串口输入信号。MAX232的14引脚:MAX232 的RS-232电平输出引脚,连接RS-232的RXD,RS-232的串口输入信号。MAX232的13引脚:MAX232 的RS-232电平输入引脚,连接RS-232的TXD,RS-232的串口输出信号。MAX232和单片机串口连接的电路如图4-4:图4-4 MAX232和单片机串口连接电路图4.3 电路设计 PC机和单片机最简单的连接时零调制三线经济系。这是进行全双工通信所必需的最少线路,因为51单片机输入、输出电平为TTL电平,但由于单片机的TTL逻辑电平和RS-232的电气特性完全不同,RS-232的逻辑0电平规定为+5+15V之间,逻辑1电平为-5-15V之间,因此在将PC机和单片机的TXD和RXD交叉连接时必须进行电平转换,这里我选用的是MAX232电平转换芯片。将PC机键盘的输入发送给单片机,单片机收到PC机发来的数据后,会送统一数据给PC机。并在屏幕中显示出来。只要屏幕中显示出来的字符与所键入的字符相同,说明二者之间的通信正常。总串行通信图为图4-5所示: 图4-5 串行通信电路图5 温度采集采用数字温度芯片DS18B20测量温度,输出信号全数字化。DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS1820和微控制器AT89C51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。5.1 DS18B20工作原理采用数字温度芯片DS18B20测量温度,输出信号全数字化。DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。便于单片机处理及控制,省去传统的测温方法的很多外围电路。且该芯片的物理化学性很稳定,它能用做工业测温元件,此元件线形较好。在0100摄氏度时,最大线形偏差小于1摄氏度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS1820和微控制器AT89C51构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。(1)DS18B20的介绍DS18B20型单线智能温度传感器,属于新一代适配微处理器的智能温度传感器。全部传感元件及转换电路集成在形如一只三极管的集成电路内。与传统的热敏电阻相比,它能够直接读出被测温度,并且可根据实际要求通过简单的编程实现912位的数字值读数方式。其可以分别9375ms和750ms内完成9位和12位的数字量,最大分辨率为00625 , 而且从DS18B20读出或写入DS18B20的信息仅需要一根口线(单线接口)读写。(2)DS18B20的性能特点 DSI8B20可将被测温度直接转换成计算机能识别的数字信号输出,温度值不需要经电桥电路先获取电压模拟量,再经信号放大和AD转换成数字信号,解决了传统温度传感器存在的因参数不一致性,在更换传感器时会因放大器零漂而必须对电路进行重新调试的问题,使用方便 DS18B20能提供9到12位温度读数,精度高,且其信息传输只需1根信号线,与计算机接口十分简便,读写及温度变换的功率来自于数据线而不需额外的电源 每一个DS18B20都有一个惟一的序列号,这就允许多个DS18B20连接到同一总线上尤其适合于多点温度检测系统 负压特性:当电源极性接反时,DS18B20虽然不能正常工作,但不会因发热而烧毁 正是由于具有以上特点,DS18B20在解决各种误差、可靠性和实现系统优化等方面与传统各种温度传感器相比,有无可比拟的优越性,因而广泛应用于过程控制、环境控制、建筑物、机器设备中的温度检测。其外形和管脚如图如图4-1所示:图4-1 DS18B20外部形状及管脚图(3)DS18B20与单片机的典型接口设计DS18B20测温系统具有测温系统简单、测温精度高、连接方便、占用口线少等优点。Dsl8B20与单片机的硬件连接有两种方法:一是Vcc接外部电源,GND接地,I/0与单片机的I/0线相连;二是用寄生电源供电,此时,UDD和GND接地,I/0接单片机I/0。无论是哪种供电方式,I/0口线都要接47k Q左右的上拉电阻。图4给出了DSl8B20与微处理器的典型连接。 DS18B20寄生电源供电方式:如下面图7所示,在寄生电源供电方式下,DS18B20从单线信号线上汲取能量:在信号线DQ处于高电平期间把能量储存在内部电容里,在信号线处于低电平期间消耗电容上的电能工作,直到高电平到来再给寄生电源(电容)充电。 独特的寄生电源方式有三个好处:a 进行远距离测温时,无需本地电源b 可以在没有常规电源的条件下读取ROMc 电路更加简洁,仅用一根I/O口实现测温要想使DS18B20进行精确的温度转换,I/O线必须保证在温度转换期间提供足够的能量,由于每个DS18B20在温度转换期间工作电流达到1mA,当几个温度传感器挂在同一根I/O线上进行多点测温时,只靠4.7K上拉电阻就无法提供足够的能量,会造成无法转换温度或温度误差极大。因此,该电路只适应于单一温度传感器测温情况下使用,不适宜采用电池供电系统中。并且工作电源VCC必须保证在5V,当电源电压下降时,寄生电源能够汲取的能量也降低,会使温度误差变大。 DS18B20寄生电源强上拉供电方式:改进的寄生电源供电方式如下面图7所示,为了使DS18B20在动态转换周期中获得足够的电流供应,当进行温度转换或拷贝到E2存储器操作时,用MOSFET把I/O线直接拉到VCC就可提供足够的电流,在发出任何涉及到拷贝到E2存储器或启动温度转换的指令后,必须在最多10S内把I/O线转换到强上拉状态。在强上拉方式下可以解决电流供应不走的问题,因此也适合于多点测温应用,缺点就是要多占用一根I/O口线进行强上拉切换。(4)DS18B20 的内部结构主要包括寄生电源、温度传感器、64 位激光ROM 单线接口、存放中间数据的高速暂存器(内含便笺式RAM),用于存储用户设定的温度上下限值的TH 和TL 触发器存储与控制逻辑、8 位循环冗余校验码(CRC)发生器等七部分。64位光刻ROM 的排列是:开始8位是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码。光刻R0M 的作用是使每一个DS18B20都各不相同,这可实现一根总线上挂接多个DS18B20的目的。暂存存储器包含了8个连续字节,前2个字节是测得的温度信息,第1个字节的内容是温度的低8位,第2个字节是温度的高8位。第3个和第4个字节是TH、TL的易失性拷贝,第5个字节是结构寄存器的易失性拷贝,这3个字节的内容在每一次上电复位时被刷新。第6、7、8个字节用于内部计算。第9个字节是冗余检验字节。其DS18B20的内部结构图如图4-2所示:图4-2 DS18B20的内部结构(5)DS18B20 的测温原理DS1820测温原理如图4-3所示。预置斜率累加器计数器1计数器2=0=0低温度系数晶振高温度系数晶振比较预置温度寄存器停止加1图4-3 DS18B20测温原理图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,DS1 8B20测量温度原理停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度。在正常测温情况下,DS18B20 的测温分辨力为0.5,可采用下述方法获得高分辨率的温度测量结果:首先用DS18B20 提供的读暂存器指令(BEH)读出以0.5为分辨率的温度测量结果,然后切去测量结果中的最低有效位(LSB),得到所测实际温度的整数部分TZ,然后再用BEH 指令取计数器1 的计数剩余值CS 和每度计数值CD。考虑到DS18B20测量温度的整数部分以0.25、0.75为进位界限的关系,实际温度TS 可用下式计算:TS=(TZ0.25) (CDCS)/CD5.2 电路设计采用温度芯片DS18B20测量温度,可以体现系统芯片化这个趋势。部分功能电路的集成,使总体电路更简洁,搭建电路和焊接电路时更快。而且,集成块的使用,有效地避免外界的干扰,提高测量电路的精确度。所以集成芯片的使用将成为电路发展的一种趋势。本方案应用这一温度芯片,也是顺应这一趋势。原理图如图4-4所示图4-4DS18B20电路原理图6 LCD显示及报警现在的字符型液晶模块已经是单片机应用设计中最常用的信息显示器件了。1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。6.1 LCD显示1602型LCD可以显示2行16个字符,有8位数据总线D0D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能。1602型LCD的接口信号说明,如表6-1所示:表6-1 LCD1602接口说明编号符号引脚说明编号符号引脚说明1VSS电源地9D2Data I/O2VDD电源正极10D3Data I/O3VL液晶显示偏压信号11D4Data I/O4RS数据/命令选择(H/L)12D5Data I/O5R/W读写选择端(H/L)13D6Data I/O6E使能信号14D7Data I/O7D0Data I/O15BLA背光源正极8D1Data I/O16BLK背光源负极基本操作程序:读状态:输入:RS=L,RW=H,E=H输出:D0D7=状态字读数据:输入:RS=H,RW=H,E=H输出:无写指令:输入:RS=L,RW=L,D0D7=指令码,E=高脉冲 输出:D0D7=数据写数据:输入:RS=H,RW=L,D0D7=数据,E=高脉冲 输出:无LCD的D0-D7分别于单片机的P0.0P0.7相连接并与排阻RP相连接;LCD的RS、RW、E分别于P.0-P2.2相连; LCD的VSS、VEE同时接地,VDD接电源。这样就组成了单片机与LCD的连接图,如图6-1所示:图6-1LCD连接图6.2 蜂鸣报警 在这里使用压电蜂鸣器,这种蜂鸣器只需要在其两引脚线上加3-15V的直流电压,就能产生3kHz左右的蜂鸣震荡音响,其结构简单,耗电少,且更适于单片机系统中应用。 压电蜂鸣器,约需10mA的驱动电流。因此,可以使用三极管加电阻驱动蜂鸣器,当单片机烧入程序,硬件通电,蜂鸣器实现蜂鸣般鸣响。其电路图如图6-2所示:图6-2 蜂鸣报警电路图7 键盘设计键盘分为独立键盘和矩阵键盘,独立键盘有独立键盘的好处,矩阵键盘有矩阵键盘的有点。在不同时刻用不同键盘,这要看你的硬件设计要求。以下是个键盘的特点:(1)矩阵键盘的特点在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,一个端口(如P1口)就可以构成44=16个按键,比之直接将端口线用于键盘多出了一倍,而且线数越多,区别越明显,比如再多加一条线就可以构成20键的键盘,而直接用端口线则只能多出一键(9键)。由此可见,在需要的键数比较多时,采用矩阵法来做键盘是合理的。 如图7-1所示:图7-1 44矩阵键盘矩阵式结构的键盘显然比直接法要复杂一些,识别也要复杂一些,列线通过电阻接正电源,并将行线所接的单片机的I/O口作为输出端,而列线所接的I/O口则作为输入。这样,当按键没有按下时,所有的输入端都是高电平,代表无键按下。行线输出是低电平,一旦有键按下,则输入线就会被拉低,这样,通过读入输入线的状态就可得知是否有键按下了。(2)独立键盘的特点独立式键盘中,各按键相互独立,每个按键各接一根输入线,每跟输入线上按键工作状态都不影响其他输入线上的工作状态。因此,通过检测输入线上的电平状态就很容易的判断出是否有键按下。独立式键盘电路配置灵活,软件结构简单。但每个按键占用一根输入线,在按键较多时,输入口浪费大,丹炉结构显得很复杂。故此键盘适合按键较少的或操作速度教过的场合。如图7-2所示:图7-2 独立式键盘这里我们需要较少的按键,就能实现我们想要实现的键盘控制系统,这样独立键盘对于我们来说就有点浪费了,独立式键盘设计符合我们要求。我们硬件的键盘控制需要4个按键,一个要控制温度上限增加、一个要控制温度上限减少、一个控制在LCD上显示温度的上下限,一个控制传输采集温度的串行通信。这里采用独立式键盘接口电路,特点是直接采用I/O结构成单个键电路,各个键之间相互独立。如图7-3所示:图7-3 独立开关设计图8 硬件的调试分析硬件的调试分为三大类:串行通信的调试、温度采集调试、报警调试。串行通信实现单片机与PC机数据的双向传输。温度的采集是利用传感器DS18B20,采集的温度在LCD上显示,实现传感器DS18B20采集功能。报警装置实现在温度超过预设值范围之外是,蜂鸣器鸣响。在做硬件时,我们要把所有的地线和电源线分别引到一根线上,这样好方便我们调试硬件。8.1串行通信的调试通常PC机和单片机之间的通信是通过串行总线RS-232实现的。因此采用一种以MAX232为核心的通信接口电路。该接口电路适用于由一台PC机与多个8052单片机串行通信的设计,其原理和方法同样适用于PC机与其它单片机之间的串行数据通信。其流程图见图8-1:PC机键盘CRTRS-232接口电路单片机图8-1 单片机与PC机通信流程图该框图中,起着重要作用的是RS-232C通信接口电路。它是上位机和下位机之间信息传递的枢纽,一切数据的传输必需由它完成,上位机直接利用它的RS-232串行口,为此,采用了RS-232串行通信来接收或上传数据和指令。但RS-232信号的电平和单片机串口信号的电平不一致,必须进行二者之间的电平转换。在此电路中,采用MAX232实现TTL逻辑电平和RS-232电平之间的相互转换。 MAX232由单一的+5V电源供电,只需配接5个高精度10F/50V的钽电容即可完成电平转换。因此,避免了用1488和1489时必需两路电源的麻烦。转换后的串行信号TXD、RXD直接与PC机的串行口连接。如此设计,既可发挥出PC机强大的计算和显示功能,又可以体现出单片机灵活的控制功能,有利于对现场信号的实时采集、处理和监控。PC机与单片机8052都可发送和接收数据,进行可以串行通信; PC机接收单片机发送来温度数据并送到窗口显示;上位机程序即PC端程序采用串口调试小助手制作,窗口简单,功能完善,下位机程序即单片机端采用C语言进行开发。系统功能模块图见图8-2和8-3:主程序及窗口键盘处理数据发送数据接收窗口显示图8-2 上位机模块主程序键盘处理数据发送数据接收LCD显示图8-3 下位机模块8.2温度采集的调试利用传感器DS18B20采集温度,先往单片机内烧写要编辑温度采集及显示程序的,放入到所做的硬件系统上。在把传感器DS18B20三个引脚中间的引脚接单片机上,其余两引脚分别接地线和电源线。最后接通电源看传感器是否采集到温度,并看是否显示在LCD上。如果没有没有显示,可能有两个问题:一个是传感器问题,一个是LCD问题。在这里我们先要看看LCD是否连接错误,首先我们往单片机内烧写一个LCD显示程序,放到所作的硬件上。再把硬件的地线和电源线分别接到试验箱的地线和电源线上。看LCD是否显示数据,显示证明LCD的硬件部分连接正确;不显示则要看看硬件的连接是否有虚连或个别地方短路,找出问题,并解决它,使LCD正常显示。如果LCD显示正确,那只有是温度传感器DS18B20的问题了。首先我们要检查个连线是否正确,地线和电源线是否接反,程序中的I/O口是否和硬件连接相同。如果都没问题,那就是传感器DS18B20坏了,更换一个传感器就行了。问题都解决之后,我们在重新运行硬件,显示出我们要实现的结果。在LCD显示结果时,最开始显示温度是85C(传感器DS18B20固有的温度),再跳转成实际测得的实际温度。其显示图如图8-4所示:图8-4 温度调试图8.3 报警的调试报警调试比较简单,在连接的硬件上引出三根线分别为蜂鸣器的地线、电源线、连接I/O口线。蜂鸣器的地线和电源线分别接试验箱的地线和电源线,把蜂鸣器连接I/O线接到电源线上,看蜂鸣器是否鸣响。鸣响则连接方式好使,不响可能是蜂鸣器坏了或是连接的三极管问题。蜂鸣器是否坏了,很好检查,引出蜂鸣器的地线和电源线分别接到试验箱上。看蜂鸣器是否鸣响,响则好使,不响则坏了。如果蜂鸣器好使,那我们的报警装置的驱动是不好用的,驱动不了蜂鸣器。这个问题只可能出现在三极管上,首先我们要检查连线问题,一切正常那只可能是三极管坏了或是拿错三极管。换个三极管再调试,不好使的话,那只可能是我们拿错三极管,把PNP型号错当NPN型号了。换一个NPN型号的在调试,那结果一定达到,蜂鸣器鸣响。8.4 调试问题分析在我们调试硬件过程中,出现的问题可能很小,但我们浪费的精力很多。这是我们没把可能出现的问题找到,有可能是器件烧坏了,也许是连线虚连,也可能是连线短路,跟有可能是粗心没连通电源,这就要求我们细心的检查每一部分,不要漏掉每一部分。在调试出现问题时,我们首先要做的是看看电源是否接通,你的地线和电源线是否连接到试验箱上;其次是查看你的连线是否短路,要用万用表每根线的检查一遍;再是连线是否虚连或连错方向,这要求你要细心查看你的连线;最后可能是你的安装器件坏了或按错了器件,这要求你把以上部分都检查无误后再更换器件。当我们把所有问题都解决之后,显示出我们要求显示的数据时,那是一种成就感和自豪感,令人很兴奋。结论为了嵌入式系统课程拟引入案例教学模式,需要开发一套教学试验系统,应用贯穿嵌入式系统教学过程,提升教学效果。做了一套温度实时采集系统,实现了温度在线检测、LCD显示、高低报警及RS232串行通信功能。系统主要具备以下功能特点:(1)温度传感器采用DS18B20,在LCD上直观的显示了数字温度。(2)LCD是用1602型号,实现双行1
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025江苏苏州市张家港市美利肯纺织(张家港)有限公司招聘10人笔试参考题库附带答案详解
- 2025广西玉柴铸造有限公司实习生招聘100人笔试参考题库附带答案详解
- 2025年甘肃西北永新集团招聘11人笔试参考题库附带答案详解
- 2025年河南省储备粮管理集团有限公司招聘12人笔试参考题库附带答案详解
- 2025年四川绵阳机场(集团)有限公司春季招聘18人笔试参考题库附带答案详解
- 2025年中核嘉华公司春季招聘66人笔试参考题库附带答案详解
- 2025国网中兴有限公司高校毕业生招聘(第二批)笔试参考题库附带答案详解
- 2025四川日报报业集团春季招聘22人笔试参考题库附带答案详解
- 2025中核集团所属中核二二社会招聘4人笔试参考题库附带答案详解
- 2025中亚能源有限责任公司境外投资项目中大中国石油公司招聘61人笔试参考题库附带答案详解
- 2025年9月江苏扬州市第二人民医院(苏北人民医院北区医院) 招聘备案制工作人员12人考试参考题库及答案解析
- 2025年修订《仲裁法》学习
- 患者走失应急演练脚本(2篇)
- 数据挖掘教学课件
- 2025年造价咨询公司廉政制度及保障措施
- 井喷及井喷失控案例教育
- 职业发展与就业创业指导ppt课件完整版
- 挠度计算模板表格(自动版)
- 宝钢集团生产安全事故案例汇编
- 为老年人更换纸尿裤评分标准
- 热力厂锅炉车间2#锅炉大修施工方案
评论
0/150
提交评论