基于单片机的某液体点滴数的在线测试系统的设计_毕业设计论文.doc

上传人:哈尼dd 文档编号:3922394 上传时间:2019-10-10 格式:DOC 页数:56 大小:1.16MB
返回 下载 相关 举报
基于单片机的某液体点滴数的在线测试系统的设计_毕业设计论文.doc_第1页
第1页 / 共56页
基于单片机的某液体点滴数的在线测试系统的设计_毕业设计论文.doc_第2页
第2页 / 共56页
基于单片机的某液体点滴数的在线测试系统的设计_毕业设计论文.doc_第3页
第3页 / 共56页
基于单片机的某液体点滴数的在线测试系统的设计_毕业设计论文.doc_第4页
第4页 / 共56页
基于单片机的某液体点滴数的在线测试系统的设计_毕业设计论文.doc_第5页
第5页 / 共56页
点击查看更多>>
资源描述

《基于单片机的某液体点滴数的在线测试系统的设计_毕业设计论文.doc》由会员分享,可在线阅读,更多相关《基于单片机的某液体点滴数的在线测试系统的设计_毕业设计论文.doc(56页珍藏版)》请在三一文库上搜索。

1、 贵州大学本科毕业论文(设计) 第 50 页本科毕业论文(设计)论文(设计)题目:基于单片机的某液体点滴数的在线测试系统的设计贵州大学本科毕业论文(设计)诚信责任书本人郑重声明:本人所呈交的毕业论文(设计),是在导师的指导下独立进行研究所完成。毕业论文(设计)中凡引用他人已经发表或未发表的成果、数据、观点等,均已明确注明出处。特此声明。论文(设计)作者签名: 日 期: 目 录摘 要IIIAbstractIV第一章 前 言11.1 本设计的目的和意义11.2 设计的国内外现状和发展趋势11.3 本设计应解决的主要问题2第二章 方案的设计及论证32.1 单片机的选择32.1.1 8031和8051

2、的区别32.2 液滴检测方案的比较与选择32.3 点滴速度控制方案的比较与选择32.4 储液瓶液位的检测方案的比较与选择42.5键盘方案的选择52.6 显示方案的选择52.7 报警电路方案的确定52.8 总体方案框图5第三张 硬件的设计73.1 8031单片机简介73.1.1 8031单片机的组成及结构73.1.2 8031单片机的引脚定义及功能73.2存储器的扩展103.2.1 存储器的寻址103.2.2 程序存储器的扩展103.2.3 数据存储器的扩展123.3 并行I/O口的扩展143.4 显示器接口的设计173.4.1 LED显示器简介173.4.2 动态显示接口173.5 键盘接口1

3、93.5.1 键盘工作原理193.5.2 矩阵式键盘203.6 液滴点滴速度检测电路的设计223.7 液面检测电路的设计233.8 报警电路的设计243.8.1 发光二极管的选择243.8.2 蜂鸣器的选择243.8.3 报警电路253.9 步进电机的选择263.10 步进电机驱动电路的设计283.11 系统的掉电保护313.12 系统的精度论证32第四章 软件的设计334.1 主程序的设计334.2 测速程序的设计344.3 显示子程序的设计364.4 调速程序的设计394.5 键盘中断程序的设计434.6 延时子程序的设计464.7 报警程序的设计46第五章 结论47参 考 文 献48致

4、谢49基于单片机的某液体点滴数的在线测试系统的设计摘 要本次设计的系统,是以8031单片机为核心以键盘及红外传感器为输入系统,以数码管、报警电路及步进电机为输出系统的智能化的液体点滴速度的控制及监测系统。它可以实现对液体点滴速度的实时显示,并对储液瓶中剩余液体进行监视。系统检测精度高、点滴速度调节响应快。本文介绍了系统的硬件组成、工作原理和软件的设计。本系统包括液体点滴速度的测速模块、液体点滴速度的控制模块、液体液位检测模块、键盘输入模块、显示模块和声光报警模块六个部分。应用压强随着液体高度变化而变化的原理,利用步进电动机控制储液瓶升降来实现对点滴速度的控制。点滴速度可用键盘来设定,设定范围为

5、20150(滴/分),控制误差范围在110%滴。液体的实际点滴速度和通过键盘设定的点滴速度可以通过LED显示器显示出来。同时在液体到达警戒线以下时能发出报警信号。关键词:单片机、液滴数检测、红外传感器、步进电机The Design Based On MCU Of A Liquid Drop Speed Test Online SystemAbstractThis system uses a MCU as a core , a keyboard and infrared detecter as the input system ,a LED display circuit, a warning

