液体点滴速度监控装置(毕业论文).doc

上传人:laozhun 文档编号:3987365 上传时间:2023-03-30 格式:DOC 页数:25 大小:211KB
返回 下载 相关 举报
液体点滴速度监控装置(毕业论文).doc_第1页
第1页 / 共25页
液体点滴速度监控装置(毕业论文).doc_第2页
第2页 / 共25页
液体点滴速度监控装置(毕业论文).doc_第3页
第3页 / 共25页
液体点滴速度监控装置(毕业论文).doc_第4页
第4页 / 共25页
液体点滴速度监控装置(毕业论文).doc_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《液体点滴速度监控装置(毕业论文).doc》由会员分享,可在线阅读,更多相关《液体点滴速度监控装置(毕业论文).doc(25页珍藏版)》请在三一办公上搜索。

1、毕业设计(论文)专 业 无线电技术 班 次 姓 名 指导老师 成都电子机械高等专科学校二0一一 年液体点滴速度监控装置摘要:利用单片机设计并制作一个智能化的液体点滴速度监测与控制装置。该装置由水滴速度测试系统、水速控制系统、显示装置、单片机装置、键盘和报警系统等系统组成。应用水的压强随着高度差的变化而变化的原理,利用控制步进电动机的升降来控制点滴速度。点滴速度可用键盘来设定,设定范围为20150(滴/分),控制误差范围在10%1滴左右。从改变设定值起到点滴速度基本稳定整个过程的调整时间小于3分钟。同时在水到达警戒线以下时能发出报警信号。关键词 点滴速度;红外线传感;步进电动机;51单片机目 录

2、第1章 绪论11.1 引 言11.2 单片机应用系统概述11.2.1 单片机及其特点11.2.2 单片机的一般结构11.2.3 单片机的应用领域21.2.4 单片机的发展21.2.5单片机点滴的研究意义及发展方向2第2章 系统基本总体设计42.1 设计要求42.1.1 基本要求42.1.2 发挥部分42.1.3 说明42.2. 系统各个模块的选择与论证5第3章 系统的硬件设计73.1 系统硬件的基本组成部分73.1.1 系统基本方案73.2 主要单元电路设计73.2.1.点滴速度测量电路设计73.2.2 点滴速度控制电路设计83.2.3 键盘显示电路9第4章 系统的软件设计114.1 系统的主

3、程序设计114.2 检测点滴速度子程序134.3 点滴速度控制子程序144.4 键盘显示子程序154.5 程序设计19第1章 绪论1.1 引 言目前大小医院中所使用的静脉输液器都是悬挂在病人的上首才能输液,输液速度难以准确限制,这对特护病人和对输液速度有较严格的病人是不方便的。目前的输液监控报警器笨重、体积大、价格太高,增加医院和病人的费用。所以如果有液体点滴装置,必将深受医务人员和病人的欢迎。因为它有很多的优点,如:可以用按键速度准确控制速度,可以报警,设备结构简单,费用低等。所以对液体点滴速度监控的研究十分有意义。1.2 单片机应用系统概述1.2.1 单片机及其特点随着半导体大规模集成电路

4、的不断发展,将计算机的CPU、RAM、ROM、定时/计数器和多种I/O接口集成在一片芯片上,形成了芯片级的计算机,因此单片机的早期含义为单片微型计算机,准确反映单片机的本质叫法应为微处理器。一块单片机芯片就是一台计算机。由于单片机的这种特殊结构形式,在某些应用领域中,它承担了大中型计算机和通用的微型计算机无法完成的一些工作。使起具有很多显著的优点和特点,因此在各个领域中都得到的迅猛的发展。单片机的特点可归纳为以下几个方面:(1)性能价格比高;(2)控制功能强;(3)低电压、低功耗;(4)集成度及可靠性高。1.2.2 单片机的一般结构单片机通常由CPU、存储器(包括RAM和ROM)、I/O接口、

