心音与心电信号分析之一--6.26--心音信号检测系统软件设计

来源:互联网 发布:山东大学软件学院 编辑:程序博客网 时间:2024/04/19 15:00

软件模块:

1 初始化模块

   完成对心音检测系统中的DSP部分进行初始化,为心音检测系统的正常运行做准备。包括初始化DSP时钟,串口,各个控制寄存器。

 2 数字滤波

 3 串行通信

 4 信号分析处理模块

 5 程序固话模块

软件抗干扰技术:

软件抗干扰的方法很多,限于篇幅,这里只介绍一些常用的方法。

1.数据采集系统中的软件抗干扰设计

针对数据采集系统的软件抗干扰设计,主要是采用软件数字滤波。常用的如下。

算术平均值法:对同一点数据连续多次采样没,然后取平均值。这种方法可以降低系统的随机干扰对采样结果的影响。

比较取舍法:对一点数据连续多次采样,比较数值的变化规律,剔出偏差数据。

中值法:对一点数据连续多次采样,取中值作为采样结果。

2.开关量控制系统的软件抗干扰

可采取软件冗余、设置当前输出状态寄存单元、设置自检程序等软件抗干扰措施。

3.程序运行异常的软件抗干扰

外界环境干扰系统运行,致使PC 值改变,造成程序无法运行甚至进入死循环。程序运行异常的软件抗干扰设计就是在程序出现异常状况时,及时引导系统恢复到原始状态。常用的方法有:

设置软件陷阱 :在未用的程序区设置一段引导程序吗,当程序受到干扰跑到此区域时,引导程序将强行捕获到的程序引导到指定的地址,在那里专门对出错程序进行处理。

指令冗余技术:在双字节指令和三字节指令后插入两三个字节的空操作指令NOP,可以在DSP系统受干扰程序跑飞时,将程序自动纳入正轨。

使用Watchdog技术:如失控的程序进入死循环,使用看门狗技术使其脱离死循环。其原理是,设定一个定时器,按设定周期产生一个脉冲,如果不想产生此脉冲,则DSP就应在小于设定周期时间内将定时器清零,但DSP程序跑飞时,就不会按规定将定时器清零。于是定时器产生的脉冲作为DSP的复位信号,将DSP重新复位和初始化。

当系统在干扰信号的作用下发生程序的跑飞时,程序指针有可能指向两个区域:

1 可能正好转到程序区的其他地址进行执行,这种情况,可以采用软件锁加以控制,例如,为保证对外操作的安全,在软件锁设计中,对于每一个相对独立的程序块在其执行以前或者执行中对一个预先设定好的密码进行校验,只有当这一密码的准确性得到验证时,在真正执行程序,也只有程序通过正常的转移途径转移过来时,才会由上一级的程序设定正确的密码,否则,会根据校验错误而使程序发生强制转移,错误状态得到处理,并恢复程序的正常运行状态。

2 可能转移到程序空间的盲区执行。所谓的盲区指的是没有存放有效程序指令的区域。