6、circuit and a stepper motor as the output system to realize the auto controlling of the liquid drop speed . It can display the real-time drop speed of the liquid , and scout the remaining liquid in bottle . The system has a high precision and high sensitivity to test and control the speed . This pap

7、er introduced the hardware , software and the principle of the system .This system is composed by six parts a liquid drop speed test module , a liquid drop speed control module , a the liquid level test module , a keyboard module , a display module and a sound and light alarm module . Use the theory

8、 that the pressure is changed by the change of the level of liquid to use the stepper motor to control the liquids bottle rise or fall to realize the controling of the liquid drop speed . The drop speed of liquid can be ascertained by the keyboard at the range of 20 drops per minute to 150 drops per

9、 minute , and this system makes the real drop speed at the range of 110% of the keyboard inputs , and when the liquid reach the warning level the system will raise the alarm .Keywords: MCU , testing of liquid drop, infrared sensor,stepper motor+第一章 前 言1.1 本设计的目的和意义在节约型社会的现代化生产、生活中,对投入生产、生活的资料有着越来越精确

10、的要求。如静脉输液是临床医学中一个重要的治疗手段。根据不同病人的病情和体质的差异,需要不同是输液速度及流量,目前对输液速度的控制普遍采用手工方法,由护士根据经验调节使得点滴速度不够准确。此外在输液过程中,需要及时监视剩余的药液,若药液输完,未能及时更新或结束输液,则会发生医疗事故。同时有些病人,如非典病人,不便与外界过多接触,对这些病人进行输液的最佳管理方式为远程控制。又如化工生产线上某些少量液体原料的投入是通过液体点滴速度来控制的,显而易见,点滴速度的快慢将直接影响最终产品的品质。由以上可以看出,在某些场合控制液体的点滴速度是及其重要的,本设计的目的也就在于能够准确的监控液体的点滴速度,给相

11、关人员提供准确的数据,从而提高生活、生产质量。1.2 设计的国内外现状和发展趋势基于单片机原理的液体点滴速度在线测试系统这个课题,之前已经有人做过类似的设计,如基于模糊控制算法的智能液体点滴速度监控系统。这些系统水滴速度测试系统、水速控制系统、显示装置、单片机系统、键盘和报警等系统组成。应用水的压强随着高度差的变化而变化的原理,利用控制步进电动机的升降来控制点滴速度主要是通过控制储液灌的高度来实现对液体点滴速度的控制,点滴速度可用键盘来设定。基本实现了控制点滴速度误差在滴左右和超过误差范围时自动报警的功能。目前这种系统正向实现远距离,多点位,集中分时显示各点位液体点滴速度情况的方向发展。1.3

12、 本设计应解决的主要问题本次设计设计的系统是基于单片机的液体点滴速度的在线测试系统,要求运用单片机知识设计出经济适用的液体点滴速度控制系统。系统能够准确地设定某液体的点滴速度且能够通过电子传感器检测该液体的点滴速度并能够实时控制和显示液体的点滴速度,实现参数掉电保护,测量和控制误差范围为110,并要求具有当液位超低于警戒值时的自动报警的功能。第二章 方案的设计及论证2.1 单片机的选择2.1.1 8031和8051的区别8031和8051是MCS-51系列单片机的典型产品。它们的区别在于8051是ROM型单片机,内部有4K ROM ,而8031内部没有ROM。由于4K的ROM难以满足本次设计的

13、要求,仍然需要扩展外部程序存储器,编程时同时使用内部和外部存储器需要对引脚进行控制,给编程带来不必要的麻烦。所以本设计采用8031单片机。2.2 液滴检测方案的比较与选择方案一:采用可见光发光二极管与光敏三极管传感电路。方案二:采用电感式传感器测量点滴速度。在输液器的漏斗外围绕线圈作为敏感元件,当液滴滴下时电感量发生变化,通过LC振荡电路后输出变化的频率,经过F/V转换电路及电压比较后输出电平信号来检测点滴速度。方案三:使用红外发光二极管和接收管组合(红外光电传感器)测量点滴速度。红外发光二极管发出的光亮强度一定,当有液滴滴下时,由于液滴的遮挡、反射和散射作用,接收管接收到的光的强度发生变化,