5、定时/计数器、中断控制功能等均集成在一块芯片上,片内各功能部件通过内部总线相互连接起来。如图1-1所示。图1-1 单片机典型结构框图1.2.3 单片机的应用领域由于单片机具有上述显著特点,其应用领域无所不至,无论是工业部门,民用部门乃至事业部门,到处都有它的摄影。现将单片机的应用大致归纳为以下几个方面:(1)在智能仪器仪表中的应用。在各类仪器仪表中引入单片机,使仪器仪表智能化,提高测试的自动化程度和精度,简化仪器仪表的硬件结构,提高其性能价格比;(2)在机电一体化中的应用。如数控机械、缝纫机械、医疗设备等领域;(3)在实时过程控制中的应用。如工业过程控制、过程监测、航空航天、尖端武器、机器人系

6、统等各种实时控制系统;(4)在人类生活中的应用。目前国内外各种家用电器已普遍采用单片机代替传统的控制电路,如洗衣机、电冰箱、空调机、微波炉、电饭煲、收音机、音响、电风扇及许多高级电子玩具都配上了单片机;(5)在其他方面的应用。单片机除以上各方面的应用之外,它还广泛应用于办公自动化领域、商业营销领域、汽车及通信系统、计算机外部设备、模糊控制等各领域中。1.2.4 单片机的发展单片机的发展经历了三个阶段: 第一代单片机始于1976年,以Intel公司的MCS-48系列为代表,其特点是采用专门的结构设计.这个系列的弹片机在片内集成了8位,并行I/O口,8位定时计数器,RAM,ROM等.无串行I/O口

7、,中断处理较简单,片内RAM,ROM容量较小,且寻址范围小于4KB.多用于家用电器,计算器和高级玩具. 第二代单片机以Intel公司的MCS-51系列为代表,其技术特点是完善了外部总线,并确立的单片机的控制功能.外部并行总线规范化为16位地址总线,用以寻址外部64KB的程序存储器和数据存储器空间;8位数据总线及相应的控制总线,形成完整的并行三总线结构。同时还提供了多机通讯功能的串行I/O口,具有多级中断处理,16位的定时/计数器,片内的RAM和ROM容量增大,有的片内还带有A/D转换接口。第三代单片机的显著技术特点是全速发展单片机的控制功能,是8位单片机的高性能阶段及16位单片机发展阶段.另外

8、技术学科的边缘性以及电气商的广泛介入是第三代单片机的重要标志.从单片机的结构功能上看,单片机的发展趋势将向大容量高性能,小容量低价格和外围电路内装化等几个方面发展.单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制,系统。单片机应用系统就是利用单片机位某目的而设计的单片机专用系统。单片机应用系统和一般的计算机应用系统一样,也是由硬件和软件所组成。硬件和软件只有紧密相结合,协调一致,才能组成高性能的单片机应用系统。单片机应用系统的研制过程包括总体设计、硬件设计、软件设计、在线仿真调试、程序固化等几个阶段。1.2.5单片机点滴的研究意义及发展方向 单片机的发展前景颇为广阔,在各个领域

9、中都用到了单片机控制,如;工业控制,交通控制,信息方面等,随着科学技术的进步,我们在各方面都采用了自动控制取代人工控制,医疗事业的发展是顺应科学技术而发展的,医疗的安全和医疗水平的提高都离不开科学技术,把高科技应用到医疗事业上是对医疗事业的一大促进与补充。点滴输液是医院常用的医疗手段。医院对病人进行输液治疗过程中,需要根据输液的药物和患者的病情选择,医院的护士站要管理整个科室所有的患者,患者人数多,治疗护理忙,管理困难。为了解决这个问题,使患者得到及时地救助而开发了该护士站监管系统。该系统可实时监控各个病床的点滴情况。如液体剩余量、滴速等。同时,可以实现患者药液接近滴完或液滴滴速过慢时的提醒。

10、以便护士在护士站上位机集中监视各个病人的输液状态。智能化是当前和今后医疗卫生技术发展的热点,重点,是21世纪经济技术的制高点。在工业控制的领域,由单片机的系统很多,如大规模测控系统,大型车辆控制系统,集散控制系统,机器人控制系统等。单个单片机在这些应用场合往往仅负责某一个点或某个子系统的控制,对整个系统中各点的监测或各个子系统的协调控制则由一个功能更强的中央处理器如PC机来完成。单片机的弱点是运算速度较慢。在要求响应速度快,实时性强,控制量多的应用场合(如机器人控制),单个单片机难以胜任,此时虽然也可以选用高速微处理器如DSP等,但综合考虑性能价格比和开发的难易程度,多单片机系统往往是一种合适

