基于STC单片机的温度控制系统设计_第1页
基于STC单片机的温度控制系统设计_第2页
基于STC单片机的温度控制系统设计_第3页
基于STC单片机的温度控制系统设计_第4页
基于STC单片机的温度控制系统设计_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、基于 STC 单片机的温度调控系统设计摘要随着微机测量和控制技术的迅速发展与广泛应用,单片机的应用同样正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用,但仅仅单片机方面知识是不够的,还应根据具体硬件结构,以及具体应用对象特点的软件结合,以作完善。b5E2RGbCAP本次设计的主题是基于 STC单片机的温度调控系统设计,此次设计的温度控制系统主要是对以STC 单片机为主控制单元和以温度测量单元构成的单总线数字温度传感器DS18B20 进行研究。该系统将设定温度上下限,并显示检测温度,监测数据。如果温度超过设定参数上限

2、和下限温度,报警系统将由实验时的设置和以自动控制方式实现,从而达到一定范围内温度的监测与控制。p1EanqFDPw系统设计了相关的硬件电路和相关应用程序。硬件电路主要包括STC12C5A60S2单片机最小系统、测温电路、实时时钟电路、LCD液晶显示电路、超温报警电路以及通讯模块电路等。系统程序主要包括主程序,DS18B20通信程序、按键处理程序、LCD显示程序以及数据存储程序等。以单片机为核心的温度采集与控制系统的研发与应用在很大程度上提高了生产生活中对温度的控制水平,经过实验结果得知本次设计的系统是准确的,可行的。DXDiTa9E3d关键词温度采集;DS18B20; STC单片机;测试程序;

3、超温报警电路5 / 68Based on STC single chip microcomputer temperature control system desigRnTCrpUDGiTAbstractAlong with the computer measurement and control technology of the rapid development and wide application, the application of SCM is to keep at the same time, traditional control testing update on Cr

4、escent benefits. In real-time detection and automatic control system of single-chipapplications, often as a single-chip core component to use only single-chip is not enough knowledge, but also the specific hardware structure and the specific features of application software objects combine to make p

5、erfec5t.PCzVD7HxAThe theme of this design is based on the STC single-chip temperature control system design.The experiment of temperature control system based on STC control unit and the temperature measuring unit consisting of a single bus digital temperature sensor DS research 18B20. The system ca

6、n be expected to detect the preset temperature, display time and save monitoring data. An alarm will be given by system if the temperature exceeds the upper and lower limit value of the temperature which can be set discretionarily and then automatic control is achieved, thus the temperature is achie

7、ved monitoring intelligently within a certain rangej.LBHrnAILgThe system design of the hardware circuit and the related applications. The hardware circuit including STC12C5A60S2MCU minimum system, a temperature measurement circuit, clock circuit, LCD display circuit, alarm circuit and a communicatio

8、n module circuit. System program, including the main program, a DS18B20 communication program, key program, LCD display program and data storage procedure. Microcontroller as the core temperature acquisition and control system development and application has greatly improved the production life of t

9、he temperature control level, at the same time through the test results show that the design of the system is accurate,andfeasible.xHAQX74J0XKeywordsTemperature acquisition。DS18B20。MCU of STC。Testprogram。 Temperature alarm circuitLDAYtRyKfE目录摘要 IAbstract II第 1 章 绪论1Zzz6ZB2Ltk1.1 课题背景及研究意义1dvzfvkwMI1

10、1.2 国内外研究和应用现状1rqyn14ZNXI1.3 课题研究内容2EmxvxOtOco第 2 章 系统设计的总体方案4SixE2yXPq52.1 设计要求46ewMyirQFL2.2 系统总体方案论述4kavU42VRUs2.2.1 主控单片机4y6v3ALoS892.2.2 温度传感器6M2ub6vSTnP2.2.3 LCD 显示器 错误!未定义书签。0YujCfmUCw2.3 系统调试所用软件简述7eUts8ZQVRd2.3.1 KEIL 软件简介错误!未定义书签。sQsAEJkW5T2.3.2 KEIL 软件调试过程错误!未定义书签。GMsIasNXkA2.3.3 KEIL 使用时

11、注意事项9TIrRGchYzg2.4 本章小结107EqZcWLZNX第 3 章 主控单片机及温度传感器11lzq7IGf02E3.1 STC12C5A60S2单片机简介 IlzvpgeqJihk3.1.1 STC12C5A60S2系列单片机的主要特点1lNrpoJac3v13.1.2 STC12C5A60S2 系歹 U 单片机的优点 121nowfTG4Ki3.1.3 STC12C5A60S2 单片机的管脚 13fjnFLDa5Zo3.2 STC12C5A60S2 单片机的应用 14tfnNhnE6e53.2.1 STC12C5A60S2单片机 I/O 口工作模式设定 14HbmVN777s