14、输出变化的电压信号,此电压信号经过放大和整形后被转化为举行波,送给单片机计数来测量点滴速度。对于方案一,由于系统外界光源对光敏三极管的工作有很大干扰,一旦外界光亮度改变,就会影响对液滴的检测。虽然采用超强亮度发光管可以减少干扰,但功率损耗大,而方案二的电路又较为复杂,相比较下方案三具有传感器体积小、灵敏度高,外围电路简单,性能稳定可靠等优点,所以采用方案三。2.3 点滴速度控制方案的比较与选择方案一:对滴速夹松紧的控制对滴速夹松紧的控制就是通过对滴速夹松紧的调节,改变塑料滴管的形状以控制液体的滴速。这样的方法虽然直观,但存在很多缺点。首先由于对管壁施加压力改变其形状,所施加的压力与液体滴速的关

15、系难以确定,这给滴速控制带来了难度。其次由于滴管是由塑料制成,存在范性变形,在长时间受压后滴速夹并不能使滴管完全恢复原形,控制装置无法保证理想的控制效果。总结上述原因,不采用此控制方法。方案二:对储液瓶高度的控制对储液瓶高度的控制就是通过改变储液瓶的高度,老控制点滴速度,由于高度的改变与点滴速度基本成线性关系1,这易于对点滴速度进行控制。而储液瓶的高度可通过电机实现精确的控制。故我选用此方案来控制点滴速度。对储液瓶高度的控制方法有两种:一种是采用单片机和D/A转换构成系统,控制普通电动机。由于普通电动机精确度较差,很难达到精确控制的目的。另一种是用单片机控制步进电机。控制信号为数字信号,不在需

16、要数/模转换;具有快速启/停能力,可在一刹那间实现启动或停止,定位准确,精度高,可操作性强。综合考虑题目要求,一方面调节的步长尽可能的小,定位要好;另一方面如果停止信号到来,滑轮能够快速停止,并且力矩足够大,确保吊瓶不下滑。所以采用第二中方法,用单片机控制步进电机来控制储液瓶的高度。2.4 储液瓶液位的检测方案的比较与选择方案一:采用超声波脉冲回波方法检测液位。测出超声波从发射声波到接收声波所需要的时间,根据超声波的声速及发射传感器与液面之间的距离计算出液位的高度。由于短距离内超声波存在忙区影响精度,且超声波检测装置安装复杂,因此不采用此方案。方案二:采用红外对管检测液位,此方法和液滴的检测方

17、法原理相同。正常情况下,发射管和接收管之间有液体,由于液体的遮挡、反射和散射作用,接受管接收到的光的强度相对教若。当液面降到红外对管的安装位置以下时,接收管接收到的光强度教强,由于前后光强度的不同,产生高低电平,从而发出报警信号。此方法装置安装简单,可以简化系统设计,所以采用此方案检测液位。2.5键盘方案的选择方案一:采用矩阵式键盘,此类键盘采用矩阵式行列扫描方式,优点是当按键较多时可降低占用单片机的I/O口数目,缺点为电路复杂且会加大编程难度。方案二:采用独立式按键电路,每个按键单独占有一根I/O接口线,每个I/O口的工作状态互不影响,此类键盘采用端口直接扫描方式,缺点为当按键较多时占用单片

18、机的I/O口数目较多,优点为电路设计简单,且编程极其容易。综合考虑两种方案及题目要求,方案一需要7个I/O口。方案二需要11个I/O口,由于系统I/O口资源足有限,。采用方案一。2.6 显示方案的选择方案一:采用液晶显示器(LCD)。一个LCD液晶显示器可以同时显示多个字符,有的型号还能显示复杂图形,且清晰度叫高。其功耗比LED发光二极管低大约3个数量级,但是寿命比LED发光二极管少大约2个数量级。LCD本身不能直接发光,需要依靠外界光反射才能显示字符,所以在黑暗条件下需要加背光。此外LCD需要交流驱动结构复杂。方案二:采用发光二极管显示器(LED)。一个LED显示器只能显示一个字符或者字段,