11、的选择。国外对点滴输液监控装置的研制较早,如日本、美国和德国等国家上世纪80年代末就进行了这方面的研制,现在市场上流行的大多是国外产品,类型多样,性能较好,如日本JMS株式会社的OT-601型输液泵(控制精度为10%)和SP-500型注射泵、还有TOP型输液器,美国IMED公司Gemini PC-2TX 型输液器可实现四路控制,还有德国贝朗(B|BRAUN)公司的Multifuse型、Perfusor Compact型(控制精度可达到2%)、Infusomat P型和Infusomat fmS型,以色列也有相应的产品,型号众多,性能较好。但是这些产品在国内只有一些大型医院引进,因其价格昂主要用

12、于危重病人。国内对输液装置的研制起步较晚,大都在90年代中期开始研究,市场上也有一些国产输液装置,如北京科力丰高科技发展有限责任公司的ZNB系列产品,深圳康福特公司也有输液装置产品。不过总体来说,种类较少,性能也需改进。我国的点滴输液自动化程度得到普及,还需要很长的路要走。第2章 系统基本总体设计2.1 设计要求设计并制作一个液体点滴速度监测与控制装置。如图2-1所示:h1h2电动机滑轮点滴移动支架储液瓶瓶受液瓶滴斗滴速夹2.1.1 基本要求(1)在漏斗处检测点滴速度,并制作一个数显装置,能动态显示点滴速度(滴/分)。(2)通过改变H2控制点滴速度,也可以通过控制输液软管夹头的松紧等其他方式来

13、控制点滴速度。点滴速度可用键盘设定并显示,设定范围为20150(滴/分),控制误差范围为设定值10%1滴。(3)调整时间3min(从改变设定值起到点滴速度基本稳定,能人工读出数据为止)。(4)当H1降到警戒值(23cm)时,能发出报警信号。2.1.2 发挥部分设计并制作一个有主站控制16个从站的有线监控系统。16个从站中,只有一个从站是按基本要求制作的一套点滴速度监控装置,其他从站为模拟从站(仅要求制作一个模拟从站)。(1)主站功能:具有定点和巡回检测两种方式。 图 2-1 液体点滴a 可以显示从站传过来的从站号和点滴速度。b 在巡回检测时,主站能任意设定要查询的从站数量、从站号和各个从站的点

14、滴速度。c 能收到从站发出来的报警信号后,能声光报警并能显示相应的从站号;可以手动方式解除报警状态。(2)从站功能:a 能够输出从站号、点滴速度和报警信号;从站号和点滴速度可以任意设定。b 接收主站设定的点滴速度信息并显示。c 对异常情况进行报警。(3)主站和从站家的通信方式不限,通信协议自定,但应该尽量减少信号传输线的数量。(4)其他。2.1.3 说明(1)控制电机类型不限,其安装位置与安装方式自定。(2)储液瓶用医用250ml注射页玻璃瓶(瓶中为无色透明液体)。(3)受液瓶用1.25L的饮料瓶。(4)点滴器采用针柄颜色为深蓝色的医用一次性输液器(滴管滴出20点水相当与1ml0.1ml).(

15、5)赛区测试时,仅提供医用移动式点滴支架,其高度约为1.8m,也可以自带支架;测试所需其他设备自备。(6)滴速夹在测试开始后不允许调节。(7)发挥部分第(2)项从站功能中,c中的异常情况自行确定。 2.2. 系统各个模块的选择与论证(1) 点滴速度测量方案一:采用电感式传感器测量点滴速度。在输液器的漏斗外围绕线圈作为敏感元件。当液滴滴下是电感量发生变化,通过LC振荡电路后输出变化的频率值,经过F/V变换电路及电压比较后输出TTL电平信号来检测点滴速度。此方案测量精度比较高,但是外围电路比较复杂。方案二:采用超声波传感器。在滴斗的外壁上固定对超声波发射和接收的传感器,用39。8KHZ的脉冲调制发

