《基于AVR单片机水温自动控制系统毕业设计(48页).doc》由会员分享,可在线阅读,更多相关《基于AVR单片机水温自动控制系统毕业设计(48页).doc(47页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、-基于AVR单片机水温自动控制系统毕业设计-第 1 页长 春 工 业 大 学毕业设计、毕业论文题 目 基于AVR单片机水温控制系统 毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、
2、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 摘 要本文介绍了基于AVR单片机的自动水温控制系统的设计及实现过程。该系统具有设定、实时显示以及于上位机通信功能。设定精度0.1、控温精度0.2、控温范围30100。而且还具有显示温度曲线及打印功能。本系统采用ATmgea16单片机为主控制器,温度采集方面采用DS1820高精度数字传感器,单总线接口简单
3、,线性良好。功率输出部分采用GTJ3-10A固态继电器,电路经济可靠,采用PWM控制可控性好精度高。控制算法采用PID算法是系统具有快速响应和较小的超调。该系统通过实验证明具有很高的可靠性和稳定性。实现温度的设定,并对温度进行实时采集显示及打印。关键词:温度控制 ATmega16单片机 PID算法 PWMAbstractThis paper introduces the design and realization of the automotive water temperature control system basing on AVR. It has the function of s
4、etting, display signal in real time and upper communication. Set the precision be on 0.1、and precision of temperature control is 0.2、range of temperature control is 30100. And it also has the paint and show temperature curve functions.This system adopt ATmgea16 SCM as a main controller, Temperature
5、collection adopt DS1820 high precision numeral sensor. Single bus interface is simply and good linearity. It use GTJ3-10A solid-state relay in the part of power output, the circuits are economic and reliable. The controllability and precision is well under the control of PWM. It makes system with qu
6、ick response and lower over swing while using PID arithmetic as the control arithmetic. After the validation of experiment, this system has well reliable and stability. Then realize the setting of temperature and collecting of temperature in real time and painting.Keywords:Temperature Control ATmega
7、16 Single Chip Computer PID Arithmetic PWM目 录第1章 概 述11.1 课题研究目的和意义11.2 温度控制系统的研究现状11.3 温度控制系统的发展方向21.4 题目要求3第2章 方案论证42.1 系统整体结构设计方案42.2 主控单元的论证42.3 温度采集单元的论证52.4 功率输出单元的论证52.5 键盘显示单元的论证6第3章 硬件设计83.1 主控单元的设计83.1.1 ATmega16单片机介绍83.1.2 ATmega16产品特性93.1.3 ATmega16 引脚功能113.1.4 ATmega16 内核介绍123.1.5 单片机最小系
8、统设计133.2 温度采集单元设计173.2.1 DS18B20的特点173.2.2 DS18B20的内部结构173.2.3 引脚说明183.2.4 测温操作183.3 功率输出单元203.3.1 固态继电器的结构原理203.3.2 固态继电器的应用特性213.4 键盘与显示单元223.4.1 HD7279A的主要特点如下:233.4.2 引脚说明233.4.3 数码显示电路243.4.4 控制指令和接口时序243.4.5 HD7279A的应用以及键盘显示单元263.5 通信单元273.5.1 MAX232资料简介273.5.2 主要特点273.5.3 MAX232应用电路,注意电容接法。28
9、3.5.4 ISP的工作原理293.5.5 ISP的优点293.5.6 ISP端口293.5.7 打印电路30第4章 软件设计314.1 PID控制算法324.1.1 PID控制规律及其基本作用324.1.2 比例调节器(P)334.1.3 比例积分调节器(PI)334.1.4 比例积分微分调节器(PID)334.2 PWM的控制方法344.3 流程图35总 结38致 谢39参考文献40附录142附录243第1章 概 述1.1 课题研究目的和意义温度控制是无论是在工业生产过程中,还是在日常生活中都起着非常重要的作用,过低的温度或过高的温度都会使水资源失去应有的作用,从而造成水资源的巨大浪费。特
10、别是在当前全球水资源极度缺乏的情况下,我们更应该掌握好对水温的控制,把身边的水资源好好地利用起来。在现代冶金、石油、化工及电力生产过程中,温度是极为重要而又普遍的热工参数之一。在环境恶劣或温度较高等场合下,为了保证生产过程正常安全地进行,提高产品的质量和数量,以及减轻工人的劳动强度、节约能源,要求对加热炉炉温进行测、显示、控制,使之达到工艺标准,以单片机为核心设计的炉温控制系统,可以同时采集多个数据,并将数据通过通讯口送至上位机进行显示和控制。那么无论是哪种控制,我们都希望水温控制系统能够有很高的精确度(起码是在满足我们要求的范围内),帮助我们实现我们想要的控制,解决身边的问题。在计算机没有发
11、明之前,这些控制都是我们难以想象的。而当今,随着电 子行业的迅猛发展,计算机技术和传感器技术的不断改进,而且计算机和传感器的价格也日益降低,可靠性逐步提高,用信息技术来实现水温控制并提高控制的精确度不仅是可以达到的而且是容易实现的。用高新技术来解决工业生产问题, 排除生活用水问题实施对水温的控制已成为我们电子行业的任务,以此来加强工业化建设,提高人民的生活水平。1.2 温度控制系统的研究现状温度控制系统在国内各行各业的应用虽然已经十分广泛但从国内生产的温度控制器来讲总体发展水平仍然不高,同国外的日本美国德国等先进国家相比仍然有着较大的差距目前我国在这方面总体技术水平处于20世纪80年代中后期水
12、平成熟产品主要以“点位”控制及常规的PID控制器为主,它只能适应一般温度系统控制难于控制滞后复杂时变温度系统控制,即是说适应于较高控制场合的智能化自适应控制仪表国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少备。 现有的一些温度控制设备,如HA168 型的温度控制棒,结构比较简单,一般采取的是开关式的控制,即当测量温度低于设定温度时进行加热,其结果是饲养水域内温度不均,控温效果不理想。目前,国外也开发出了一些基于单片式计算机的温度控制设备,但是价格比较高,且目前其操作系统均为英文,普及性不强。1.3 温度控制系统的发展方向由于工业过程控制的需要,特别是在微电子技术和计算机技术的迅猛发展
13、,以及自动控制理论和设计方法发展的推动下,国外温度控制系统发展迅速,并在智能化自适应参数自整定等方面取得成果。在这方面以日本、美国、德国、瑞典等国技术领先,并且都生产出了一批商品化的性能优异的温度控制器及仪器仪表,目前,国外温度控制系统及仪表正朝着高精度智能化、小型化等方面快速发展。 温度控制不好就可能引起生产安全,产品质量和产量等一系列问题。尽管温度控制很重要,但是要控制好温度常常会遇到意想不到的困难。由于温度控制具有工况复杂、参数多变、运行惯性大、控制滞后等特点,它对控制调节器要求较高。 模糊逻辑控制(FLC)是人工智能领域中形成最早、应用最广的一个重要分支,适用于结构复杂且难以用传统理论
14、建立模型的问题。目前FLC已经成功地应用与各种温度控制上。 模糊控制与一般的自动控制的根本区别是,不需要建立精确的数学模型,而是运用模糊理论将人的经验知识、思维推理,其控制过程的方法与策略是由所谓模糊控制器来实现。对于多变量、非线性和时变的大系统,系统的复杂性和控制技术的精确性形成了尖锐的矛盾。模糊控制对那些难以获得数学模型或模型非常粗糙的工业系统,如那些大滞后、非线性等复杂工业对象实施控制有独特优势,但静态误差不易控制.模糊控制偏偏含有大量专家经验,实际实现比较困难,它绝不可以代替经典的自动控制,而是扩展了一般的自动控制。在一些实际过程中,人们也常把模糊控制与一般的自动控制结合在一起应用,并
15、且已研制出神经模糊网络的家电产品,将模糊控制技术与人工神经网络、专家系统等人工智能中一些新技术相结合,向着更高层次的研究和应用发展。 采用模糊控制其优点是不需要粗确知道被控对象的数学模型,而且适用于有较大滞后特性的控制对象。缺点是静态误差不易控制,因含有大量专家经验,实际实现比较困难。 模糊控制比传统的PID 控制等方法, 在强时变、大时滞、非线性系统中的控制效果有着明显的优势。将模糊控制技术应用于家电产品在国外已是很普遍的现象。单片机是家用电器常用的控制器件, 把二者结合起来, 可使控制器的性能指标达到最优的目的。基于模糊控制技术的单片机控制的电热水器, 是对传统的电热水器开关控制的改造,
16、具有达到设定温度的时间短、稳态温度波动小、反应灵敏、抗干扰能力强、节省电能等优点,将成为以后发展的主流。1.4 题目要求设计利用AVR单片机,通过外围电路,对1升水进行温度控制。技术参数:1.设定精度0.1,控温精度0.2。2.控温范围30-100。3.系统具有设定和实时显示功能。4.上位机通信及打印等功能。5.根据设计要求自动水温控制系统应该由:主控制单元、温度采集单元、功率输出单元、实时显示单元、通信单元及打印单元组成。第2章 方案论证2.1 系统整体结构设计方案此方案采用ATmega16单片机最小系统板(自制)实现,对外围电路来说,比较简单,并且软件采用PID算法实现较为简单。温度的数据
17、采集采用DS18B20采集,直接转化为数字信号,不需要额外的AD转换电路,完全满足所需温度数据精度。温度控制采用固态继电器SSR直接控制电加热器的通断进行水温的控制,满足控制精度。显示模块采用HD7279A显示,较为直观。另外,AVR单片机使用JTAG来实现软硬件调试非常方便。图2-1 硬件框图2.2 主控单元的论证方案一:采用ATmega161.AVR单片机的I/O口是真正的I/O口,能正确反映I/O口输入/输出的真实情况。工业级产品,具有大电流(灌电流)1040mA,可直接驱动可控硅SCR或继电器,节省了外围驱动器件。2.AVR单片机内带模拟比较器,I/O口可用作A/D转换,可组成廉价的A
18、/D转换器。ATmega16具有8路10位A/D。3.部分AVR单片机可组成零外设元件单片机系统,使该类单片机无外加元器件即可工作,简单方便,成本又低。4.AVR单片机可重设置启动复位,以提高单片机工作的可靠性。有看门狗定时器实行安全保护,可防止程序走乱(飞),提高了产品的抗干扰能力。方案二:采用89C5189C51只支持并行写入,同时需要VPP高压。89C51系列在低于4.8V和高于5.3V的时候则无法正常工作。89C51工作频率范围最高只支持到24M。抗干扰需外接看门狗计时器单元电路。价格也比较高。综上我选择方案一。2.3 温度采集单元的论证方案一:采用温度传感器DS18B20美国DALL
19、AS公司的产品可编程单总线数字式温度传感器DS18B20可实现室内温度信号的采集,有很多优点:如直接输出数字信号,故省去了后继的信号放大及模数转换部分,外围电路简单,成本低;单总线接口,只有一根信号线作为单总线与CPU连接,且每一只都有自己唯一的64位系列号存储在其内部的ROM存储器中,故在一根信号线上可以挂接多个DS18B20,便于多点测量且易于扩展。方案二:采用温度传感器AD590AD590需要模拟转数字电路,成本高,精度低,测温点数量少,电路繁多,对线阻有要求。综上我选择方案一。2.4 功率输出单元的论证方案一:采用固态继电器固态继电器的优点:(1)高寿命,高可靠,SSR没有机械零部件,
20、有固体器件完成触点功能,由于没有运动的零部件,因此能在高冲击,振动的环境下工作,由于组成固态继电器的元器件的固有特性,决定了固态继电器的寿命长,可靠性高。(2)灵敏度高,控制功率小,电磁兼容性好,固态继电器的输入电压范围较宽,驱动功率低,可与大多数逻辑集成电路兼容不需加缓冲器或驱动器。(3)快速转换,固态继电器因为采用固体其间,所以切换速度可从几毫秒至几微妙。(4)电磁干扰小,固态继电器没有输入线圈,没有触点燃弧和回跳,因而减少了电磁干扰。大多数交流输出固态继电器是一个零电压开关,在零电压处导通,零电流处关断,减少了电流波形的突然中断,从而减少了开关顺效应。方案二:采用晶闸管晶闸管又叫可控硅(
21、Silicon Controlled Rectifier, SCR)。自从20世纪50年代问世以来已经发展成了一个大的家族,它的主要成员有单向晶闸管、双向晶闸管、光控晶闸管、逆导晶闸管、可关断晶闸管、快速晶闸管,等等。今天大家使用的是单向晶闸管,也就是人们常说的普通晶闸管,它是由四层半导体材料组成的,有三个PN结,对外有三个电极:第一层P型半导体引出的电极叫阳极A,第三层P型半导体引出的电极叫控制极G,第四层N型半导体引出的电极叫阴极K。从晶闸管的电路符号可以看到,它和二极管一样是一种单方向导电的器件,关键是多了一个控制极G,这就使它具有与二极管完全不同的工作特性。固态继电器就是通过光电耦合器
22、隔离并触发可控硅,就算选择可控硅也要通过隔离元件进行隔离才行,两个并没有响应速度的可比较性,用单片机信号来控制,肯定是选择固态继电器,强电和控制信号间隔离。综上选择方案一。2.5 键盘显示单元的论证方案一:采用HD7279AHD7279A是一种智能键盘和LED专用控制芯片,它带有串行接口,可同时驱动8位共阴极数码管或64只独立LED。文中详述了该芯片的工作原理。工作时序及控制指令,给出了HD7279A与CPU的实际接口电路及设计程序,同时指出了实际应用中的一些注意事项。方案二:采用ZLG9AZLG9A具有片选信号,可方便地实现多于8位的显示,或多于64键的键盘接口,仪器仪表工业控制器,条形显示
23、器,控制面板串行接口无需外围元件,可直接驱动LED各位独立控制译码及消隐和闪烁属性循环左移/循环右移指令具有段寻址指令方便控制独立LED64键盘控制器内含去抖动电路。HD7279A和微处理器之间采用串行接口,其接口和外围电路比较简单,且占用口线少,加之它具有较高的性能价格比,因此,在微型控制器。智能仪表。控制面板和家用电器等领域获得了日益广泛的应用。综上选择方案一。第3章 硬件设计3.1 主控单元的设计3.1.1 ATmega16单片机介绍ATmega16是基于增强的AVR RISC结构的低功耗8 位CMOS微控制器。由于其先进的指令集以及单时钟周期指令执行时间,ATmega16 的数据吞吐率
24、高达1 MIPS/MHz,从而可以缓减系统在功耗和处理速度之间的矛盾。 ATmega16 AVR 内核具有丰富的指令集和32 个通用工作寄存器。所有的寄存器都直接与算逻单元(ALU) 相连接,使得一条指令可以在一个时钟周期内同时访问两个独立的寄存器。这种结构大大提高了代码效率,并且具有比普通的CISC 微控制器最高至10 倍的数据吞吐率。 ATmega16 有如下特点:16K字节的系统内可编程Flash(具有同时读写的能力,即RWW),512 字节EEPROM,1K 字节SRAM,32 个通用I/O 口线,32 个通用工作寄存器,用于边界扫描的JTAG 接口,支持片内调试与编程,三个具有比较模
25、式的灵活的定时器/ 计数器(T/C),片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益(TQFP 封装) 的ADC ,具有片内振荡器的可编程看门狗定时器,一个SPI 串行端口,以及六个可以通过软件进行选择的省电模式。 工作于空闲模式时CPU 停止工作,而USART、两线接口、A/D 转换器、SRAM、T/C、SPI 端口以及中断系统继续工作;掉电模式时晶体振荡器停止振荡,所有功能除了中断和硬件复位之外都停止工作;在省电模式下,异步定时器继续运行,允许用户保持一个时间基准,而其余功能模块处于休眠状态; ADC 噪声抑制模式时终止CPU 和
26、除了异步定时器与ADC 以外所有I/O 模块的工作,以降低ADC 转换时的开关噪声; Standby 模式下只有晶体或谐振振荡器运行,其余功能模块处于休眠状态,使得器件只消耗极少的电流,同时具有快速启动能力;扩展Standby 模式下则允许振荡器和异步定时器继续工作。 本芯片是以Atmel 高密度非易失性存储器技术生产的。片内ISP Flash 允许程序存储器通过ISP 串行接口,或者通用编程器进行编程,也可以通过运行于AVR 内核之中的引导程序进行编程。引导程序可以使用任意接口将应用程序下载到应用Flash存储区(ApplicationFlash Memory)。在更新应用Flash存储区时
27、引导Flash区(Boot Flash Memory)的程序继续运行,实现了RWW 操作。 通过将8 位RISC CPU 与系统内可编程的Flash 集成在一个芯片内, ATmega16 成为一个功能强大的单片机,为许多嵌入式控制应用提供了灵活而低成本的解决方案。ATmega16 具有一整套的编程与系统开发工具,包括:C 语言 编译器、宏汇编、 程序调试器/ 软件仿真器、仿真器及评估板。3.1.2 ATmega16产品特性高性能、低功耗的8位AVR微处理器1.先进的RISC 结构 2.131条指令 3.大多数指令执行时间为单个时钟周期 4.32个8位通用工作寄存器 5.全静态工作 6.工作于1
28、6MHz时性能高达16MIPS 7.只需两个时钟周期的硬件乘法器 8.非易失性程序和数据存储器16K 字节的系统内可编程Flash,擦写寿命: 10,000次。具有独立锁定位的可选Boot代码区,通过片上Boot程序实现系统内编程,真正的同时读写操作 9.512 字节的EEPROM,擦写寿命: 100,000次 10.1K字节的片内SRAM 11.可以对锁定位进行编程以实现用户程序的加密 12.JTAG 接口( 与IEEE 1149.1 标准兼容) 符合JTAG 标准的边界扫描功能 13.支持扩展的片内调试功能,通过JTAG 接口实现对Flash、EEPROM、熔丝位和锁定位的编程 14.外设
29、特点 (1)两个具有独立预分频器和比较器功能的8位定时器/计数器 (2)一个具有预分频器、比较功能和捕捉功能的16位定时器/计数器 (3)具有独立振荡器的实时计数器RTC (4)四通道PWM 8路10位ADC,8个单端通道,2个具有可编程增益 (1x, 10x, 或200x)的差分通道 (5)面向字节的两线接口 (6)两个可编程的串行USART (7)可工作于主机/ 从机模式的SPI 串行接口 (8)具有独立片内振荡器的可编程看门狗定时器 (9)片内模拟比较器 15.特殊的处理器特点 (1)上电复位以及可编程的掉电检测 (2)片内经过标定的RC振荡器 (3)片内/片外中断源 (4)6种睡眠模式
30、: 空闲模式、ADC 噪声抑制模式、省电模式、掉电 模式、Standby 模式以及扩展的Standby模式 16.I/O和封装 (1)32个可编程的I/O口 (2)40引脚PDIP封装, 44引脚TQFP封装, 与44引脚MLF封装 工作电压: ATmega16L:2.7 - 5.5V ATmega16:4.5 - 5.5V 速度等级 8MHz ATmega16L 0-16MHz ATmega16 ATmega16L在1MHz, 3V, 25C时的功耗 正常模式: 1.1 mA 空闲模式: 0.35 mA 掉电模式: 1 A 3.1.3 ATmega16 引脚功能图3-1 AVR单片机管脚图V
31、CC 电源正 GND 电源地 端口A(PA7.PA0) 端口A 做为A/D 转换器的模拟输入端。端口A 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口A 处于高阻状态。 端口B(PB7.PB0) 端口B 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口B 处于高阻状态。
32、 端口B 也可以用做其他不同的特殊功能。 端口C(PC7.PC0) 端口C 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作为输入使用时,若内部上拉电阻使能,端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口C 处于高阻状态。如果JTAG接口使能,即使复位出现引脚 PC5(TDI)、 PC3(TMS)与 PC2(TCK)的上拉电阻被激活。端口C 也可以用做其他不同的特殊功能. 端口D(PD7.PD0) 端口D 为8 位双向I/O 口,具有可编程的内部上拉电阻。其输出缓冲器具有对称的驱动特性,可以输出和吸收大电流。作
33、为输入使用时,若内部上拉电阻使能,则端口被外部电路拉低时将输出电流。在复位过程中,即使系统时钟还未起振,端口D 处于高阻状态。端口D 也可以用做其他不同的特殊功能. RESET 复位输入引脚。持续时间超过最小门限时间的低电平将引起系统复位。门限时间见P36Table 15。持续时间小于门限间的脉冲不能保证可靠复位。 XTAL1 反向振荡放大器与片内时钟操作电路的输入端。 XTAL2 反向振荡放大器的输出端。 AVCC AVCC是端口A与A/D转换器的电源。不使用ADC时,该引脚应直接与VCC连接。使用ADC时应通过一个低通滤波器与VCC 连接。 AREF A/D 的模拟基准输入引脚。3.1.4
34、 ATmega16 内核介绍为了获得最高的性能以及并行性, AVR 采用了Harvard 结构,具有独立的数据和程序总线。程序存储器里的指令通过一级流水线运行。CPU 在执行一条指令的同时读取下一条指令( 在本文称为预取)。这个概念实现了指令的单时钟周期运行。程序存储器是可以在线编程的FLASH。 快速访问寄存器文件包括32 个8 位通用工作寄存器,访问时间为一个时钟周期。从而实现了单时钟周期的ALU 操作。在典型的ALU 操作中,两个位于寄存器文件中的操作数同时被访问,然后执行运算,结果再被送回到寄存器文件。整个过程仅需一个时钟周期。 寄存器文件里有6 个寄存器可以用作3 个16 位的间接寻
35、址寄存器指针以寻址数据空间,实现高效的地址运算。其中一个指针还可以作为程序存储器查询表的地址指针。这些附加的功能寄存器即为16 位的X、Y、Z 寄存器。 ALU支持寄存器之间以及寄存器和常数之间的算术和逻辑运算。ALU也可以执行单寄存器操作。运算完成之后状态寄存器的内容得到更新以反映操作结果。 程序流程通过有/ 无条件的跳转指令和调用指令来控制,从而直接寻址整个地址空间。大多数指令长度为16 位,亦即每个程序存储器地址都包含一条16 位或32 位的指令。 程序存储器空间分为两个区:引导程序区(Boot 区) 和应用程序区。这两个都有专门的锁定位以实现读和读/ 写保护。用于写应用程序区的SPM
36、指令必须位于引导程序区。 在中断和调用子程序时返回地址的程序计数器(PC) 保存于堆栈之中。堆栈位于通用数据SRAM,因此其深度仅受限于SRAM 的大小。在复位例程里用户首先要初始化堆栈指针SP。这个指针位于I/O 空间,可以进行读写访问。数据SRAM 可以通过5 种不同的寻址模式进行访问。 AVR 存储器空间为线性的平面结构。 AVR有一个灵活的中断模块。控制寄存器位于I/O空间。状态寄存器里有全局中断使能位。每个中断在中断向量表里都有独立的中断向量。各个中断的优先级与其在中断向量表的位置有关,中断向量地址越低,优先级越高。 I/O 存储器空间包含64 个可以直接寻址的地址,作为CPU 外设
37、的控制寄存器、SPI,以及其他I/O 功能。映射到数据空间即为寄存器文件之后的地址0x20 - 0x5F。3.1.5 单片机最小系统设计基本的AVR硬件线路,包括以下几部分:复位线路。晶振线路。ISP下载接口。JTAG仿真接口。电源。(1)复位线路的设计Mega16已经内置了上电复位设计。并且在熔丝位里,可以控制复位时的额外时间,故AVR外部的复位线路在上电时,可以设计得很简单:直接拉一只10K的电阻到VCC即可(R6)。为了可靠,再加上一只0.1uF的电容(C0)以消除干扰、杂波。D3(1N4148)的作用有两个:作用一是将复位输入的最高电压钳在Vcc+0.5V 左右,另一作用是系统断电时,
38、将R1(10K)电阻短路,让C0快速放电,让下一次来电时,能产生有效的复位。当AVR在工作时,按下S0开关时,复位脚变成低电平,触发AVR芯片复位。重要说明:实际应用时,如果你不需要复位按钮,复位脚可以不接任何的零件,AVR芯片也能稳定工作。即这部分不需要任何的外围零件。图3-2 复位电路设计(2)晶振电路的设计Mega16已经内置RC振荡线路,可以产生1M、2M、4M、8M的振荡频率。不过,内置的毕竟是RC振荡,在一些要求较高的场合,比如要与RS232通信需要比较精确的波特率时,建议使用外部的晶振线路。早期的90S系列,晶振两端均需要接22pF左右的电容。Mega系列实际使用时,这两只小电容
39、不接也能正常工作。不过为了线路的规范化,我们仍建议接上。重要说明:实际应用时,如果你不需要太高精度的频率,可以使用内部RC振荡。即这部分不需要任何的外围零件。图3-3 晶振电路设计(3)JTAG仿真接口设计仿真接口也是使用双排25插座。需要一只10K的上拉电阻。重要说明:实际应用时,如果你不想使用JTAG仿真,并且不想受四只10K的上拉电阻的影响,可以将JP1JP4断开。图3-4 JTAG方针接口(4)ISP下载接口设计ISP下载接口,不需要任何的外围零件。使用双排25插座。由于没有外围零件,故(MOSI)、(MISO)、(SCK)、复位脚仍可以正常使用,不受ISP的干扰。RST连接倒RESE
40、T ,为了 减小图片大小这里没有画出,你可以从本页顶上的那个图片看出来。重要说明:实际应用时,如果你想简化零件,可以不焊接25座。但在PCB设计时最好保留这个空位,以便以后升级AVR内的软件。图3-5 JTAG方针接口设计图(5)电源设计AVR单片机最常用的是5V与3.3V两种电压。本线路以转换成5V直流电压,电路需要变压器把220交流电压转换成28V交流电,再通过整流器,把交流电转化成直流电,通过7809和7805三端正电源稳压电路转化成直流5V。电源如图3-6。图3-6 电源电路设计图3.2 温度采集单元设计3.2.1 DS18B20的特点DS18B20是DALLAS公司生产的一个线式数字
41、温度传感器,具有3引脚TO92小体积封装形式;温度测量范围为55125,可编程为9位12位A/D转换精度,测温分辨率可达0.0625,被测温度用符号扩展的16位数字量方式串行输出;其工作电源既可在远端引入,也可采用寄生电源方式产生;多个DS18B20可以并联到3根或2根线上,CPU只需一根端口线就能与诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。以上特点使DS18B20非常适用于远距离多点温度检测系统。3.2.2 DS18B20的内部结构DS18B20内部结构如图3-7所示,主要由4部分组成:64位ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。
42、DS18B20的管脚排列如图3-8所示,DQ为数字信号输入/输出端;GND为电源地;VDD为外接供电电源输入端(在寄生电源接线方式时接地)。ROM中的64位序列号是出厂前被光刻好的,它可以看作是该DS18B20的地址序列码,每个DS18B20的64位序列号均不相同。64位ROM的排的循环冗余校验码(CRC=X8X5X41)。ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。图3-7 DS18B20的内部结构图3-8 DS18B20的管脚排列3.2.3 引脚说明表3-1 DS18B20的引脚说明表16脚SSOPPR35符号说明91GND接地82
43、DQ数据输入/输出脚。对于单线操作:漏极开路73VDD可选的VDD引脚。3.2.4 测温操作DS18B20通过一种片上温度测量技术来测量温度。图3-9示出了温度测量电路的方框图。图3-9 温度传感器测量电路图DS18B20是这样测温的:用一个高温度系数的振荡器确定一个门周期,内部计数器在这个门周期内对一个低温度系数的振荡器的脉冲进行计数来得到温度值。计数器被预置到对应于-55的一个值。如果计数器在门周期结束前到达0,则温度寄存器(同样被预置到-55)的值增加,表明所测温度大于-55。同时,计数器被复位到一个值,这个值由斜坡式累加器电路确定,斜坡式累加器电路用来补偿感温振荡器的抛物线特性。然后计
44、数器又开始计数直到0,如果门周期仍未结束,将重复这一过程。斜坡式累加器用来补偿感温振荡器的非线性,以期在测温时获得比较高的分辨力。这是通过改变计数器对温度每增加一度所需计数的数值来实现的。因此,要想获得所需的分辨力,必须同时知道在给定温度下计数器的值和每一度的计数值。图3-10 DS18B20的电路图3.3 功率输出单元固态继电器(SSR)是一种全电子电路组合的元件,它依靠半导体器件和电子元件的电、磁和光特性来完成其隔离和切换功能。 固态继电器与传统的电磁继电器(EMR)相比,是一种没有机械、不含运动零部件的继电器,但具有与电磁继电器本质上相同功能。固态继电器按其工作性质分直流输入-交流输出型
45、、直流输入-支流输出型、交流输入-交流输出型、交流输入-直流输出型。按其结构分机架安装型(面板安装)、线路板安装型。3.3.1 固态继电器的结构原理固态继电器通常是一个四端组件,两个为输入端,两个为输出端。下图为其结构框图它至少由三个部件组成,即输入电路、隔离部分和输出电路。图3-11 固态继电器的结构原理图固态继电器有许多类型可供用户选择:按品种分有军用、民用、I/O模块;按输出功能分有直流型、过零型、非过零型;按隔离方式有光隔离和变压器隔离;按封装结构形式分有塑封型和金属壳全密封型故态继电器,以及各种特殊用途的故态继电器。3.3.2 固态继电器的应用特性由于固态继电器是由固态元件组成的无触
46、电开关器件。这种结构特点决定了它比电磁继电器电器工作可靠,寿命长,对外干扰小,能与逻辑电路兼容,抗干扰能力强,开关速度快,使用方便。但在使用时考虑其应用特性:(1)根据产品的功能不同,输出电路可接交流或直流。对交流负载的控制有过零和非过零控制功能。(2)由于固态继电器是一种电子开关,故有一定的通态压降和断态电流,其数值与产品规格有关。(3)负载短路易造成SSR的损坏,应特别注意避免。(4)必须考虑瞬态过电压和断态dv/dt对SSR的影响。部分SSR产品内部已含有瞬态抑制网路。图3-12 固态继电器控制波形固态继电器不仅实现了小信号对大电流功率负载的开关控制,而且具有隔离功能。其典型应用状态如下:如果采用集