课程设计基于51单片机的压力数据采集.docx

上传人:爷*** 文档编号:88844847 上传时间:2023-05-04 格式:DOCX 页数:20 大小:215.22KB
返回 下载 相关 举报
课程设计基于51单片机的压力数据采集.docx_第1页
第1页 / 共20页
课程设计基于51单片机的压力数据采集.docx_第2页
第2页 / 共20页
点击查看更多>>
资源描述

《课程设计基于51单片机的压力数据采集.docx》由会员分享,可在线阅读,更多相关《课程设计基于51单片机的压力数据采集.docx(20页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、xxxxxx大学课 程 设 计 报 告课程设计名称:单片机系统综合课程设计课程设计题目:基于 51 单片机的压力数据采集院系: 专 业:班 级:学 号:姓 名: 指导教师: 完成日期:xxxxxx大学课程设计报告目录第1章 总体设计方案11.1 设计原理11.2 设计思路11.3 试验环境2第2章 具体设计方案32.1 硬件电路设计32.2 主程序设计42.2功能模块的设计与实现5第3章 结果测试及分析113.1 结果测试113.2 结果分析11参考文献12附录A源程序代码13附录B电路原理图16附录C元件列表17-I-xxxxxx 大学课程设计报告第 1 章总体设计方案第 1 章 总体设计方

2、案1.1 设计原理依据课程设计任务书的内容与要求,需要使用伟福Lab6000 试验箱上供给的压力传感器实现压力的实时传感,利用 A/D 转换装置将压力传感器输出的模拟信号转换成为数字信号,在利用箱上的数码管将转换数字信号结果显示出来。为了保证压力传感的准确性,开头执行时,需要将压力传感器软件调整出零点,如不进展压力零点的调整,压力传感器将不进展工作。压力传感器工作时,由于硬件的缘由压力传感结果常常波动,假设想进展压力传感值的锁定, 程序供给了利用开关实现的此功能,以便利对于压力测算值的读取。1.2 设计思路承受 C 语言编程,结合伟福 Lab6000 试验箱的固定硬件模块加以实际连线调整硬件局

3、部。1) 提出方案a) 需要试验箱上压力传感器供给准确的压力测算值;b) 压力传感器的模拟信号通过箱上的 A/D 转化模块转化为可以显示的数字信号;c) A/D 转换的结果通过中断的方式显示到数码管上。2) 方案论证由于压力传感器的硬件缘由,其A/D 转换结果并非从零开头的,为供给准确的压力测算值,程序开头须等待调零,否则不供给压力的测定值。假设进展过调零,则之后不断的测试压力的变化,供给测定值。模拟信号进入 A/D 转化之后,每一次完成转化,通过 EOC 端口向外发出中断,使用该中断信号作为输出数据的采集信号。-1-xxxxxx 大学课程设计报告第 1 章总体设计方案进入中断后采集的数字信号

4、通过公式转化成为可现实的数字,用显示程序通过对数码管的扫描显示显示出来。1.3 试验环境硬件环境:伟福 Lab6000 试验箱,PC 机。软件环境:Wave 应用软件。xxxxxx 大学课程设计报告第 2 章具体设计方案第 2 章 具体设计方案2.1 硬件电路设计硬件电路共由以下四个局部组成,分别包括压力传感器硬件模块,A/D 转换硬件模块ADC0809,8031 硬件模块以及数码管硬件模块。硬件电路连线如图 2.1 所示。图 2.1 硬件电路连线图压力传感器模块:压力传感器模块将传感器承受到的压力转化成模拟信号输出到端口上,大致分为电源、电阻电路、运放、输出四局部。A/D 转化模块:以 AD

5、C0809 芯片为根底集成的硬件模块,ADC0809 芯片为逐次靠近型 8 位 A/D 转化器,可承受中断方式读结果,在中断方式下,A/D 转换结果会自动产生 EOC 信号,将其与 CPU 外中断相连,即可用中断方式读取 A/D 转换结果。-3-xxxxxx 大学课程设计报告第 2 章具体设计方案8031CPU 模块:8031CPU 上供给并行口进展输入输出,供给内部时钟计时, 并可以承受外部中断信号进展中断效劳子程序的处理。数码管模块:供给 6 位 8 段码 LED 显示电路,8 位段码、6 位位码由两片74LS374 输出,位码经过 MC1413 倒向驱动后,选择相应位显示。8 位段码输出

6、地址为 0x004H,位码输出地址为 0x002H。2.2 主程序设计主程序流程图如图 2.2 所示。图 2.2 主程序流程图-4-xxxxxx 大学课程设计报告第 2 章具体设计方案程序开头时等待程序调零,假设不进展调零则始终处于等待的状态下。调零后,压力转化器将采集数据传入 A/D 转换器中,A/D 转换器转化完成将通过EOC 端口发出一个中断信号,承受到中断信号后,假设中断开启,将 A/D 转化完毕的数值取出,输出到数码管的显示;假设中断关闭,则开头一轮的采集压力, 不予显示。锁定测定值原理同中断关闭,不承受的中断,而保持原来需要输出的数值不变。2.2 功能模块的设计与实现程序主要包括以