16、射,发射和接收头对称放置在滴斗两侧,让两者正对放置。当点滴落下经过传感器之间时,挡住接收头接收信号,将产生一个低电平的脉冲信号,在接收头接收解调,用施密特触发器检出该信号,送单片机计数一次。这样也是建立液滴与电脉冲信号的对应关系,实现点滴计数。但由于超声波装置的调试麻烦,一般的超声波传感器相对液体体积太大,即使液滴垂直落下,所能阻挡的超声波信号也有限,使得接收到的电信号极其微弱,受外界干扰太大;而且滴斗壁对超声波的反映较强,使信号穿透滴斗在另一边接收比较困难,要保证信号强度需要较高电压,这对病人以及医护人员的操作也会造成一定的危险。方案三:采用红外发射-接收管作为传感器来检测点滴。采用断续式工

17、作方式,在点滴落下时阻挡了接收管接收红外线,产生高电平的脉冲信号。由于红外对管的发射口直径较小,单光束发射,液体相对红外装置正交落下时,产生的信号很强,很容易检测处理。考虑到环境光干扰主要是直流分量,如果采用带有交流分量的调制信号,则可以大幅度减少外界干扰。同时,红外传感器有很多优点:尺寸小,质量轻,安装在滴斗上较简单,对辅助电路要求少,在近距离可以直接用直流发射,电路简单,性能稳定。这个方案有效简单,容易实现。故采用方案三,采用脉冲调制的红外对管发射接收来检测滴速。(2) 电机控制系统(点滴速度控制)模块1.利用电机来控制调节点滴的速度有两种方案:方案一:通过电机驱动控制输液软管夹头的松紧来

18、调节点滴的滴速,但在执行元件的选取上要花费脑筋,虽然这种方法优点是控制较精细,调整较迅速,稳定性也比较好,另外,在控制较慢的滴速时容易使塑料软管夹的过紧而变形,从而使液滴由慢速向快速调整过程耗时太长,这只能用于粗调。方案二:通过电机驱动控制储液瓶升高或降低(改变h2),来调节点滴的滴速,通过改变出口与储液瓶处的压强。这种方法简单易实现,故采用方案二。2.电机的选择方案一:采用直流电机。方案二:采用步进电机,在较为精确的定位性能方面十分优越。方案三:采用伺服电机,在高起动转矩、大转矩、低惯量的系统中经常使用。由于直流电机上电即转动,掉电后惯性较大,停机时还会转动一定角度后才可停下来。转矩小、无抱

19、死功能,如果要求准确停在一个位置,其闭环算法较复杂。随着生产过程机械化、电气化和自动化的不断发展,出现了各种类型的特种电动机。这些电动机的工作原理,一般与普通的异步电动机和直流电动机的基本原理近似,但是它们在性能、结构、生产工艺上各有其特殊性,多用于自动控制过程中。步进电机就是其中的一种。步进电机是工业过程控制及仪表中的主要控制元件之一。步进电机是一种将电脉冲转化为角位移的执行机构。通俗一点讲:当步进驱动器接收到一个脉冲信号,它就驱动步进电机按设定的方向转动一个固定的角度(及步进角)。您可以通过控制脉冲个数来控制角位移量,从而达到准确定位的目的;同时您可以通过控制脉冲频率来控制电机转动的速度和

20、加速度,从而达到调速的目的。3.电机控制算法的选择步进电机控制算法的选择直接影响到系统的性能和技术指标,在本系统的设计中起着关 。键的作用。较为可行的方案有: 方案一:采用模糊控制。其优点是不需要精确知道被控对象的数学模型,而且适用于具。 有较大滞后特性的被控对象。缺点是静态误差不容易控制。 方案二:采用 PI 控制。其优点是理论和技术都很成熟,在单片机上较易实现,可以达到较小的静态误差。 方案三:采用模糊控制与 PI 控制结合的算法。 根据题目对控制精度要求并不高,因此采用方案一。(3) 键盘显示单元根据题目条件,滴速的大小要由人工设定的。滴速的设定值与调整值都可以在键盘上显示。对于其显示有

