You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

tracker_output.h 3.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899
  1. /**
  2. * @file mmw_output.h
  3. *
  4. * @brief
  5. * This is the interface/message header file for the Millimeter Wave Demo
  6. *
  7. * \par
  8. * NOTE:
  9. * (C) Copyright 2016 Texas Instruments, Inc.
  10. *
  11. * Redistribution and use in source and binary forms, with or without
  12. * modification, are permitted provided that the following conditions
  13. * are met:
  14. *
  15. * Redistributions of source code must retain the above copyright
  16. * notice, this list of conditions and the following disclaimer.
  17. *
  18. * Redistributions in binary form must reproduce the above copyright
  19. * notice, this list of conditions and the following disclaimer in the
  20. * documentation and/or other materials provided with the
  21. * distribution.
  22. *
  23. * Neither the name of Texas Instruments Incorporated nor the names of
  24. * its contributors may be used to endorse or promote products derived
  25. * from this software without specific prior written permission.
  26. *
  27. * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
  28. * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
  29. * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
  30. * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
  31. * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  32. * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  33. * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
  34. * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
  35. * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
  36. * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
  37. * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  38. */
  39. #ifndef TRACKER_OUTPUT_H
  40. #define TRACKER_OUTPUT_H
  41. #ifdef __cplusplus
  42. extern "C" {
  43. #endif
  44. /** @brief Output packet length is a multiple of this value, must be power of 2*/
  45. #define TRACKERDEMO_OUTPUT_MSG_SEGMENT_LEN 32
  46. /*!
  47. * @brief
  48. * Message header for reporting detection information from data path.
  49. *
  50. * @details
  51. * The structure defines the message header.
  52. */
  53. typedef struct TrackerDemo_output_message_header_t
  54. {
  55. /*! @brief Output buffer magic word (sync word). It is initialized to {0x0102,0x0304,0x0506,0x0708} */
  56. uint16_t magicWord[4];
  57. /*! @brief SW Version: : MajorNum * 2^24 + MinorNum * 2^16 + BugfixNum * 2^8 + BuildNum */
  58. uint32_t version;
  59. /*! @brief HW platform type */
  60. uint32_t platform;
  61. /*! @brief Time in CPU cycles when the message was created, R4F CPU cycles */
  62. uint32_t timeStamp;
  63. /*! @brief Total packet length including header in Bytes */
  64. uint32_t totalPacketLen;
  65. /*! @brief Frame number */
  66. uint32_t frameNumber;
  67. /*! @brief For Advanced Frame config, this is the sub-frame number in the range
  68. * 0 to (number of subframes - 1). For frame config (not advanced), this is always
  69. * set to 0. */
  70. uint32_t subFrameNumber;
  71. /*! @brief Detection Layer Margins */
  72. uint32_t chirpProcessingMargin;
  73. uint32_t frameProcessingMargin;
  74. /*! @brief Localization Layer Timing */
  75. uint32_t trackingProcessingTime;
  76. uint32_t uartSendingTime;
  77. /*! @brief Number of TLVs in this message*/
  78. uint16_t numTLVs;
  79. /*! @brief Header checksum */
  80. uint16_t checksum;
  81. } TrackerDemo_output_message_header;
  82. #ifdef __cplusplus
  83. }
  84. #endif
  85. #endif /* MMW_OUTPUT_H */