已阅读5页,还剩50页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
河南科技大学毕业设计(论文) 河南科技大学毕 业 设 计 论 文题 目 自动温控烤电治疗仪软件系统设计院 系 医学技术与工程学院班 级 生医081班学生姓名 方力勇指导教师 尚振东 胡志刚日 期 2012年6月2日自动温控烤电治疗仪软件系统设计摘 要自动控制领域中,温度检测与控制占有很重要的地位,而对于人体温度的监控更是一个不容忽视的问题。该设计便是基于此目的设计的自动温控烤电仪。该设计首先介绍了自动温控烤电仪的硬件电路。用单片机作为主要的控制器件,通过给单片机编程来控制温度传感器、荧光显示屏、键盘的协调工作。设计中选用的单片机是Melexis公司的MLX90614非接触式红外温度传感器,选用的显示屏是VFM162荧光显示屏,另外四个独立按键用来对烤电仪的各项参数进行设置。在软件设计中,主要用C51语言进行编写,用Keil软件进行编译。软件设计主要有主程序,读取温度子程序,显示温度子程序,控制温度子程序组成。首先用单片机控制温度传感器读取温度;然后判断读取的温度是否超过所设定的温度范围,如果超过所设定的温度范围,则单片机会控制烤电仪的温度,是温度保持在正常的范围内;另外,该设计还具有定时功能,到达定时时间后,自动停止烤电,实现温度的自动控制。该自动温控烤电仪设计合理,使用方便、安全,人们可以很快的掌握其使用方法。本次设计对烤电仪在医学治疗上的应用具有非常深远的意义。它极大的提高了烤电仪的安全系数和治疗效果,较传统的烤电仪有很大的优势,促进了其在医学领域的应用和发展。关键词: 单片机,红外温度传感器,烤电仪,自动温控、软件设计SOFTWARE SYSTEM DESIGN OF AUTOMATIC TEMPERATURE CONTROL DIATHERMY THERAPEUTIC INSTRUMENTABSTRACT The field of automatic control, temperature sensing and control plays an important role, and for the monitoring of body temperature is more an issue cant be ignored. The design is based on the automatic temperature control for this purpose therapeutic instrument.The design first introduced the hardware circuit of the automatic temperature control therapeutic instrument. Use the Single chip microcontroller as the main control device, through MCU programming to control the temperature sensor, the fluorescent display, and the keyboard. The selection of the design is Melexis MLX90614 non-contact infrared temperature sensors, optional display is VFM162 fluorescent display and the other four independent keys used to set the parameters.In software design, the program is written with the C51 language and compiled using the Keil software. The software design includes the main program, the program of reading the temperature, the program of controlling of temperature. First the Single chip microcontroller control temperature sensor reading the temperature; then judge whether the temperature exceeds the set temperature range, if more than the set temperature range, the will control the temperature of the therapeutic instrument, and the temperature will maintain at a normal range; In addition, the design also has a timer function, arrival at the regular time, automatically stop the roast power, automatic temperature control.The automatic temperature control Diathermy therapeutic instrument easy to use, it is security; people can quickly master hao to use it. The design of the Diathermy therapeutic instrument on the medical treatment has very far-reaching significance. It greatly improves the factor of safety and therapeutic effect of Diathermy therapeutic instrument. Compared with the traditional Diathermy therapeutic instrument, it has a great advantage to promote the use and development in the medical field.KEY WORDS: Single chip microcomputer, Infrared temperature sensor, Diathermy therapeutic instrument, Software design目 录前 言1第一章 绪论21.1 设计研究背景及意义21.2 设计总体方案3第二章 自动温控烤电仪的硬件设计42.1 单片机42.2 温度传感器42.3 荧光显示屏52.4 键盘52.4.1 键盘的组织52.4.2 键盘的工作方式62.5 双向可控硅62.6 硬件设计原理框图7第三章 软件总体设计83.1 软件总体设计方案83.2 Keil C51软件的使用方法10第四章 显示程序设计124.1 VFM162荧光显示屏参数介绍124.2 基本操作时序124.3 状态字说明134.4 RAM地址映射图134.5 指令说明134.5.1 显示模式设置134.5.2 显示开/关及光标设置144.5.3 数据指针设置144.5.4 其他设置144.6初始化过程(复位过程)144.7 读写时序及参数154.7.1 读操作时序154.7.2 写操作时序154.7.3 时序参数16第五章 温度传感器程序设计185.1 EEPROM185.2 RAM185.3 SMBus总线协议195.4 读取和写入数据195.4.1 SMBus读取数据格式195.4.2 SMBus写入数据格式205.4.3 SMBus通信实例205.5 时序205.5 命令215.6 主要程序225.6.1 开始函数和停止函数225.6.1 读取温度程序22第六章 控制程序设计246.1 按键程序设计246.1.1 按键的工作方式246.1.2 键抖动及消除246.1.3 按键程序流程框图(图6-2)256.1.4 按键程序清单266.2 调节温度程序设计27第七章 使用说明29结 论30参考文献31致 谢33附 录34一 硬件原理图34二 硬件PCB图34三 自动温控烤电仪软件程序清单35V前 言自动控制领域中,温度检测与控制占有很重要的地位,而基于单片机的温度检测在工农业生产、科研和人们的生活中得到了广泛的应用,为人们工作、科研和生活提供了极大的方便。本文就是基于此目的介绍基于单片机和数字温度传感器的自动温控烤电治疗仪的设计。 烤电仪是通过加热人体组织来实现临床疗效的仪器,主要有微波治疗仪、红外线治疗仪、短波治疗仪和超短波治疗仪等常见设备。这些设备主要机理是利用电产生的热效应,使人体组织温度上升来扩张血管,改善血液循环,促进炎症吸收和改善细胞的营养关系和新陈代谢。烤电仪主要应用在骨科伤势愈合,关节炎,腰腿痛,软组织损伤,风湿性关节炎,肩周炎,小儿腹泻等方面。目前我国一些高级医院所购置的理疗类烤电仪器通过对皮肤照射只能实现简单的加热理疗功能,极度缺乏自动控制能力。在大型医院使用时,护理人员必须时时关注烤电理疗仪器的温度变化情况。如有需要并及时将烤电仪进行人工调整,非智能化促使各医院工作人员效率大大降低。除此之外,患者的安全没有保障,存在潜在的安全隐患。而市场上大多数的烤电仪只有单纯的烤电功能(有一些也有定时关机功能),但是仅有少数的烤电仪带有自动温控的功能。该设计是一个具有自动温控保护功能的烤电仪,在做理疗的时候,产品能够通过它自带的红外温度传感器实时的监测理疗身体部位的温度变化,并将温度值显示在液晶显示屏上。当身体部位的温度超出所设定的温度范围时,该产品能够自动的调节温度到正常的范围内,避免了由于温度过高对人体组织造成伤害的问题,并且具有定时功能,实现了真正意义上的自动温控保护功能。该设计对行动不方便或需要照顾的病人有非常重要的作用。第一章 绪论1.1 设计研究背景及意义烤电仪是通过加热人体组织来实现临床疗效的仪器,该设备主要机理是利用电产生的热效应,使人体组织温度上升来扩张血管,改善血液循环,促进炎症吸收和改善细胞的营养关系和新陈代谢。相比较而言,红外线的穿透力最弱,治疗时需要裸露人体组织。其中微波烤电仪的热效应最为显著,因此疗效也得到各医疗机构的公认。我国虽然是世界上应用物理疗法历史悠久的国家,但理疗行业在解放前却很落后。如今二十一世纪已经到来,二十年的改革开放使中国大地发生巨大的变化,曾经的简单市场已经不再能支配的当今的社会需求。各行各业的人们在不同的领域中拼搏发展,或沉或浮,实现各自的理想。在走过原始积累的辛酸苦辣后,他们已经为社会创造出了很大的财富。但是需求的急剧增加,迫使科研水平必须提高,以满足当今社会的需求。目前我国一些高级医院所购置的理疗类仪器通过对皮肤照射只能实现简单的加热功能,缺乏自动控制能力。在大型医院使用时,护理人员必须时时关注理疗仪器的温度如有需要并经行人工调整,这样促使各医院工作人员效率大大降低。除此之外,还不能严格保证患者的安全。本次设计的题目的改进方法是在进行烤电的时候,把温度传感器对准正在烤电的部位,实时的检测烤电部位皮肤的温度。对烤电仪功率控制的主要原理是:温度传感器把实时检测到的温度值以二进制的形式通过SMBUS通信协议传送给单片机,单片机通过内部计算转化为当前温度,然后与设定的温度值进行比较,发出控制信号给烤电仪的功率控制电路。通过对烤电仪功率的控制,从而实现对烤电仪的温度控制,从而能够很好的避免患者烤电部位皮肤的灼伤,同时也能提高治疗的效果。该烤电仪具有治疗的便捷性和它独特的治疗优势,在某些人群的保健中起着很关键、不可替代的作用。它操作简单,使用方便,适用范围广,精度高,拥有很重要的市场应用价值。本次设计对红外线灯治疗仪在医学治疗上的应用可以说具有非常深远的意义。它可以提高治疗仪的安全系数及其治疗效果,有利于其在医学领域的应用和发展。1.2 设计总体方案该设计是一款具有自动温度控制功能的烤电仪,主要有测温模块、显示模块、控制模块、键盘模块组成、定时模块。总体设计框图如图1-1所示:单 片 机 主 控 制 器测温模块显示模块键盘模块控制模块烤电仪烤电强度及烤电时间调节图1-1 设计总体方案各种模块之间主要靠单片机来协调控制。首先,单片机会控制温度传感器读取烤电处皮肤的温度;然后,单片机会将读取到的温度与设定的温度对比,如果检测到读取的温度值超出了设定温度的范围,单片机便会启动控制模块,控制烤电仪温度的高低;同时单片机会实时监控键盘是否按下,如果检测到有按键按下,单片机会执行相应的按键程序,从而完成对烤电仪的一系列设置;另外,该设计还具有定时功能,当烤电时间达到设定的时间时,烤电仪会自动停止烤电。所以,该设计是一款真正意义上的自动温控烤电仪。第二章 自动温控烤电仪的硬件设计2.1 单片机该设计主要是用单片机来控制温度传感器及其他外围原件,单片机作为实验的核心控制原件,对整个实验起到至关重要的作用。该设计所选用的单片机是宏晶公司的STC89C51RC系列51单片机。该单片机能承受的最高时钟频率为80MHZ;FLASH程序存储器空间是4K,擦写次数为10万次以上;RAM数据存储器空间是512字节;具有8个中断源,四个优先级,3个定时器;没有A/D转换功能。该设计所用到的单片机接口如下:P0口接荧光显示屏的数据端,主要用于向显示屏传输数据;P2.1,P2.2,P2.3分别接荧光显示屏的RS(数据/命令选择端),RW(读/写选择端),E(使能信号)接口,用来控制荧光显示屏的读写数据或命令。P1.4,P1.5,P1.6,P1.7接键盘,用来设置报警温度和定时时间。P1.0,P1.1接红外温度传感器的SDA(数据信号)和SCL(时钟信号),用来控制温度传感器。P3.2是外部中断入口。P3.5接PWM,用来控制烤电仪的亮度。2.2 温度传感器该设计中所选用的温度传感器是MLX90614非接触式红外温度传感器(图2-1)。MLX90614是一款由Melexis研发并生产的非接触式红外线温度感应测温器,它包括:红外热电堆感应器MLX81101和专为适用于这款感应器输出而设计的信号处理芯片MLX90302。这款产品应用了工业标准的TO-39 封装。MLX90302在信号调节芯片中使用了先进的低噪音放大器,一枚17-bitADC以及功能强大的DSP元件,从而实现高精确度温度测量1。MLX90614有以下优点: (1)提供不同视场以应用不同的光学设置。 (2)小尺寸传感器,因此有限空间里可集成多个传感器。 (3)稳定的器件装置,在不同条件下提供精确的测量结果。 (4)提供 SMBus界面使得使用简单微控制器传感器网络成为可能。 图2-1 MLX红外温度传感器 (5)通过改变器件的 EEPROM设置实现客户定制化。 2.3 荧光显示屏该设计用荧光显示屏作为显示装置。本设计采用VFM162荧光显示屏显示,荧光显示屏是一个能够显示16*2个字符的显示屏,芯片的工作电压是4.5-5.5V,工作电流是2.0mA,模块的最佳工作电压是5V。通过给显示屏输入不通的命令可以控制显示屏不同的显示模式2。2.4 键盘该设计用了四个独立按键,前两个按键用于控制报警温度,后两个按键用于控制烤电仪定时时间的长短。2.4.1 键盘的组织智能仪器普遍使用由多个按键在一起而构成的按键式键盘,键盘中的每一个按键都表示一个或多个特定的意义(功能或数字)。键盘按其工作原理可分为编码式键盘和非编码式键盘。编码式键盘是由按键键盘和专用键盘编码器两部分组成的。当键盘中某一个按键被按下时,键盘编码器会自动产生相对应的按键代码,并输出一选通脉冲信号与CPU进行信息联络。编码式键盘使用很方便,目前已有数种大规模集成电路键盘编码器出售,例MM5740AA芯片就是一种专用于64键电传打字机的键盘编码器,其输出为ASCII码。非编码键盘不含编码器,当某键被按下时,键盘只能送出一个简单的闭合信号,对应的按键代码的确定必须借助于软件完成。显然,非编码键盘的软件是比较复杂的,而且要占用较多的CPU时间,这是非编码键盘的不足之处。但非编码键盘可以任意组合、成本低、使用灵活,因而智能仪器大多采用非编码式键盘3。2.4.2 键盘的工作方式智能仪器中CPU对键盘进行扫描时,要兼顾两方面的问题:一是要及时,以保证对用户的每一次按键都能作出响应;二是扫描不能占用过多的时间,CPU还有大量的其他任务要去处理。因此,要根据智能仪器中的CPU忙、闲情况,选择适当的键盘工作方式。键盘有三种的工作方式、中断工作方式和定时扫描的工作方式。编程扫描工作方式:该方式也简称查询方式,它是利用CPU在完成其他工作的空余,调用键盘扫描程序,以响应键输入的要求。当CPU在运行其他程序时,它就不会再响应键输入要求,因此,采用该方式编程时,应考虑程序是否能对用户的每次按键都会及时的响应。中断工作方式:在这种方式下,当键盘中有按键按下时,硬件会产生中断申请信号,CPU响应中断申请后对键盘进行扫描,并在有按键按下时转入相应的功能键处理程序。该方式的优点是:由于在无键按下时不进行行扫描,因而能提高CPU的工作效率,同时也能确保对用户的每次按键操作做出迅速的响应。定时扫描工作方式:该方式利用一个专门的定时器来产生定时中断申请信号,CPU响应中断申请后便对键盘进行扫描,并在有键按下时转入相应的键功能处理程序。由于每次按键按下的持续时间一般不小于100ms,所以为了不漏检,定时中断的周期一般应小于100ms。定时扫描方式本质也属于中断方式。2.5 双向可控硅双向可控硅的作用是用来对烤电仪灯的亮度进行调节。双向可控硅的特点是导通后即使触发信号去掉,它仍将保持导通;单负载电流为零(交流电压过零点)时,它会自动关断。所以需要在交流电的每个半波期间都要送出触发信号,触发信号的触发时间就决定了灯泡的亮度4。调光的实现方式就是在过零点后一段时间才触发双向可控硅开关导通,这段时间越长,可控硅导通的时间越短,灯的亮度就越低;反之,灯就越亮。这就要求提取出交流电压的过零点,并以此为基础,确定触发信号的送出时间,达到调光的目的。2.6 硬件设计原理框图自动温控烤电治疗仪硬件电路设计总体设计方框图如下图(图2-2)所示。控制器采用单片机AT89C51,温度测量部分采用非接触式温度传感器MLX90614,用荧光显示器完成显示功能。烤电仪的硬件原理图见附图1;烤电仪的硬件PCB图见附图2.图2-2 硬件设计原理框图第三章 软件总体设计3.1 软件总体设计方案该设计是一个具有自动温控保护功能的烤电仪,在做理疗的时候,产品能够通过它自带的红外温度传感器实时的监测理疗身体部位的温度变化,并将温度值显示在液晶显示屏上。当身体部位的温度超出(高于或低于)所设定的温度范围时,将会触发报警装置,同时该产品能够自动的调节温度到正常的范围内,避免了由于温度过低而起不到很好的理疗效果、或者温度过高对人体组织造成伤害的问题,并且具有定时功能,实现了真正意义上的自动温控保护功能。该设计对行动不方便或需要照顾的病人有非常重要的作用。软件总体设计的原理框图如下图(图3-1)所示:设计所用到的温度传感器是非接触式的红外温度传感器,所用的显示器是荧光显示器。设计中首先初始化显示,让显示屏上显示欢迎界面;然后判断温度传感器是否存在,可以通过给温度传感器发送命令,通过判断传感器是否有应答来判断传感器是否接好。如果传感器没有应答,则判断传感器不存在或传感器接触不良、或者传感器已坏,此时会在显示屏上显示传感器不存在的提示。如果传感器可以正常工作,则会在显示器上显示传感器检测到的温度。同时显示器还显示设置的报警温度,当测量得的温度超过此温度时,单片机就会调节烤电仪的亮度,使温度保持在正常的温度范围内。调节烤电仪的亮度主要是通过双向可控硅来控制的。双向可控硅的特点是导通后即使触发信号去掉,它仍将保持导通;单负载电流为零(交流电压过零点)时,它会自动关断。所以需要在交流电的每个半波期间都要送出触发信号,触发信号的触发时间就决定了灯泡的亮度。图3-1 软件设计总体原理框图调光的实现方式就是在过零点后一段时间才触发双向可控硅开关导通,这段时间越长,可控硅导通的时间越短,灯的亮度就越低;反之,灯就越亮。这就要求提取出交流电压的过零点,并以此为基础,确定触发信号的送出时间,达到调光的目的。要控制的对象是50HZ的正弦交流信号,通过同步信号检测电路,将同步信号送至单片机的中断口。单片机接收到同步信号后就进入中断子程序,在中断子程序中启动一个延时程序,延时结束后,单片机立即产生触发信号。触发信号可使可控硅导通,电流经过可控硅流过烤电仪,是烤电仪工作。延时越长,亮的时间就越短,烤电仪的亮度就越暗5。该设计中通过四个独立按键来设置各种参数,其中两个按键用来设置报警温度,两个按键用来设置定时时间的长短。设置好定时时间后,单片机会在后台倒计时。当定时时间为零时,烤电仪就会停止烤电。3.2 Keil C51软件的使用方法Keil C51软件是目前功能最强大的单片机C语言集成开发环境。下面我们通过图解的方式来说明keil C51软件的使用方法。第一步:双击keil uVision4的桌面快捷方式,启动keil集成开发软件。第二步:新建一个工程,点击Project,点击New uVision4 Project。为工程起一个名称,点击保存。第三步:选择单片机,本设计用的是51单片机,所以选择Atmel 公司的AT89C51单片机,点击OK。 第四步:加入源程序到工程中。在选择好CPU型号后,点击“确定”按钮返回主界面,此时可见到工程管理窗中出现“Target1”,点击“Target1”前面的“+”号展开下一层的“Source Group 1”文件夹,此时的新工程是空的,“Source Group 1”文件夹中什么文件都没有,必须把源程序加入到工程当中。右击工程管理窗口中的“Source Group 1”,出现下拉菜单,点击“add files to Source Group 1”命令,将出现添加文件对话框6。在添加文件对话框中,找到要添加到工程中的源程序文件。双击需要添加的文件,即可将文件添加到工程当中,另外也可单击所需的文件,再单机“Add”按钮,也可以把文件加入工程中。点击Add按钮后,把文件添加到工程中,此时添加问价对话框并不会自动关闭,而是等待继续添加其他文件,点击“关闭”按钮,即可返回主界面。当给工程添加源程序文件成功后,工程管理器中的“Source Group 1” 文件夹的前面会出现一个“+”号,单击“+”号,展开文件夹,可以看到程序已经出现在里面,双击即可打开该文件进行编辑修改源程序7。第五步:工程目标“Target 1”属性设置。在工程项目管理窗中的“Target 1”文件夹上右击,出现下拉菜单,点击“目标”Target 1属性命令,就进入目标属性设置界面。工程目标“Target 1”属性设置对话框有8个页面,设置的项目繁多复杂,大部分使用默认设置即可,我们主要设置其中的“目标”、“输出”、“调试”三个页面,下面对这三个页面的设置进行详细介绍。一:工程目标属性设置。该页面单片机的晶振频率、存储器等把晶振的频率改为11.0592,频率设置成和实际晶振频率相同即可。二:工程输出设置。注意:如果要进行单片机写片实验,则一定要把“生成HEX文件”选项选中,程序编译后才能生成我们写单片机所需要的HEX格式的目标文件。三:工程调试设置。该页分为左右两半,左半边是软件仿真设置,而右半边是硬件仿真设置,当你使用软件仿真时,选中左边的“S使用仿真其”;如果你使用硬件仿真器,那么就按下图所示设置硬件仿真,同时把仿真器连接到电脑串口上。四:源程序的编译与目标文件的获得。我们已经完成了从源程序输入、工程建立、工程详细设置的工作,接下来我们将完成最后的步骤,此时我们可以在文本编辑窗口中继续输入或修改我们的源程序,使程序实现我们的目标,在检查程序无误后保存工程。接着点击“构造目标”快捷按钮,进行源程序的编译连接,源程序编译相关的信息会出现在输出窗口中的“构造”页中。下图3-8显示编译结果为0错误,0警告,同时长生了目标文件。如果源程序中有错误,则不能通过编译,错误会在输出窗口中报告出来,双击该错误,就可以定位到源程序的出错行,我们可以对源程序进行反复修改,再编译,知道没有错误为止。注意:每次修改源程序后一定要保存8。编译通过后,我们打开工程文件夹,可以看到文件夹中有了“*.hex”文件,这就是我们需要的最终目标文件,用编程器把该程序写入单片机,单片机就可以实现我们程序的功能了。第四章 显示程序设计本设计采用VFM162荧光显示屏显示,VFM162是一个能够显示16*2个字符的荧光显示屏,芯片的工作电压是4.5-5.5V,工作电流是2.0mA,模块的最佳工作电压是5V。4.1 VFM162荧光显示屏参数介绍VFM162的接口信号如下图所示(图4-1):图4-1 VFM162荧光显示屏接口信号说明4.2 基本操作时序VFM162的基本操作时序如下9:一:读状态 输入:RS=L,RW=H,E=H输出:D0-D7=状态字二:写指令 输入:RS=L,RW=L,D0-D7=指令码,E=高脉冲输出:无三:读数据 输入:RS=H,RW=H,E=H 输出:D0-D7=数据四:写数据 输入:RS=H,RW=L,D0-D7=数据,E=高脉冲输出:无4.3 状态字说明VFM162的状态字说明如下:STA7STA6STA5STA4STA3STA2STA1STA0D7D6D5D4D3D2D1D0STA0-6当前数据地址指针的数值STA7读写操作使能1:禁止 0:允许注意:对控制器每次进行读写操作之前,都必须进行读写检测,确保STA7=04.4 RAM地址映射图控制器内部带有80*8位(80字节)的RAM缓冲区,对应的关系如图4-2所示:图4-2 RAM地址映射图4.5 指令说明4.5.1 显示模式设置指令码功能00111000设置16*2显示,5*7点阵,8位数据接口4.5.2 显示开/关及光标设置指令码功能00001DCBD=1 开显示;D=0 关显示C=1 显示光标;C=0 不显示光标B=1 光标闪烁;B=0 光标不闪烁000001NSN=1 当读或写一个字符后地址指针加一,且光标加一N=0 当读或写一个字符后地址指针减一,且光标减一S=1 当写一个字符,整屏显示左移(N=0)或右移(N=0),以得到光标不移动而屏幕移动的效果。S=0 当写一个字符,整屏显示不移动4.5.3 数据指针设置指令码功能80H+地址码(0-27H),(40H-67H)设置数据地址指针4.5.4 其他设置指令码功能01H显示清屏:1 数据指针清零 2 所有显示清零02H显示回车:1 数据指针清零4.6初始化过程(复位过程)一:延时15ms二:写指令38H(不检测忙信号)三:延时5ms四:写指令38H(不检测忙信号)五:延时5ms六:写指令38H(不检测忙信号)七:(以后每次写指令、读/写数据操作之前均需检测忙信号)八:写指令38H:显示模式设置九:写指令08H:显示关闭十:写指令01H:显示清屏十一:写指令06H:显示光标移动设置十二:写指令0CH:显示开及光标设置4.7 读写时序及参数4.7.1 读操作时序VFM162的读操作时序图如下图所示10(图4-3):图4-3 读操作时序图4.7.2 写操作时序一:VFM162的写操作时序图如下图所示(图4-4):图4-4 写操作时序图二:写命令和写数据程序分别如下:void writeCom(uchar com) void writeData(uchar dat) RS = 0; RS=1;RW = 0; RW=0;E = 0; E=0;P0=com; P0=dat;delay1ms(1); delay();E = 1; E=1;delay1ms(1); delay();E = 0; E=0; 写命令程序 写数据程序4.7.3 时序参数VFM162的时序参数如下图所示(图4-5)11:图4-5 时序参数第五章 温度传感器程序设计本设计所采用的温度传感器为Melexls公司的MLX90614非接触式红外温度传感器。TO-39金属封装里同时集成了红外感应热电堆探测器芯片和信号处理专用集成芯片。由于集成了低噪声放大器、17位模数转换器和强大的数字信号处理单元,使得高精度和高分辨度的温度计得以实现。作为标准,配置的10位的PWM输出格式用于连续传送温度范围为-20度-120的物体温度,其分辨率为0.14。默认模式是SMbus输出格式,该软件设计使用SMbus格式输出。MLX90614室温下的标准精度为0.5。医疗应用版本的传感器可以在人体温度范围内达到0.1摄氏度的精度12。5.1 EEPROMEEPROM里只有有限数目的地址是允许客户改写的。整个EEPROM可通过SMBus接口读和写。存储T0max,T0min和Ta范围的地址取决与客户所需的物体和环境温度范围。存储发射率的地址包含物体的发射率,(出厂默认值为1.0=0xffff),16位数值。发射率=dec2hexround(65535*),其中dec2hexround(x)代表十进制转换为十六进制,四舍五入近似。该情况下:发射率数值为=0.11.0。写入数据之前,先进行擦出操作。(写入0)5.2 RAMRAM中不能写入数据,只能进行读取,并且只有有限数目是客户感兴趣的。表5-1为RAM内部信息13。名称地址是否可取预留000hYes预留003hYesTA006hYesTOBJ1007hYesTOBJ2008hYes表5-1 RAM信息5.3 SMBus总线协议在SD接收到每个8位数据后,会恢复ACK/NACK信息。当MD初始化通信,将首先发送受控地址,只有能识别该地址的SD会确认,其他的会保持默认。如果SD未确认其中的任意字节,MD应停止通信并重新发送信息。NACK也会在PEC接收后出现,这意味着在接收的信息有错误别且MD应重新发送信息。PEC的计算结果是基于出START,PEPEATED START,STOP,ACK和NACK位以外的所有位。PEC是CRC-8的多项式aX8+X2+X1+1.每个字节的最高有效位首先传送14。5.4 读取和写入数据5.4.1 SMBus读取数据格式SMBus读取数据格式如图5-1所示:图5-1 SMBus读取数据格式5.4.2 SMBus写入数据格式SMBus写入数据格式如图5-2所示:图5-2 SMBus写入数据格式5.4.3 SMBus通信实例SMBus通信实例如图5-3所示:图5-3 SMBus通信实例5.5 时序MLX90614满足所有SMBus时序规范。MLX90614的SMBus时钟的最大频率为100KHz,最小为10KHz。MLX90614的SMBus 的特定时序为:SMBus Request (tREQ ) 定义了一段时间,在这段时间里SCL应该置为低电平以使MLX90614从PWM模式转换为SMBus模式,至少1.44ms;Timeout L 是将SCL置为低电平允许的最长时间。这段时间后MLX90614会置通信模块并准备重新通信,不多于45us15;Timeout H 是将SCL置为高电平允许的最长时间。这段时间后会假定总线是空闲的(根据SMBus规范)并重置通信模块, 不多于27ms。Tsuac(SD) 定义了一段时间,此时间在SCL的第八个下降沿后,MLX90614会将SDA置为低电平以确认接受的字节,不超过2,5s。Thdac(SD) 定义了一段时间,此时间在SCL的第九个下降沿后,MLX90614释放PWM/SDA (MD可以继续通信),不超过1,5s。Tsuac(MD) 定义了一段时间,此时间在SCL的第八个下降沿后,MLX90614会释放PWM/SDA(MD可以确认接收的字节),不超过0,5s。Thdac(MD) 定义了一段时间,此时间在SCL的第九个下降沿后,MLX90614会控制PWM/SDA (它可继续传送下个字节),不超过1,5s。T在最新时序用到MD 和SD 索引MD 当主控器件在确认;SD当从动器件在确认。图5-4 SMBus时序5.5 命令RAM 和EEPROM 大小都为32x16。读取RAM时,由于RAM中含有符号位,数据被分为两部份。(例如- 当物体温度从-70.01C 到+382.19C时,RAM地址 0x07h的数据会从 0x27AD到 0x7FFF。) 由RAM读取的MSB 是线性化温度的错误指示符。(高表示激活)(TOBJ1, TOBJ2 和Ta) 原始数据的MSB (例如IR sensor1 的数据) 为符号位。(符号和幅度格式) 对EEPROM写入数据之前需要写入0X0000以擦除EEPROM单元里的内容16。操作码命令000X XXXX访问RAM001X XXXX访问EEPROM1111 0000读取标示符1111 1111进入SLEEP模式表5-2 操作码命令5.6 主要程序5.6.1 开始函数和停止函数开始函数的主要时序为在SCL为高电平的情况下,SDA由高电平变为低电平,然后SDA也变为低电平。而停止函数的时序是在SCL为低电平的时候,SDA有低电平变为高电平。开始函数和停止函数分别如下所示:void start(void) void stop(void) SCK=0; SDA=1; SDA=0;SCK=1; SCK=1;SDA=0; SDA=1;_nop_(); EA=1;_nop_(); _nop_();_nop_();_nop_();SCK=0;_nop_();5.6.1 读取温度程序uint readtemp(void) start(); /开始条件SendByte(0x00); /发送从地址00SendByte(0x27); /发送命令start();/开始条件SendByte(0x01); /写从地址00bitOutput=0;tempL=ReadByte();/读数据低字节bitOutput=0;tempH=ReadByte();/读数据高字节bitOutput=0;err=ReadByte();/读错误信息码stop();/停止条件trueValue=(tempH*256*0.02+tempL*0.02)-273.15;return trueValue*100;第六章 控制程序设计该设计的控制部分主要有按键控制和烤电仪亮度控制两部分。该设计有四个按键,其中前两个按键用来设定烤电仪的温度上下限的高低;后两个按键用来设定定时时间的长短。烤电仪的亮度控制是由双向可控硅来控制的。6.1 按键程序设计6.1.1 按键的工作方式智能仪器中CPU对键盘进行扫描时,要兼顾两方面的问题:一是要及时,以保证对用户的每一次按键都能作出响应;二是扫描不能占用过多的时间,CPU还有大量的其他任务要去处理。因此,要根据智能仪器中的CPU忙、闲情况,选择适当的键盘工作方式。键盘有三种的工作方式、中断工作方式和定时扫描的工作方式17。编程扫描工作方式:该方式也简称查询方式,它是利用CPU在完成其他工作的空余,调用键盘扫描程序,以响应键输入的要求。当CPU在运行其他程序时,它就不会再响应键输入要求,因此,采用该方式编程时,应考虑程序是否能对用户的每次按键都会及时的响应。中断工作方式:在这种方式下,当键盘中有按键按下时,硬件会产生中断申请信号,CPU响应中断申请后对键盘进行扫描,并在有按键按下时转入相应的功能键处理程序。该方式的优点是:由于在无键按下时不进行行扫描,因而能提高CPU的工作效率,同时也能确保对用户的每次按键操作做出迅速的响应18。定时扫描工作方式:该方式利用一个专门的定时器来产生定时中断申请信号,CPU响应中断申请后便对键盘进行扫描,并在有键按下时转入相应的键功能处理程序。由于每次按键按下的持续时间一般不小于100ms,所以为了不漏检,定时中断的周期一般应小于100ms。定时扫描方式本质也属于中断方式。6.1.2 键抖动及消除键盘按键一般都采用触电式按键开关。当按键被按下或释放时,按键触点的弹性会产生一种抖动现象。 即当按键按下时,触点不会迅速可靠地接通;当按键释放时,触点也不会立即断开,而是要经过一段时间的抖动才能稳定下来。抖动时间视按键材料的不同一般在5ms10ms之间,图6-1是抖动键的波形图19。图6-1 键抖动波形图6.1.3 按键程序流程框图(图6-2)图6-2 按键程序流程框图6.1.4 按键程序清单 void button()/按键函数if(button1=0|button2=0|button3=0|button4=0)if(button1=0)delay1ms(10);if(button1=0) temHigh+=0.5;if(button2=0)delay1ms(10);if(button2=0)temHigh-=0.5;if(button3=0)delay1ms(10);if(button3=0)setTimeToMin+=10;leftTimeToMin=setTimeToMin;if(button4=0)delay1ms(10);if(button4=0)if(setTimeToMin=0)setTimeToMin=0;if(setTimeToMin!=0)setTimeToMin-=10;leftTimeToMin=setTimeToMin; 6.2 调节温度程序设计烤电仪的温度调节是通过调节烤电仪灯管的亮度来实现的。本设计通过单片机控制双向可控硅的导通来实现烤电仪亮度的调节。双向可控硅的特点是导通后即使触发信号去掉,它仍将保持导通;单负载电流为零(交流电压过零点)时,它会自动关断。所以需要在交流电的每个半波期间都要送出触发信号,触发
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《陋室铭》教案设计
- 体育地产物业竞标授权委托书
- 苏教版五年级语文下册教案
- 石油化工设备招投标文件样本
- 山东创新创业基地建设合同
- 物理研究人防设备安装合同
- 七台河市公园公共安全事件处理
- 水上婚礼婚礼演艺游艇租赁合同
- 工业园区配电房施工协议
- 机场航站楼大理石施工合同
- 江苏省泰兴市2024-2025学年高三上学期期中考试语文试题(含答案)
- 期中综合检测(1-4单元)(试题)- 2024-2025学年二年级上册数学人教版
- 2024年消防宣传月知识竞赛考试题库500题(含答案)
- 国开2024年秋《机电控制工程基础》形考任务1答案
- 2024年典型事故案例警示教育手册15例
- 20K607 防排烟及暖通防火设计审查与安装
- 一氧化碳中毒培训课件
- 二十四节气课件:《立冬》
- 三相四线制功率计算原理及计算方法(讲得很好)
- 南邮综合设计报告(课程设计)proteus和Keil
- 幼儿成语故事《刻舟求剑》
评论
0/150
提交评论