• 学前教育
  • 小学学习
  • 初中学习
  • 高中学习
  • 语文学习
  • 数学学习
  • 英语学习
  • 作文范文
  • 文科资料
  • 理科资料
  • 文档大全
  • 当前位置: 雅意学习网 > 作文范文 > 正文

    【μC/OS-III实时操作系统在血压监测仪上的应用】血压监测仪

    时间:2020-03-11 07:31:55 来源:雅意学习网 本文已影响 雅意学习网手机站

       摘要:血压监测仪是用来监测动脉血压力的装置,本文描述了如何用Freescale的Kinetis微控制器和μC/OS-III操作系统,来实现一款基本型血压监测仪表,能够实现舒张压,收缩压和心率的检测。
       关键词:μC/OS-III;实时操作系统;血压监测仪
       中图分类号:TP273.5 文献标识码:A 文章编号:1007-9599 (2011) 23-0000-02
       Applying μC/OS-III Real Time Operation System on the Blood Pressure Monitor
       Zhao Yinhe
       (Jiangyin Business Secondary School,Jiangyin 214400,China)
       Abstract:The blood pressure monitor is a device that measures the arterial blood pressure.This paper describes the implementation of a kind of blood pressure monitor using Freescale’s Kinetis series microco-
      ntroller and μC/OS-III RTOS to displaying the systolic and diastolic blood pressure and the heart rate in beats per minute.
       Keywords:μC/OS-III;RTOS;Blood pressure monitor
       一、引言
       随着对实时性要求的提高,软件规模不断上升,实时内核逐渐发展为实时多任务操作系统(RTOS),并作为一种软件平台逐步成为目前国际嵌入式系统的主流。这时候更多的公司看到了嵌入式系统的广阔发展前景,开始大力发展自己的嵌入式操作系统。出现了Palm OS,Win CE,嵌入式Linux,Lynx,Nucleux,以及国内的ucos,mqx等嵌入式操作系统。随着嵌入式技术的发展前景日益广阔,相信会有更多的嵌入式操作系统软件出现。由于对产品可靠性、成本、更新换代要求的提高,使得嵌入式系统逐渐从纯硬件实现和使用通用计算机实现的应用中脱颖而出,成为近年来令人关注的焦点。尽管医疗设备的数量每年都在增加,成本也在不断下降,医疗设备向:系统更小、更经济、便携、可远程监控并保证性能指标这一方向发展。医疗设备的软件系统也对可靠性和实时性提出了更高的要求,在医疗设备上用上一款商业级操作系统是一种成熟的选择。
       二、系统硬件构成
       (一)系统描述
       体循环动脉血压简称血压。血压是血液在血管内流动时,作用于血管壁的压力,它是推动血液在血管内流动的动力。心室收缩,血液从心室流入动脉,此时血液对动脉的压力最高,称为收缩压。心室舒张,动脉血管弹性回缩,血液仍慢慢继续向前流动,但血压下降,此时的压力称为舒张压。电子血压计就是利用现代电子技术与血压间接测量原理进行血压测量的医疗设备。电子血压计有臂式、腕式之分,目前绝大多数血压监护仪和自动电子血压计采用了示波法间接测量血压。示波法测血压通过建立收缩压、舒张压、平均压与袖套压力震荡波的关系来判别血压。针对本文应用,设计出系统功能框图。
      
       图1、系统功能框图
       (二)飞思卡尔Kinetis系列介绍
       2011年3月份发布的K50微控制器系列为连续监测提供多种连接选项,并为便携式医疗设备、仪器仪表和工业测试和测量设备等应用领域的可靠模拟信号处理提供集成测量引擎。K50系列内置ARM Cortex M4内核,提供128 KB闪存,凭借Kinetis组合的可扩展性、软件的易用性以及模块化的硬件开发工具,K50系列在设计上带来了超凡的自由度。K50系列(包括K50、K51、K52和K53四个子系列,共40个型号)可与Kinetis产品组合中的200多个其他微控制器兼容。而且,庞大的软件生态系统使开发者能够自由地选择自己喜欢的IDE/软件编译器。K50系列独有的集成测量引擎允许对外部模拟信号进行可靠处理,且不需要昂贵的额外组件,从而降低了开发费用。集成了运算放大器和跨导放大器,且有高速16位模数转换器来转换和捕获信号,提供准确和及时的结果,这些使片上信号处理成为可能。本文采用的控制核心为MK53N512CLQ100。
       三、应用程序设计
       (一)μC/OS-III介绍
       μC/OS-III是一种可移植的,可植入ROM的,可裁剪的,抢占式的,实时多任务操作系统内核。它被广泛应用于微处理器、微控制器和数字信号处理器。它是Micrium公司推出的第三代RTOS,是μC/OS-II的升级版本,具有μC/OS-II的所有优点,比如经过最严格的安全要求测试,可靠性,稳定性有保证。本文的软件开发环境是IAR Embedded Workbench for ARM 6.30
       (二)系统移植
       μC/OS-III大部分代码是用c语言写的,但仍需要用c和汇编语言写一些与处理器相关的代码,这是因为μC/OS-III在读写处理器寄存器时只能通过汇编语言来实现。由于μC/OS-III在设计时就已经充分考虑了可移植性,所以μC/OS-III的移植相对来说是比较容易的。只要处理器满足下面几个条件。
       1.处理器必须要有ANSI C编译器和可重入代码。
       2.处理器要支持中断。
       3.中断可以被使能或者禁止操作。
       4.处理器要有一个硬件堆栈。
       5.处理器有足够RAM给μC/OS-III系统和任务存放变量和数据结构。
       6.编译器要支持32位数据类型,有些编译器应该支持64位数据类型。
       7.处理器有相关指令能够保存堆栈指针和处理器相关的寄存器。
       本文采用MK53N512CLQ100这款芯片满足上述要求。
       根据μC/OS-III结构,只要修改和处理器相关的4个文件:
       os_cpu.h,os_cpu_a.asm,os_cpu_a.inc和os_cpu_c.c。
       (三)应用层程序架构设计
       把软件系统划分成3个任务,人机接口任务负责按键检测AppTaskUserIF(),数据处理任务AppTaskDAQ(),LCD显示任务Lcddisplay(),任务间的通讯通过消息队列和信号量来实现。
       启动μC/OS-III的函数设计如下:
       int main (void)//系统主函数
       {
       OS_ERR err;
       BSP_IntDisAll();//禁止所有中断
       OSInit(&err); //初始化 uC/OS-III.
       OSTaskCreate((OS_TCB *)&AppTaskStartTCB, //建立初始化任务 (CPU_CHAR *)"App Task Start", //任务名字 (OS_TASK_PTR )AppTaskStart,
       (void *)0,
       (OS_PRIO )APP_TASK_START_PRIO,//任务优先级
       (CPU_STK *)&AppTaskStartStk[0],//堆栈底层地址
       (CPU_STK_SIZE)APP_TASK_START_STK_SIZE / 10,
       (CPU_STK_SIZE)APP_TASK_START_STK_SIZE,//堆栈大小
       (OS_MSG_QTY )0,//消息队列大小
       (OS_TICK )0,
       (void *)0,
       (OS_OPT )(OS_OPT_TASK_STK_CHK | OS_OPT_TASK_STK_CLR),
       (OS_ERR *)&err);
       OSStart(&err);//启动多任务,把控制权交给μC/OS-III
       }
       各个任务之间的耦合关系
       图2 软件系统构架
       按键通过BSP_StatusRd()函数来读取,根据读取的按键值,人机接口任AppTaskUserIF()把按键值通过OSTaskQPost()发到消息队列,给数据处理任务进行处理。数据处理任务DAQ能直接接受中断过来的信号量或者从消息队列等待消息,通过调用系统函数OSTaskQPend()来处理消息队列数据。
       如果DAQ监测到数据队列有启动采样监测命令,调用BSP_LED_Off()来关掉LED,说明进入血压测量进程。接受数据队列的控制命令,启动定时器来生成PWM信号来控制螺线管阀门开度。整个监测动脉血压的算法是根据示波法来计算的。
       四、结语
       本文所提出的在医疗电子仪器上应用μC/OS-III操作系统,通过把电子血压计的软件系统根据功能模块划分成多个任务,开发出相应的应用程序,使得软件编程结构清晰明了,升级可维护性好,系统实时性和可靠性有保证,对于医疗电子仪表的开发应采用商业级μC/OS-III操作系统提供了一种思路。
       参考文献:
       [1]TWR-K60N512 Tower Module User"s Manual.http://www.省略
       [2]K53N512QSG/REV 0.http://www.省略
       [3]100-uCOS-III-Freescale-Kinetis-002.http://www.省略
       [4]K53 Sub-Family Reference Manual.http://www.省略
       [作者简介]赵银河(1978-),男,江阴市商业中等专业学校,中学二级。研究方面:计算机技术、网络应用。

    推荐访问:实时 血压 操作系统 em嵌入式实时操作系统cem

    • 文档大全
    • 故事大全
    • 优美句子
    • 范文
    • 美文
    • 散文
    • 小说文章