采用单片机STC12C5608AD设计一台数显温度表.doc
《采用单片机STC12C5608AD设计一台数显温度表.doc》由会员分享,可在线阅读,更多相关《采用单片机STC12C5608AD设计一台数显温度表.doc(23页珍藏版)》请在沃文网上搜索。
1、摘要摘要随着社会的进步和工业技术的发展,人们越来越重视温度因素,许多产品对温度范围要求严格,而且目前市场上普遍存在的温度检测仪器大都是单点测量,同时有温度信息传递不及时、精度不够的缺点,不利于工业控制者根据温度变化及时做出决定。本设计是利用STC12C5608AD 实现对温度的采集。在设计中采用了PT100热电阻温度传感器,其具有较高的精确度,可完成对温度的精准测量;在显示部分采用动态显示,对于放大倍数和上下限的设定我们采用分时显示。关键词: STC12C5608AD单片机、PT100、LabVIEW、研华板卡PCL-818HG目录目录第一章 课程设计内容与要求分析11.1 课程设计内容11.
2、2 课程设计要求1第二章 智能温度表硬件设计22.1 温度检测22.2 实测温度显示22.3 温度设定32.4 报警电路4第三章 智能温度表软件设计53.1 工作流程53.2 功能模块53.3 资源分配53.4功能软件设计73.4.1主程序与中断服务子程序73.4.2按键检测子程序83.4.3按键键值处理子程序83.4.4 显示子程序9第四章 温度控制电路的LabVIEW实现104.1 LabVIEW简介104.2 研华板卡PCL818HG104.3 温度控制系统114.3 温度控制调试过程12单片机课程设计总结13参考文献14附录15第一章 课程设计内容与要求分析第一章 课程设计内容与要求分
3、析1.1 课程设计内容1、采用单片机STC12C5608AD设计一台数显温度表2、采用研华板卡PCL818HG 设计一台虚拟温度表1.2 课程设计要求1、数显温度表(应用protel画出电路原理图,应用keil完成软件编程)1)传感器:热电阻PT100;2)显示器:数码管4位(LED);3)键盘:功能键、移位键和加一键;4)范围:0-200;5)精度:1;6)电源:AC 220V;7)变送器:DC 0-20mA;8)报警:超上限LED闪烁;2、虚拟温度表(应用LabVIEW和PCL-818HG完成温度表前面板设计)1)输入温度信号:DC 0-4V;2)显示温度数值:00-200;3)采集板卡:
4、PCL-818HG;4)报警显示:灯亮;21第二章 智能温度表硬件设计第二章 智能温度表硬件设计2.1 温度检测这部分需用PT100热敏温度传感器,PT100是铂热电阻,它的阻值会随着温度的变化而改变。PT上的100即表示它在0时阻值为100欧姆,在100时它的阻值约为138.5欧姆。检测器件的温度信息经过单线接口送入电压跟随器的正极入口,然后输入运放的正极入口,经由运发放大后送入单片机的A/D采集口P1.0端口。P1.0口连接处理过的温度传感器PT100采集来的信号,如图2-1所示。图2-1 温度检测电路2.2 实测温度显示这部分由有4位LED数码显示器,由于LED静态显示需要占用较多的I/
5、O口,且功耗较大,因此在大多数场合通常不采用静态显示,而采用动态扫描的方法来控制LED数码管的显示。动态显示的特点是将所有位数码管的段选线并联在一起,由位选线控制是哪一位数码管有效。点亮数码管采用动态扫描显示。所谓动态扫描显示即轮流向各位数码管送出字形码和相应的位选,只要扫描显示速度够快,利用发光管的余辉和人眼视觉暂留作用,使人的感觉好像各位数码管同时都在显示。动态显示的亮度比静态显示要差一些,所以在选择限流电阻时应略小于静态显示电路中的。动态扫描显示时刷新频率最好大于50HZ,即没显示一轮的时间不超过20ms,每个数码管显示时间不能太长也不能太短,时间太长会影响刷新率,导致总体显示呈现闪烁的
6、现象,时间太短发光二极管的电流导通时间也就短,会影响总体的显示亮度。一般控制在1ms左右最佳。显示部分的接线图如图2-2所示。图2-2 动态显示电路2.3 温度设定这部分键盘只设置3个功能键,分别是K1-功能键,K2-移位键,K3加1键。功能键有三个功能,分别为An设定放大倍数,Hi设定上限,Lo设定下限。图2-3 温度设定控制电路2.4 报警电路报警电路如图2-4所示,由P3.3和P3.4端口控制,当实时检测的温度在上下限范围内时,控制指示灯亮。当实时检测的温度超过上限或者低于下限时,报警输出指示灯亮。图2-4 报警电路第三章 智能温度表软件设计第三章 智能温度表软件设计3.1 工作流程启动
7、系统,进行自检程序,用动态显示显示8.8.8.8.测试显示部分电路是否能正常工作。初始状态,系统的放大倍数,上限和下限分别为0。自检程序运行完成后,系统显示部分四个数码管轮流显示8.这一现象。等待用户手动设定放大倍数、上限值和下限值。设定完成之后,第四次按下功能键,退出设定模式进入温度采集和显示报警模式。当采集的温度值在设定的上下限之间时,控制指示灯绿灯亮。当采集的温度值高于上限值或低于下限值时,报警输出指示灯红灯亮。当再次按下功能键时,可进入设定模式,重新设定放大倍数、上限值和下限值。3.2 功能模块1、键盘管理:检测键盘输入,接受温度设定,启动工作系统。2、显示:分时显示放大倍数、上限值、
8、下限值和检测温度。3、温度检测:检查温度传感器电压信号,转换温度值。4、报警:当采集的温度值高于上限值或低于下限值时,报警输出指示灯红灯亮。 3.3 资源分配STC12C5608AD的单片机的引脚分布使用图如下3-1所示,它是由P1.0-P1.7的八路的AD转换的。图3-1 STC12C5608AD引脚分布使用图为了方便程序的编写,在写程序之前我们先对单片机的资源做一个分配,如下表3-1所示表3-1单片机内部资源分配单片机资源资源使用情况功能初始化值P1使用送位码与控制按键0xffP2使用送段码0xffP3使用控制指示灯0xffAD转换使用进行模数转换0xff3.4功能软件设计3.4.1主程序
9、与中断服务子程序图3-1 主程序和中断服务子程序的流程图按图3-1所示主程序和中断服务子程序流程图,可编写出主程序和中断服务子程序。由于按键检测需要置零P1.7P1.5这三个I/O口,致使三个数码管选通,所以在设定放大倍数、上限值、和下限值时,使用定时器中断来分时置零这三个端口。当设定完成,关闭定时器中断。3.4.2按键检测子程序本系统共有三个按键,按键K1为功能键,功能为分别设定放大倍数、设定上限、设定下限、退出关定时器。图3-2 温度设定值检测与显示程序流程图3.4.3按键键值处理子程序按键检测为系统的核心部分。图3-3为温度检测子程序流程图。这里只给出部分的按键检测流程图。每个按键按下,
10、给相应的按键对应的标志变量自加1。功能键每按下5次,标志位变量Functionflage清零。第一次按下为设定放大倍数,第二次按下为设定上限值,第三次按下为设定下限值,第四次为退出设定模式。移位键每按下4次,标志位变量KeyMoveflage清零。每按下一次移位键,设定位移动一位。自加键每按下4次,标志位变量KeyAddflage清零。每按下一次自加键,显示数值加1。图3-3 部分按键键值处理子程序流程图3.4.4 显示子程序在温度显示函数中,硬件电路为动态显示电路,断码为P2.0-P2.7,位码为P1.4-P1.7四个端口选择,写入独立按键的动态显示函数为Disp(),最后需要的时候调出刚写
- 1.请仔细阅读文档,确保文档完整性,对于不预览、不比对内容而直接下载带来的问题本站不予受理。
- 2.下载的文档,不会出现我们的网址水印。
- 3、该文档所得收入(下载+内容+预览)归上传者、原创作者;如果您是本文档原作者,请点此认领!既往收益都归您。
下载文档到电脑,查找使用更方便
20 积分
下载 | 加入VIP,下载更划算! |
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 采用 单片机 STC12C5608AD 设计 一台数显 温度表
