这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » 软件与操作系统 » 动态心电图仪holter的设计

共14条 1/2 1 2 跳转至

动态心电图仪holter的设计

菜鸟
2013-05-17 22:04:54     打赏

   utenux是大连悠龙公司基于uT-Kernel开发的开源嵌入式操作系统,支持Cortex M0-4、ARM7、ARM9等硬件平台,也获得了ARM、ATMEL、FUJITSU、TI、ST、NXP等MCU厂商的大力支持。2013年04月30日,μTenux新版本V1.5.00r160 发布,使用环境包括KEIL RealView MDK 4.60、IAR EWARM 6.50.2、uLoong uT/Studio V3.0,前两个环境在国内应用比较广泛,尤其是MDK,因此utenux比较容易进入,不像LINUX大家要新学环境。使用utenux的软件结构如下所示。

utenux软件结构

  其中BOARD为运行软件的硬件平台,包括GPIO\UART\SPI\IIC等基础单片机的资源,也包括近年来迅速发展的ARM7的高端资源如SLAVE USB/HOST USB/EMAC/NAND FLASH 存贮/SD卡等,而应用RTOS的意义更多体现在应用高端资源上,比如硬件具有的USB/EMAC功能只是链路层或物理层的数据传输,而中间的传输层、网络层等USB/TCP等协议如果都各自设计,光理解这些规范就是件痛苦的事情。所以就有了一些协议栈来使应用层的应用传达到物理层,而这些协议栈一般都集成在OS里面使用更方便,所以应用RTOS成为使用高端资源的很好的选择。

硬件上面的一层为内核层。基于对ucos 的理解,他主要实现硬件功能的多任务化,这就需要任务调度。utenux采用基于优先级的可抢先任务调度,而相同优先级的先来先处理,貌似ucos不能有相同优先级的任务啊。utenux任务调度的产生条件1是处理程序的返回,2是执行改变系统运行状态的系统调用,3是产生时钟中断。多任务之间需要同步,utenux比ucos具有更多的任务同步方法,包括信号量、邮箱、互拆体、事件、消息、集合点端口等,有些需要加深理解。更多的同步方法使应用绚丽多彩。内核另外功能是内存管理、时钟管理、系统监控等。总之内核是目前发布的主要内容,是一个RTOS的核心,决定了其性能指标。

内核上面就是中间件,包括各种协议栈,据说不久将发布。作为应用设计这些比内核更重要,内核是系统设计人员更关注的,我不知道没有中间件如何开发应用系统。

最上面就是呈现给用户的最后的应用啦,看上面的示意图,utenux在不同行业都可应用。




关键词: utenux     任务     同步    

菜鸟
2013-05-17 22:13:34     打赏
2楼
有没有可能用到WSN应用方面。

菜鸟
2013-05-27 11:24:32     打赏
3楼

肯定可以啦


菜鸟
2013-05-29 10:55:15     打赏
4楼
有硬件才能验证啊

菜鸟
2013-05-29 14:18:11     打赏
5楼
套件图片

菜鸟
2013-05-29 15:19:50     打赏
6楼

资源

看用户手册,是个6层板,下了功夫。但音频的输入输出比较复杂,不知道TLV320AIC23是否可以精简它。





菜鸟
2013-05-29 15:22:15     打赏
7楼

  硬件没有到,先用STM32F3DIACOVERY跑了UTENUX,他的CPU是STM32F303,已经支持了。

    下载uTenux_V1.5.00r160解压,目录image是各种CPU的测试HEX,manual为各种文档有价值,sample是例程,其中的子目录下sysdepend下的13.int例程一档可以拷贝到子目录common下一同管理,不知为何单独列出啦。目录source\uTenux就是utenux的全部了,先不分解理解啦。support为支持方法。作为应用主要是sample和source两个目录。

   将开发板的串口连接到PC上,PC上运行串口软件设置为115,200bps;串口软件很多,串口调试助手、sscom32、putty等。

1、  复制\sample\common\01.task\例程下的扩展名为.c.h.common 的四个源代码文件到\source\uTenux\app\usermain\src目录下。

2、  打开source\uTenux\bin\app_stm32f3下的工程,在appusermainsrc增加TaskSample.c。然后打开workspace工程全部编译。这里面的APPUSERMAIN工程是用户应用程序,LIBCPU\LIBDEV\LIBTM\KERNEL都是UTENUX的,他们被编译成了LIB库在应用程序中调用,实际不用每次都编译只要把LIB包含进来就可以。工程LIB也没有实际内容,重新包含了APPUSERMAIN,其中的链接脚本文件SCT文件是关键。所以用户真正关注的就是工程APPUSERMAIN。

3、工程APPUSERMAIN中,首先到INT main函数,他调用inittsk函数,nittsk函数调用usermain()函数,usermain()函数调用TaskSample函数,TaskSample函数在TaskSample.c中。在TaskSample函数中按照UTENUX的规则写应用就可以啦。看看这里面主要是UTENUX的API函数啊。tk_cre_tsk、tk_sta_tsk等。这里就可以展开你创新的翅膀了。







菜鸟
2013-05-30 00:58:34     打赏
8楼
这板子收的很快啊,大体上介绍的还不错

菜鸟
2013-06-21 17:15:26     打赏
9楼

一直在看心电模块啊。心电图ECG反映了心脏的工作情况,只要它好就说明生命好啊,影视作品里常用ECG趋于直线表示人的挂的过程,他好大脑不好的就是植物人啦或者叫脑死亡,那也要努力挽救。ECG反映在身体表面就是uv到mv级的电压,里面有多重干扰信号,所以ECG需要输入电路、仪用放大器、高通滤波、低通滤波、50HZ限波、电压提升、ADC等过程,单片机获取后利用串口送出。采用了方圆科技的心电模块如下。

 

 

 

插上电极,后面有个虚拟串口,通过串口对ECG模块进行操作。

 




高工
2013-06-25 15:05:26     打赏
10楼
嗯?图是忘记上了么?

共14条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]