《基于单片机的多点温度监测系统设计.docx》由会员分享,可在线阅读,更多相关《基于单片机的多点温度监测系统设计.docx(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、基于单片机的多点温度监测系统设计摘 要:DS18B20是一种可组网的高精度数字式温度传感器,由于其具有单总线的独特优点,可以使用户轻松地组建起传感器网络,并可使多点温度测量电路变得简单、可靠。PL2303是Prolific公司生产的一种高度集成的RS232-USB接口转换器,可提供一个RS232全双工异步窜行通信装置及USB功能接口便利连接的解决方案。该系统由上位机与下位机两大部分组成。下位机实现温度的检测并提供标准RS232通信接口,芯片使用了ATMEL公司的AT89S52单片机与DALLAS公司的DS18B20数字温度传感器。上位机部分使用了通用PC。该系统可应用于仓库测温、楼宇空调控制与
2、生产过程监控等领域。关键字:温度测量;单总线;数字温度传感器;单片机;转换器Based on SCM more temperature monitoring system designAbstract:DS18B20 is a network of high precision digital temperature sensor, since it has the unique advantages single bus, users can easily set up sensor network, and can make more temperature measurement cir
3、cuit become simple and reliable. PL2303 Prolific company is the production of a highly integrated RS232-USB interface converter, can provide a RS232 full-duplex asynchronous channeling line of communication equipment and the USB interface convenient connection function of the solution.The system con
4、sists of PC and a machine under two main components. A machine to implement the temperature detection and provide standard RS232 communication interface, ATMEL company used chip AT89S52 SCM and DALLAS company DS18B20 digital temperature sensor. PC parts used the general PC. This system can be used i
5、n storage temperature measurement, building the air conditioning control and production process monitoring, etc。Key words:temperature measurement; Single bus; Digital temperature sensors; Single chip microcomputer; converter第一章 绪论1.1 系统概述 在工、农业生产与日常生活中,对温度的测量及控制占据着极其重要地位。首先让我们了解一下多点温度检测系统在各个方面的应用领域:
6、消防电气的非破坏性温度检测,电力、电讯设备之过热故障预知检测,空调系统的温度检测,各类运输工具之组件的过热检测,保全及监视系统之应用,医疗及健诊的温度测试,化工、机械等设备温度过热检测。温度检测系统应用十分广阔。 温度检测系统有则共同的特点:测量点多、环境复杂、布线分散、现场离监控室远等。若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D 转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。这样,由于各种因素会造成检测系统较大的偏差;又因为检测环境复杂、测量点多、信号传输距离远及各种干扰的影响,会使检测系统的稳定性与可靠性下降 。所以多点温度检测系统的
7、设计的关键在于两部分:温度传感器的选择与主控单元的设计。温度传感器应用范围广泛、使用数量庞大,也高居各类传感器之首。本设计运用主从分布式思想,由一台上位机(PC微型计算机),下位机(单片机)多点温度数据采集,组成两级分布式多点温度测量的巡回检测系统。该系统采用 RS-232串行通讯标准,通过上位机(PC)控制下位机(单片机)进行现场温度采集。温度值既可以送回主控PC进行数据处理,由显示器显示。也可以由下位机单独工作,实时显示当前各点的温度值,对各点进行控制。下位机采用的是单片机基于数字温度传感器DS18B20的系统。DS18B20利用单总线的特点可以方便的实现多点温度的测量,轻松的组建传感器网
8、络,系统的抗干扰性好、设计灵活、方便,而且适合于在恶劣的环境下进行现场温度测量。本系统可以应用在大型工业及民用常温多点监测场合。如粮食仓储系统、楼宇自动化系统、温控制程生产线之温度影像检测、医疗及健诊的温度测试、空调系统的温度检测、石化、机械等。第二章 系统总体设计21 设计要求多点温度检测,制作3点温度检测系统,检测范围为1020。将三点检测的温度采集并通过PC机界面显示出来,LED数码管显示出当前环境温度及三点的平均温度。在PC机驱动界面上分别设定三点的温度报警阈值,当任一被测点得温度不在其设定的检测范围时,蜂鸣器报警,同时在PC机界面上显示出相应的报警符号(当被测点温度超出设定的检测范围
9、时显示红色报警符,当被测点温度低于设定的检测范围时显示白色报警符)被测点温度误差。本设计中采用数字式温度传感器DS18B20来采集温度值并用AT89S52单片机来进行数据处理并控制相关电路的工作,PL2303控制器及PC级相连显示当前测定的温度,具有检测方便、灵活性大、精度高等优点。当温度超过预设温度上下限时,系统将发出警报并记录相应警报的类型与时间。22系统组成方框图传感器模块 下位机(AT89S52) 上位机(PC)LED显示模块PL2303控制模块预警灯显示模块图1系统方框图第三章 系统硬件设计31总体思路在设计这个温度检测系统之前,先了解系统所要实现的各个功能情况。在设计的过程中,除了
10、要让硬件电路简洁外,还要兼顾软件不能过于复杂。这样才能达到设计的实际要求,硬件支持软件,软件带动硬件。本电路设计的主要思路是:对设置的三个温控点进行实时的温度监控,并且把采集的温度通过电脑界面显示出来。最基本的程序是温度采样程序,之后的设定的数码管显示与PL2303控制都是在基本程序上扩展而得到的。主要目的是将三点检测的温度采集并通过PC机界面显示出来,LED数码管显示出当前环境温度及三点的平均温度。在PC机驱动界面上分别设定三点的温度报警阈值,当任一被测点得温度不在其设定的检测范围时,蜂鸣器报警,同时在PC机界面上显示出相应的报警符号311系统总体设计图图2 系统总原理图32 各模块电路图3
11、21温度测试电路设计这里我们用到温度芯片DS18B20。DS18B20是DALLAS公司生产的一线式数字温度传感器,具有3引脚TO92小体积封装形式。测温分辨率可达,被测温度用符号扩展的16位数字量方式串行输出。其工作电源既可在远端引入,也可采用寄生电源方式产生。CPU只需一根端口线就能及诸多DS18B20通信,占用微处理器的端口较少,可节省大量的引线与逻辑电路。DS18B20支持“一线总线”接口,测量温度范围为 -55C+125C,在-10+85C范围内,精度为0.5C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程
12、控制、测温类消费电子产品等。DS18B20内部结构64位ROM 与单线接口存储器与控制器(1) DS18B20的内部结构如图所示 温度灵敏元件 高速 缓存存储器低温触发器TL电源检测高温触发器TH配置寄存器8位CRC生成器DS18B20内部结构图DS18B20有4个主要的数据部件: 64位激光ROM。64位激光ROM从高位到低位依次为8位CRC、48位序列号与8位家族代码(28H)组成。 温度灵敏元件。 非易失性温度报警触发器TH与TL。可通过软件写入用户报警上下限值。 配置寄存器。配置寄存器为高速暂存存储器中的第五个字节。DS18B20在0工作时按此寄存器中的分辨率将温度转换成相应精度的数值
13、,其各位定义如图所示。TMR1R011111MSBDS18B20配置寄存器结构图LSB其中,TM:测试模式标志位,出厂时被写入0,不能改变;R0、R1:温度计分辨率设置位,其对应四种分辨率如下表所列,出厂时R0、R1置为缺省值:R0=1,R1=1(即12位分辨率),用户可根据需要改写配置寄存器以获得合适的分辨率。配置寄存器及分辨率关系表 :R0R1温度计分辨率/bit最大转换时间/us009011010113751112750(2) 高速暂存存储器高速暂存存储器由9个字节组成,其分配如下图所示。当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0与第1个字节。单片
14、机可通过单线接口读到该数据,读取时低位在前,高位在后,数据格式如图所示。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。温度低位温度高位THTL配置保留保留保留8位CRCLSBDS18B20 存储器映像图MSB温度值格式图DS18B20 温度数据表:232221202-12-22-32-4MSBLSBSSSSS262524典型对应的温度值表:温度/二进制表示十六进制表示+125 0-5500000111 110100000000000000000000000011111111 1111100011111111 010111101111
15、1110 0110111111111100 1001000007D0H0191H00A2H0008H0000HFFF8HFF5EHFE6FHFC90HDS18B20最大的特点是单总线数据传输方式,DS18B20的数据I/O均由同一条线来完成。硬件连接电路如下图: VCC=5VDS18B 20 3#DS18B 20 2#DS18B 20 n#DS18B 20 1# AT89S52本系统为多点温度测试。DS18B20采用外部供电方式,理论上可以在一根数据总线上挂256个DS18B20,但时间应用中发现,如果挂接25个以上的DS18B20仍旧有可能产生功耗问题。另外单总线长度也不宜超过80M,否则也
16、会影响到数据的传输。在这种情况下我们可以采用分组的方式,用单片机的多个I/O来驱动多路DS18B20。在实际应用中还可以使用一个MOSFET将I/O口线直接与电源相连,起到上拉的作用。对DS18B20的设计,需要注意以下问题(1)对硬件结构简单的单线数字温度传感器DS18B20 进行操作,需要用较为复杂的程序完成。编制程序时必须严格按芯片数据手册提供的有关操作顺序进行,读、写时间片程序要严格按要求编写。尤其在使用DS18B20 的高测温分辨力时,对时序及电气特性参数要求更高。(2)有多个测温点时,应考虑系统能实现传感器出错自动指示,进行自动DS18B20 序列号与自动排序,以减少调试与维护工作
17、量。(3)测温电缆线建议采用屏蔽4 芯双绞线,其中一对线接地线及信号线,另一组接VCC与地线,屏蔽层在源端单点接地。DS18B20 在三线制应用时,应将其三线焊接牢固;在两线应用时,应将VCC及GND接在一起,焊接牢固。若VCC脱开未接,传感器只送85.0 的温度值。(4)实际应用时,要注意单线的驱动能力,不能挂接过多的DS18B20,同时还应注意最远接线距离。另外还应根据实际情况选择其接线拓扑结构。322主控模块电路设计本系统选用ATMEL公司的AT89系列单片机中的AT89S52,AT89S52单片机是一种新型的低功耗、高性能且内含8K字节闪电的8位CMOS微控制器,及工业标准MCS一51
18、指令系列与引脚完全兼容。有超强的加密功能,其片内闪电存储器的编程及擦除完全用电实现,数据不易挥发,编程/擦除速度快。AT89S52芯片内部有6个中断源:两个外部中断INTO与INT1.三个定时器中断(定时器0,1,2)与一个串行口中断。在本系统中涉及到AT89S52芯片的中断源有五个:分别是外部中断INT1,定时/计数器T0,T1与T2以及串行口中断。本测控系统采用电平激活方式,也即是INT1=0;一旦INT1引脚的采样值为低电平,则TCON寄对于定时器TO与Tl,通过寄存器TMOD,TCON来控制与选择定时/计数器的功能与操作模式。AT89S52的芯片管脚图如图5示。图5 AT89S52芯片
19、管脚323联机模块电路设计整个模块通过PL2303转换器驱动及PC机连接,其模块电路如下图所示。通过一个USB接口及PC机连接,实现对温度的实时监控,并可通过控制界面对温度检测范围进行调整控制,当温度不在检测范围内时显示报警符号。图6 联机模块电路图7 联机控制界面截图PL2303介绍及工作原理详见附录二324显示模块电路设计(1)数码管显示电路设计设计中采用一个四位数码管来显示当前环境温度,通过单片机的P1口控制数码管的工作,并在P1口及数码管间接上拉电阻对数码管进行保护,同时也增加了数码管的亮度,电路如图7所示。图8 数码管显示电路(2)发光二极管显示电路设计设计中采用了3个发光二极管作为
20、预警显示灯,采用下拉示串电阻是为了保护发光二极管,如图8所示。 Led1 L1 Led2 L2 Led3 L3 图9 发光二极管预警电路第四章 系统软件设计开始41主程序设计系统初始化读取温度采集子程序采集温度并进行数据处理数显并判断是否在正常温度内 不报警 Y N判断温度超出上限(Y)或低于下限(N) PC机显示红色预警,蜂鸣器报警 Y NPC机显示白色预警,蜂鸣器报警图10 主程序流程图本软件设计的程序设计包括采集各个点的温度进行数据处理,判断当前测定温度是否在设定的阈值范围内,若不在则发出报警。主程序调用了4个子程序,分别是数码管显示程序、LED预警显示程序、温度测试程序、单片机及PC机
21、串口通讯程序。LED预警显示程序:实现对温度控制的预警功能。温度测试程序:对温度芯片送过来的数据进行处理,进行判断与显示。数码管显示程序:向数码的显示送数,控制系统的显示部分。串口通讯程序:实现PC机及单片机通讯,将温度数据传送给PC机。程序结构LED预警显示程序温度测试程序数码管显示程序串行口通讯程序 图11 程序结构框图42 串行口通讯程序本次通讯中,测控系统分位上位机与下位机之间的通信,系统中单片机负责数据采集、处理与控制,上位机进行现场可视化检测,通信协议采用半双工异步串行通信方式,通过RS232的RTS信号进行收发转换,传输数据采用二进制数据,上位机及下位机之间采用主从式通讯。本人采
22、用的VB环境下PC机及单片机之间实现串行通讯的软硬件方案。VB是Microsoft公司推出的Windows应用程序开发工具,因其具有界面友好,编程简便等优点而受到广泛的使用,而且Visual Basic 6.0 版本带有专门实现串行通讯的MSCOMM控件。MSComm控件串口具有完善的串口数据的发送与接收功能。通过此控件,PC机可以利用串行口及其它设备实现轻松连接,简单高效地实现设备之间的通讯。此控件的事件响应有两种处理方式。事件驱动方式:由MSComm控件的OnComm事件捕获并处理通讯错误及事件;查询方式:通过检查CommEvent属性的值来判断事件与错误。 1) MSComm控件的主要属
23、性与方法 a. CommPort:设置或返回串行端口号,其取值范围为199,缺省为1 b. Setting:设置或返回串行端口的波特率、奇偶校验位、数据位数、停止位。c. PortOpen:打开或关闭串行端口。 d. RThreshold:该属性为一阀值,它确定当接收缓冲区内字节个数达到或超过该值后就产生MSComml-OnComm事件。 e. Input:从接收缓冲区移走一串字符。 f. Output:向发送缓冲区传送一字符串。 软件流程图如下:图12 PC通讯程序流程图 图13 单片机程序流程图参数设定:通信端口选择COM1,波特率设定为1200B/SMSCOmmmPort=1MSComm
24、.Setting=“1200, n, 8, 1”。 START:MOVSP,#60HMOVTMOD,#20HMOVTH1,#0E6HMOVTL1,#0E6H ;1200B/S,晶振为12MHZMOV PCON,#00HMOVSCON,#50HSETBTR1第五章 系统调试51软件调试分步调试1、测试环境及工具测试温度:1020摄氏度。(模拟多点不同温度值环境)测试仪器及软件:数字万用表,温度计0100摄氏度,串口调试助手。测试方法:目测。2、测试方法使系统运行,观察系统硬件检测是否正常(包括单片机最小系统,显示电路,温度测试电路等)。系统自带测试表格数据,观察显示数据是否相符合即可。采用温度传
25、感器与温度计同时测量多温度变化情况(取温度值不同的多点),目测显示电路是否正常。并记录各点温度值,及实际温度值比较,得出系统的温度指标。使用串口调试助手及单片机通讯,观察单片机及串口之间传输数据正确否。3、测试结果分析自检正常,各点温度显示正常,串口传输数据正确。因为芯片是塑料封装,所以对温度的感应灵敏度不是相当高,需要一个很短的时间才能达到稳定。5.2 统一调试将硬件及软件结合起来进行系统的统一调试。实现PC机及单片机通讯,两者可以实时更新显示各点温度值。第六章 结束语为期一个多月的毕业设计即将结束了,在这一个月里我在同学和教师的帮助下完成了路灯控制系统的设计。毕业设计作为综合性的设计,它不
26、同于以前教学中的实验、课程设计等实践环节。以前的所做的一些设计主要是根据相关的课本及教师所给资料去完成的,有一定的参照性,所以相对而言比较简单,不能完全达到锻炼自己动手能力的目的。而毕业设计则是对我们大学四年所学知识的一个综合的训练及考核,是对所学知识的应用能力与大学所学理论知识对实践技能相结合的全面的检验。并对我们如何根据要做的课题对现有的资料进行理解与运用的能力的考核。真正做到了理论联系实际,把以前所学的知识综合贯通进行实践,并在实践中不断学习与自我完善。从刚确定毕业设计课题以来,我首先是查找一些相关的书籍及资料,然后分析设计,并根据实际情况拟定设计方案,从而达到优化方案。在研究设计电路时
27、,我优化了电路设计,这就省去了一部分时间,最难的是调试了,但在教师与同学的帮助下,完成的设计达到了预定的要求。同时,通过这次毕业设计,我们在各个方面都有了很大的提高,特别是在理论与实践结合方面使我们受益匪浅,使大学里学习的理论知识在根本上得到一次最完整的实践与提高。也为我即将面临的工作奠定了很好的基础。同时,在本次毕业设计中深深认识到自己的各个方面的不足之处,本着提高动手能力以及检测四年所学知识的目的,我严格要求自己,每一环节都认真对待,定期向知道教师报告进展情况与请教不懂的地方,得以完成任务。在以后的工作中,我们必须进一步深化在实践中去丰富理论,完善知识结构。由于环境条件的影响,理论及实践还
28、是有一定的差距,这也要求我们在实践中注意检验的积累。参考文献:1. 贾振国. DS1820 及高精度温度测量的实现J.电子技术应用,2000(1):58 - 59.2. 贾正松.单片机系统复位电路设计J.中国期刊全文数据库,2007/36 3. 邦田. 电子电路实用抗干扰技术. 北京:人民邮电出版社,1994 4. 李涛.新型单片机AT89C2051及其应用举例J 1996年 04期 5. 曲喜贵. 电子元件材料手册 M. 北京:电子工业出版社,1989.422-430.6. 黄贤武,郑筱霞,曲波等. 传感器实际应用电路设计M. 成都:电子科技大学出版社,1997.4-10.7. 刘君华. 智
29、能传感器系统 M . 西安:西安电子科技大学出版社,1999.8. 余永权. Flash 单片机原理及应用 M. 北京:电子工业出版社,1997.9. 邦田. 电子电路实用抗干扰技术 M . 北京:人民邮电出版社,1994.10. 周云波. 由DS18B20单线数字温度计构成的单线多点温度测量系统. 电子技术应用,1996(2):15- 20.11. 吉鹏 ,马云峰等. 微机原理及接口技术 M. 北京:高等教育出版社,2001.12. 振国. DS1820 及高精度温度测量的实现 J . 电子技术应用,2000 (1) .13. 东耀,汪仁煌. 数字温度传感器在仓库温度检测系统的应用J. 传感
30、器世界,2001(12):30- 33.14. 月霞,孙传友. DS18B20 硬件连接及软件编程J. 传感器世界,2001(12):25- 29.15. 一线数字温度传感器资料M. 武汉:武汉力源电子,1996.16. 贤武,郑霞,曲波. 传感器实际应用电路设计M. 成都:电子科技大学出版社,1997.17. 伟正. 单线数字温度传感器的原理及应用1. 电子技术应用,18. DALLAS公司.DS18B20数据手册Z19. 周月霞,孙传友. DS18B20 硬件连接及软件编程J. 传感器世界,2001,(12).20. 单线数字温度传感器资料M. 武汉:武汉力源电子,1996.21. 贾东耀
31、,汪仁煌. 数字温度传感器在仓库温度检测系统的应用J. 传感器世界,2001(12).22. 余永权. ATMEL 89系列单片机应用技术M. 北京:北京航空航天大学出版社2002.23. 胡汉才. 单片机原理及系统设计M. 北京:清华大学出版社,200224. 谭浩强.C程序设计(第三版)M.清华大学出版社.2005/附录一:元器件清单器件名称器件型号数量单片机AT89S521RS232-USB接口转换器PL23031四联数码管共阴型1三极管S80504晶振12M2稳压芯片78051蜂鸣器1发光二极管6温度传感器DS18B203按键4个引脚1磁片电容 30pf64极性电容473310112电
32、阻1K1430欧21100欧4电源5V1附录二:PL2303介绍及工作原理PL2303 是 Prolific 公司生产的一种高度集成的 RS232-USB 接口转换器, 可提供一个 RS232 全双工异步串行通信装置及 USB 功能接口便利联接的解决方 案。该器件内置 USB 功能控制器、USB 收发器、振荡器与带有全部调制解调器控 制信号的 UART, 只需外接几只电容就可实现 USB 信号及 RS232 信号的转换, 能够方便嵌入到各种设备,所以 2000 年左右开始 经常推荐使用该 款芯片;该器件作为 USB/RS232 双向转换器,一方面从主机接收 USB 数据并将 其转换为 RS23
33、2 信息流格式发送给外设;另一方面从 RS232 外设接收数据转换 为 USB 数据格式传送回主机。这些工作全部由器件自动完成,开发者无需考虑 固件设计.PL2303 的高兼容驱动可在大多操作系统上模拟成传统 COM 端口,并允许基 于 COM 端口应用可方便地转换成 USB 接口应用,通讯波特率高达 6 Mb/s。在工 作模式与休眠模式时都具有功耗低,是嵌入式系统手持设备的理想选择。该器件 具有以下特征:完全兼容 USB1.1 协议;可调节的 35 V 输出电压,满足 3V、 与 5V 不同应用需求;支持完整的 RS232 接口,可编程设置的波特率:75b/s6 Mb/s,并为外部串行接口提
34、供电源;512 字节可调的双向数据缓存;支持默认 的 ROM 与外部 EEPROM 存储设备配置信息,具有 I2C 总线接口,支持从外部 MODEM 信号远程唤醒;支持 Windows98,Windows2000,WindowsXP 等操作系统;28 引脚 的 SOIC 封装.一 .产品特性:1. 完全符合USB规范(全速兼容)2. 片内拥有 USB 1.1 收发器,5V 转 3.3V 的稳压器,12 MHz 的晶体 振荡器3. 支持 RS232 这样的串行接口1)全双工发送器与接收器(TxD 与 RxD)2)六个调制解调控制引脚(RTS,CTS,DTR,DSR,DCD 与 RI)3)内容可以
35、为 5,6,7 或 8 个数据位4) 支持自动握手各种模式5) 一,一个半,或两个停止位6) 奇偶错误,帧错误与串行中断检测7) 可编程波特率从 75bps 到 6 Mbps8) 外部的 RS232 驱动下降控制9) 独立的串行接口电源4. 宽广的流量控制机制1)自动及 CTS / RTS 流控制2)自动使用的 XON / XOFF 流量控制3)入站数据缓冲区溢出检测5. 可配置的 512 个字节双向数据缓冲器1)256 字节的输出缓冲区与 256 字节的输入缓冲区2)128 字节的输出缓冲区与 384 字节的输入缓冲区6. 支持从远程输入相关调制信号进行唤醒功能7. 两个通用的I/O(GPI
36、O)引脚8. 启动时可以讲配置存储于外部EEPROM9.提供支持Windows与MacOS,Linux与WinCE的驱动程序10.具有专为 Windows XP 驱动程序认证的标志11.该 IC 是 SSOP 封装的小尺寸 28 引脚二简介:PL2303 是 Prolific 公司生产的一种高度集成的 RS232-USB 接口转换器,可 提供一个 RS232 全双工异步串行通信装置及 USB 功能接口便利联接的解决方案。该器件内置 USB 功能控制器、USB 收发器、振荡器与带有全部调制解调器控 制信号的 UART,只需外接几只电容就可实现 USB 信号及 RS232 信号的转换,能 够方便嵌
37、入到手持设备。该器件作为 USBRS232 双向转换器,一方面从主机接收 USB 数据并将其转 换为 RS232 信息流格式发送给外设;另一方面从 RS232 外设接收数据转换为 USB 数据格式传送回主机。这些工作全部由器件自动完成,开发者无需考虑固件设计。通过利用 USB 块传输模式,利用庞大的数据缓冲器与自动流量控制,PL2303HX 能够实现更高的吞吐量比传统的 UART(通用异步收发器)端口,高达 115200 bps 的波特率可用于更高的性能使用。三、对应引脚方案:引脚名字类型引脚描述;1TXD输出数据输出到串口;2DTR_N输出数据终端准备好,低电平有效;3RST_N输出发送请求
38、,低电平有效;4VDD_325电源RS232 的电源,为串行端口信号的电源引脚:当串口为,这应该是当串口为,这应该是5RXD输入串口数据输入6RI_N输入/输出串行端口(环指示器)7GND电源接地8NC无连接9DSR_N输入/输出串行端口(数据集就绪)10DCD_N输入/输出串行端口(数据载波检测)11CTS_N输入/输出串行端口(清除发送)12SHTD_N输出控制RS232收发器开关13EE_CLK输入/输出串行EEPROM时钟14EE_DATA输入/输出串行EEPROM数据15DP输入/输出USB端口D+信号16DM输入/输出USB端口D-信号17V0_33常规电源输出18GND接地19N
39、C无连接20VDD_5电源USB端口的5V电压电源21GND接地22GP0输入/输出通用I/O引脚023GP1输入/输出通用I/O引脚124NC无连接25GND_A模拟地锁相环26PLL_TEST输入PLL锁相环测试模拟控制27OSC1输入晶体振荡器输入28OSC2输入/输出晶体振荡器输出附录三:源程序/功能:及上位机完成通信,上位机发送请求指令,可以完成三路温度数据的采集#include #define uchar unsigned char#define uint unsigned intsbit A1 = P37; /数码管位选sbit A2 = P36;sbit A3 = P35;sb
40、it A4 = P34;sbit db1 = P21; /定义采集点1及单片机的接口sbit db2 = P23; /定义采集点2及单片机的接口sbit db3 = P25; /定义采集点3及单片机的接口sbit jb1 = P20;/采集点1温度报警接口sbit jb2 = P22;/采集点2温度报警接口sbit jb3 = P24;/采集点3温度报警接口sbit buzzer = P32; /蜂鸣器int tem1;/用于储存各采集点读取的温度值int tem2;int tem3;uchar tt = 0;uchar rex = 0;uchar receivedat = 0; /用于存放单
41、片机收到的指令数据uchar c;/主程序中循环变量uchar senden = 0; /发送使能uchar qb1,sg1,qb2,sg2,qb3,sg3;/用于存放温度值的各位数值 变量uchar wd8;/用于存放待发送到PC端的温度各位数据 数组/*定义数码管显示数组*/uchar weixuan = 0x80,0x40,0x20,0x10; /位选uchar duanxuan = 0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90;/段选uchar dxxsd = 0x40,0x79,0x24,0x30,0x19,0x12,0x02,0
42、x78,0x00,0x10; /段选含小数点void delay(uint i)/ds18b20数据延时while(i-);void delay0(uint z) /数码管显示延时uint i,j;for(i = 10;i 0;i-)for(j = z;j 0;j-);void init(void)/18b20初始化/uchar x = 0;db1 = 1;/db18b20复位db2 = 1;/db18b20复位db3 = 1;/db18b20复位delay(8);db1 = 0;db2 = 0;db3 = 0;delay(80);db1 = 1;/db18b20复位db2 = 1;/db18b20复位db3 = 1;/db18b20复位delay(14);/x = db;delay(20);/return(x);char read1(void) /读采集点1数据uchar i = 0;uchar dat = 0;for(i = 8;i 0;i-)db1 = 0;dat = 1;db1 = 1;if(db1)dat |= 0x80;delay(4);return(dat);char read2(void) /读采集点2数据uchar i = 0;uchar dat = 0;fo