19、功耗比LCD高,但寿命长、响应速度快、本身可以发光、在黑暗条件下可以直接使用、采用直流驱动,结构简单。由于本设计所显示的字符仅仅为数字,不显示复杂字符,所以采用方案二。2.7 报警电路方案的确定本设计采用声光报警。当单片机接受到报警信号时,驱动LED发光二极管发出红色报警灯光,同时驱动蜂鸣器发出警报声音。2.8 总体方案框图根据设计任务的要求,本系统包括液体点滴速度的测速模块、液体点滴速度的控制模块、液体液位检测模块、键盘输入模块、显示模块和报警模块六个部分。系统的总体方案框图如图2-1所示图2-1总体方案框图由红外测速模块检测出液体的实际点滴速度,由键盘输入控制者要求的点滴速度,由显示模块显

20、示出键盘输入的值和实际点滴速度的值,由速度调控模块根据键盘输入的值调节实际点滴速度,由液面检测模块检测液位是否低于设定的液位,根据液面检测模块发出的信号通过单片机控制报警系统报警。第三张 硬件的设计3.1 8031单片机简介3.1.1 8031单片机的组成及结构1. 中央处理器(CPU)中央处理器是单片机的核心部分,是单片机的大脑和心脏,主要完成运算和控制功能。8031的CPU是一个字长为8位的中央处理单元,即他对数据的处理是按字节为单位进行的。2. 定时器/计数器8031共有2个16位的定时器/计数器,可以实现定时和计数功能。3. 并行I/O口8031有4个8位的I/O口,可以实现数据的并行

21、输入、输出。4. 串行口8031有1个全双工的可编程串行口,以实现单片机和其他设备之间的串行数据传送。5. 时钟电路8031内部有时钟电路,但晶振和微调电容需要外接。时钟电路为单片机产生时钟脉冲序列。6. 中断系统8031的中断系统功能较强,可以满足一般控制系统的需要。它共有5个中断源:2个外部中断源,即2个定时/计数中断,1个串行口中断。3.1.2 8031单片机的引脚定义及功能8031单片机采用40脚双列之插封装式,如图3-1所示。图3-1 8031引脚图8031单片机是高性能单片机,因为受到引脚数目的限制,所以有不少引脚具有第二功能。引脚的名称和功能如下:1. 主电源引脚Vss和VccV

22、ss(20脚):接地引脚Vcc(40脚):主电源,接+5V2. 时钟电路引脚XTAL1和XTAL2XTAL1(19脚):接外部晶体的一端。在片内它是振荡电路反相放大器的输入端。在采用外部时钟时,对于HMOS单片机,该引脚接地;对于CHMOS单片机,此引脚作为驱动器。XTAL2(18脚):接外部晶体的另一端。在片内它是一个振荡电路反相放大电路的输出端,振荡电路的频率是晶体振荡频率。若采用外部时钟电路,对于CHMOS单片机,该引脚输入外部时钟脉冲;对于CHMOS单片机,此引脚应悬浮。3. 控制信号引脚RST、RST(9脚):单片机刚接上电源时,其内部各寄存器处于随机状态,在该引脚输入24个时钟周期

23、宽度以上的高电平将使单片机复位(RESET)。(30脚):访问片外存储器时,ALE作锁存扩展地址低位字节的控制信号(称允许锁存地址)。平时不访问片外存储器时,该端以1/6的时钟振荡频率固定输出正脉冲,共定时或者其他需要使用;在访问片外存储器时会丢失一个脉冲。ALE端的负载驱动能力为定时或者其他需要使用。(29脚):在访问片外程序存储器时,此端输出负脉冲作为存储器读选信号。CPU在向片外存储器取指令期间,信号在12个时钟周期中两次生效。不过在访问片外数据存储器时,这两次有效的信号不出现。端可以驱动8个低功耗高速TTL负载。(31脚):当端输入高电平时,CPU从片内程序存储器地址0000H单元开始

24、执行程序。当地址超出4K时,将自动执行片外程序存储器的程序。当输入低电平时,CPU仅访问片外程序存储器。4. 输入/输出引脚(P0、P1、P2和P3端口引脚)P0、P1、P2和P3是4个寄存器,也称为4个端口,是8031单片机与外界联系的4个8位双向并行I/O口。由于数据在传输过程中,CPU需要对接口电路中输入/输出数据的寄存器进行读写操作,所以在单片机中对这些寄存器像存储单元一样进行编址。通常把接口电路中这些已经编址并能进行读写操作的寄存器称为端口,或者简称为口。(2932脚):P0口是一个8位漏极开路型双向I/O端口。在访问片外存储器时,它分时提供低8位地址和8位双向数据,故这些I/O口线

