




全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
医用电子体温测量、记录系统的软件主要分为两个部分:一部分是下位机的温度数据采集和处理程序,另一部分是上位机的体温测量、记录系统管理软件。软件采用模块化设计,按整体功能分成多个不同的模块,单独设计、编程、调试,然后将各个模块装配联调,组成完整的软件。 下位机程序用汇编语言编写,固化在80C51单片机中。单片机是整个系统的数据采集处理端,它主要完成对多个传感器(AD590)的控制和温度数据的读取、处理、显示以及和上位机的数据通信。 上位机软件是运行在计算机上的体温系统管理软件。由它负责对整个系统的各个测温点进行监测和管理。系统管理软件主要包括三个部分,分别是系统参数设置部分、温度数据处理部分和温度信息的管理部分。下位机程序主要分为两个部分,一个无中断时的主程序,另一个是中断服务程序。每个部分通过自己相应的子程序来完成所要求的功能。下位机体温数据的采集处理过程: PC机和单片机没有进行通信时,下位机自己独立运行,各自循环地读取、显示病人的体温或室温。将转A/D转换结果存储到片内RAM中事先固定的以DATA为起始地址的连续单元中,以便与PC机通信时传送,同时存入显示缓冲区,在显示器上显示出来。 由于每个单片机电子体温测量仪有八路电子体温计通道,每个传感器温度经过ADC0809 A/D转换后为十六进制数据,而我们进行显示和在计算机存储的时候需要用十进制的数据,所以在单片机程序中需要先将A/D转换后的温度数据转化成十进制,然后再存储到数据单元每一路十进”的温度值需要两个存储单元存储,这样I个单片机事先预留出16个数据存储单元来存储温度信息,在本系统中,设置DATA起始地址为4VH,作为显示器显示的缓冲区的首地址为30H. 当中断产生时,也就是PC机(_匕位机)发出命令,开始实现与单片机(下位机)的多机通信。首先由上位机发出所要查询的下位机地址,所有的下位机响应中断,料断主机查询的地址是否与本机地址相符。地址符合的下位机回送本机地址,并改变SM2o地址不符合的下位机退出中断,SM2=1不变。 下位机在与上位机建立联系后,跟着以查询方式接收上位机随后发送的读取数据的命令。在读取的时候,因己经在PC机程序中将病人的通道号和具体的数据单元顺序对应,所以在中断程序中从40H处顺序读取数据存储区数据,将其传输计算机串口缓冲区,写入数据库的时候PC机程序可将数据和病床号一一对应。在计算机读取的时候,首先要进行传入数据值的判断,如果在体温的范围之内,则将数据和单片机号以及通道号同时写入数据库,如果不是体温的范围,说明此时病人没有进行测量或者是不正确的测量,温度数据传送完毕,由上位机进行处理。下位机主程序流程: 主程序开始后首先进行初始化设置。初始化的内容包括给相应的字符名称赋值,设置串口通信参数,打开CPU中断,打开串口中断,设置定时器T0中断,然后使单片机检测是否有中断的发生,如果没有上位机进行通信的信号,不引发中断,则下位机将地址指向ADC0809的第一通道,发送命令使ADC0809工作,获取第一通道的传感器所采集的温度值,将其转换成为十进制,存储到特定存储区,并进行显示;同时地址指针指向下一通道,进行下一通道的数据采集和转换。如此循环,直到将八路信号全部检测一遍,此时,各路采集的数据己经存于对应的数据存储区,然后单片机再进行查询,看是否有单片机多机通信的信号,如果有则去执行相应的中断程序,如果没有,则继续读入A/D转换器转换的信号,直到有中断响应,进入相应中断服务程序,进行串口通信。下位体中断程序流程单片机响应中断后,首先保护现场,把寄存器A和数据寄存器指针存入堆栈中,置多机通信位SM2为1,接收到PC机传送通信地址后进行判断,看与本机的地址是否相符。不相符则退出中断服务程序,若相符就向上位机回送本机地址,同时置多机通信位SM2为0,取消多机通信,建立与上位机的双机之间的通信,传送以40H开始的数据存储区的数据,采用累加和校验的方式,检验PC机的回送是否正确,如果正确退出中断程序,不正确重新发送数据。在单片机与主机通信的过程中,一次通信的总时间不超过10s。为了防止通信异常中断而使单片机一直处于等待状态。在单片机的通信程序中加入比串口中断高优先级的定时器T0中断。设置定时器T0按方式1工作,每50ms中断一次,在其中断服务程序中统计T0中断次数。当T0的中断次数大于200时,也就是一次的通信过程超过了50ms200=10s,使单片机退出中断服务程序。等待下一次通信。数据采集模块的设计假设病房内有8路信号,以下程序是采用软件延时方法,使用A/D转换器ADC 0809分别对八路模拟信号轮流采样一次,并依次把转换结果存储到片内RAM中以DATA为起始地址的连续单元中。PC机在读取数据时直接读取DATA为起始地址的连续单元的内容。其代码如下(程序初始化阶段略):START:MOV RI,#DATA ;置数据区指针初值MOV DPTR,#2FFOE1 ;指向通道1MOV R7, #08H ;置通道数LOOP:MOVX DPTR, A ;启动A/D转换WAIT:JB P1.0 ADC ;检测0809是否转换完毕CALL DISP ;调显示子程序JMP WAIT;ADC: MOVX A, DPTR ;读取A/D转换结果CALL L1 ;调用十进制转换子程序CALL COMP ;调用判断子程序,看温度是否在特定范围,将其存于ACALL DISP ;调显示子程序MOV R1, A ;将数据存于固定数据区INC DPTR ;指向下一个通道INC R1 ;修改数据区指针DJNZ R7, LOOP ;八个通道是否转换完毕?本系统中显示数据的处理在本系统中,总共需要五位的显示器,如果使用静态显示器开销太大,因此在本系统中选用动态的显示方法。单片机扩展一片8255实现与LED显示器的硬件连接。 显示时首先病人的病床号同时显示以便观察,需要一位显示位,对数据来讲,处理完的每一路数据共有十进制的四位,为了节省资源,可将最后的结果放入两个相邻的数据存储区,如将第一路数据信号放入30H, 3111两个单元中,每个单元的四位作为一位要显示的数据,一共需要四位7段显示器,小数点后保留一位小数。所以将百位和十位放于第一个字节即30H中(本系统中没有百位数,默认为零),个位和小数点后的数值放于的第二个字节中,这样在显示时,始终将小数点置于倒数第二位上。系统采用硬件置亮的方式使其始终显示实现。其他通路的温度数据的存储方式是一致的。下面是关于显示部分软件的部分代码: DIS: MOV R0,#30H ;显示器缓冲区首地址送RO DSO:MOV R3,#20H ;显示器最左边位亮 MOV A,R3 DS1: MOV DPTR,#4FFCH ;数据指针指向8255A口 MOVX DPTR,A ;送扫描值 INC DPTR ;指向B口 MOV A, R0 ;取预显示的数据 ADD A, #ODH ;加上偏移量 MOVC A, A+PC ;取出字型 MOVX DPTR, A ;送显 ACALL DL1 ;延时子程序 INC R0 ;下一个显示断数据地址 MOV A, R3 JB ACC. 3, LD1 ;扫描到第四位否? RR A ;未到,扫描码右移一位 MOV R3, A AJMP DSl LD1:RFT DB 03FH, 06H, 5BH, 4FH, 66H, 6DH, 7D
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 协议合同-劳务派遣合同2篇
- 港盛荷馨苑环评报告
- 方案变更工程联系函(3篇)
- 安全文明标化培训心得课件
- 电路改造工程采购方案(3篇)
- 安全文件宣贯培训课件
- 安全教训培训小结课件
- 分局电视监控工程方案(3篇)
- 房屋工程管理服务方案(3篇)
- 堤防工程运行度汛方案(3篇)
- 委托书办理压力容器使用登记证
- 稀土知识讲座
- 河道堤防冲刷深度计算(新规范)
- 世界现代化理论
- 消防校外机构培训课件
- (完整版)数字1到10的描红(田字格带笔画提示)
- PFMEA失效模式与后果分析
- 车险综改理赔考试试题题库
- 高中地理 必修一 地球上的大气 第一课时 大气的组成和垂直分层 课件
- GB/T 539-2008耐油石棉橡胶板
- GB/T 11270.1-2002超硬磨料制品金刚石圆锯片第1部分:焊接锯片
评论
0/150
提交评论