7、下几个局部:a) 对中断方式,计数器计数方式的初始化;b) 等待压力传感器调零;c) 等待中断,等待期间不断输出压力值;d) 中断效劳子程序,A/D 转换结果的保存;e) 定时器定时。1) 中断方式,计数器计数方式的初始化模块对中断的设置包括:开外中断 0即 INT0 ;设置中断优先等级为五个中断同一优先级;设置触发方式为边沿触发;最终开启中断。对计数器的设置包括:计数器工作方式设置为 T0 工作于方式确定时器;设置计数器初值为 0xFE0C这个初值下计数器为 1ms 级别定时器。计数器初值计算由下面的公式得出:(216-X)*(6*106)=1ms可得 X=0xFE0C。中断方式,计数器计数

8、方式的初始化流程图如图 2.3 所示。-5-xxxxxx大学课程设计报告第 2 章具体设计方案图 2.3 初始化流程图2) 等待压力传感器调零模块由于压力传感器的硬件局限,不施加压力时,照旧会有一个非零的模拟信号发送出来,经A/D 转化后将在数码管上显示出不符合事实标准的一个非零压力值, 所以设计了等待清零的模块,防止此种状况的消灭。程序初始化完成之后,进入等待调零的状态,此状态下数码管不显示具体数值,显示字母P 以表示等待。当开关给出清零信号之后,跳出等待状态,进入压力值正常显示状态。等待压力传感器调零流程图如图 2.4 所示。-6-xxxxxx大学课程设计报告第 2 章具体设计方案3) 输

9、出压力值模块图 2.4 等待调零流程图利用数码管显示测定出的压力值,显示时需要将每一位的数值转换为八段码送给数码管的段码地址,将不同使能信号送入位码地址选通相应位使能。将上述的操作循环,则可以看到连续的输出,显示出压力值数值。当接收到的中断,则更改存放器中表示压力的数值,由输出模块输出的压力数值。扫描输出压力值流程图如图 2.5 所示。-7-xxxxxx大学课程设计报告第 2 章具体设计方案图 2.5 输出压力值流程图-8-xxxxxx大学课程设计报告第 2 章具体设计方案4) 中断效劳子程序中断效劳子程序实现承受到外中断 0 之后的处理,每一次 A/D 转换完成之后,都会通过 EOC 引脚向

10、外发送一个上升沿信号,将该信号通过非门连接到外中断 0 的引脚上,该引脚每次接收到下降沿信号就会进入中断效劳子程序。中断效劳子程序包括两个局部:第一局部,当调零开关与中断使能开关同为高电寻常,此时将采集压力数据作为的调零基准值保存。其次局部,当之后中断使能开关高电寻常,采集压力值,将采集数据减去调零基准值,得到传感器上所施加的压力值,送入特地的变量中保存。中断效劳子程序流程图如图 2.6 所示。定时器定时程序图 2.6 中断效劳子程序流程图定时器利用 8031 内部供给定时器,为防止与外中断的影响,利用查询方式进展定时器的定时器的重装载,设定时间为 1ms,使用参数 x 来确定具体的延时程序时

11、常 x 乘以 1ms,即为xms 延时程序。-9-xxxxxx大学课程设计报告第 2 章具体设计方案定时器定时程序流程图如图 2.7 所示。图 2.7 定时器定时流程图-10-xxxxxx 大学课程设计报告第 3 章编程下载与硬件测试第 3 章 结果测试及分析3.1 结果测试程序开头数码管显示 P 表示等待调零,假设不进展调零则程序不向下执行,按动压力传感器无反响;当检测到清零开关与中断允许开关同为高电寻常,数码管显示 0.0 表示清零完成,得到此时刻的零点基准值。当中断允许开关维持高电寻常,数码管的示数随着压力传感器上作用的压力大小来显示数值,数值保存一位小数。当中断允许开关从高电平向低电平

12、跳变,并维持低电寻常,数码管显示电平跳变时刻的压力值,此后再按动传感器数码管显示不发生转变。清零操作与中断开关状态可重复转变。3.2 结果分析对于上述的运行结果和操作过程,到达了课程设计任务书中的要求,并且添加了清零功能与压力测定值的锁定功能。清零可以避开无意义压力值的消灭,保证压力值消灭偏差波动时可以准时调整清零。可以实时的监控压力值的变化,当有压力作用于压力传感器上的时候,可以从数码管上面直观的看到压力大小的变化,可实现实时的观测。鉴于压力值通常状况下不稳定,想要记录或者稳定观看压力值的时候,波动的压力值将给示数的读取带来不便,所以增加压力值锁定功能,之后压力传感器上的波动对示数无影响,从

