/Software/LowLevel/SensorBoard/src/PacketConfig.c

https://gitlab.com/TTYRobotiklubi/Follower · C · 140 lines · 86 code · 13 blank · 41 comment · 0 complexity · 4c9a9cb63de73fa7566532654c09f554 MD5 · raw file

  1. // ----------------------------------------------------------------------------
  2. //
  3. // Casecatcher generated packet configuration source file
  4. //
  5. // ----------------------------------------------------------------------------
  6. // ----------------------------------------------------------------------------
  7. // Includes
  8. // ----------------------------------------------------------------------------
  9. #include "PacketConfig.h"
  10. // ----------------------------------------------------------------------------
  11. // Packet "Motor1Status" parameters table
  12. // ----------------------------------------------------------------------------
  13. const PacketParameter packetMotor1StatusParameterList[6] =
  14. {
  15. { DLParamMotor1ActualSpeed, 0, 16 },
  16. { DLParamMotor1EncoderClicks, 16, 16 },
  17. { DLParamMotor1CurrentDraw, 32, 8 },
  18. { DLParamMotor1DriverTemp, 40, 8 },
  19. { DLParamMotor1BridgeAFault, 48, 1 },
  20. { DLParamMotor1BridgeBFault, 49, 1 }
  21. };
  22. // ----------------------------------------------------------------------------
  23. // Packet "Motor2Status" parameters table
  24. // ----------------------------------------------------------------------------
  25. const PacketParameter packetMotor2StatusParameterList[6] =
  26. {
  27. { DLParamMotor2ActualSpeed, 0, 16 },
  28. { DLParamMotor2EncoderClicks, 16, 16 },
  29. { DLParamMotor2CurrentDraw, 32, 8 },
  30. { DLParamMotor2DriverTemp, 40, 8 },
  31. { DLParamMotor2BridgeAFault, 48, 1 },
  32. { DLParamMotor2BridgeBFault, 49, 1 }
  33. };
  34. // ----------------------------------------------------------------------------
  35. // Packet "RobotControl" parameters table
  36. // ----------------------------------------------------------------------------
  37. const PacketParameter packetRobotControlParameterList[2] =
  38. {
  39. { DLParamRequestTranslationSpeed, 0, 16 },
  40. { DLParamRequestRotationSpeed, 16, 16 }
  41. };
  42. // ----------------------------------------------------------------------------
  43. // Packet "PidSetup" parameters table
  44. // ----------------------------------------------------------------------------
  45. const PacketParameter packetPidSetupParameterList[3] =
  46. {
  47. { DLParamPidParameter, 0, 8 },
  48. { DLParamPidValue, 8, 32 },
  49. { DLParamPidUpdating, 40, 1 }
  50. };
  51. // ----------------------------------------------------------------------------
  52. // Packet "MotorSpeeds" parameters table
  53. // ----------------------------------------------------------------------------
  54. const PacketParameter packetMotorSpeedsParameterList[2] =
  55. {
  56. { DLParamMotor1RequestSpeed, 0, 16 },
  57. { DLParamMotor2RequestSpeed, 16, 16 }
  58. };
  59. // ----------------------------------------------------------------------------
  60. // Packet "DistanceSensors" parameters table
  61. // ----------------------------------------------------------------------------
  62. const PacketParameter packetDistanceSensorsParameterList[8] =
  63. {
  64. { DLParamDistanceSensor1, 0, 8 },
  65. { DLParamDistanceSensor2, 8, 8 },
  66. { DLParamDistanceSensor3, 16, 8 },
  67. { DLParamDistanceSensor4, 24, 8 },
  68. { DLParamDistanceSensor5, 32, 8 },
  69. { DLParamDistanceSensor6, 40, 8 },
  70. { DLParamDistanceSensor7, 48, 8 },
  71. { DLParamDistanceSensor8, 56, 8 }
  72. };
  73. // ----------------------------------------------------------------------------
  74. // Packet "RobotFeedback" parameters table
  75. // ----------------------------------------------------------------------------
  76. const PacketParameter packetRobotFeedbackParameterList[4] =
  77. {
  78. { DLParamRobotFeedback1, 0, 16 },
  79. { DLParamRobotFeedback2, 16, 16 },
  80. { DLParamRobotFeedback3, 32, 16 },
  81. { DLParamRobotFeedback4, 48, 16 }
  82. };
  83. // ----------------------------------------------------------------------------
  84. // Packet "Quaternions" parameters table
  85. // ----------------------------------------------------------------------------
  86. const PacketParameter packetQuaternionsParameterList[4] =
  87. {
  88. { DLParamQw, 0, 16 },
  89. { DLParamQx, 16, 16 },
  90. { DLParamQy, 32, 16 },
  91. { DLParamQz, 48, 16 }
  92. };
  93. // ----------------------------------------------------------------------------
  94. // Packet "Emergency" parameters table
  95. // ----------------------------------------------------------------------------
  96. const PacketParameter packetEmergencyParameterList[4] =
  97. {
  98. { DLParamEmergencySetEvent, 0, 1 },
  99. { DLParamEmergencyClearEvent, 1, 1 },
  100. { DLParamEmergencyReserve1, 2, 8 },
  101. { DLParamEmergencyReserve2, 10, 16 }
  102. };
  103. // ----------------------------------------------------------------------------
  104. // Packet "Gyro" parameters table
  105. // ----------------------------------------------------------------------------
  106. const PacketParameter packetGyroParameterList[3] =
  107. {
  108. { DLParamGyroX, 0, 16 },
  109. { DLParamGyroY, 16, 16 },
  110. { DLParamGyroZ, 32, 16 }
  111. };
  112. // ----------------------------------------------------------------------------
  113. // Packets table
  114. // ----------------------------------------------------------------------------
  115. PacketDescriptor PacketDescriptorList[NumberOfPackets] =
  116. {
  117. /* Motor1Status */ { 0xD1, packetMotor1StatusParameterList, 6, 7 },
  118. /* Motor2Status */ { 0xD2, packetMotor2StatusParameterList, 6, 7 },
  119. /* RobotControl */ { 0xD3, packetRobotControlParameterList, 2, 4 },
  120. /* PidSetup */ { 0xD5, packetPidSetupParameterList, 3, 6 },
  121. /* MotorSpeeds */ { 0xD0, packetMotorSpeedsParameterList, 2, 4 },
  122. /* DistanceSensors */ { 0xF0, packetDistanceSensorsParameterList, 8, 8 },
  123. /* RobotFeedback */ { 0xD4, packetRobotFeedbackParameterList, 4, 8 },
  124. /* Quaternions */ { 0xF2, packetQuaternionsParameterList, 4, 8 },
  125. /* Emergency */ { 0xCF, packetEmergencyParameterList, 4, 4 },
  126. /* Gyro */ { 0xF1, packetGyroParameterList, 3, 6 }
  127. };