12、L3.2.2 STC12C5A60S2单片机的 A/D 转换 15V7l4jRB8Hs3.3 DS18B20 温度传感器 1683lcPA59W93.3.1 DS18B20 传感器的特性 16mZkklkzaaP3.3.2 DS18B20的外形和内部结构17AVktR43bpw3.4 DS18B20 的工作原理 18ORjBnOwcEd3.5 DS18B20的使用中注意事项 212MJTy0dTT3.6 本章小结22gIiSpiue7A第 4 章 系统总体设计23uEh0U1Yfmh4.1 电源输入部分23IAg9qLsgBX4.2 键盘及显示电路24WwghWvVhPE4.2.1 键盘电路设

13、计24asfpsfpi4k4.2.2 显示电路设计27ooeyYZTjj14.3 测温模块30BkeGuInkxI4.3.1 DS18B20 的工作时序 30PgdO0sRiMo4.3.2 超温报警电路333cdXwckm154.3.3 温度检测33h8c52WOngM4.4 调试结果及分析34v4bdyGious4.5 本章小结35J0bm4qMpJ9结论36XVauA9grYP致谢37bR9C6TJscw参考文献38pN9LBDdtrd附录A39DJ8T7nHuGT附录B47QF81D7bvUA附录C544B7a9QFw9h第 1章 绪论1.1 课题背景及研究意义温度控制系统广泛应用于社会

14、生活的各个领域,如家电、汽车、材料、电力电子等,常用的控制电路根据应用场合和所要求的性能指标有所不同,在工业企业中,如何提高温度控制对象的运行性能一直以来都是控制人员和现场技术人员努力解决的问题。这类控制对象惯性大,滞后现象严重 ,存在很多不确定的因素,难以建立精确的数学模型,从而导致控制系统性能不佳 ,甚至出现控制不稳定、失控现象。传统的继电器调温电路简单实用,但由于继电器动作频繁,可能会因触点不良而影响正常工作。控制领域还大量采用传统的PID 控制方式,但 PID 控制对象的模型难以建立,并且当扰动因素不明确时,参数调整不便仍是普遍存在的问题。而采用数字温度传感器DS18B20,因其内部集

15、成了 A/D转换器,使得电路结构更加简单, 而且减少了温度测量转换时的精度损失,使得测量温度更加精确。数字温度传感器DS18B20 只用一个引脚即可与单片机进行通信,大大减少了接线的麻烦,使得单片机更加具有扩展性。由于DS18B20 芯片的小型化,更加可以通过单跳数据线就可以和主电路连接,故可以把数字温度传感器DS18B20 做成探头,探入到狭小的地方,增加了实用性。更能串接多个数字温度传感器DS18B20 进行范围的温度检测。本设计就是基于单片机STC12C5A60S2 温度控制系统的设计,通过本次课程实践,我们更加的明确了单片机的广泛用途和使用方法,以及其工作的原理。wt6qbkCyDE1

16、.2 国内外研究和应用现状1 .国外温度测控系统研究国外对温度控制技术研究较早,始于20 世纪70年代。先是采用模拟式的组合仪表,采集现场信息并进行指示、记录和控制。80 年代末出现了分布式控制系统。目前正开发和研制计算机数据采集控制系统的多因子综合控制系统。现在世界各国的温度测控技术发展很快,一些国家在实现自动化的基础上正向着完全自动化、无人化的方向发展。Kp5zH46zRk2 .国内温度测控系统研究我国对于温度测控技术的研究较晚,始于20世纪 80年代。我国工程技术人员在吸收发达国家温度测控技术的基础上,才掌握了温度室内微机控制技术,该技术仅限于对温度的单项环境因子的控制。我国温度测控设施

17、计算机应用,在总体上正从消化吸收、简单应用阶段向实用化、综合性应用阶段过渡和发展。在技术上,以单片机控制的单参数单回路系统居多,尚无真正意义上的多参数综合控制系统,与发达国家相比,存在较大差距。我国温度测量控制现状还远远没有达到工厂化的程度,生产实际中仍然有许多问题困扰着我们,存在着装备配套能力差,产业化程度低,环境控制水平落后,软硬件资源不能共享和可靠性差等缺点。Yl4HdOAA61成熟的温控产品主要以”点位 ”控制及常规的PID 控制器为主,它们只能适应一般温度系统控制,而用于较高控制场合的智能化,自适应控制仪表,国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少,因此不适合用此种方