21、以下的两种方案:方案一:采用液晶显示屏和通用矩阵键盘。液晶显示屏(LCD)具有功耗小、轻薄短小无辐射危险,平面直角显示以及影象稳定不闪烁,可视面积大,画面效果好,抗干扰能力强等特点。但由于只需显示三位温度值,信息量比较少,且由于液晶是以点阵的模式显示各种符号,需要利用控制芯片创建字符库,编程工作量大,控制器资源占用较多,其成本也偏高。方案二:采用三位LED七段数码管显示点滴数目。按键采用单列三按键。数码管具有:低能耗、低损耗、低压、寿命长、耐老化,对外界环境要求较低。同时数码管采用BCD编码显示数字,程序编译容易,资源占用较少。第3章 系统的硬件设计3.1 系统硬件的基本组成部分3.1.1 系

22、统基本方案根据题目要求系统可以分为以下几个模块:点滴速度测量模块,储液液面检测模块,键盘显示模块,电机系统控制(点滴速度控制)模块。系统的基本框图如图3-1所示。 图3-1 系统基本框图本题目中运用了检测技术、自动控制技术和电子技术。系统可以分为传感器检测部分和控制部分。传感器检测部分:系统利用红外对管发射接收即光点传感器将检测到的信号转化为控制器可以辨别的电信号。传感器检测电路包括2个单元电路:点滴速度测量电路、储液检测电路。智能控制部分:系统中控制器件根据有传感器变换输出的电信号进行逻辑判断,控制点滴的速度及数码管的显示,完成了点滴装置的自动检测、自动调速、数码显示及报警功能等各项任务。开

23、控制部分主要包括3个电路:单片机控制电路、电动机的驱动电路、数码管的动态显示电路。3.2 主要单元电路设计3.2.1.点滴速度测量电路设计采用红外对管发射接收测量点滴速度,其电路原理图如图3-2所示。图3-2 点滴速度测量电路由电路图可以看到,接收管与发射管正相对,无液滴滴下时,接收管收到信号,输出低电平;有液滴滴下时,下落的水滴对红外光有较强的漫反射、吸收及一定的发散作用,导致接收光强的较大改变,接收管不能收到较强的信号,产生一个较长的脉动,但是波形不是太好,需要经过一级施密特触发器整形,输出一个正向的脉冲信号送给单片机中断口,据此就可以正确的测出液滴的滴数,即点滴的速度(滴/分)。 3.2

24、.2 点滴速度控制电路设计系统将点滴速度采集信号和储液信号进行处理后,在相应的单片机的I/O控制口输出对应的控制信号来驱动电动机的正反转,从而进行精确的控制。图3-3所示的电路为电动机的速度采集电路。在电动机上安装一个连杆,连杆的另一头接S1开关,每当电动机旋转一周,四S1开关闭合一次,则通过单片机的P3.2口就可以送入一个计数信号。在单位时间内观察计数值即可的到电动机的转速。图3-3 电机的转速采集电路点滴的控制其实是靠单片机检测滴速,得到一个反馈量,输出一定信号驱动电动机,控制电动机的正转或反转,进而带动储液瓶的上升或下降来调节滴斗的高度即控制点滴的速度。电动机驱动电路就如图3-4示。图3

25、-4路采用的是H型的开关驱动电路。整个的电路可以分为两级:第一级接单片机的I/O口,用射级跟随电路加大电流的驱动能力;第三级才是驱动电路。当P3.0为高电平时,Q5导通,Q3,Q7导通,电动机两端的电压为+5V,电动机正转;当P3.1为高电平时,Q6导通,Q4,Q8导通,电动机两端的电压为-5V,电动机反转。图3-4 电动机驱动电路本电路采用的是H型的开关驱动电路。整个的电路可以分为两级:第一级接单片机的I/O口,用射级跟随电路加大电流的驱动能力;第三级才是驱动电路。当P3.0为高电平时,Q5导通,Q3,Q7导通,电动机两端的电压为+5V,电动机正转;当P3.1为高电平时,Q6导通,Q4,Q8

