固件是固化在单片机中的程序代码,可采用汇编语言或C语言设计。它运行在微处理器上,用来响应主机的请求。即它与USB控制器一起完成枚举过程和主机通信。USB协议规定任何传输过程都是由主机端发起并控制的,在枚举过程中,主机通过USB控制器的端点0的默认管道建立控制传输过程,D12响应主机的要求,主要是发送特定的描述符(如设备描述符、配置描述符、接口描述符、端点描述符、字符串描述符和厂商描述符)给主机。主机从获得的描述符来了解该设备的配置和能力,并完成对USB设备的配置。枚举过程结束后,主机就可以与D12进行数据传输了。
本系统的固件编程采用标准C语言来编写,设计固件程序时需要注意的是:D12的中断输出为电平触发,Rabbit3000的中断为上升沿或下降沿触发。在设计程序时,使用下降沿加延时,可使低电平保持一段时间,从而达到同样的效果。
b. 驱动程序设计
在Windows系统下,与USB外设的任何通信都必须通过设备驱动,设备驱动使应用程序访问硬件设备成为可能。USB驱动程序的编写与硬件相关,属于核心模式。微软的DDK在这方面提供了较为详细的说明。
c. 应用程序的设计
本系统采用VB编写上位机应用程序。它主要负责实现利用USB接口从心电监护仪中读取心电数据,并把心电数据保存到数据库中,同时在PC机屏幕上绘制心电波形。
本文小结
本文所研制的便携式移动心电监护仪,能够在计算机屏幕上准确地描绘出心电波形,经中国医科大学附属二院的医生认定,可作为临床诊断依据;本系统实用性强,且体积小、经济方便。患者可随时随地对心脏进行实时监护,而不受时间和空间限制;本系统所具有的无线传输功能,可以实时地把心电数据传送给医院供医生诊断,极大地提高了急救效率。