18、法作加热炉的温控系统。ch4PJx4BlI近几年来快速发展了多种先进的加热炉温度控制方式,如:模糊控制。这个控制技术大大提高了控制精度,不但是控制变得更简单,而且是产品的质量更好,降低了产品的成本,提高了生产效率。不过,模糊控制系统动态性能好,单稳定性较差,而且很难使两种性能都达到理想要求。目前普遍采用模糊-线性复合控制器发挥了模糊控制和线性控制的优点,是设计的系统取得了较好的动态和稳态指标。但是模糊-线性复合控制同时也存在一些问题:线性钱馈复合控制的系统性能对参数变化比较敏感;模糊线性双模控制存在开关切换问题;在线性控制的误差通道并联模糊控制器系统和模糊控制器与线性控制器并联系统尽管得到了较

19、好的效果,但并不能从根本上解决模糊控制器稳态性能和动态性能之间的矛盾问题。qd3YfhxCzo1.3 课题研究内容1 .温度控制原理用户通过键盘输入系统设定温度上限值与下限值,温度信息由集温度测量和A/D转换于一体的DS18B20温度传感器测量并转换成数字信号输入 主机,此信号经过标度转换后,通过 LCD将温度显示出来;当测得的温度 越限时,蜂鸣器报警。基于STC12C5A60S2单片机,DS18B20将检测至U的温 度信号数字信号,并将信号送入单片机进行处理。最后的温度值显示在液晶显示器上。这些步骤是用来实现温度检测。采用键盘接口芯片HD 7279的设定温度值,通过单片机保持一定的温度,并用

20、液晶显示器显示设定温度控制。此外,时钟芯片DS 1302是用来显示时间和外部的6264是用来保存数据。如果温度超过上限和下限温度,报警将由蜂鸣器鸣叫报警。这样就可以控制输出设备,实时调节温度的变化,使其逐渐趋于给定值且达到控制的目的。E836L11DO52 .系统硬件设计系统的硬件结构主要由温度检测电路、按键扫描与系统框图中的显示电路、报警电路、输出控制电路等部分组成。温度检测及控制电路部分本系统中温度检测电路选用美国DALLAS 公司生产的一线数字温度传感器DS18B20实现。该器件在使用中不需要外围元件,与单片机交换信息仅需要一根I/O线。本系统中DQ管脚为数据线与 STC的P1. 3连接

21、。DS18B20的温度检测与数字数据输出全集成于一个芯片之上,从而提高了 干扰能力。在DS18B20内部,提供0. 125C的 高分辨率的计算,温度以16 位符号扩展的二进制补码的形式存于温度寄存器中。当用户需的时候,DS18B20将通过单线接口串行发送数据。S42ehLvE3M人机对话部分的设计人机对话部分包括显示、键盘和报警三部分。a.显示部分的设计。在本设计中P0口和P1 口的部分位,作为动态显示器 的显示输出口。段码由 O 口并行输出到4位LED显示器,位码由P1. 4、 P1 5、 P1 6、 P1 7轮流输出。501nNvZFisb.键盘的设计。本系统中由于设定温度只需温度 +、温

22、度-和确认键3个键,故采用独立式按键。在开机后输入设定温度值即可。jW1viftGw9c.报警功能的实现。当系统温度高于或低于设定温度时, P2. 5口送出的低电平经反向器驱动蜂鸣器鸣叫报警。xS0DOYWHLP3 .系统软件设计主要是DS 18B20的子程序白编写。DS 18B20的主要数据原件有:64位 激光Lasers ROM,温度灵敏原件和非易失性温度报警触发器 TH和TL。DS 18B20可以从总线获取电源,当信号线位高电平时,将能量贮存在外部电容 器中;当单信号线为低电平时,将该电源断开,直到信号线变为高电平重新接上寄生 电容)电源为止。此外,还可外接5V电源,给DS 18B20t