25、有地址线/数据线之称,简写为。(18脚):P1是一个带内部上拉电阻的8位双向I/O端口。(2128脚):P2是一个带内部上拉电阻的8位双向I/O端口。在访问片外存储器时,它输出高8位地址,即。(1017脚):P3是一个带内部上拉电阻的8位双向I/O端口。在整个系统中,这8个引脚还具有专门的第二功能,如表3-1所示。表3-1 3口各位的第二功能P3口的各位第二功能P3.0RXD(串行口输入)P3.1TXD(串行口输出)P3.2(外部中断0输入)P3.3(外部中断1输入)P3.4T0(定时器/计数器0的外部输入)P3.5T1(定时器/计数器1的外部输入)P3.6(片外数据存储器写选通控制输出)P3

26、.6(片外数据存储器读选通控制输出)3.2存储器的扩展因为8031内部没有ROM,而RAM只有256B,所以需要扩展程序存储器和数据存储器。3.2.1 存储器的寻址存储器寻址是通过对地址线进行适当连接,使存储器中任一单元都对应惟一的寻址地址。存储器寻址分两步,即存储器芯片的寻址和芯片内部存储单元的寻址。在存储器寻址问题中,对于芯片内部存储单元的选择方法很简单,就是把存储器芯片的地址线和相应的系统地址线按位相接。3.2.2 程序存储器的扩展程序存储器扩展时,一般扩展容量都大于256B,因此,除了由 P0提供低8位地址线之外,还需要由P2口提供若干地址线。程序存储器所需要的地址线数决定于其容量的大

27、小,当程序存储器为2KB时地址线为11根,4KB时为12根,依次类推。1. 27128简介本设计扩展的的存储器容量大小为16KB,因为,所以地址线为14根,芯片为EPROM芯片27128。27128的引脚图如图3-2所示。图3-2 27128的引脚图A0A13为27128的14根地址线,分别和8031的P0.0P0.7和P2.0P2.5相连。当8031发出低14位地址信息时,分别选中27128片内16KB存储器中各单元。27128的引脚为片选信号输入端,低电平有效,表示选中该芯片。当外部程序存储器采用单片电路时,其片选端可以直接接地。,本设计中将片选信号端接8031单片机的P2.6 引脚。27

28、128的引脚为输出使能端,与单片机的端相连。当有效时,把27128中的指令或者数据通过P0口线读入8031单片机中。Vcc引脚为27128的电源引脚,接+5V电源。GND引脚为27128的接地端。2. 74LS373简介因为8031单片机的P0口为地址线和数据线共用的I/O口,所以在进行程序存储器的扩展时,需要用到地址锁存器74LS373。74LS373的引脚图如图3-3所示。图3-3 74LS373的引脚图D0D7为数据输入端,使用时分别和8031的P0.0P0.7相连。Q0Q7为输出端,使用时和27128的A0A7相连。为三态允许控制端,当为低电平时,O0O7为正常逻辑状态,可以用来驱动负

29、载,当为高电平时,O0O7为高阻状态,不能驱动负载。G锁存允许端,使用时和8031的ALE引脚相连,每当ALE下跳变时,74LS373锁存低8位地址线A0A7,并输出供系统使用。Vcc引脚为74LS373的电源引脚,接+5V电源。GND引脚为74LS373的接地端。3.2.3 数据存储器的扩展8031的扩展系统中,数据存储器最大可以扩展64K,由于面向控制,实际需要扩展容量不大。常用芯片有6116、6264等。数据存储器空间地址同程序存储器一样,由P2提供高8位地址,P0口分时提供低8位地址和8位双向数据线。数据存储器的读和写由(P3.7)和(P3.6)信号控制,而程序存储器由读选通信号控制。

30、所以两者虽然共处同一地址空间,但由于控制信号不同,故不会发生总线冲突。1. 6116简介本设计扩展的的数据存储器容量大小为2KB,因为,所以地址线为10根,芯片为RAM芯片6116。6116的引脚图如图3-4所示。图3-4 6116的引脚图A0A10为地址输入端口D0D7为数据线端口为片选信号端口输出使能端口为写使能端口6116与8031组成扩展系统时,与8031单片机的(P3.6)脚相连,与8031单片机的(P3.7)脚相连,8031单片机的P2.7相连,D0D7与8031的P0口相连。和扩展程序存储器时一样,因为8031单片机的P0口为地址线和数据线共用的I/O口,所以在进行数据存储器的扩

