串口通信课程总结0串口通信课程总结题目:温度实时监控系统目录绪论................................................................................................................................21.1研究课题的目的及意义..................................................................................21.2国内外现状.......................................................................................................21.3本设计的目标...................................................................................................3串口通信课程总结12开发工具介绍..........................................................................................................42.1keil简介.........................................................................................................42.2C++Build简介.............................................................................................43下位机设计................................................................................................................53.1下位机的系统设计........................................................................................53.2下位机的程序设计..........................................................................................53.3DS18B20模块设计.......................................................................................63.5串口模块设计..................................................................................................94上位机设计............................................................................................................124.1上位机系统简介............................................................................................124.2温度显示部分..............................................................................................124.3数据库存储部分........................................................................................134.4温度曲线部分................................................................................................145调试过程................................................................................................................155.1下位机调试....................................................................................................155.2上位机调试.....................................................................................................156系统总结................................................................................................................17【参考文献】..............................................................................................................18串口通信课程总结2绪论1.1研究课题的目的及意义实时测量温度是在当今的自动化控制领域尤为重要,比如电机运行时温度的升高会直接影响其寿命和可靠性;液体混合加热时,温度过低过高都有可能液体混合的效果。所以,实时温度监控就像人的一双眼睛,把无形的温度,转换成我们可见的信号。通过这个系统,我们就能轻松地管理好温度并对其做出相应的判断。最传统的实时监控温度系统是由温度计直接完成。随着科技的发展,电子温度计取代了传统的温度计,由MCU控制温度芯片,加上显示部件,就构成了第二代温度监控系统。随着PC的普及,以及远程监控的优越性,第三代温度监控系统应运而生。第三代温度监控系统是由MCU控制温度传感器,将采集到的温度数据实时传送到上位机,并在上位机上将接收到的数据进行分析处理,最终讲结果返还,同时还可以通过上位机直接去操作实物,从而达到了非接触式的效果,这大大地提高了效率,同时稳定性和可靠性也相应有个提高。那么,对于我们来说,实时温度监控系统的设计是让我们掌握并巩固所学的知识,提高自己动手能力的一个重要的途径。通过对它的设计,我们可以掌握实时温度监控系统的精髓从而使能力得到很大的提高,这样就有利于我们今后自身的发展。1.2国内外现状目前计算机硬件技术朝着巨型化、微型化和单片化三个方向发展,单片机代表着计算机技术的一个发展方向,先后经历了4位机、8位机、16位机、32位机和64位机等几个发展阶段。虽然单片机经过几个阶段的发展,但从实际情况来看,并没有出现像微机处理那样推陈出新、更新换代的局面,这也是单片机发展的一大特点。4位、8位、16位、32位都存在于市场中,各有应用领域。不过,各类单片机为适应市场需串口通信课程总结3求,都要求在原来的基础上采用新技术、提高性能,推出新产品。下图是电子工程师对单片机选型的市场调查,从中可以看到,8位单片机仍然是市场的主流产品,但32位单片机发展很迅速。从单片机30多年的发展例程可以看到,单片机技术的发展以微处理器技术及超大规模集成电路技术的发展为新导,体系上,由SCM过渡到MCU,最后向SOC方向发展。同时,单片机速度越来越快,工作电压和功耗降低,引入了低噪声和高可靠的技术,并由原来的一次性写入,变成了可多次编程以及在线仿真等等。1.3本设计的目标(1)掌握PCF8563、DS18B20以及串口中断、定时器等模块知识,深化C语言语法,进一步熟悉单片机编程方法。(2)掌握C++Build的常规使用,并会简单的开发。(3)掌握利用ACCESS建立数据库并会SQL的一般查询。(4)实现上下位机的基本通信。串口通信课程总结42开发工具介绍2.1keil简介KeilC51是美国KeilSoftware公司出品的51系列兼容单片机C语言软件开发系统,与汇编相比,C语言在功能上、结构性、可读性、可维护性上有明显的优势,因而易学易用。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(uVision)将这些部分组合在一起。运行Keil软件需要WIN98、NT、WIN2000、WINXP等操作系统。如果你使用C语言编程,那么Keil几乎就是你的不二之选,即使不使用C语言而仅用汇编语言编程,其方便易用的集成环境、强大的软件仿真调试工具也会令你事半功倍。2.2C++Build简介C++Builder是由Borland公司推出的一款可视化集成开发工具。C++Builder具有快速的可视化开发环境:只要简单地把控件(Component)拖到窗体(Form)上,定义一下它的属性,设置一下它的外观,就可以快速地建立应用程序界面;C++Builder内置了100多个完全封装了Windows公用特性且具有完全可扩展性(包括全面支持ActiveX控件)的可重用控件;C++Builder具有一个专业C++开发环境所能提供的全部功能:快速、高效、灵活的编译器优化,逐步连接,CPU透视,命令行工具等。它实现了可视化的编程环境和功能强大的编程语言(C++)的完美结合。C++Builder优化的32位原码(NativeCode)编译器建立在Borland公司久经考验的编译技术基础之上,提供了高度安全性、可靠性、快速性的编译优化方法,完全编译出原始机器码而非中间码,软件执行速度大大提高。在编译和连接过程中,C++Builder自动忽略未被修改的原代码和没有使用的函数,从而大大提高了编译和连接速度。C++Builder的CPU透视工具包括五个独立的小面板,可以对正在运行程序从内部进行深层次的了解。串口通信课程总结53下位机设计3.1下位机的系统设计该温度实时监控系统组成的基本硬件模块主要有5V电源、DS18B20温度传感器、PCF8563时钟芯片、串口、STC89C52以及数码管组成。这些模块都是比较基础。以下是下位机系统框图:由于时间有限,这次没有做板,这次所用的是一块以前电装实习焊的开发板,它集成了以上用到的所有模块。3.2下位机的程序设计一般的单片机程序设计,都是先把小模块程序调试成功,然后进行封装,最后再把各个已封装好的小模块进行组合,在主函数中直接调用并综合运用。本次的设计思路就是这样。其流程如下图所示STC89C52PCF8563时钟芯片DS18B20温度传感器数码管显示串口串口通信课程总结63.3DS18B20模块设计DS18B20只有三个管脚,是典型的一线总线封装。所以它的原理图也很简单,一根电源线和一根底线再加上一根数据线。下图3.3.1图是它的原理图:开始初始化8563写时间8563读时间温度数据处理温度显示0.1S定时器发送数据到上位机串口中断串口通信课程总结7读写18B20,需要很严格的时序控制。以下是18B20的读写控制时序图:18B20写一个字节的时序图18B20读一个字节的时序图读写18B20,就是根据它的时序图,定义变量,然后拉高拉低,控制延时时间就可以了。事实上,大部分芯片都是通过看它的时序图来编写程序的,所以学会看时序图,也是编程的一门必修课。一个封装好的18B20模块,应该包括下面几个部分:18B20初始化读