26、导通,电动机两端的电压为-5V,电动机反转。点滴控制靠单片机检测滴速,得到一个反馈量,输出一定信号控制电机上升或下降调节滴斗的高度。3.2.3 键盘显示电路由于本系统中采用动态显示方式驱动3个七段数码管,来显示点滴的速度。数码管采用共阴极,由于AT89C52单片机每个I/O的拉电流只有12mA。所以在位码和段码都加上了反向驱动器。键盘采用按键开关经上拉电阻分别接P1.0、P1.1、P1.2口上,起到确定、上调和下调作用。每按上调和下调键,设定速度值增1减1。单片机XTAL2、XTAL1接12MHZ晶振,提供系统时钟基值。另RESET接上电复位按键。原理图如图3-5图3-5 键盘显示电路第4章

27、系统的软件设计4.1 系统的主程序设计在系统刚开始启动时,首先是准备状态,包括一些清零程序等;然后就将设定点滴速度和从站号,那么此时需要按下一个设定键向单片机申请中断用来来说明将开始设定数据,如果没有键按下,则继续等待按键,设置完毕后将按确认键说明设置完毕;液面报警是最优先级的报警,因此在设置完成后,一方面看液面是否报警,另一方面看实际点滴速度是否符合设定点滴速度,如果反常,将进行点滴速度报警;然后将实际滴速和设定滴速,通过比较两滴速的大小来调节步进电机的转向,如果滴速小于给定值则电机正转,拉动点滴瓶上升,加快滴速;如果滴速大于给定值,则电机反转,带动点滴瓶下降,减慢滴速;如果滴速正好等于给定

28、滴速,则电机保持不动;若需修改点滴速度,则按下修改键重新设定。具体流程图如图4-1所示:Y NYY开 始显示READY有键按下设定键?N是否有报警 ?Y 确认键?显示当前滴速和给定的点滴速判断工作方式滴速小于给定值滴速大于给定值滴速等于给定值电机正转电机反转电机不动作NN判断有无修改键按下NY图4-1系统的主程序4.2 检测点滴速度子程序滴速的测量是通过红外线传感器所接收到的点滴信号,通过脉冲转换电路把脉冲送单片机的INT0口进行中断。用定时器T0来定时,用状态字寄存器标志位PSW.5来控制T0的关开,这里我们设置PSW.5=0时开T0,PSW.5=1时关TO。当有一滴点滴滴下时,设置PSW.

29、5=1,则开T0,此时TO开始定时,同时把PSW.5设置成0;当第二滴点滴滴下时,此时PSW.5=0,所以关TO,此时,可以测出定时器所定出的时间,即为两点滴之间的间隔时间,这里需要查看T0溢出次数,如果TO溢出次数在06H和2DH之间,则进行滴速处理程序,从而计算出点滴的速度;如果大于2DH则滴速作20滴/分钟,如果小于06H,则滴速做150滴/分钟,这些都是异常现象。其中2DH和06H可以这样计算,以2DH为例:我们知道,定时器的溢出次数是指当定时器从所设定的数值开始每一微秒就会减1,直到减到0为止,此时,我们说定时器响应一次中断,即溢出一次,并在每次响应中断时,将分配单片机里面的一个单元

30、将自动加1来计数,从而计出溢出的次数。这里我们设定T0初值为FFFFH,那么减到0000H时所用的时间为FFFFus,化成十进制是0.065535s,即溢出一次需要0.065535s,那么当点滴速度为20滴/分钟时,每滴将是3s的时间,则会溢出2DH次,同理,做150滴/分钟时也如此。具体流程图如4-2所示:中断程序Y判断PSW.5 = 1?N开T0关T0PSW.5 = 0返 回查看T0溢出次数小于06H大于2DH作20滴处理作150滴处理滴速处理程序置TH0=00,TL0=00H置PSW.5=1图4-2 速度控制子程序4.3 点滴速度控制子程序滴速的控制是通过控制步进电机的正反转来实现的,通

