matlab读边,如何实现一边从串口读数据一边实时显示信号?

最近在用matlab读取心电信号,用的采集器是ads1298,要求读取时实时显示信号,采集器有八个通道,输出8个波形。串口读取准备用回调函数INSTRCALLBACK,具体操作不大会。

以下是通讯协议说明:

电脑主机通过USB电缆与采集器相连,通过虚拟的USB转232串口实现与采集器的通讯。RS232通讯波特率采用256000,无校验位,8位数据位,1位停止位;采集器与电脑间通讯采用定长数据帧来实现,其中电脑向采集器发送数据帧的长度固定为4字节,采集器向电脑主机返回的数据帧固定长度为27字节。

主机发送

电脑主机向采集器发送的数据帧的格式及内容定义如下:

序号        帧内容        第1字节        第2字节        第3字节        第4字节

1        单字节指令        0x72        0x01        指令字节        0xFF填充

2        寄存器写指令        0x72        0x02        地址        写入内容

3        开始AD        0x72        0x03        0xFF填充        0xFF填充

4        停止AD        0x72        0x04        0xFF填充        0xFF填充

电脑主机向采集器发送的数据帧包括四种指令类型:

向ADS1298发送单字节指令:首字节固定为0x72,第二字节为0x01,第三字节为指令字节,内容详见ADS1298 Datasheet P40中的Opcode Command Definitions。

向ADS1298发送寄存器设置指令:首字节固定为0x72,第二字节为0x02,第三字节为需要写入的寄存器的地址,第四字节为需要写入的内容,内容详见ADS1298 Datasheet P44页中的Register Assignments。

开始连续数据采集:首字节固定为0x72,第二字节为0x03,第三以及第四字节采用0xFF填充,采集器收到开始数据采集指令后便开始连续数据采集,直至收到停止指令为止。

停止数据采集:首字节固定为0x72,第二字节为0x04,第三以及第四字节采用0xFF填充,采集器收到停止数据采集指令后即停止当前的数据采集工作。

采集器指令应答

对于主机发送的指令1和指令2,采集器收到指令执行成功后会返回应答帧,应答帧长度为27字节,指令应答帧格式如下

字节1        字节2        字节3        字节4        ……        ……        ……        字节27

0xFE        0xFF        0xFF        无效        无效        无效        无效        无效

对于指令3和指令4,采集器将不予应答。

数据帧格式

采集器收到开始数据采集指令后即开始根据固定的频率进行AD转换并将AD的结果通过数据帧返回给主机,采集器的采集通道为8通道,每通道的量化结果为24位(3字节),按照从低到高的顺序发送。

字节1        字节2        字节3        字节4        字节5        字节6        ……        字节25        字节26        字节27

0xFF        0xFF        0xFF        CH1低        CH1中        CH1高        ……        CH8低        CH8中        CH8高

每通道的AD结果为:

DNn=CHn高×65536+CHn中×256+CHn低

DN值与电压的对应关系

INP-INN=(DNn-0x800000)/2^24 ×Vref/G

其中Vref为AD的参考电压,G为设置的AD输入增益。

输入通道:

ADS1198 Input Channels        Derived Lead

1        V6 = V6 – WCT

2        LI = LA – RA

3        LII = LL – RA

4        V2 = V2 – WCT

5        V3 = V3 – WCT

6        V4 = V4 – WCT

7        V5 = V5 – WCT

8        V1 = V1 – WCT

WCT = (LA + RA + LL)/3

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值