毫米波工具箱中的应用里关于数据格式的问题?

Other Parts Discussed in Thread: AWR1843

您好!

我现在使用了ti的毫米波产品AWR1843,使用串口接收毫米波输出的数据,在交通监控的应用说明文档中(Traffic Monitoring User's Guide )看到了关于毫米波数据格式的部分,帧头结构如下:

frameHeaderStructType = struct(...

'magicWord', {'uint64', 8}, ... % syncPattern in hex is: '02 01 04 03 06 05 08 07'
'version', {'uint32', 4}, ... % Software Version
'platform', {'uint32', 4}, ... % A6843
'timeStamp', {'uint32', 4}, ... % Message create time in cycles
'totalPacketLen', {'uint32', 4}, ... % In bytes, including header
'frameNumber', {'uint32', 4}, ... % Frame Number
'subFrameNumber', {'uint32', 4}, ... % Sub-Frame number
'chirpProcessingMargin', {'uint32', 4}, ... % time left after chirp processing in cycles
'frameProcessingMargin', {'uint32', 4}, ... % time left after frame processing in cycles
'trackingProcessingTime', {'uint32', 4}, ... % time to run tracker
'uartSendingTime', {'uint32', 4}, ... % time to send uart message
'numTLVs' , {'uint16', 2}, ... % Number of TLVs in this frame
'checksum', {'uint16', 2}); % Subframe number.

在这个结构中的 校验和(checksum)具体是指哪些部分数据的校验和?  校验和的计算方式是crc16吗?如果是其它请告知,谢谢!

 

  • 你好,

    请参考代码里面的下面信息:
    labs\long_range_people_detection\68xx_long_range_people_det\src\mss\mss_main_18xx.c

    void TrackerDemo_transmitProcessedOutput(UART_Handle uartHandle,
    DPC_ObjectDetection_ExecuteResult *result)
    {
    ...

    /* Calculate header checksum */
    headerPtr = (uint16_t *)&outputMessage;
    for(n=0, sum = 0; n < sizeof(TrackerDemo_output_message_header)/sizeof(uint16_t); n++)
    sum += *headerPtr++;
    outputMessage.checksum = ~((sum >> 16) + (sum & 0xFFFF));
  • 好的,非常感谢!解决了我的问题。