31、展时,也需要用到地址锁存器74LS37。A0A7与74LS373的Q0Q7相连。根据以上所述程序存储器和数据存储器综合扩展电路如图3-5所示图3-5程序存储器和数据存储器综合扩展电路3.3 并行I/O口的扩展1. 8031单片机共有4个8位并行I/O口,但这些I/O口并不能全部供给用户使用,通常只有P1口和部分P2、P3口可以供给用户使用。本设计中,这些I/O口不能满足使用要求,因此需要对I/O口进行扩展。8031单片机中,扩展的I/O口的寻址方法和存储器的寻址方法相同,所有扩展的I/O口或者相当于I/O外设以及通过扩展I/O口连接的外设均与片外数据存储器统一编址,所以对片外I/O口的输入输出

32、指令就是访问片外RAM的指令。并行I/O口的扩展有简单I/O口的扩展和可编程接口电路扩展两种。简单I/O口的扩展,具有电路简单、成本低廉、配置灵活的优点,但扩展的I/O口数有限,不能满足本设计对I/O口数的需求。因此采用可编程接口电路扩展的方法扩展I/O口,选择的扩展芯片为8255。 2. 8255的引脚图,如图3-6所示图3-6 8255的引脚图PA0 PA7为A口,PB0 PB7为B口,PC0 PC7为C口。用于8255与外设之间传送数据。D0 D7用于传送CPU与8255之间的命令与数据。:读信号,低电平有效。当这个引脚输入为低电平时,控制8255送出数据或者状态信息到CPU,即CPU对

33、8255进行读操作。:写信号,低电平有效。当这个引脚输入为低电平时,控制把CPU输出的数据或者命令写到8255,既CPU对8255进行写操作。RESET:复位信号,高电平有效。当此引脚为高电平时,所有8255内部寄存器都清零。所有通道都设置为输入方式。24条I/O引脚为高阻状态。:片选信号线,低电平有效。当此引脚为低电平时,8255被CPU选中。A0和A1:这是两个输入信号端,通常一一对应接到地址总线低两位。当有效时,这两位的组合00、01、10、11分别用来选择A、B、C口和控制寄存器。所以,一片8255共有4个地址单元。3. 8255的工作方式8255有三种工作方式,即方式0、方式1、方式

34、2。方式0(基本输入/输出方式):这种方式不需要任何选通信号。A口、B口以及C口的高4位和低4位都可以被设定为输入或者输出。作为输出口时,输出的数据被锁存,B口和C口作为输入口时,其输入的数据不锁存。方式1(选通输入/输出方式):在这种工作方式下,A、B、C三个口将分为两组。A组包括A口和C口的高4位,A口可以通过编程设定为输入或者输出口,C口的高4位则作为输入/输出操作的控制和同步信号;B组包括B口和C口的低4位,B口可以通过编程设定为输入或者输出口,C口的低4位则作为输入/输出操作的控制和同步信号。A口和B口的输出数据都被锁存。方式2(双向数据传送方式):在这种方式下,A 口为8位双向数据

35、口,C口的PC3 PC7用来作为输入/输出的控制同步信号;应该注意的是,只有A口允许作为双向数据口使用,这时B口和PC0 PC2则可以通过编程设置为方式0或者方式1工作。4. 8031单片机与8255的接口逻辑简单,其接口电路如图3-7所示。图中,8255的片选信号及口地址选择线A0和A1分别由8031的P2.0、P0.0和P0.1经过地址锁存器74LS373后提供。故本片8255的A、B、C口及控制寄存器的地址分别为0000H、0002H、0001H和0003H。8255的D0 D7分别和8031的P0.0 P0.7相连。8255的复位端RESET和8031的复位端RESET相连,都接到80

36、31单片机的复位电路上。另外,8031的、分别和8031单片机的、一一对应相连。图3-7 8031与8255的接口电路3.4 显示器接口的设计为了便于操作人员观察和监视液体点滴速度的情况,需要显示器作为单片机的输出设备,用来显示键盘的输入值和液体点滴速度的实际值。由前面是系统方案设计所述,本设计采用LED显示器。3.4.1 LED显示器简介LED显示器是由发光二极管显示字段的显示器件,也可以称为数码管。其外形结构如图3-8(a)所示。它由8个发光二极管组成,通过不同的组合可以显示09、AF及小数点“.”等字符。 (a) (b) (c)图3-8 “8”字形数码管数码管通常有共阴极图3-8(b)和

