版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电气与自动化工程学院 传感器课程设计1、概述1.1摘要:本文介绍了一种基于单片机的简易数字压力计的设计。该设计主要由三个模块组成:A/D转换模块,数据处理模块及显示模块。A/D转换主要由芯片ADC0808来完成,它负责把压力计(该设计中以滑阻代替)的模拟量转换为相应的数字量在传送到数据处理模块。数据处理则由芯片AT89C51来完成,其负责把ADC0808传送来的数字量经过一定的数据处理,产生相应的显示码送到显示模块(7SEG-MPX4-CA-BLUE)进行显示;此外,它还控制着ADC0808芯片工作。该系统的压力计电路设计简单,所用的元件较少,成本低,且测量精度和可靠性较高。此压力计可以通过电
2、压和压力的关系通过测量0-5V的1路模拟直流输入电压值,按一定关系转化成对应的压力值,并通过一个四位一体的7段数码管(7SEG-MPX4-CA-BLUE)显示出来。1.2背景和简介:近年来,随着微型计算机的发展,他的应用在人们的工作和日常生活中越来越普遍。工业过程控制是计算机的一个重要应用领域。其中由单片机构成的嵌入式系统已经越来越受到人们的关注。现在可以毫不夸张的说,没有微型计算机的仪器不能称为先进的仪器,没有微型计算机的控制系统不能称其为现代控制系统的时代已经到来。压力测量对实时监测和安全生产具有重要的意义。在工业生产中,为了高效、安全生产,必须有效控制生产过程中的诸如压力、流量、温度等主
3、要参数。由于压力控制在生产过程中起着决定性的安全作用,因此有必要准确测量压力。为了测到不同位置的压力值,本次设计为基于单片机的压力测量系统。通过压力传感器将需要测量的位置的压力信号转化为电信号,送至8位AD转换器,然后将模拟信号转换成单片机可以识别的数字信号,再经单片机转换成LED显示器可以识别的信息,最后显示输出。基于单片机的压力检测系统,选择的单片机是基于AT89C51单片机的测量与显示,将压力经过压力传感器(该设计以滑阻替代)变为电信号,然后进入A/D转换器(ADC0808)将模拟量转换为数字量。1.3整体设计方案:本次设计是以单片机为主组成的压力测量,系统中必须有前向通道作为电信号的输
4、入通道,用来采集输入信息。压力的测量,需要传感器,利用传感器将压力转换成电信号后,再经A/D转换(ADC0808)为数字量后才能由计算机进行有效处理。然后用LED进行显示。它的原理图如图1.1所示。压力传感器电压测量显示器单片机A/D转换图1.1 压力计原理方框图我们这次主要做的是压力计的设计(A/D转换ADC0808,传感器,单片机AT89C51,显示器)根据硬件电路编程,调试出来并显示结果。2、硬件电路的设计: 2.1硬件设计框图最小系统 复位电路A/D转换电路测量电压输入显示系统AT89C51 P0 P3 P1 P2图2.1 硬件设计框图2.2复位电路:在单片机系统中,复位电路是非常关键
5、的,当程序跑飞(运行不正常)或死机(停止运行)时,就需要进行复位。MCS-5l 系列单片机的复位引脚RST( 第9 管脚) 出现2个机器周期以上的高电平时,单片机就执行复位操作。复位完成后,如果RST端继续保持高电平,MCS-51就一直处于复位状态,只要RST恢复低电平后,单片机才能进入其他工作状态。单片机的复位方式有上电自动复位和手动复位两种。2.3数据处理:(单片机系统)AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含有4KB的可反复擦写的只读程序存储器和128字节的随机存储器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令
6、集和输出管脚相兼容,由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,它为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。AT89C51功能性能:与MCS-51成品指令系统完全兼容;4KB可编程闪速存储器;寿命:1000次写/擦循环;数据保留时间:10年;全静态工作:0-24MHz;三级程序存储器锁定;128*8B内部RAM;32个可编程I/O口线;2个16位定时/计数器;5个中断源;可编程串行UART通道;片内震荡器和掉电模式。图2.2 AT89C51的引脚图AT89C51芯片的各引脚功能为:P0口:这组引脚共有8条,P0.0为最低位。这8个
7、引脚有两种不同的功能,分别适用于不同的情况,第一种情况是AT89C51不带外存储器,P0口可以为通用I/O口使用,P0.0-P0.7用于传送CPU的输入/输出数据,这时输出数据可以得到锁存,不需要外接专用锁存器,输入数据可以得到缓冲,增加了数据输入的可靠性;第二种情况是AT89C51带片外存储器,P0.0-P0.7在CPU访问片外存储器时先传送片外存储器的低8位地址,然后传送CPU对片外存储器的读/写数据。P0口为开漏输出,在作为通用I/O使用时,需要在外部用电阻上拉。P1口:这8个引脚和P0口的8个引脚类似,P1.7为最高位,P1.0为最低位,当P1口作为通用I/O口使用时,P1.0-P1.
8、7的功能和P0口的第一功能相同,也用于传送用户的输入和输出数据。P2口:这组引脚的第一功能与上述两组引脚的第一功能相同即它可以作为通用I/O口使用,它的第一功能和P0口引脚的第二功能相配合,用于输出片外存储器的高8位地址,共同选中片外存储器单元,但并不是像P0口那样传送存储器的读/写数据。P3口:这组引脚的第一功能和其余三个端口的第一功能相同,第二功能为控制功能,每个引脚并不完全相同,如下表1所示:P3口各位第二功能P3.0RXT(串行口输入)P3.1TXD(串行口输出)P3.2/INT0(外部中断0输入)P3.3/INT1(外部中断1输入)P3.4T0(定时器/计数器0的外部输入)P3.5T
9、1(定时器/计数器1的外部输入)P3.6/WR(片外数据存储器写允许)P3.7/RD(片外数据存储器读允许)表2.1 P3口各位的第二功能Vcc为+5V电源线,Vss接地。ALE:地址锁存允许线,配合P0口的第二功能使用,在访问外部存储器时,AT89C51的CPU在P0.0-P0.7引脚线去传送随后而来的片外存储器读/写数据。在不访问片外存储器时,AT89C51自动在ALE线上输出频率为1/6震荡器频率的脉冲序列。该脉冲序列可以作为外部时钟源或定时脉冲使用。/EA:片外存储器访问选择线,可以控制AT89C51使用片内ROM或使用片外ROM,若/EA=1,则允许使用片,在访问片外ROM时,AT8
10、9C51自动在/PSEN线上产生一个负脉冲,作为片外R内ROM, 若/EA=0,则只使用片外ROM。/PSEN:片外ROM的选通线OM芯片的读选通信号。RST:复位线,可以使AT89C51处于复位(即初始化)工作状态。通常AT89C51复位有自动上电复位和人工按键复位两种。XTAL1和XTAL2:片内震荡电路输入线,这两个端子用来外接石英晶体和微调电容,即用来连接AT89C51片内OSC(震荡器)的定时反馈回路。2.4显示系统:在应用系统中,设计要求不同,使用的LED显示器的位数也不同,因此就生产了位数,尺寸,型号不同的LED显示器供选择,在本设计中,选择4位一体的数码型LED显示器(7SEG
11、-MPX4-CC-BLUE)。7SEG-MPX4-CC-BLUE显示器引脚如图9所示,是一个共阴极接法的4位LED数码显示管,其中a,b,c,e,f,g为4位LED各段的公共输出端,1、2、3、4分别是每一位的位数选端,dp是小数点引出端,4位一体LED数码显示管的内部结构是由4个单独的LED组成,每个LED的段输出引脚在内部都并联后,引出到器件的外部。 图2.3 (七段数码管-4位-共阴)数码管引脚接线图对于这种结构的LED显示器,它的体积和结构都符合设计要求,由于4位LED阴极的各段已经在内部连接在一起,所以必须使用动态扫描方式(将所有数码管的段选线并联在一起,用一个I/O接口控制P2口)
12、显示。LED译码方式译码方式是指由显示字符转换得到对应的字段码的方式,对于LED数码管显示器,通常的译码方式有硬件译码和软件译码方式两种。硬件译码是指利用专门的硬件电路来实现显示字符码的转换。软件译码就是编写软件译码程序,通过译码程序来得到要显示的字符的字段码,译码程序通常为查表程序。本设计系统中为了简化硬件线路设计,LED译码采用软件编程来实现。由于本设计采用的是共阴极LED,其对应的字符和字段码如下表2所示。显示字符共阴极字段码03FH106H25BH34FH466H56DH67DH707H87FH96FH表2.2 共阴极字段码表引脚功能A、B、C、D、E、F、G、DP数据输入端1千位位选
13、(本设计未使用)2百位位选3十位位选4个位位选图2.4 七段四位数码管引脚功能2.5 A/D转换电路:逐次逼近型A/D转换既照顾了转换速度,又具有一定的精度,这里选用的是逐次逼近型的A/D转换芯片ADC08082.6 压力传感器的选择(本设计采用滑阻代替压力传感器)压力传感器是压力检测系统中的重要组成部分,由各种压力敏感元件将被测压力信号转换成容易测量的电信号作输出,给显示仪表显示压力值,或供控制和报警使用。力学传感器的种类繁多,如电阻应变片压力传感器、半导体应变片压力传感器、压阻式压力传感器、电感式压力传感器、电容式压力传感器谐振式压力传感器及电容式加速度传感器等。 而电阻应变式传感器具有悠
14、久的历史。由于它具有结构简单、体积小、使用方便、性能稳定、可靠、灵敏度高动态响应快、适合静态及动态测量、测量精度高等诸多优点,因此是目前应用最广泛的传感器之一。电阻应变式传感器由弹性元件和电阻应变片构成,当弹性元件感受到物理量时,其表面产生应变,粘贴在弹性元件表面的电阻应变片的电阻值将随着弹性元件的应变而相应变化。通过测量电阻应变片的电阻值变化,可以用来测量位移加速度、力、力矩、压力等各种参数。2.7单片机最小系统设计单片机最小系统或者称最小应用系统,是指用最少的原件组成的单片机可以工作的系统。该设计的最小系统包括单片机(AT89C51)、晶振电路、复位电路。 图2.5 晶振电路 图2.6 复
15、位电路2.8模数转换电路设计模拟量输入通道的任务是将模拟量转换成数字量。能够完成这一任务的器件称之为模数转换器,简称A/D转换器。本次设计的中A/D转换器(ADC0808)的任务是将压力传感器输出的模拟信号转换位数字量进行输出。ADC0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。(备注:ADC0808是ADC0809的简化版本,功能基本相同。一般在硬件仿真时采用ADC0808进行A/D转换,实际使用时采用ADC0809进行A/D转换。)2.8.1内部结构ADC0808
16、是CMOS单片型逐次逼近式A/D转换器,它有8路模拟开关、地址锁存与译码器、比较器、8位开关树型A/D转换器。逐次逼近型寄存器,定时和控制电路和三态输出锁存器等组成,其内部结构如图2.7所示。图2.7 ADC0808的内部结构地址码对应的输入通道23(ADDA)24(ADDB)25(ADDC)000IN0001IN1010IN2011IN3100IN4101IN5110IN6111IN7表2.3通道选择图2.8 ADC0808管脚图2.8.2 ADC0808引脚功能(外部特性)ADC0808芯片有28条引脚,采用双列直插式封装,如右图所示。各引脚功能如下:15和2628(IN0IN7):8路模
17、拟量输入端。8、14、15和1721:8位数字量输出端。22(ALE):地址锁存允许信号,输入高电平有效。6(START): A/D转换启动脉冲输入端,输入一个正脉冲(至少100ns宽)使其启动(脉冲上升沿使0809复位,下降沿启动A/D转换)。7(EOC): A/D转换结束信号,输出当A/D转换结束时,此端输出一个高电平(转换期间一直为低电平)。9(OE):数据输出允许信号,输入高电平有效。当A/D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量。10(CLK):时钟脉冲输入端。要求时钟频率不高于640KHZ。12(VREF(+)和16(VREF(-):参考电压输入端。11(V
18、cc):主电源输入端。13(GND):地。2325(ADDA、ADDB、ADDC):3位地址输入线,用于选通8路模拟输入中的一路2.8.3输出端注意:Out8为最低位out1为最高位,out8-out1分别接单片机的P0.0到P0.7端。图2.9 设计接线图2.9显示电路设计由于单片机的并行口不能直接驱动LED显示器,所以,在一般情况下,必须采用专用的驱动电路芯片,使之产生足够大的电流,显示器才能正常工作。如果驱动电路能力差,即负载能力不够时,显示器亮度就低,而且驱动电路长期在超负荷下运行容易损坏,因此,LED显示器的驱动电路设计是一个非常重要的问题。为了简化数字式压力计的电路设计,在LED驱
19、动电路的设计上,可以利用单片机P0口上外接的上拉电阻来实现,即将LED的A-G段显示引脚和DP小数点显示引脚并联到P0口与上拉电阻之间,这样,就可以加大P0口作为输出口的驱动能力,使得LED能按照正常的亮度显示出数字。 图2.9.1显示电路设计3、软件部分的设计:3.1主程序框图 开始初始化调用A/D转换子程序调用显示子程序结束图3.1 主程序框图3.2总体流程图开始初始化启动A/D转换将采集的模拟量转化为对应的压力扫描数据并进行数据显示结束图3.2 总体流程图3.3软件设计(程序代码)#include<reg51.h>#define uint unsigned int#defin
20、e uchar unsigned charuchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;/七段共阴数码管编码表sbit START=P30;sbit EOC=P31; sbit OE=P32;void delay(uint m) /LED显示延时子程序 while(m-);delay1(uint c) /循环间隔延时C毫秒子程序 uchar a,b; for( ;c>0;c-) for(b=142;b>0;b-) for(a=2;a>0;a-);void fun1(uint i) /AD转
21、换及数据处理子程序 uint P; extern uint PP; /定义全局变量PP START=1; START=0; while(i>0) /fun1只执行i次 if(i>0) OE=1; /转换结束输出使能 P=P0; /AD转换结果赋给P P=P*1.0/255*207; /完成对应关系的电压压力的转换 OE=0; /停止输出 P2=0xfe; /个位位选 P1=tableP%10; /个位段选 delay(500); /个位显示延时约1ms P2=0xfd; /十位位选 P1=tableP/10%10; /十位段选 delay(500); /十位显示延时约1ms P2=
22、0xfb; /百位位选 P1=tableP/100%10; /百位段选 delay(500); /百位显示延时约1ms void main() /主程序 START=0; /初始时不进行AD转换 OE=0; while(1) /死循环 fun1(1); /调用一次转换子程序 4、仿真及数据分析4.1仿真界面图图4.1 仿真界面图 4.2数据分析电压表示数(V)65.667.373.476.881.185.689.9103.1显示器示数(kpa)6667737781869010302040608010012065.667.373.476.881.185.692.298.7103.1电压表示数(V)显 示 器 示 数kpa 5、小结经过一段时间的努力,课程设计压力机的设计终于完成了。但设计中的不足之处仍然存在。这次设计是我第一次设计电路,并用Proteus实现了仿真。在这过程中,我对电路设计,单片机的使用等都有了新的认识。通过这次设计学会了Proteus和Keil软件的使用方法,掌握了从系统的需要、方案的设计、功能模块的划分、原理图的设计和电路图的仿真的设计流程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 厂房室外电缆施工方案
- 郑州黄河生态廊道施工方案
- 常州景区仿木护栏施工方案
- 宣城交通标识标牌施工方案
- 铁皮管道保温现场施工方案
- 植被清理施工方案
- 西双版纳厨房防水施工方案
- 输电线路绿色施工方案
- 莆田防盗铸铁井盖施工方案
- 天津生态餐厅温室施工方案
- DB-T29-74-2018天津市城市道路工程施工及验收标准
- 小学一年级20以内加减法混合运算3000题(已排版)
- 智慧工厂数字孪生解决方案
- 病机-基本病机 邪正盛衰讲解
- 品管圈知识 课件
- 非诚不找小品台词
- 2024年3月江苏省考公务员面试题(B类)及参考答案
- 患者信息保密法律法规解读
- 老年人护理风险防控PPT
- 充电桩采购安装投标方案(技术方案)
- 医院科室考勤表
评论
0/150
提交评论