13、而便利读取。-12-xxxxxx大学课程设计报告参考文献参考文献1 张毅刚.单片机原理及应用M.哈尔滨:哈尔滨工业大学出版社,20232 李伯成.基于 MCS-51 单片机的嵌入式系统设计M.北京: 电子工业出版社,20233 何利民.单片机应用系统设计M.北京: 北京航空航天大学出版社,1995 4阎石.数字电子技术根底M.北京: 高等教育出版社,19985 徐伟.C51 单片机高效入门M.北京: 机械工业出版社,20236 付家才.单片机把握工程实践技术M.北京: 化学工业出版社,2023xxxxxx大学课程设计报告附录附录 A源程序代码#include #include signed c

14、har II;unsigned char xdata *ad_adr=0x9000; unsigned char xdata *pled=0x8004; unsigned char xdata *pledcs=0x8002; sbit START=P10;sbit SET=P11; signed char exp_0;void service_intinterrupt 0 using 0if(SET&START) exp_0=*ad_adr; II=*ad_adr-exp_0;void delay(int x)/1ms 级别延时int j;TH0=0X0FE;TL0=0X0C;TR0=1;fo

15、r(;x0;x-)for(j=1;j0;j-)while(!TF0);TH0=0X0FE;TL0=0X0C;TF0=0;TR0=0;void mainint m=0;xxxxxx大学课程设计报告附录int count=0; int i;unsigned char c=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f; unsigned char p=0x01,0x02,0x04,0x08,0x10,0x20;IP=0X00; IE=0X81; IT0=1;TMOD=0x01;TH0=0XFE;TL0=0X0C;*ad_adr=0X00; exp

16、_0=0x00;i=0;II=00;while(1)if(exp_0=0x00)else*pledcs=p0;*pled=0x73;while(i=0)if(m=0) *pled=(ci%10&0x7f); else if(m=1) *pled=(ci%10|0x80); else *pled=ci%10;*pledcs=pm; delay(10); i=i/10; if(i=0) break; m=m+1;if(m=0) *pled=c0|0x80;*pledcs=p1;delay(3);xxxxxx大学课程设计报告附录EA=START; m=0;count+; i=(II)/255.0)*

17、500;if(count7)*ad_adr=0x00; count=0;xxxxxx大学课程设计报告附录附录 B电路原理图5I514I87654321PGD F E D C B A413I31110I511121314151617O76O 6NI62I5O 5NI54O 4NI41I0193O 3NI32O 2NI21O 1NI10NI000000000000000 0000 0 0 0 0 0 0 0000NI210TUO0000000000000000041100K20000000K100xxxxxx大学课程设计报告附录附录 C元件列表UsedPart TypeDesignatorFoot

18、print=61KR18 R19R20 R21R22 R2322K4R28 R2922MR30 R3114K3R1016MC1216_6_MC1413U2116_8LEDU22610KR24 R33R39 R40R41 R42122UFC11DIP-40230PFC9 C10174F32U15SO14174HC138U13DIP-16174LS02U11DIP-14274LS374U19 U20DIP-202103pFC7 C83120R25 R26R271200R4417404U17DIP-1418751U18DIP-401ADC0809U7DIP-281CA324U5DIP-141CHUA

19、NGANU61CLKU232SW SPDTS2 S5Xxxxxx大学课程设计报告课程设计总结:本次课程设计是基于单片机和硬件试验箱的课程设计,与以往主要以软件编译环境的课程设计或者是软件模拟硬件的仿真课程设计不同,更要求我自己去了解硬件电路的原理和软件硬件之间的协作方式。在软件编程设计方面,使用 C 语言编程代替汇编语言编程,这对于寻常上课习惯于用汇编语言编程的我是一种挑战,但是在这个过程之中,我更加生疏了基于单片机上的语言编程方式方法,信任对我以后的学习将大有裨益。在硬件设计方面,虽然有伟福公司供给的试验箱指导手册,可是硬件电路方面的芯片,由于数字电路学习时隔很久,加上硬件方面本身比较薄弱,所以参与硬件调试的时候,曾经使的课程设计进度大为拖延,也使我充分的意识到相对于软件方面,我在硬件方面的学习更加的捉襟见肘。这样的课设经受使我意识到自身学习的贫乏,更加催促我学习与了解硬件, 不仅仅局限于软件的编程和虚拟的仿真,只有真正的动手操作,软硬件结合起来调试运行,才能切实的提高自己的动手力气,提高自己的编程水平。感谢课设教师的悉心指导,使得课程设计圆满完成,本次课程设计让我获益匪浅。指导教师评语:指导教师(签字):年月日课程设计成绩

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