37、共阳极图3-8(c)两种接法,一般共阳极数码管必须外接电阻,共阴极不一定需要外接电阻。共阴极数码管的发光二极管阴极必须接低电平,当某发光二极管的阳极为高电平时,此二极管被点亮;共阳极数码管的发光二极管是阳极接到高电平,对于需要点亮的发光二极管使阴极接低电平即可。显然,要显示某字形就应该使此字形的相应字段电亮,实际就是送一个用不同电平组合代表的数据至数码管。这种装入数码管中显示字形的数据称字形码。3.4.2 动态显示接口显示接口有静态显示接口和动态显示接口两种。数码管工作在静态显示方式下,共阴极或者共阳极点连接在一起接地或者接高电平。每位的段选线与一个8位并行口相连。只要在该位的段选线上保持段选

38、码电平,该位就能保持相应的显示字符。因为采用静态显示时,若段选线直接用并行I/O口端,占用的I/O的资源过多,若采用串行口,速度又比较慢。所以本设计采用采用动态显示接口。图3-9是单片机应用系统中的一种动态显示示意图。图3-9 扫描式显示电路图3-9中,8255是单片机应用系统扩展的I/O口,其中A口用做字形驱动,B口用做位选扫描输出,其余口用做其他用途。74LS241是8路正相驱动芯片做字形驱动。7406是6路反相驱动芯片做位选驱动。数码管是8段共阴极的数码管,所以发光时字形驱动输出“1”有效,位选驱动输出“0”有效。对于8255来讲,字形码输出“1”有效,位选扫描电平也是为“1”有效。工作

39、时,B口的6路位选信号每次仅有一路输出是“1”电平,同时A口输出与选通的数码管相应的字形码信号,即B口扫描输出位选信号,A口输出字形信号。在动态显示工作方式下,数码管的公共段(位选驱动端)是分时轮流被选通的。使各个数码管轮流被导通,即各数码管是由脉冲电流导通的。当所有数码管依次显示一便后,软件控制循环,使每位显示器分时点亮。这种方式不但能提高数码管的发光率,并且由于各个数码管的字段线是并联使用的,因而大大简化了硬件线路。各个数码管虽然是分时轮流导通,但由于数码管具有余辉特性及人眼具有视觉暂留作用,所以适当选取循环扫描频率时,看上去所有数码管是同时点亮的,察觉不出有闪烁现象。不过对于这种方式数码

40、管不宜太多,一般在8个以内,否则每个数码管所分配到的实际导通时间太短,使亮度不足。3.5 键盘接口3.5.1 键盘工作原理单片机应用系统中,复位按键有专门的复位电路以外,其他的按键或者键盘都是以开关状态来设置控制功能或者输入数据的。1. 键输入原理当按下所设置的功能键或者数字键时,计算机应用系统应完成该键所设定的功能。键信息输入是与软件结构密切相关的过程。对于一组键或者键盘,需要通过接口电路与CPU相连。CPU可以采用查询方式或者中断方式了解有无键输入并检查是哪个键按下。2. 键输入接口与软件应解决的问题键输入接口与软件应可靠而快速的实现键信息输入与执行键功能任务。为此,应解决下列问题。(1)

41、键开关状态的可靠输入目前,无论是按键还是键盘大部分都是利用机械触点的合、断作用。由于弹性作用的影响,机械触点在闭合及断开的瞬间均有抖动过程,从而使电压信号也出现抖动,抖动的时间长短与开关的机械特性有关,一般为510ms。按键的稳定闭合时间由操作人员的按键动作所决定,一般为十分之几秒至几秒时间。为了保证CPU对键的一次闭合仅作一次键输入处理,必须去除抖动影响。通常去除抖动影响的方法有硬件和软件两种。 硬件上是采用在键输出端加R-S触发器或者单稳态电路构成去抖电路。软件上采取的措施是:在检测到有键按下时,执行一个10ms左右的延时程序,再确认该键电平是否仍保持闭合状态电平,若仍然保持闭合状态电平,