31、过改变步进电机的转图4-3所示滴速测量程序流程图向从而改变点滴瓶的高度,即可改变点滴速度步进电机的转向如果按给定的工作方式正序通电换相,步进电机就正转;如果按反序通电换相,步进电机就反转。按照给定的通电换相顺序,通过单片机的I/O口向驱动电路发出控制脉冲。这里的步进电机工作在四相八拍方式,P2.0P2.3这四条I/O线,向四相步进电动机传送控制信号。按A AB B BC C CD D DA次序通电为正转,按D DC C CB B BAAAD次序通电为反转,P2口输出的信号中,0代表使绕组通电,1代表使绕组断电,则可用8个控制字来对应这8个通电状态。如下表4-3所示:表4-3四相八拍工作方式的控

32、制字通电状态 P2.3 P2.2 P2.1 P2.0 控制字 A 1 1 1 0 FEHAB 1 1 0 0 FCHB 1 1 0 1 FDHBC 1 0 0 1 F9HC 1 0 1 1 FBHCD 0 0 1 1 F3HD 0 1 1 1 F7HDA 0 1 1 0 F6H在程序中只要依次将这8个控制字送到P2口,步进电机就会转动一个齿距角。每送一个控制字,就完成一拍,步进电机就转过一个齿距角。程序如附录C的程序清单。4.4 键盘显示子程序由于有现成的键盘显示接口芯片,所以这里采用8279键盘显示电路。(1)确定键值输入方式。键盘的扫描由8279中硬件电路自动完成,不需要用软件实现扫描。键

33、值输入可采用查询方式,亦可采用中断方式。采用查询方式时,在每次读键值前,先读入8279状态字,查看状态字中D3D0位(这4位反映FIFO RAM中是否有数)是否全为0,若有一位非0,说明FIFO RAM中输入有数据,可读出;否则,继续查询。采用中断方式时,8279的中断请求线IRQ需经反相器接单片机的INT0或INT1,FIFO RAM中一输有数据,8279便向CPU申请中断。CPU响应中断(若中断开放)后,在中断服务程序中读取键值。这里采用查询方式。 (2)确定键值。如果规定扫描线(SL0SL2)位列线,回复线(RL0RL7)为行线,则在数据输入格式中,D5D4D3表示SL0SL2的8个译码

34、状态,D2D1D0表示RL0RL7的8个状态。因此8*8键盘的键值如图4.4所示。由于64个键盘的键值均依次排列,所以键值也可作为键号使用。这里我们只用左下角的4*4键盘。基本参数如表4-4:表4-4 8*8键盘的键值与键号07H OFH17H1FH27H2FH37H3FH06H0EH16H1EH26H2EH36H3EH05H0DH15H1DH25H2DH35H3DH04HOCH14H1CH24H2CH34H3CH03H0BH13H1BH23H2BH33H3BH02H0AH12H1AH22H2AH32H3AH01H09H11H19H21H29H31H39H00H08H10H18H20H28H3

35、0H38H(3)8279中有一个定时与控制电路,它自动完成数据的动态显示。要显示某个字符(数据)时,只要将其字形码送入显示RAM中,在显示器上便可显示出相应的字符。(4)8279的控制端口和数据端口口地址由CS和A0确定,A0=0,选择数据端口。A0=1,选择控制端口。所有命令字写入控制端口,从控制端口读入的为状态字。键盘显示是一个完整的系统,首先对8279进行清零,然后按下设定键用来设定从站号和滴速,同时送LED显示,等设置完成则按下确定键,从而设置结束。具体流程图4-5所示:开 始清除命令DCH82798279清除结束否?按下设定键键入数值按下确认键否?完 成图4-5 键盘控制程序流程图串

36、口中断服务程序流程图如图4-6所示:清RI读SBUF 34H串口中断(0023H)保存现场(34H)右移一位34H计数值加1 36H、37H(考虑低位向高位进位)置接收标志 位(00H)恢复现场、中断返回RI = 1 ?YN(34H)= 3AH ?YN位(00H)= 1 ?发送子程序YN计数值=2 ?(34H) (计数值+10H)(考虑低位向高位进位)位(01H)= 1 ?NYNY位(02H)= 1 ?地址比较发送子程序清TI发送计数值加1(38H,39H)发送计数值 发送字节数 ?(发送计数值+0400H) SBUF恢复现场、中断返回清相关标志位清P3.5,使发送无效NY位(02H)= 1

