数据采集实习报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数据采集实习报告
重庆科技学院
学⽣实习(实训)总结报告
学院:____电⽓与信息⼯程学院___专业班级:_电⾃普1103
学⽣姓名:_____ ___ _______学号:__
实习(实训)地点:____________ I512 ____________ __
报告题⽬:_____________单⽚机数据采集系统__________ 报告⽇期: 2013 年 1 ⽉ 10 ⽇
指导教师评语: ____________ ___________________________
__________________________________________________________
__________________________________________________________
__________________________________________________________ __________________________ _____成绩(五级记分制):______ _______
指导教师(签字):_____________________
⼀、实习⽬的意义和任务 (1)
1.1 实习⽬的意义 (2)
1.2 任务 (3)
⼆.实习任务的⽅案 (4)
三、系统硬件设计 (5)
3.1 单⽚机的最⼩系统设计 (6)
3.2 显⽰电路设计 (7)
3.3按键电路设计 (8)
3.4报警LED灯电路设计 (9)
3.5 电源电路设计 (10)
3.6 下载电路设计 (11)
3.7 蜂鸣器报警电路设计 (12)
3.8pcf8591模数转换电路设计 (13)
四、系统软件设计 (14)
4.1 主程序设计 (15)
4.2 定时器中断函数⼦程序设计 (16)
4.3显⽰更新函数⼦程序设计 (17)
4.4蜂鸣器报警⼦程序设计 (18)
4.5 LED报警灯⼦程序设计 (19)
4.6延时函数⼦程序设计 (20)
4.7 pcf8591芯⽚启动函数⼦程序设计 (21)
4.8报警上下限设定函数⼦程序设计 (22)
五、调试及性能分析 (24)
5.1 调试步骤 (24)
5.2 性能分析 (24)
六、⼼得体会 (24)
参考⽂献 (25)
附录 1 系统硬件电路图 (26)
附录 2 程序清单 (27)
摘要
本设计以STC89C51单⽚机为核⼼,ADC0809,LED数码显⽰管,LED报警灯,发光⼆极管等外围设备设计⼀个基于单⽚机的数据采集系统。
该系统可以实时采集4路模拟量。
分别为⼀个4通道循环采集数据模式、4个指定单通道数据采集模式、⼀个报警上限设置模式和⼀个报警下限设置模式。
该系统将采集到得数据实时发送到数码管上显⽰,发光⼆极管闪烁报警,给客户对温度的控制提供帮助。
该系统主要实现以下功能:①实时采集差压流量变送器输出的1-5V的电压信号;②将采集的1-5V的电压信号为转换为20-80°C的温度信号,并实时显⽰;③可以轮流采集4路通道,或指定通道数据;
④可以设定报警上下限,并报警。
关键字:STC89C51 数据采集 ADC0809 LED
⼀、实习⽬的意义及⼈物
1.1 实习⽬的及意义
①更加熟练的使⽤KEIL和STC-ISP软件
②掌握AD转换的原理和⽅法
③了解单⽚机芯⽚的引脚应⽤和⼯作原理
④利⽤单⽚机控制系统实现数据采集
⑤提⾼动⼿操作能⼒,培养独⽴思考,探索的思想。
1.2 任务
要求设计的数据采集系统完成以下功能:
1.2.1.基本功能
①实时采集差压流量变送器输出的1-5V的电压信号;
②将采集的1-5V的电压信号为转换为20-80°C的温度信号,并实时显⽰;
③可以轮流采集8路通道,或指定通道数据;
④可以设定报警上下限,并报警。
1.2.2.扩展功能
⾃⾏扩展功能,如⾳乐铃声,通讯功能等。
1.2.3.设计参数
温度变送器输⼊信号:20-80°C,输出信号的1-5V
显⽰位数:4位
按键设定采集⽅式:轮流显⽰,指定显⽰;报警上下限
⼆、实习任务的⽅案
①布置设计任务及要求,查资料,准备⽅案;
北京时间程序编写,以及调试。
(4天)
②AD程序设计、调试(2天)
③程序整体调试(2天)
④设计验收、撰写报告。
(2天)
三、系统硬件设计
3.1 单⽚机的最⼩系统设计
该电路以单⽚机为主,时钟电路、复位电路和中央控制器等外围电路组成。
其中XT1为晶振,将其连接到单⽚机的X1、X2两个引脚,给其提供时钟脉冲。
在复位电路中,如果按下按键,随即进⾏复位。
图3.1单⽚机最⼩系统设计图
3.2 显⽰电路设计
该电路主要由四个数码管构成。
该四个数码管公⽤8位段暄信号,每只管⼦都由未选信号控制点亮。
数码管的位码是低电平有效,给数码管低电平时,数码管点亮。
图3.2显⽰电路设计图
3.3 按键电路设计
该电路由四个独⽴按键构成。
该按键的⼀端接地,另⼀端与单⽚机的引脚相连。
当按键按下时,单⽚机将采集到低电平。
图3.3按键电路设计图
3.4 报警LED灯设计
该电路由⼀只发光⼆极管和电阻构成,由单⽚机控制点亮,当采集到得温度低于下限或者⾼于上显⽰,该发光⼆极管点亮并且会闪烁。
图3.4报警LED灯电路设计图
3.5 电压采集电路设计
该电路主要包括⼀个滑动变阻器,⼀个ADC2接⼝,⼀个电阻。
采集的电压值通过ADC2进⼊到pcf8591转换器中。
图3.5电压采集电路设计图
3.6下载电路设计
该电路包含了⼀个下载串⼝,⼀块MAX232芯⽚。
图3.6下载电路设计图
3.7阻容复位电路设计
该电路主要由⼀个电容构成,⼀端与电源相连。
图3.7阻容复位电路设计图
3.8 ADC0809模数转换电路设计
该电路主要有⼀个ADC0809芯⽚和两个74LS74译码器组成,将采集到的电压信号转换成为数字信号。
图3.8 ADC0809模数转换电路图
四、系统软件设计
4.1 主程序设计
主程序设计的设计思想是在⼀个⽆限循环中,单⽚机不断循环执⾏各⼦模块程序,即温度读取模块、AD转换模块、数码管显⽰模块和报警模块。
主程序软件流程图如图4-1所⽰:
4.2 定时器中断函数⼦程序设计
该函数为⼀中断函数,当中断被允许时,⼀有中断请求CPU就会转去执⾏中断服务程序。
该程序主要⽤于控制数码管的显⽰,对数码管进⾏动态扫描,每隔固定⼀段时间就会得到CPU资源。
该定时器中断函数的流程图如下:
4.3 显⽰更新函数⼦程序
显⽰更新函数主要负责数码管的更新⼯作,当AD转换完⼀次后,就由该函数更新数码管的显⽰内容。
该函数为定时器所调⽤,随着pcf8591对相应通道的数据采集⽽开始更新。
数码管更新完成后要关闭更新标志,然后允许定时器中断,函数返回调⽤继续执⾏。
其流程图如下图所⽰:
4.4 发光⼆极管报警灯⼦程序
此函数类似于蜂鸣器报警⼦程序。
报警的条件与蜂鸣器的报警条件同步,当温度低于报警下限或者⾼于报警下限的时候,LED 灯点亮,反之熄灭。
其程序流程图如下图所
⽰:
4.7 pcf8591芯⽚启动函数⼦程序
该函数主要实现启动pcf8591的功能,程序⽐较简单,流程图⽐较简洁。
再改函数中⾸先要屏蔽定时器,然后其效率有所提⾼。
AD的启动主要靠给三个引脚相应的电平,启动后就等待转换结束。
当转换结束第EOC输出低电平,通过判断EOC引脚就可以实现对AD⼯作状态的识别。
待转换结束后,同样是对RS进⾏操作,读出数据。
在最后给⼀个2毫秒的延时,让AD在2毫秒后由主函数控制再次⼯作,最后函数返回调⽤地⽅继续执⾏。
其流程图如下图所⽰:
4.8报警上下限设定函数⼦程序
该函数定义⼀个报警函数,在主函数中调⽤,当温度⾼于50度或者温度低于30度的时候,进⼊报警程序,发光⼆极管闪烁报警。
其程序流程图如下图所⽰:
五、调试及性能分析
5.1 调试步骤
在该系统的设定过程中,遇到了不少问题,但在⽼师的细⼼指导和队员的团结互助下,最后都⼀⼀排除,实现了数据采集系统的⼏个基本功能。
在程序调试过程中,主要有以下⼏个步骤:
1、根据所需要的元器件画出电路原理图。
2、打开keil软件,新建⼯程,写⼊数据采集系统相关的程序,调试、运⾏。
3、打开STC-ISP软件下载程序到单⽚机系统。
4、查看运⾏结果。
5、根据设计的基本要求调节系统,观察系统是否能实现要求的基本功能。
5.2 性能分析
在该设计中,以STC89C52单⽚机为核⼼,LED数码管,LED灯,pcf8591,发光⼆极管,按键作为外围设备构成⼀个具有使⽤价值的数据采集系统。
5.2.1、在硬件⽅⾯:
STC89C52单⽚机在系统中主要作为⼀个中央控制器,对各个功能部件实现统⼀管理,对于数据的采集,读⼊与输出的实现进⾏管理。
以提⾼系统的稳定性,提⾼⼯作效率。
LED数码管在该系统中主要负责显⽰功能。
当其占⽤CPU的时候,能显⽰出指定的数值供⼯作⼈员参考及控制。
发光⼆极管主要实现报警功能。
当有报警信号产⽣时,LED灯占⽤CPU,LED灯闪烁,提⽰操作⼈员当前数据通道已超出限定范围,让其尽快采取措施。
pcf8591在该系统中占据⽐较重要的地位。
其主要负责采集数据,并将其转换为利于PC机处理的数字信号。
将其初始化后,给制定引脚下降沿就能启动。
5.2.2、在软件⽅⾯:
在本设计的主程序中,直接将三个通道接地,即本设计只能实现对通道0数据的采集,不能循环采集8个通道的数据。
主函数主要⽤了while(1)循环,是函数能够实现数码光更新显⽰功能、报警功能和报警上下限设定功能。
在软件调试中,主要通过按键控制报警上下限,通过数码管显⽰功能和发光⼆极管以及LED灯查看预测程序是否得到了执⾏等操作。
六、⼩结
实训过程中,对单⽚机的操作得到了很⼤提⾼。
特别是在利⽤单⽚机定时器控制数码管动态扫描部分的编程技术更加熟练。
⽤定时器控制数码管显⽰,解决了程序的冗余问题。
在单⽚机的中断⽅⾯也有了更深的认识,对STC89C52芯⽚的引脚功能有了更深的了解和认识。
硬件⽅⾯,学会了pcf8591的控制,对模数转换也有了进⼀步的理解与掌握,同时,还学会了通过按键来设置报警的上下限。
软件⽅⾯,了解了关于编程语⾔的更多知识,更加清楚了⾃⼰的知识结构以及在学习存在的不⾜点,巩固了书本中学到的知识。
七、软件使⽤说明
1、打开kell软件,将⼯程建⽴好之后将程序在⼯程中打开,运⾏,调试,看程序是否正确。
2、读程序,降温表table以及I2C总线加⼊。
3、根据程序中的注释解析程序,实现程序功能。
七、参考⽂献
1.单⽚机原理与应⽤系统设计【m】。
成都:西南交通⼤学出版社(张⾦敏)
2.单⽚机系统实训教程。
重庆:重庆⼤学出版社(胡⽂⾦)
3.⾃动检测技术及应⽤。
北京:机械⼯业出版社(梁森)
4.智能仪器。
机械⼯业出版社(程德福)
附录1、系统硬件电路图
附录2、程序清单。