42、则确认为该键处于闭合状态,从而去除了抖动的影响。(2) 对按键进行编码以给定键值或者直接给出键号任何一组按键或者键盘都要通过I/O口线查询按键的开关状态。根据不同的键盘结构,采用不同的编码方法。但最后都要转化成为与累加器中数值相对应的键值,以实现按键功能程序的执行。因此,一个完善的键盘控制程序应能完成以下任务: 监测有无键按下 有键按下后,在无硬件去除抖动电路的情况下,应用软件延时的方法除去抖动影响。 有可靠的逻辑处理办法,如n键琐定,即只处理一个键,其间任何按下又松开的键不产生影响,不管一次按键持续多长时间,仅执行一次键功能程序。 输出特定的键号,以满足散转指令的要求。3.5.2 矩阵式键盘

43、1. 工作原理矩阵式键盘由行线、列线及位于行列线交点上的按键等部分组成。当应用系统需要的按键数量比较多时可以采用矩阵式键盘。图3-10为一44矩阵式键盘的示意图。该键盘需要四根行线和四根列线工八根I/O口线,由于采用矩阵结构,与独立式按键不同,一根I/O线已经不能确定哪个键被按下,需要通过连接到按键上的两根线的状态来确定按键的状态,同时键的两端均接到I/O口线上,不能一端接I/O口线一端接地,因此必须采用行线与列线信号状态分别处理综合考虑才能判断键闭合的位置。图3-10 矩阵式键盘的示意图2. 矩阵式键盘的工作方式在实际应用系统中,键盘只是系统的一部分,键的识别也只是CPU的工作内容的一部分。

44、系统在工作中采取何种方式对键盘进行识别,读取键状态就是键盘的工作方式。键盘的工作方式主要有扫描方式和中断方式两种。(1) 扫描方式。键盘的扫描方式又可以分为编程扫描和定时扫描。编程扫描是指在特定的程序位置段上安排键盘扫描程序读取键盘状态。定时扫描是指利用单片机内部或者扩展的定时器产生定时中断,在中断中进行键盘扫描的工作方式。(2)中断方式。中断方式是指,当无键按下时,CPU处理其他工作而不必进行键的扫描,当有键按下时,通过硬件电路向CPU申请键盘中断,在键盘中断服务程序中完成键盘处理。该方法可以提高CPU的工作效率。3. 键识别的方法键识别方法是指当键被按下时,如何确定是哪个键被按下。常用的识

45、别方法有扫描法和线反转法。(1) 扫描法。扫描法实际上是先使键盘的列(行)线全输出低电平,然后判断行(列)线状态,若行(列)线全为高电平,表示无键被按下;若行线不全为高电平表示有键被按下,然后依次使列线为低电平,再判断行线状态,当行线全为高电平时,表示被按下的键不在本列;当行线不全为高电平时,表示被按下的键在本列,把此时的行线状态与列线状态和在一起即为被按下的键的位置。(2)线反转法。扫描法对键的识别采用逐行(列)扫描的方法获得键的位置,当被按下的键在最后一行时需要扫描N次(N为行数),当N比较大时键盘的工作速度较慢,而线反转法则不论键盘有多少行和多少列只需要经过两步即可获得键的位置。线反转法

46、的第一步是将列线置低电平,行线置高电平,然后读行线状态;第二步是将行线置低电平,列线置高电平,然后读列线状态,若有键按下则两次所读状态的结果即为键所在的位置。4. 本系统键盘的工作方式为中断方式,键识别方法为线反转法。具体键盘形式如图3-11所示。PC1 PC7为键盘线接到8255芯片上的引脚名称,为8031的中断1引脚。按钮S1为“开始”按钮与8031的外部中断1引脚相连,0到9为10个阿拉伯数字,10号键为“确定”键。工作时,先按一下开始按钮S1,向单片机发出中断信号,时单片机调用键盘扫描程序,然后依次输入液体点滴速度的百位值、十位值和个位值,最后按下“确定”键,表示输入完成中断返回。图3-11 本系统的键盘形式3.6 液滴点滴速度检测电路的设计根据总体方案的设计所述,本系统使用红外发光二极管和接收管组合(红外光电传感器)测量点滴速度。电路图如图3-12所示。图3-12 液滴点滴速度检测电路LM358为运算放大器,饱和工作区的输出电压为0V和3.5 V。电阻R3和R4为红外发光二极管和接收管的限流电阻,阻值分别取1k和100k,R5为可调电阻,用来控制运算放大器LM358的正向电压。红外发光二极管发出的光亮强度一定,当没有液滴滴下时,接收管接收到的光强度大,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1