37、?位(02H)= 1 ?(34H)= 0DH ?(34H)= 0AH ?NY置收到0DH标志(02H)= 1恢复现场、中断返回YN清收到0DH标志(02H)= 0数据校验运算YN接收完成清相关标志位LRC值比较,相等?YN向主机发“已接收”信息要求主机重发P3.3发一个脉冲恢复现场、中断返回 图4-6 串口中断流程图4.5 程序设计RUNEQU00H;电机转动时间T1Z8279EQU0EFF1H ;8279 状态/命令口地址D8279EQU0EFF0H;8279 数据口地址LEDMODEQU00H;左边输入 八位字符显示 ;外部译码键扫描方式,双键互锁LEDFEQEQU34H;扫描速率LEDC

38、LSEQU0DFH;清除显示 RAMLEDWR0EQU90H;设定的将要写入的显示RAM地址,地址自动加1READKBEQU40H;读 FIFO RAM 地址的命令字LEDWR1EQU94H;设定的将要写入的显示RAM地址,地址自动加1LEDWR2 EQU 95HKEY_ADDRESS1EQU30H;存储键盘输入值的首地址kEY_ADDERSS0 EQU 34HADDRESS EQU 35H ;三十五的地址单元ADDRESS1 EQU 3CH ;标志位0T1_ZHI EQU 5AH ;存放T1的计数值(非常重要)C_DAEQU39HG_DAEQU3AHWCZEQU03H ;设定的误差值,用来控

39、制电机的正反转FLAG0 BIT 00HFLAG3 BIT 01HFLAG4 BIT 02H ;定时器T1标志FLAG1 EQU 41HFLAG2 EQU 42HSAMP_SBUF0EQU50HSAMP_SBUF1EQU51HSAMP_SBUF2EQU52HORG0000HLJMPMAINORG0003HLJMPINT0ORG000BHLJMPTIMEORG001BHLJMPDELAY_10SORG0050H MAIN : MOV R0,#0FH MAIN1: MOV R1,#0FHWANGSK: NOP NOP DJNZ R1,WANGSK DJNZ R0,MAIN1 MOVSP,#60H

40、MOV SAMP_SBUF0,#00H MOV SAMP_SBUF1,#00H MOV SAMP_SBUF2,#00H MOVT1_ZHI,#8CH SETB FLAG4 MOV FLAG1,#0FFH ;键盘标志位 MOV R0,#KEY_ADDRESS1 MOV R7,#08HCLEAR_0:MOV R0,#00H INC R0 DJNZ R7,CLEAR_0 LCALLINIT8279;初始化8279LCALLSHOW;显示READY LCALL KEY_DMOVTMOD,#11H;定时器0、1都在工作方式1MOVTL1,#RUN;定时器1给初值MOVTH1,#RUN MOV TL0,#

41、00H MOV TH0,#00H SETBEA;中断使能 SETB ET0 SETB ET1 SETB TR1 SETB P1.1; SETB IT0 SETB PSW.5 SETB EX0READY: MOVDPTR,#Z8279;查询键盘状态 MOVXA,DPTRANLA,#0FH;屏蔽状态字的高4位,查询FIFO是否为空JZCLEAR_LONG5 MOV DPTR,#D8279 MOVX A,DPTR LCALL KEY_CHANGE CJNE A,#0DH,CLEAR_LONG5 LJMP ZHOU1CLEAR_LONG5:LCALL SHOW1 LJMP READYZHOU1: MO

42、V R7,#0FHLOOP_1: DJNZ R7, LOOP_1T8279: LCALLINIT8279 MOV A,C_DAGARGON: LCALL ZYHHLCALLSHOW1;显示采样值 LCALLKEY;键盘显示 CJNE A,#0FH,LXQ3 LJMP LXQ2LXQ3: CJNEA,#0EH,LXQ2 LJMP T8279LXQ2: LCALL SHU_J LCALL S_J ;数据转换 LCALL PANDUAN ;标志位0判断 MOV A,ADDRESS1 CJNE A,#0FFH,T8279CLEAR_LONG: CLR FLAG3 ;CLEAR_LONG1:JB P1.5 ,NEXT0 CLR EA SETB P1.0 CLR P1.6 LJMP

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

当前位置:首页 > 办公文档 > 其他范文


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号