单片机的压力传感器设计方案.doc_第1页
单片机的压力传感器设计方案.doc_第2页
单片机的压力传感器设计方案.doc_第3页
单片机的压力传感器设计方案.doc_第4页
单片机的压力传感器设计方案.doc_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机的压力传感器设计方案第一章 绪 论1.2选题的背景和意义近年来随着微型计算机的发展他的应用在人们的工作和日常生活中越来越普遍工业过程控制是计算机的一个重要应用领域其中由单片机构成的嵌入式系统已经越来越受到人们的关注现在可以毫不夸张的说没有微型计算机的仪器不能称为先进的仪器没有微型计算机的控制系统不能称其为现代控制系统的时代已经到来压力测量对实时监测和安全生产具有重要的意义在工业生产中为了高效、安全生产必须有效控制生产过程中的诸如压力、流量、温度等主要参数由于压力控制在生产过程中起着决定性的安全作用因此有必要准确测量压力为了测到不同位置的压力值本次设计为基于单片机智能压力测量系统通过压力传感器将需要测量的位置的压力信号转化为电信号再经过运算放大器进行信号放大送至8位AD转换器然后将模拟信号转换成单片机可以识别的数字信号再经单片机转换成LCD显示器可以识别的信息最后显示输出基于单片机的智能压力检测系统选择的单片机是基于AT89C51单片机的测量与显示将压力经过压力传感器变为电信号再通过三运放放将电信号放大为标准信号为0-5V的电压信号然后进入A/D转换器将模拟量转换为数字量我们所采样的A/D转换器为ADC0832ADC0832为8位分辨率A/D转换芯片其最高分辨可达256级可以适应一般的模拟量转换要求其内部电源输入与参考电压的复用使得芯片的模拟电压输入在05V之间芯片转换时间仅为32S据有双数据输出可作为数据校验以减少数据误差转换速度快且稳定性能强独立的芯片使能输入使多器件挂接和处理器控制变的更加方便通过DI数据输入端可以轻易的实现通道功能的选择 正常情况下ADC0832与单片机的接口应为4条数据线分别是CS、CLK、DO、DI但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的所以电路设计时可以将DO和DI并联在一根数据线上使用 为了提高单片机系统I/O口线的利用效率利用单片机AT87C51的串行口和液晶显示屏LM016L来显示.1.3智能压力传感器的发展方向 (1)向高智能高精度发展:随着自动化生产程度的不断提高对传感器的要求也在不断提高必须研制出具有灵敏度高、精确度高、响应速度快、互换性好的新型传感器以确保生产自动化的可靠性目前能生产精度在万分之一以上的传感器的厂家为数很少其产最也远远不能满足要求 (2)向高可靠性、宽温度范围发展:传感器的可靠性直接影响到电子设备的抗干扰等性能研制高可靠性、宽温度范围的传感器将是永久性的方向提高温度范围历来是大课题大部分传感器其工作范围都在一2070在军用系统中要求工作温度在一40OC一85OC范围而汽车锅炉等场合要求传感器工作在一20OC1200C在冶炼、焦化等方面对传感器的温度要求更高因此发展新兴材料(如陶瓷)的传感器将很有前途(3)向微型化发展:各种控制仪器设备的功能越来越人要求各个部件体积能占位置越小越好因而传感器本身体积也是越小越好这就要求发展新的材料及加工技术目前利用硅材料制作的传感器体积己经很小如传统的加速度传感器是由重力块和弹簧等制成的体积较大、稳定性差、寿命也短而利用激光等各种微细加工技术制成的硅加速度传感器体积非常小、互换性可靠性都较好(4)高智能化:将压力传感器和单片机联系在一起使其能够在实际应用中能更好地实现人机互换交流增加仪器的数字化和智能化1.4本文研究的内容 研究开发一个智能压力传感器要实现的主要目标是:1.系统地掌握单片机的开发设计过程相关的电子技术和传感器技术等进行设计任务和功能的描述2.进行系统设计方案的论证和总体设计3.从全局考虑完成硬件和软件资源分配和规划分别进行系统的硬件设计和软件设计4.进行硬件调试软件调试和软硬件的联调第二章 系统总体方案设计2.1系统任务描述 该系统的任务是能够测量出被测物的压力并能实时显示目标压力值和保存参数并能和上位机进行通信并具有较强的抗干扰能力2.1.1控制系统要求 该控制系统要求满足以下几点要求:(1)被测介质: 气体、液体及蒸气(2)量程: 0Pa500pa(3)综合精度:0.25%FS(4)供电: 24V Dc(1236VDC)(5)介质温度:-20150(6)环境温度:-2085 (7)当压力超过一定范围是可以报警(8)能实时显示目标压力值和保存参数并能和上位机进行通信并具有较强的抗干扰能力2.1.2主要仪器的比较选择1、压力传感器的选择压力传感器是压力检测系统中的重要组成部分由各种压力敏感元件将被测压力信号转换成容易测量的电信号作输出给显示仪表显示压力值或供控制和报警使用力学传感器的种类繁多如电阻应变片压力传感器、半导体应变片压力传感器、压阻式压力传感器、电感式压力传感器、电容式压力传感器谐振式压力传感器及电容式加速度传感器等 而电阻应变式传感器具有悠久的历史由于它具有结构简单、体积小、使用方便、性能稳定、可靠、灵敏度高动态响应快、适合静态及动态测量、测量精度高等诸多优点因此是目前应用最广泛的传感器之一电阻应变式传感器由弹性元件和电阻应变片构成当弹性元件感受到物理量时其表面产生应变粘贴在弹性元件表面的电阻应变片的电阻值将随着弹性元件的应变而相应变化通过测量电阻应变片的电阻值变化可以用来测量各种参数2、放大器的选择被测的非电量经传感器得到的电信号幅度很小无法进行A/D转换必须对这些模拟电信号进行放大处理为使电路简单便于调试本设计采用三运算放大器因为在具有较大共模电压的条件下仪表放大器能够对很微弱的差分电压信号进行放大并且具有很高的输入阻抗这些特性使其受到众多应用的欢迎广泛用于测量压力和温度的应变仪电桥接口、热电耦温度检测和各种低边、高边电流检测3、A/D转换器的选择 目前单片机在电子产品中已得到广泛应用许多类型的单片机内部已带有A/D转换电路但此类单片机会比无A/D转换功能的单片机在价格上高几元甚至很多我们采用一个普通的单片机加上一个A/D转换器实现A/D转换的功能这里A/D转换器可选ADC0832、ADC0809等;串行和并行接口模式是A/D转换器诸多分类中的一种但却是应用中器件选择的一个重要指标在同样的转换分辨率及转换速度的前提下不同的接口方式会对电路结构及采用周期产生影响对A/D转换器的选择我们通过比较ADC0809和ADC0832来决定这两个转换器都是常见的A/D转换器其中ADC0809的并行接口A/D转换器ADC0832是串行接口A/D转换器我们所做的设计选择ADC0832A/D转换在单片机接口中应用广泛 串行 A/D转换器具有功耗低、性价比较高、芯片引脚少等特点4、主控制器的选择单片机是一种在线式实时控制计算机在线式就是现场控制需要的是有较强的抗干扰能力较低的成本这也是和离线式计算机的(比如家用PC)的主要区别它拥有基于复杂指令集(CISC)的单片机内核虽然其速度不快12个振荡周期才执行一个单周期指令但其端口结构为准双向并行口可兼有外部并行总线故使其扩展性能非常强大51的内部硬件预设可用特殊功能寄存器对其进行编辑2.1.3总体方案的选择 经过上述总结本设计采用89C51单片机作为控制芯片采用电阻应变片压力传感器采集压力信号通过压力传感器将采集的压力信号转换成与之对应的电信号经过ADC0832放大处理通过89C51在LCD屏幕上显示压力数据在超过压力限制时由蜂鸣器报警2.2系统总体设计2.2.1系统组成图2.1 智能压力传感器原理方框图2.2.2基于单片机的智能压力检测的原理 本次设计是以单片机组成的压力测量系统中必须有前向通道作为电信号的输入通道用来采集输入信息压力的测量需要传感器利用传感器将压力转换成电信号后再经放大并经A/D转换为数字量后才能由计算机进行有效处理然后用LCD进行显示我们这次主要做的是A/D转换单片机和显示我们选用的A/D转换器是ADC0832单片机为AT89C51显示为液晶显示LCD根据硬件电路编程调试出来并显示结果第三章 压力传感系统硬件设计3.1压力传感器3.1.1金属应变片的工作原理 应变式压力传感器是把压力的变化转换成电阻值的变化来进行测量的应变片是由金属导体或半导体制成的电阻体是一种将被测件上的应变变化转换成为一种电信号的敏感器件它是压阻式应变传感器的主要组成部分之一电阻应变片应用最多的是金属电阻应变片和半导体应变片两种金属电阻应变片又有丝状应变片和金属箔状应变片两种通常是将应变片通过特殊的粘和剂紧密的粘合在产生力学应变基体上当基体受力发生应力变化时电阻应变片也一起产生形变使应变片的阻值发生改变从而使加在电阻上的电压发生变化这种应变片在受力时产生的阻值变化通常较小一般这种应变片都组成应变电桥并通过后续的仪表放大器进行放大再传输给处理电路(通常是A/D转换和CPU)显示或执行机构其阻值随压力所产生的应变而变化金属电阻应变片的工作原理是吸附在基体材料上应变电阻随机械形变而产生阻值变化的现象俗称为电阻应变效应对于金属导体一段圆截面的导线的金属丝设其长为L截面积为A(直径为D) 原始电阻为 R金属导体的电阻值可用下式表示: R=LA (3.1)式中:-金属导体的电阻率(cm2/m) S-导体的截面积(cm2) L-导体的长度(m)当金属丝受到轴向力 F而被拉伸或压缩产生形变 其电阻值会随之变化 通过对(3.1)式两边取对数后再取全微分得: (3.2)式中为材料轴向线应变 且 跟据材料力学 在金属丝单向受力状态下 有 (3.3) 式中为导体材料的泊松比因此 有 (3.4)试验发现 金属材料电阻率的相对变化与其体的相对变化间的关系为 (3.5)式中 c为常数(由一定的材料和加工方式决定)将式 (3.5)代入 (3.4) 且当R=R时 可得 (3.6)式中k=(1+2)+c(1-2)为金属丝材料的应变灵敏系数上式表明 金属材料电阻的相对变化与其线应变成正比这就是金属材料的应变电阻效应电阻变化率 R/R 的表达式为:K=R/R/式中-材料的泊松系数;-应变量当金属丝受外力作用时其长度和截面积都会发生变化从上式中可很容易看出其电阻值即会发生改变假如金属丝受外力作用而伸长时其长度增加而截面积减少电阻值便会增大当金属丝受外力作用而压缩时长度减小而截面增加电阻值则会减小只要测出加在电阻的变化(通常是测量电阻两端的电压)即可获得应变金属丝的应变情3.1.2 电阻应变片的基本结构 电阻应变片主要由四部分组成电阻丝是应变片敏感元件;基片、覆盖片起定位和保护电阻丝的作用并使电阻丝和被测试件之间绝缘;引出线用以连接测量导线3.1.3电阻应变片的测量电路 应变片可以将应变转换为电阻的变化为了显示于记录应变的大小还要将电阻的变化再转换为电压或电流的变化因此需要有专用的测量电路通常采用直流电桥和交流电桥3.1.4电桥电路的工作原理 由于应变片的电桥电路的输出信号一般比较微弱所以目前大部分电阻应变式传感器的电桥输出端与直流放大器相连如图3.1所示 图3.1直流电桥设电桥的各臂的电阻分别为R1R3R2R4 它们可以全部或部分是应变片由于直流放大器的输入电阻比电桥电阻大的多因此可将电桥输出端看成开路这种电桥成为电压输出桥输出电压U0 为 U0= (3.7)由上式可见:若R1R3=R2R4则输出电压必为零此时电桥处于平衡状态称为平衡电桥平衡电桥的平衡条件为:R1R3=R2R4 应变片工作时其电阻变化R此时有不平衡电压输出 (3.8)由式(3.8)表明:R R1 时电桥的输出电压于应变成线性关系若相邻两桥臂的应变极性一致即同为拉应变活压应变时输出电压为两者之差若不同时则输出电压为两者之和若相对两桥臂的极性一直输出电压为两者之和反之则为两者之差电桥供电电压U越高输出电压U0 越大但是当U大时电阻应变片通过的电流也大若超过电阻应变片所允许通过的最大工作电流传感器就会出现蠕变和零漂基于这些原因可以合理的进行温度补偿和提高传感器的测量灵敏度3.1.5非线性误差及温度补偿由式(3.8)的线性关系是在应变片的参数变化很小R R1 的情况下得出的若应变片承受的压力太大则上述假设不成立电桥的输出电压应变之间成非线性关系在在这种情况下用按线性关系刻度的仪表进行测量必然带来非线性误差为了消除非线性误差在实际应用中常采用半桥差动或全桥差动电路如图3.2所示以改善非线性误差和提高输出灵敏度 U U (a)半桥差动电路 (b) 全桥差动电路 图3.2 差动电桥 图3.2(a)为半桥差动电路在传感器这中经常使用这种方法粘贴应变片时使两个应变片一个受压一个受拉应变符号相反工作时将两个应变片接入电桥的相邻两臂设电桥在初始时所示平衡的且为等臂电桥考虑到R=R1=R2 则得半桥差动电路的输出电压为 (3.9)由上式可见半桥差动电路不仅可以消除非线性误差而且还使电桥的输出灵敏度提高了一倍同时还能起到温度补偿的作用如果按图3.2(b)所示构成全桥差动电路同样考虑到 R=R1=R2=R3=R4时得全桥差动电路的输出电压为 (3.10)可见全桥的电压灵敏度比单臂工作时的灵敏度提高了4倍非线性误差也得到了消除同时还具有温度补偿的作用该电路也得到了广泛的应用3.2信号放大电路3.2.1三运放放大电路 本次设计的放大器采用了三运放因为它具有高共模抑制比的放大电路它由三个集成运算放大器组成如图3.3所示3.3 三运放高共摸抑制比放大电路其中AR1和AR2为两个性能一致(主要指输入阻抗共模抑制比和增益)的同相输入通用集成运算放大器构成平衡对称差动放大输入级AR3构成双端输入单端输出的输出级用来进一步抑制AR1和AR2的共模信号并适应接地负载的需要由于每个放大器求和点的电压等于施加在各自正输入端的电压因此整个差分输入电压现在都呈现在RG两端因为输入电压经过放大后(在A1 和A2的输出端)的差分电压呈现在R5RG和R6这三只电阻上所以差分增益可以通过仅改变RG进行调整如果R5 R6R1 R3和R2 R4则VOUT = (VIN2VIN1)(12R5/RG)(R2/R1)由于RG两端的电压等于VIN所以流过RG的电流等于VIN/RG因此输入信号将通过A1 和A2 获得增益并得到放大然而须注意的是对加到放大器输入端的共模电压在RG两端具有相同的电位从而不会在RG上产生电流由于没有电流流过RG(也就无电流流过R5和R6)放大器AR1 和AR2 将作为单位增益跟随器而工作因此共模信号将以单位增益通过输入缓冲器而差分电压将按1(2 RF/RG)的增益系数被放大这也就意味着该电路的共模抑制比相比与原来的差分电路增大了1(2 RF/RG)倍 在理论上表明得到所要求的前端增益(由RG来决定)而不增加共模增益和误差即差分信号将按增益成比例增加而共模误差则不然所以比率增益(差分输入电压)/(共模误差电压)将增大因此CMR理论上直接与增益成比例增加这是一个非常有用的特性 最后由于结构上的对称性输入放大器的共模误差如果它们跟踪将被输出级的减法器消除这包括诸如共模抑制随频率变换的误差3.3 A/D转换器 模拟量输入通道的任务是将模拟量转换成数字量能够完成这一任务的器件称之为模数转换器简称A/D转换器本次设计的中A/D转换器的任务是将放大器输出的模拟信号转换位数字量进行输出3.3.1 A/D转换器的简介本次设计A/D转换器选用两通道输入的八位ADC0832它是美国国家半导体公司生产的一种8 位分辨率、双通道A/D转换芯片由于它体积小兼容性强性价比高而深受单片机爱好者及企业欢迎其目前已经有很高的普及率ADC0832 为8位分辨率A/D转换芯片其最高分辨可达256级可以适应一般的模拟量转换要求其内部电源输入与参考电压的复用使得芯片的模拟电压输入在05V之间芯片转换时间仅为32S据有双数据输出可作为数据校验以减少数据误差转换速度快且稳定性能强独立的芯片使能输入使多器件挂接和处理器控制变得更加方便通过DI 数据输入端可以轻易的实现通道功能的选择有关引脚说明如下:? CS 片选使能低电平芯片使能? CH0 模拟输入通道0或作为IN+/-使用? CH1 模拟输入通道1或作为IN+/-使用? GND 芯片参考0电位(地)? DI 数据信号输入选择通道控制? DO 数据信号输出转换数据输出? CLK 芯片时钟输入? Vcc/REF 电源输入及参考电压输入(复用)正常情况下ADC0832 与单片机的接口应为4条数据线分别是CS、CLK、DO、DI它的结构示意图如图3.4所示图3.4 ADC0832结构示意图3.3.2 配置位说明ADC0832工作时模拟通道的选择及单端输入和差分输入的选择都取决于输入时序的配置位当差输入时要分配输入通道的极性两个输入通道的任何一个通道都可作为正极或负极ADC0832的配置位逻辑表如表3.1所示输入格式配置位选择通道号CH0CH1CH0CH1差分LL+-LH+-单端HL+-HH+-表3.1的配置位逻辑表表中+表示输入通道的端点为正极性;-表示输入端点为负极性H或L表示高、低电平输入配置位时高位(CH0)在前低位(CH1 )在后3.3.3 工作时序图当 CS由高变低时选中ADC0832 在时钟的上升沿DI 端的数据移入 ADC0832内部的多路地址移位寄存器在第一个时钟期间DI为高表示启动位紧接着输入两位配置位当输入启动位和配置位后选通输入模拟通道转换开始转换开始后经过一个时钟周期延接着在第一个时钟周期延迟以使选定的通道稳定ADC0832紧接着在第4个时钟下降沿输出转换数据数据输出时先输出最高位(D7D0)输出完转换结果后又以最低位开始重新遍数据(D7D0 )两次发送的最低位共用当片选CS为高时内部所有寄存器清 输出变为高阻态如果要再进行一次模 数转换片选 必须再次从高向低跳变后面再输入启动位和配置位图3.5 ADC083工作时序图3.3.4 单片机对ADC0832的控制原理图3.6 ADC0832与单片机的接口电路 正常情况下ADC0832与单片机的接口应为4条数据线分别是CS、CLK、DO、DI但由于DO端与DI端在通信时并未同时有效并与单片机的接口是双向的所以电路设计时可以将DO和DI并联在一根数据线上使用 当ADC0832未工作时其CS输入端应为高电平此时芯片禁用CLK和DO/DI的电平可任意当要进行A/D转换时须先将CS使能端置于低电平并且保持低电平直到转换完全结束此时芯片开始转换工作同时由处理器向芯片时钟输入端CLK输入时钟脉冲DO/DI端则使用DI端输入通道功能选择的数据信号在第1个时钟脉冲的下沉之前DI端必须是高电平表示启始信号在第2、3个脉冲下沉之前DI端应输入2位数据用于选择通道功能其功能项见表3.2MUX Address ChannelSGL/DIFODD/SIGN0110+-11-+表3.2ADC0832的功能表如表3.2所示当此2位数据为1、0时只对CH0进行单通道转换当2位数据为1、1时只对CH1进行单通道转换当2位数据为0、0时将CH0作为正输入端IN+CH1作为负输入端IN-进行输入当2位数据为0、1时将CH0作为负输入端IN-CH1作为正输入端IN+进行输入 到第3个脉冲的下沉之后DI端的输入电平就失去输入作用此后DO/DI端则开始利用数据输出DO进行转换数据的读取从第4个脉冲下沉开始由DO端输出转换数据最高位DATA7随后每一个脉冲下沉DO端输出下一位数据直到第11个脉冲时发出最低位数据DATA0一个字节的数据输出完成也正是从此位开始输出下一个相反字节的数据即从第11个字节的下沉输出DATD0随后输出8位数据到第19个脉冲时数据输出完成也标志着一次A/D转换的结束最后将CS置高电平禁用芯片直接将转换后的数据进行处理就可以了作为单通道模拟信号输入时ADC0832的输入电压是05V且8位分辨率时的电压精度为19.53mV如果作为由IN+与IN-输入的输入时可是将电压值设定在某一个较大范围之内从而提高转换的宽度在进行IN+与IN-的输入时如果IN-的电压大于IN+的电压则转换后的数据结果始终为00H 3.4 单片机 随着电子技术的发展单片机的功能将更加完善因而单片机的应用将更加普及它们将在智能化仪器、家电产品、工业过程控制等方面得到更广泛的应用单片机将是智能化仪器和中、小型控制系统中应用最多的有种微型计算机3.4.1 AT89C51单片机简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储(FPEROM-Falsh Programmable and Erasable Read Only Memory)的低电压高性能CMOS8位微处理器俗称单片机单片机的可擦除只读存储器可以反复擦除100次该器件采用ATMEL高密度非易失存储器制造技术制造与工业标准的MCS-51指令集和输出管脚相兼容由于将多功能8位CPU和闪烁存储器组合在单个芯片中ATMEL的AT89C51是一种高效微控制器AT89C2051是它的一种精简版本如图3.7所示AT89C51单机为很多嵌入式控制系统提供灵活性高且廉价的方案图3.7AT89C51单片机的结构示意图3.4.2主要特性1、与MCS-51 兼容 2、4K字节可编程闪烁存储器 3、寿命:1000写/擦循环 4、数据保留时间:10年5、全静态工作:0Hz-24Hz 6、三级程序存储器锁定7、128*8位内部RAM 8、32可编程I/O线9、两个16位定时器/计数器 10、5个中断源 11、可编程串行通道 12、低功耗的闲置和掉电模式13、片内振荡器和时钟电路3.4.3管脚说明VCC:供电电压 GND:接地P0口:P0口为一个8位漏级开路双向I/O口每脚可吸收8TTL门电流当P1口的管脚第一次写1时被定义为高阻输入P0能够用于外部程序数据存储器它可以被定义为数据/地址的第八位在FIASH编程时P0 口作为原码输入口当FIASH进行校验时P0输出原码此时P0外部必须被拉高P1口:P1口是一个内部提供上拉电阻的8位双向I/O口P1口缓冲器能接收输出4TTL门电流P1口管脚写入1后被内部上拉为高可用作输入P1口被外部下拉为低电平时将输出电流这是由于内部上拉的缘故在FLASH编程和校验时P1口作为第八位地址接收 P2口:P2口为一个内部上拉电阻的8位双向I/O口P2口缓冲器可接收输出4个TTL门电流当P2口被写1时其管脚被内部上拉电阻拉高且作为输入并因此作为输入时P2口的管脚被外部拉低将输出电流这是由于内部上拉的缘故P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时P2口输出地址的高八位在给出地址1时它利用内部上拉优势当对外部八位地址数据存储器进行读写时P2口输出其特殊功能寄存器的内容P2口在FLASH编程和校验时接收高八位地址信号和控制信号P3口:P3口管脚是8个带内部上拉电阻的双向I/O口可接收输出4个TTL门电流当P3口写入1后它们被内部上拉为高电平并用作输入作为输入由于外部下拉为低电平P3口将输出电流(ILL)这是由于上拉的缘故P3口也可作为AT89C51的一些特殊功能口:P3口管脚 备选功能P3.0 RXD(串行输入口)P3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号RST:复位输入当振荡器复位器件时要保持RST脚两个机器周期的高电平时间ALE/PROG:当访问外部存储器时地址锁存允许的输出电平用于锁存地址的地位字节在FLASH编程期间此引脚用于输入编程脉冲在平时ALE端以不变的频率周期输出正脉冲信号此频率为振荡器频率的1/6因此它可用作对外部输出的脉冲或用于定时目的然而要注意的是:每当用作外部数据存储器时将跳过一个ALE脉冲如想禁止ALE的输出可在SFR8EH地址上置0此时 ALE只有在执行MOVXMOVC指令是ALE才起作用另外该引脚被略微拉高如果微处理器在外部执行状态ALE禁止置位无效/PSEN:外部程序存储器的选通信号在由外部程序存储器取指期间每个机器周期两次/PSEN有效但在访问外部数据存储器时这两次有效的/PSEN信号将不出现/EA/VPP:当/EA保持低电平时则在此期间外部程序存储器(0000H-FFFFH)不管是否有内部程序存储器注意加密方式1时/EA将内部锁定为RESET;当/EA端保持高电平时此间内部程序存储器在FLASH编程期间此引脚也用于施加12V编程电源(VPP)XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入XTAL2:来自反向振荡器的输出3.4.4振荡器特性 XTAL1和XTAL2分别为反向放大器的输入和输出该反向放大器可以配置为片内振荡器石晶振荡和陶瓷振荡均可采用如采用外部时钟源驱动器件XTAL2应不接有余输入至内部时钟信号要通过一个二分频触发器因此对外部时钟信号的脉宽无任何要求但必须保证脉冲的高低电平要求的宽度3.4.5芯片擦除 整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合并保持ALE管脚处于低电平10ms 来完成在芯片擦操作中代码阵列全被写1且在任何非空存储字节被重复编程以前该操作必须被执行 此外AT89C51设有稳态逻辑可以在低到零频率的条件下静态逻辑支持两种软件可选的掉电模式在闲置模式下CPU停止工作但RAM定时器计数器串口和中断系统仍在工作在掉电模式下保存RAM的内容并且冻结振荡器禁止所用其他芯片功能直到下一个硬件复位为止3.5 液晶屏LCD简介本次设计是利用89C51单片机串行口和一个LM016L实现压力测量数据的显示液晶显示器(LCD)具有功耗低、体积小、质量轻、功耗小的特点这类液晶模块不仅可以显示数字、字符还可以显示各种图形符号以及少量自定义符号并且可以实现屏幕的上下左右滚动、文字的闪烁等功能;人机界面友好使用操作也更加灵活、方便使其日益成为各种仪器仪表等设备的首选3.5.1液晶显示器原理液晶显示的原理是利用液晶的物理特性通过电压对其显示区域进行控制有电就有显示这样即可以显示出图形液晶显示器具有厚度薄、适用于大规模集成电路直接驱动、易于实现全彩色显示的特点目前已经被广泛应用在便携式电脑、数字摄像机、PDA移动通信工具等众多领域 3.5.2液晶显示器分类液晶显示的分类方法有很多种通常可按其显示方式分为段式、字符式、点阵式等除了黑白显示外液晶显示器还有多灰度有彩色显示等如果根据驱动方式来分可以分为静态驱动(Static)、单纯矩阵驱动(Simple Matrix)和主动矩阵驱动(Active Matrix)三种3.5.3字符的显示用LCD显示一个字符时比较复杂因为一个字符由68或88点阵组成既要找到和显示屏幕上某几个位置对应的显示RAM区的8字节还要使每字节的不同位为1其它的为0为1的点亮为0的不亮这样一来就组成某个字符但由于内带字符发生器的控制器来说显示字符就比较简单了可以让控制器工作在文本方式根据在LCD上开始显示的行列号及每行的列数找出显示RAM对应的地址设立光标在此送上该字符对应的代码即可3.5.4 LM016L引脚功能说明编号符号引脚说明编号符号引脚说明1VSS电源地8D1数据2VDD电源正极9D2数据3VL液晶显示偏压10D3数据4RS数据/命令选择11D4数据5R/W读/写选择12D5数据6E使能信号13D6数据7D0数据14D7数据表3.3:引脚接口说明表LMO16LCD采用标准的14脚接口各引脚接口说明如表3.3所示:第1脚:VSS为地电源第2脚:VDD接5V正电源第3脚:VL为液晶显示器对比度调整端接正电源时对比度最弱接地时对比度最高对比度过高时会产生鬼影使用时可以通过一个10K的电位器调整对比度第4脚:RS为寄存器选择高电平时选择数据寄存器、低电平时选指令寄存器第5脚:R/W为读写信号线高电平时进行读操作低电平时进行写操作当RS和R/W共同为低电平时可以写入指令或者显示地址当RS为低电平R/W为高电平时可以读忙信号当RS为高电平R/W为低电平时可以写入数据第6脚:E端为使能端当E端由高电平跳变成低电平时液晶模块执行命令第714脚:D0D7为8位双向数据线LCD同单片机的连接如下图3.8图3.8 LCD接口电路3.6 报警模块 本设计报警模块的采用的是蜂鸣器和一个三极管组成当压力超出设计的范围时单片机会给一个高电平蜂鸣器发出声音进行警报同时液晶屏上作出提示当压力在正常范围内时单片机输出信号为低电平蜂鸣器不工作蜂鸣器与单片机连接如图3.9 图3.9第四章 软件设计4.1 软件编程软件是真个系统的重要责成部分数据的输入输出数据的处理等功能都通过软件来完成所以是整个系统正常可靠运行的重要前提本设计采用c编程语言对系统的智能功能进行设计C语言是一种计算机程序设计语言它既具有高级语言的特点又具有汇编语言的特点C语言先后被移植到大、中、小及微型机上它可以作为工作系统设计语言编写系统应用程序也可以作为应用程序设计语言编写不依赖计算机硬件的应用程序它的应用范围广泛具备很强的数据处理能力不仅仅是在软件开发上而且各类科研都需要用到C语言适于编写系统软件三维二维图形和动画4.2软件程序组成 这次设计软件是由主程序和一个个子程序模块组成这样方便编写和运行整理软件的主要部分由主程序、AD转换数据子程序、LCD显示子程序、中断和延时子程序等组成4.2.1 系统的主程序流程图如下图4.1void main(void)unsigned int data_temp=0;init();TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256;ET0=1;TR0=1;while(1) data_temp=ADconv();if(data_temp128)/报警数值EA=1;elseEA=0;buzzer=0;P3=data_temp;xs_int(196*data_temp);if(KEY=0)delay_1ms(10);if(KEY=0) while(!KEY);key_count+;if(key_count=3)key_count=1;xiezhiling(0x010); if(key_count=1)xiezhiling(0x801);/LCD第一行xieshuju(P);xieshuju(I);xieshuju(C);xieshuju(3);xieshuju(0);xieshuju(0);xieshuju(1);xieshuju(-);xieshuju(-);xieshuju(HC5+0x30);xieshuju(HC3+0x30);xieshuju(HC2+0x30);xieshuju(.);xieshuju(HC1+0x30);xieshuju(P);xieshuju(a);xiezhiling(0x80+0x401);/LCD第二行xieshuju(A);xieshuju(l);xieshuju(a);xieshuju(r);xieshuju(m);xieshuju( );xieshuju(S);xieshuju(t);xieshuju(a);xieshuju(t);xieshuju(u);xieshuju(s);xieshuju(-);xieshuju(-);xieshuju(O);xieshuju(N);if(key_count=2)xiezhiling(0x801);/LCD第一行 主程序流程图4.1 xieshuju(P); xieshuju(r);xieshuju(e);xieshuju(s);xieshuju(s);xieshuju(u);xieshuju(r);xieshuju(e);xieshuju( );xieshuju(i);xieshuju(s);xieshuju( );xieshuju(O);xieshuju(K);xieshuju( );xieshuju( );xiezhiling(0x80+0x401);/LCD第二行xieshuju(M);xieshuju(a);xieshuju(d);xieshuju(e);xieshuju( );xieshuju(B);xieshuju(Y);xieshuju( );xieshuju(y);xieshuju(u);xieshuju(a);xieshuju(n);xieshuju(s);xieshuju(h);xieshuju(u);xieshuju(o);xieshuju( );4.3系统子程序设计4.3.1 A/D转换器的软件设计单片机控制系统中通常要用到AD转换根据输出格式常用的AD转换方式可分为并行AD和串行AD并行方式一般在转换后可直接接收但芯片的引脚比较多;串行方式所用芯片引脚少封装小但需要软件处理才能得到所需要的数据可是单片机I/O引脚本来就不多使用串行器件可以节省I/O资源ADC0832是位逐次逼近模数转换器可支持两个单端输入通道和一个差分输入通道相同功能的器件还有ADC0834ADC0838ADC0831所不同的是它们的输入通道数量不同它们的通道选择和配置都是通过软件设置4.3.2ADC0832芯片接口程序的编写单片机串行工作方式时 串行口是作为同步移位寄存器使用这时以 P3.3端作为数据移位的入口和出口 而由P3.6端提供移位时钟脉冲单片机串行口方式 0与 ADC0832的接口单片机P2.0接ADC0832的CSP3.6接0832的CLK作为时钟信号输出端 P3.7 接 0832的 DO和DI作为启动位、配置位的发送端以及 A/D转换后输出数据的接收端由于 ADC0832在 CS变低后的前 3个周期内DO端为高阻态;转换开始后 DI线禁止 因此 DI端和 DO端可连接在一起ADC0832的时钟频率最高为 400kHz单片机晶振可选用 4MHz在 TXD的输出频率为 4MHz/12 =333. 3kHz符合要求ADC0832输出的串行数据共 15位 由两段 8位数据组成 前一段是最高位在先 后一段是最高在后 两段数据的最低位共用只有在时钟的下降沿 ADC0832的串行数据才移出一位由单片机控制时钟信号的发送 并由P3.6发出 以达到控制 ADC0832输出数据位的目的为了得到一列完整的 8位数据 单片机分两次采集含有不同位的数据 再合成一列完整的 8位数据 ADC0832通过内部多路器来控制选择通道处理器的控制命令通过DI引脚输入如下流程图所示当模拟信号输入开始后首先是CS使能信号也就是片选信号有效这时是低电平有效如果片选是高电平时停止转换当时钟信号有效

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论