23、t 电,DS 18BB20的供电方式灵活,利用外接电源还可增加系统的稳定性和 可靠性。LOZMkIqI0w4 .对系统数据采集功能进行测试。5 .根据测试结果完成设计报告和期末答辩。9 / 68第2章系统设计的总体方案2.1 设计要求1 .设定温度的温度的上下限,使用 LCD显示器显示所测得温度值,当 温度超过所设定的上下限使,蜂鸣器将会自动鸣叫报警;2 .使用STC12C5A60S2单片机和DS18B20温度传感器,10个)在STC 实验板上成实验的仿真过程,写出设计报告书;3 .超调量(T。降20%温度误差 ± 052.2 系统总体方案论述本课题设计的是一种以STC单片机为主控制

24、单元,以 DS18B20为温度 传感器的温度控制系统。该控制系统可以实时存储相关的温度数据并记录 当前的时间。其主要包括:电源模块、温度采集模块、按键处理模块、数 据存储模块、LCD显示模块、超温报警电路以及单片机最小系统。 ZKZUQsUJed图2.1系统设计总体硬件框图2.2.1 主控单片机在本次设计的温度控制系统中所使用的核心控制器是STC12C5A60S2单片机。STC12C5A60S2单片机作为核心控制器,该单片机具有高可靠,廉 价,功耗低,操作方便,I/O 口多等优点。该单片机属于双列直插式封装,有4组8位I/O 口,P1、P2、P3属于准双向口,可作为普通输入输出 IO 口,P0

25、 口接上拉电阻后可作为普通I/O 口使用。该单片机具有3个定时 计数器,1个全双工用行口。此单片机具有6个中断源,3个定时计数器中断,2个外部中断,一个串口中断,内部有静态非易失性EEPROM和看门狗。片内集成8K只读存储器(PEROM>,外扩后可有64K,具有256bytees 的随机存储器(RAM> ,功能比较强。dGY2mcoKtT晶振电路:晶振是晶体振荡器的简称,在电气上它可以等效成一个电容 和一个电阻并联再串联一个电容的二端网络,电工学上这个网络有两个谐 振点,以频率的高低分其中较低的频率是串联谐振,较高的频率是并联谐 振。由于晶体自身的特性致使这两个频率的距离相当的接近

26、,在这个极窄 的频率范围内,晶振等效为一个电感,所以只要晶振的两端并联上合适的 电容它就会组成并联谐振电路。这个并联谐振电路加到一个负反馈电路中 就可以构成正弦波振荡电路,由于晶振等效为电感的频率范围很窄,所以 即使其他元件的参数变化很大,这个振荡器的频率也不会有很大的变化。 rCYbSWRLIA晶振有一个重要的参数,那就是负载电容值,选择与负载电容值相等 的并联电容,就可以得到晶振标称的谐振频率。FyXjoFlMWh一般的晶振振荡电路都是在一个反相放大器< 注意是放大器不是反相器)的两端接入晶振,再有两个电容分别接到晶振的两端,每个电容的另 一端再接到地,这两个电容串联的容量值就应该等

27、于负载电容,请注意一 般IC的引脚都有等效输入电容,这个不能忽略。TuWrUpPObX在此次设计的温度控制系统设计中,控制核心STC12C5A60S2单时钟/机 器周期(IT>单片机有32个I/O 口,其外部晶振为12MHz,一个指令周期为 1/12us使用该单片机完全可以完成设计任务,其最小系统主要包括:复位电路, 震荡电路等,电路如下图2.2所示。7qWAq9jPqERJ>I 4 7KXS2 5VADCCS1 3m邱f LCDCLKlLCDDKC1KOUT: ADCO P1.0VCCADCIPI-IPO.O ADORXD2 EC1ADC:P12P0J.AD1T?®:&

28、#171;»A»C3PI 3P0.J.AD2SSCCP1 ADC4P14POJ AD3MQSIADC5PL5P0 4 AD-liinSOADC6M6M.S. ADSSCLKAOC-PI 7P0.7AD7HXD 琏。EKJA 力 P4$ RST:TXDP3.1ALEP4.5CHQ P5 :NAPFT? mP2 7A15CLKOUT«TOH +k'AHCLKOUll T1 PJ.5P2 5 AB熊手工dK 4 A12RD P3.7P2 3 AilXTAL2AIDXTAL1p”的GNDK 0 A8单片机STCi:C5AMS2$CLK独立一按键ROWJR0W4SC

29、ISDA叵1£QW1GW cmSTCOLl75nJ7 14 'Y .- A t J9KX8图2.2单片机最小电路图2.2.2 温度传感器本次设计中所采用的温度传感器是美国达拉斯(DALLAS泮导体公司推出的应用单总线技术的DS18B2O字温度彳感器。llVIWTNQFkDS18B20数字温度传感器接线方便,封装成后可应用于多种场合, 如管道式,螺纹式,磁铁吸附式,不锈钢封装式,型号多种多样,有 LTM8877 , LTM8874等等。主要根据应用场合的不同而改变其外观。封 装后的DS18B20可用于电缆沟测温,高炉水循环测温,锅炉测温,机房 测温,农业大棚测温,洁净室测温,弹

30、药库测温等各种非极限温度场 合。耐磨耐碰,体积小,使用方便,封装形式多样,适用于各种狭小空 间设备数字测温和控制领域。yhUQsDgRTI在此次设计的温度控制系统中,采用的是多路测温电路,所以 DS18B20温度传感器与主控单片机的连接方式如下图2.3所示。 MdUZYnKS8IVCC DS1SB20 DS18B20 DS18B2O图2.3外部供电方式的多点测温电路图2.2.3 LCD显示器在此设计中需要显示设定温度的上下限,并且还要同时显示多路温度 传感器所测得温度值,所以此次的LCD显示器选用的是128邓4型号。其引脚及连接如图2.4所示。09T7t6eTno带中文字库的128>64

31、是一种具有4位/8位并行、2线或3线串行多种 接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模 块;具显示分辨率为128X64,内置8192个16X16点汉字,和128个16X8点 ASCII字符集.利用该模块灵活的接口方式和简单、方便的操作指令,可构 成全中文人机交互图形界面。可以显示8总行16X16点阵的汉字,也可完成图形显示,低电压低功耗是其又一显著特点。由该模块构成的液晶显示 方案与同类型的图形点阵液晶显示模块相比,不论硬件电路结构或显示程序都要简洁得多,且该模块的价格也略低于相同点阵的图形液晶模块。 e5TfZQIUB5LCD的基本特性:1 .低电源电压 <VD

32、D:+3.0-+5.5V )2 .显示分辨率:128 E4点3 .内置汉字字库,提供8192个16X6点阵汉字(简繁体可选>4 .内置128个16>8点阵字符5 .2MHZ时钟频率6 .显示方式:STN、半透、正显73区动方式:1/32DUTY, 1/5BIAS8 .视角方向:6点9 .背光方式:侧部高亮白色 LED,功耗仅为普通LED的1/51/1010 .通讯方式:用行、并口可选11 .内置DC-DC转换电路,无需外加负压12 .无需片选信号,简化软件设计13 .工作温度:0 c - +55 C,存储温度:-20 C - +60 C2.3系统调试所用软件简述单片机开发中除必要的

33、硬件外,同样离不开软件。Keil软件是目前最流行开发MCS-51系列单片机的软件,Keil提供了包括C编译器、宏汇 编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方 案,通过一个集成开发环境<uVision)将这些部份组合在一起。KEIL软件 简单易学,能对程序进行编译,连接等。sISovAcVQM2.3.1 Keil软件简介Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软 件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil 提供了包括C 编译器、宏汇编、连接器、库管理和一个功能强大的仿

34、真调试器等在内的完整开发方案,通过一个集成开发环境uVision)将这些部分组合在一起。运行 Keil软件需要WIN98、 NT、 WIN2000、 WINXP 等操作系统。如果你使用C 语言编程,那么 Keil 几乎就是你的不二之选,即使不使用C 语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。 GXRw1kFW5sKeil C51 软件提供丰富的库函数和功能强大的集成开发调试工具,全 Windows 界面。另外重要的一点,只要看一下编译后生成的汇编代码,就能体会到Keil C51 生成的目标代码效率非常之高,多数语句生成的汇编代码很紧凑,容易理解。在开

35、发大型软件时更能体现高级语言的优势。UTREx49Xj9C51 工具包的整体结构,uVision 与 Ishell 分别是 C51 for Windows和 for Dos 的集成开发环境(IDE ,可以完成编辑、编译、连接、调试、仿真等整个开发流程。开发人员可用IDE 本身或其它它编辑编辑器C 或汇编源文件。然后分别由C51 及 C51 编译器编译生成目标文件(.OBJ。目标文件可由LIB51 创建生成库文件,也可以与库文件一起经L51 连接定位生成绝对目标文件(.ABS 。 ABS 文件由 OH51 转换成标准的Hex 文件,以供调试器dScope51 或 tScope51 使用进行源代码

36、级调试,也可由仿真器使用直接对目标板进行调试,也可以直接写入程序存贮器如 EPROM 中。 8PQN3NDYyP2.3.2 Keil 软件调试过程单片机开发中除必要的硬件外,同样离不开软件。Keil 软件是目前最流行开发MCS-51 系列单片机的软件,Keil 提供了包括C 编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境uVision)将这些部份组合在一起。Keil软件简单易学,能对程序进行编译,连接等。下面是我用KEIL 对程序进行调试的过程。mLPVzx7ZNw图2.5 KEIL调试文件建立工程的建立:建立一个.C的文件,同时再建立一个和

37、前面的文件名一 样的文件夹,选择好CPU,使用STC12C5A60S2,同时设好晶振频率,我们 用的是12MHZ ,如上图。AHP35hB02d建立好文件后,就可以进行编译、链接、运行。编译窗口如下。1 Build tarjat 'T口rgfft L' ccmpiliDj naLjiLDx. .inkinjfn.9 * WkMlNQ L16: UNCALLEI EEC&lEHr, IGHORED FOP OVEHLW PROCESS SEGHENr:10 * WARRING Lli HULTIPLI CALL TO SEMT SEGHEHT: ?R?FILmjJIAN

38、CALLERI:叩R7TIME电口JJWJIAN CM.LER2: K CS1SHRTUPProTraai Size: do to-9,tcode-623 411 creating ties filo from “ni己叮idiT,-"niAnjien" - 0 Error (s)r 2 Waroijig (s). fl l1| l|V| Hf' Build ;i Cormand A RndinFifts/*图2.6编译检查编译后显示0个错误,有两个警告,但是不影响程序的下载,使用STC下载软件进行下载之后程序就存储在STC12C5A60S2的ROM中,通过单片机来

39、运行程序就可以方便检查出硬件出现的错误。等所以硬件都无误之后,将所有程序模块整合起来就可以实现所要的功能。NDOcB141gT2.3.3 KEIL使用时注意事项1 .仿真器标配11.0592MHz的晶振,但用户可以在仿真器上的晶振插 孔中换插其他频率的晶振。2 .仿真器上的复位按钮只复位仿真芯片,不复位目标系统。3 .仿真芯片的31 W </EA )已接至高电平,所以仿真时只能使用片 内ROM,不能使用片外 ROM ;但仿真器外引插针中的31脚并不与仿真芯片的31脚相连,故该仿真器仍可插入到扩展有外部ROM<N CPU的/EA引脚接至低电平)的目标系统中使用。1zOk7Ly2VA2

40、.4 本章小结本章主要论述了此次设计系统的总体结构,并简单介绍了设计中使用的单片机,温度传感器等元件的电路连接,最后还介绍了系统调试时所使用的软件及调试过程,本章主要是总体的论述一番,为后面的设计做好铺垫。fuNsDv23Kh第3章主控单片机及温度传感器3.1 STC12C5A60S2单片机简介STC12C5A60S2系列单片机是宏晶科技生产的单时钟 /机器周期(1T>的 单片机,是高速/低功耗/超强抗干扰的新一代 8051单片机,指令代码完全 兼容传统8051,但速度快8-12倍。内部集成 MAX810专用复位电路,2路PWM,8路图速10位A/D转换(250K/S>,针对电机控

41、制,强干扰场合tqMB9ew4YX3.1.1 STC12C5A60S2系歹U单片机的主要特点1 .增强型8051CPU, 1T,单时钟/机器周期,指令代码完全兼容传统 8051。2 .工作电压:STC12C5A60S2系列工作电压:5.5V- 3.3V<5V单片机) STC12C5A60S2系列工作电压:3.6V- 2.2V<3V 单片机)。HmMJFY05dE3 .工作频率范围:0 - 35MHz,相当于普通8051的0420MHz4 .片上集成1280字节RAM。5通用I/O 口 <36/40/44个),复位后为:准双向口 /弱上拉<普通8051 传统I/O 口)可

