·上一文章:基于SD2300的定时采集存储系统设计
·下一文章:基于MAX 1 9 7的高精度数据采集系统
图中画出了液晶显示器在图形工作方式下液晶平面的每一处所对应的显示缓冲区地址情况,数据为十六进制,并建立以左下角为坐标原点的坐标系。这样坐标(X,Y)的值都为正值,简化了算法。其中X表示1~128个点,Y表示各个点所对应的幅值。由于A/D采样的数值为0~255,而LCD的行取值为0~63,所以把幅值缩小一定的倍数,即Y=D/B,D为A/D采集的数字量,B为该数缩小的倍数。由图可以看出幅值Y加1,显示缓冲区地址K就减少10H,从而得到缓冲区地址的表达式:K=X/8-10H*Y+0BF0H。而缓冲区地址字节中对应X除以8的余数的位就正好是要绘点的位置。只要利用位操作命令对它置位就可实现绘点。
3.2 波形显示
把采集的数据存放在RAM中,RAM共存了8KB波形数据。而液晶显示器1次只能显示128个点,因此可以通过改变在RAM中读数间隔来控制波形的横向显示,即每显示完1个数据,RAM地址加N,通过改变N的大小来拉开或回缩信号波形,以便于观察。
如果相邻2个点的幅值稍有不同,2个点的距离就会分开,造成显示不连续,影响视觉效果。因而怎样使波形显示连续,是显示信号波形中一个很重要的问题。本系统中对这一问题的解决方法:在LCD上每显示完1个点后,判断它与前1个点的幅值差距,即Y值值差,若大于8,就要在2点之间插入若干点(X值不变,只变Y值),使2点连续起来,然后再进行下1个点的显示。利用这种方法,可很好地实现心音波形的显示。波形显示程序流程图如图7所示。
4 结束语
本文介绍的可视听诊器能实时显示心率和心音波形,并能进行波形拉伸、变换和回放,形象直观、操作方便,适合向临床教学和医疗领域推广应用。