基于PC与STC12C单片机串口通信的 温度采集系统设计
来源: 作者: 发布时间:2015-11-01 06:31:41 浏览量:2 系统软件设计
系统软件由PC程序和单片机程序构成。PC程序采用VC++编程,主要由串口通信和界面处理两个模块组成,通过串口通信获取单片机上传的数据,将其转换为十进制并进行显示,同时绘制出曲线。单片机程序以C51编程,主要由数据采集、数据发送和显示三部分组成,实现采集数据、上传数据和显示温度的功能。
2.1 PC程序设计
2.1.1 串行通信程序
串行通信程序主要由串口消息处理/数据接收函数(OnSerialComm())、串口参数设置函数(http://www.fpcban.com/电感生产厂家OnSerialSet())组成。
(1)串口消息处理/数据接收函数负责响应数据缓冲区中有字符的消息,读取缓冲区数据,转换数据格式,引起重绘调用绘图函数。数据缓冲区中有字符的消息由MSComm控件提供的方法产生[8]。OnSerialComm()调用了以下函数:
①GetCommEvent(),判断接收缓冲区内是否有数据的消息函数;②GetInput(),读缓冲区数据函数;②GetOneDimSize(),获得有效数据长度函数;④GetElement(),转换数据类型函数;⑤Format(),字符格式化函数;⑥Invalidate(),引起重绘调用绘图函数;⑦UpdateData(),更新编辑框函数。
(2)串口参数设置函数用于设置串口参数、打开串口、设置缓冲区参数。OnSerialSet()调用了以下函数:
①SetCommPort(),选择串口号函数;②SetPortOpen(),打开串口函数;③SetSettings(),设置串口参数函数;④SetInputMode(),设置输入模式函数;⑤SetRThreshold(),设置接收缓冲区接收多少个字符就能调用OnSerialComm()的函数;⑥SetInputLen(),设置当前接收区数据长度函数;⑦GetInput(),预读缓冲区函数。
2.1.2 绘图程序
绘图程序由画背景(坐标轴、坐标刻度、文字等)函数(DrawBkGrd())和实时绘图函数(DrawCurve())组成。它们都调用了以下函数:
(1)CreateFont(),设定字体函数;(2)SelectObject(),选定绘图对象到设备描述表函数;(3)MoveTo(),移动到当前坐标函数;(4)Linto(),画线函数;(5)TextOut(),输出文字函数。
2.2 单片机程序设计
单片机程序主要由初始化函数(InitMcuSys())、读取温度/时钟函数(ReadDigData())、串口通信函数(UartMcuData())组成。
(1) InitMcuSys()调用以下函数:
①TimerInit(),设定T0/T1的工作方式、初始值以及串口工作方式和波特率参数函数;电感器在电路中的作用②Ds18b20Init()/Ds1302Init(),初始化温度传感器和时钟芯片函数;③LcdBaseInit (),初始化液晶显示器函数。
(2) ReadDigData()调用以下函数:
①Read18b20Data(),读取温度函数;②Read1302Data(),
读取时间函数;③DataToByte(),数据格式转化函数。
3 实验及结论
系统实验结果如图7和图8所示。
图7和图8是人为改变环境温度后的实际运行结果。图7设置为显示1 000个温度采样点,采样时间为1次/s,图中比较完整地反映了这个时间段的温度变化;图8设置为显示60个温度采样点,采样时间也是1次/s,可见相对于PC,单片机反映温度变化的时间非常短。实际运行表明,整个电路简贴片电感器单实用,系统运行稳定、可靠;测试精度、串行通信、界面显示等功能均达到了设计要求。
参考文献
[1] 张毅刚,彭喜元.单片机原理与应用设计[M].北京:电子工业出版社,2010.
[2] 王鑫,崔忠林,刘建. 基于STC12C5A16S2的温度采集系统的设计[J]. 微型机与应用,2012,31(20):24-29.
[3] 陈桂友.增强型8051单片机实用开发技术[M]. 北京:北京航空航天大学出版社,2010.
[4] 李雪峰. 分布式温度采集网络在恒温控制中的应用[J].微型机与应用,2013,32(15):69-75.
[5] 黄明强.DS1302在单片机系统中的应用[J].保定师范专科学校学报,2004,17(2):30-33.
[6] 田开坤.基于LCD12864显示器的数字示波器设计[J].电子制作,2011(5):30-37.
[7] Max232 互动百科[EB/OL].(2013-02-28)[2014-03-29].http://www.baike.com/wiki/max232.
[8] 王英杰,林怡青,彭美春,等.基于VC++6.0的PC机和单片机串口通信[J].电脑应用技术,2006(60):36-40.
技术创新是提升线路板企业核心竞争力的重要途径它既可给企业带来风险和挑战,又可给企业带来商机。技术创新在企业发展中起着不可或缺的关键作用, 技术创新是提升企业核心竞争力的重要途径,是企业战略的核心。随着新经济时
3X1W RCC电源炸机 求分析!我有一款RCC的电源 一直做了两年没出现过什么大问题 但最近客户反应通电一段时间就有部分炸机现象! 退回来的货我看了一下,前端(单桥IN4007)全部炸断或击穿 限流电阻全炸 13002
三种电工套管在建筑工程应用中影响施工质量几点三种电工套管施工工艺及技术操作都有较完善的国家或地方的施工质量验收规范及施工技术操作规程。但三种电工套管在建筑施工应用中还会存在的一些较普遍的、影响工程质量的问
大电流电感