42、设置成四种模式:准双向口 /弱上拉,推挽/强上拉,仅为输 入/高阻,开漏每个I/O 口驱动能力均可达到20mA,但整个芯片最大不要超 过 55mA。ViLRaIt6sk5 .ISP4E系统可编程)/IAP<在应用可编程),无需专用编程器,无需 专用仿真器 可通过用口 <P3.0/P3.1)直接下载用户程序,数秒即可完成一 片。9eK0GsX7H17.有 EEPROM 功能(STC12C5A62S2/AD/PWM 无内部 EEPROM>11 / 688 .看门狗。9 .内部集成MAX810 专用复位电路外部晶体12M 以下时,复位脚可直接 1K 电阻到地)。10 .外部掉电检测

43、电路:在P4.6 口有一个低压门槛比较器5V 单片机为1.32V,误差为+/-5%, 3.3V单片机为1.30V,误差为+/-3%, 2个时钟输出 口,可由T0的溢出在P3.4/T0输出时钟,可由T1的溢出在P3.5/T1输出时 钟。 naK8ccr8VI11 .外部中断I/O 口 7 路,传统的下降沿中断或低电平触发中断,并新增支持上升沿中断的PCA 模块, Power Down 模式可由外部中断唤醒,INT0/P3.2,INT1/P3.3, T0/P3.4,T1/P3.5, RxD/P3.0, CCP0/P1.3他可通过寄存器设置到P4.2 , CCP1/P1.4 (也可通过寄存器设置到P

44、4.3。 B6JgIVV9ao12 .PWM(2路)/PCA可编程计数器阵列,2路)-也可用来当2路 D/A 使用 -也可用来再实现2 个定时器-也可用来再实现2个外部中断(上升沿中断/下降沿中断均可分别或同时支持 。 P2IpeFpap513 .A/D转换,10位精度ADC,共8路,转换速度可达250K/S(每秒钟 25 万次 。14 .STC12LE5A60S2 系列有双串口,后缀有S2 标志的才有双串口,RxD2/P1.2(可通过寄存器设置到P4.2, TxD2/P1.3(可通过寄存器设置到P4.3 。 3YIxKpScDM15 .工作温度范围:-40 - +85 (工业级 / 0 -

45、75(商业级21.封装:PDIP-40,LQFP-44,LQFP-48。 I/O 口不够时,可用2 到 3 根普通 I/O 口线外接。74HC164/165/595匀可级联)来扩展I/O 口,还可用 A/D做按键扫描 来节省I/O 口,或用双CPU,三线通信,还多了用口。 gUHFg9mdSs16 .片上集成1280字节RAM 。17 . 用 户 应 用 程 序 空 间 8K/16K/20K/32K/40K/48K/52K/60K/62K 字节 uQHOMTQe7918 .PWM(2 路/PCA(可编程计数器阵列,2路 -也可用来当2路D/A使用 - 也可用来再实现2 个定时器- 也可用来再实

46、现2个外部中断(上升沿中断/下降沿中断均可分别或同时支持。 IMGWiDkflP3.1.2 STC12C5A60S2系列单片机的优点1 .速度快,1 个时钟/机器周期,可用低频晶振,大幅降低EMI2 . 支 持 掉 电 唤 醒 的 管 脚 : INT0/P3.2, INT1/P3.3, T0/P3.4, T1/P3.5,WHF4OmOgAwRxD/P3.0,CCP0/P1.3域 P4.2,CCP1/P1.4戌 P4.3, EX_LVD/P4.6aDFdk6hhPd3 .超低功耗:掉电模式:外部中断唤醒功耗0.1uA,支持下降沿/上升沿 /低电平和远程唤醒适用于电池供电系统,如水表,气表,便携设

47、备等空闲模式1 .典型功耗1.3mA,正常工作模式:2mA - 7mA2 .输入/输出口多,最多有44个I/O 口,A/D做按键扫描还可以节省 很多I/O3 .在系统可编程,无需编程器,无需仿真器,可远程升级4 .可送STC-ISP下载编程器,1万片/人/大5 .内部集成高可靠复位电路,外部复位电路可彻底省掉,当然也可以继 续用外部复位电路。3.1.3 STC12C5A60S2单片机的管脚CLKOIH2 AlX'O Pl.O 匚ADC1 PL1 IZZItvB2 ECI ADC2 Pl.2 I- TxDlCPRJ ADC3 Pl I-SS CPP1 ADC4 PL4 t- MOSI.

48、AD5 P1.5CZ M1SC AlX,6 Pl.6 ISCLK ADC7 Pl 7 = P47RSTCZ 1XT RxD P?.O CZTxD P3.1 匚 IX,P3,2 IXTi 匚CLKOUTO. IKT TO. P3.4 ICI.kOUTl IXTT1 P、5 匚 WR P3.6 匚二 RD P3.7 匚XTAL2 匚ZXTAL1匚 Gnd CZo 1 2 3 4 5 6 7 8 9 0 1 7- 3 4 5 6 7 8 9 I I 1 1 1 1 1 1 1 1 7-0 9 8 7 6 5 4 1- -10-87654 3 214.?1- 3 3 3 3 1- 3 3 3 T7J7

49、一71 7-?-7 一 7-nnnmmnnnnnnnnnmnn ccPU 0PO 1PO 2PO.3P0.4PO5PO 6PO7EX LYD P4.6RST2ALEP4 5XA P4.JP2.7 A15P2 6 Al4P" Al?P2.4 A12P2.3 AllP2.2 Alt)P2.1 A9P2 0 A8图3.2单片机管脚图1 .VCC:供电电压2 .GND:接地3 .RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间4 .XTAL1 :反向振荡放大器的输入及内部时钟工作电路的输入5 .XTAL2:来自反向振荡器的输出当将I/O设置为准双向口 /弱上拉时P

50、0 口: P0 口为一个8位漏级开路双向I/O 口,每脚可吸收8TTL门电 流。当P1 口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程 序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当 FIASH进行校验时,P0输出原码,止匕时P0外部必 须被拉高。ozElQQLi4TP1 口: P1 口是一个内部提供上拉电阻的 8位双向I/O 口,P1 口缓冲器 能接收输出4TTL门电流。P1 口管脚写入1后,被内部上拉为高,可用作 输入,P1 口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘 故。在FLASH编程和校验时,P1 口作为第八位

51、地址接收。CvDtmAfjiAP2 口: P2 口为一个内部上拉电阻的 8位双向I/O 口,P2 口缓冲器可接 收,输出4个TTL门电流,当P2 口被写“1时,其管脚被内部上拉电阻拉 高,且作为输入。并因此作为输入时,P2 口的管脚被外部拉低,将输出电流。这是由于内部上拉的缘故。当 P2 口用于外部程序存储器或16位地址 外部数据存储器进行存取时,P2 口输出地址的高八位。在给出地址“1时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2 口输出其特殊功能寄存器的内容。P2 口在FLASH编程和校验时接收高八位地 址信号和控制信号。QrDCRkJkxhP3 口: P3 口管脚是8

52、个带有内部上拉电阻的双向I/O 口,可接收输出 4个TTL门电流。当P3 口写入“1后,它们被内部上拉为高电平,并用作 输入。作为输入,由于外部下拉为低电平,P3 口将输出电流ILL)这是由于上拉的缘故。4nCKn3dlMX3.2 STC12C5A60S2单片机的应用3.2.1 STC12C5A60S2单片机I/O 口工作模式设定STC12C5A60S2系列单片机具所有I/O 口均可由软件配置成4中工作类 型之一。4种类型分别为:准双向口 标准8051输出模式)、推挽输出、仅 为输入(高阻或开漏输出功能。ijCSTNGm0E每个口由2个个控制寄存器中的相应位控制每个引脚工作类型。STC12C5

53、A60S2系列单片机上电复位后为准双向口 传统8051的I/O 口)模式。2V以上时为高电平,0.8V以下时为低电平。vfB1pxanfkI/O 口工作模式设定如下表。表3-1I/O 口工作模式PxM17:0PxM07:0I/O 口模式00 准双向口(传统8051I/O 口模式 ,灌电流可达20mA,拉电流为 230uA01推挽输出(强上拉输出,可达20mA,要加限流电阻)10仅为输入(高阻11开漏(Open Dra in,内部上拉电阻断开,要外加注意:虽然每个I/O 口在弱上拉时都能承受20mA的灌电流还是要加限流电阻,如1K, 560Q等),在强推挽输出时都能输出 20mA的拉电流也要加限

54、流电阻),但整个芯片的工作电流推荐不要超过55mAo即从MCU-VCC流入的电流不超过55mA,从 MCU-GND流出电流不超过55mA,整体流入/流出电流都不能超过 55mA o jbA9VhEoui介绍一个宏定义:_BIN作用是给寄存器的每个位赋值,比如:ADC_CONTR = _BIN(1,0,0,0, 1,0,0,0。就是给 ADC_CONTR 寄存器的第 7 位和第3位赋值1,其他位为00括号中的参数依次为第 7位第0位。X7Ahr18pJI在TF卡程序中,若将SPI 口设置成推挽 强上拉)输出,就可以这样写:P1M1 = _BIN (0, 0, 0, 0, 0, 0, 0, 0。P

55、1M0 = _BIN (1, 1, 1, 1, 1, 1, 1, 1。3.2.2 STC12C5A60S2 单片机的 A/D 转换STC12C5A60S2单片机的A/D转换口在P1 口(P1.7-P1.0用户通过软件 设置可将8路中的任意一路作为自己的 A/D转换口。首先需要设置 P1 口的 工作模式,因为温度检测只有一路,因此我们选择 P1.0 口作为模拟量的输 入口,设置其位漏极开漏模式,在这种情况下 P1 口才可作为A/D转换口使 用,否则只能作为一般的I/O 口。b3zqXLCqXo需要作为A/D转换使用的口需先将P1ASF特殊功能寄存器中的相应位 置1'将相应的位设置为模拟功

56、能。P1ASF特殊功能寄存器如下:pZyytu5rc5表3-2P1ASF特殊功能寄存器P1ASFP1ASFP1ASFP1ASFP1ASFP1ASFP1ASFP1ASFP1ASF7:076543210因此需将P1ASF0设置为1,'其它位设置为0'表3-3ADC_SPEED1SPEED0ADC_FLAGADC_STARTCHS2CHS1CHS0POWERCHS2,CHS1,CHS0为选择P1 口的哪一位作为 A/D转换口,如选择 P1.0 贝U应令 CHS2,CHS1,CHS0者B为 0。DVyGZezsrMADC_START为启动A/D转换位,为忖启动,为0寸关闭。ADC_FLAG为A/D转换结束标志,可通过查询此位看 A/D是否转换完

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论