Part Number:AWR1843BOOST
从Traffic Monitoring的Mss和Dss文件中了解到,设备所记录的Timestamp为CPU时钟的值。目前想在Matlab代码中找到传感器正式开始采集数据的时刻,将此时间记录下来,然后使用所记录的CPU时钟值来推断出每个Frame的时间间隔最后计算出每个frame的本地系统时间。
请问,设备正式采集数据的时刻是如上左图中的84行打开端口的时候 ,还是如上右图中140行导入配置完成的时候?
Chris Meng:
你好,
demo要下载配置后,芯片才开始发波处理,然后再有串口输出。
,
Yang Ruihua:
您好,
1、这就是说应该是tm_visualizer.m中140行
loadCfg(hCfgPort, cliCfg);
这行代码后开始采集数据吗?
2、如果不是,那么第一个frame中的timestamp是在Traffic Monitoring的matlab代码中哪一个文件中的哪行代码开始接收到的?
,
Chris Meng:
你好,
loadcfg后,毫米波芯片要处理一段时间才会有数据通过串口输出。而你打开串口端口的时候,不一定数据已经输出了。
,
Yang Ruihua:
您好,
我明白了您的意思,我在Demo源码mss_main.c中找到了这行代码,
outputMessage.timeStamp = Cycleprofiler_getTimeStamp();
这个应该就是毫米波芯片R4F获取timestamp的时刻,但是这个是cpu的时钟的值,无法和系统时间对应起来。
在底层获取系统时间然后重新编译比较麻烦,所以我想在Matlab中寻找开始采集数据时第一次获取timestamp的时刻,这样虽然会有些误差,不过应该在容许的范围内。
请问,我需要在Matlab代码中哪里去获取当前系统时间能使误差最小呢?
,
Chris Meng:
你好,
能否使用第一次解析获得串口数据时候的时间?
,
Yang Ruihua:
您好,
需要的就是第一次解析获得串口数据时候的时间,请问在Matlab代码中哪里获取呢?
,
Chris Meng:
你好,
这个需要你自己添加代码获得。再在解析的地方加个标志,看是不是第一次进来?
,
Yang Ruihua:
在loadCfg.m文件中,配置完后下面输出了sensorStart字样,然后pause(0.02)暂停了0.02s,请问在pause之后加入获取系统时间的代码是否可以以使得误差最小?
,
Chris Meng:
你好,
抱歉,我这里没有做过相关比较,没有办法给出回答。你可以自行测试,看哪个时间更早一些。
,
Yang Ruihua:
好的,感谢回复