mapp_arm.h 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141
  1. //==================================================================
  2. //
  3. // Filename: mapp_arm.h
  4. // Description:
  5. //
  6. //------------------------------------------------------------------
  7. //
  8. // version:
  9. // date: 00:08am, 09.Apr.2012, by Sirius
  10. // Description:
  11. //
  12. //------------------------------------------------------------------
  13. //==================================================================
  14. #ifndef _MAPP_ARM_H_
  15. #define _MAPP_ARM_H_
  16. /*------------------------------------------------------------------------------
  17. * I N C L U D E
  18. *------------------------------------------------------------------------------*/
  19. #include "stm32f0xx.h"
  20. #include "general.h"
  21. /*------------------------------------------------------------------------------
  22. * D E F I N E
  23. *------------------------------------------------------------------------------*/
  24. /*--- DVD protocol format ---*/
  25. #define ARM_HEAD_CODE (0x2E)
  26. #define ARM_PROTOCOL_HEAD ((U08)0x2E)
  27. #define ARM_PROTOCOL_ACK (1)
  28. #define ARM_ACK_OK ((U08)0xFF)
  29. #define ARM_ACK_NG ((U08)0xF0)
  30. #define XBS_PROTOCOL
  31. #ifndef XBS_PROTOCOL
  32. #define XINPU_PROTOCOL
  33. #endif
  34. //------------------------------------------------------------------
  35. // ARM message entrance
  36. // 22:05pm, 07.Jan.2014, modified by Charlie
  37. //------------------------------------------------------------------
  38. typedef enum {
  39. ARM_MSG_NULL, /* No message to transmit */
  40. ARM_MSG_KEY, /* Transmit steer wheel key */
  41. ARM_MSG_ID, /* Transmit EPS packet */
  42. ARM_MSG_NFC, /* Transmit NFC request */
  43. ARM_MSG_VER, /* Transmit version request */
  44. NumOfArmMsg
  45. } T_ARM_MSG;
  46. typedef enum {
  47. CALL_INIT,
  48. CALL_START,
  49. CALL_ACK,
  50. CALL_Wite,
  51. CALL_OK,
  52. NumOfCallState
  53. } T_CALL_STATE;
  54. /*------------------------------------------------------------------------------
  55. * S T R U C T
  56. *------------------------------------------------------------------------------*/
  57. //------------------------------------------------------------------
  58. // struct for ARM Rx function.
  59. // 22:05pm, 07.Jan.2014, modified by Charlie
  60. //------------------------------------------------------------------
  61. typedef struct {
  62. const U08 * datatype;
  63. void (*pfunc)(void);
  64. } T_ARM_RX_FUNC;
  65. //------------------------------------------------------------------
  66. // ARM data structure.
  67. // 09:30am, 08.Jan.2014, modified by Charlie
  68. //------------------------------------------------------------------
  69. typedef struct {
  70. U08 i2cstate;
  71. U08 workmode;
  72. U08 ledhm1620pwmLevel[20];
  73. U08 ledhm1620Date[3];
  74. U32 Ledhm1620AllDate;
  75. U08 PCA9635Led[16];
  76. U08 PCA9635LedEn;
  77. U08 RTL8152_flag;
  78. U08 Uled;
  79. U08 Relay[3];
  80. U08 DoorLed[3];
  81. U16 MicVolume;
  82. U16 SpkVolume;
  83. U08 KeyVaule;
  84. U08 KeyState;
  85. U08 KeyStateBack;
  86. U08 KeyResetFlag;
  87. U08 rf_data[4];
  88. U08 decode_ok; //????????±ê????
  89. U08 callled_red;
  90. U08 callled_yel;
  91. U08 startworkflag;
  92. U08 LedKeyState;
  93. U16 FJKeymac;
  94. U08 BufRxSentTime; //bus ????·??????±
  95. U08 BufTxSentTime; //bus ????·??????
  96. U08 Bus_RevLength;
  97. U08 PA4_Status; //PA4·??¨×????ì??????????????±ê????·?±?????1-±?????0-??±?????×??ó??????IO???±?°????
  98. U08 PA4_Value;
  99. } T_ARM_CFG;
  100. /*------------------------------------------------------------------------------
  101. * E X T E R N
  102. *------------------------------------------------------------------------------*/
  103. extern T_ARM_CFG gtArm;
  104. /*------------------------------------------------------------------------------
  105. * P R O T O T Y P E
  106. *------------------------------------------------------------------------------*/
  107. void ArmTxTask(void);
  108. void ArmRxTask(void);
  109. void ArmTaskTmr(void);
  110. void ArmValInit(void);
  111. void LED_ACK_TASK(U16 prm);
  112. U16 HexToInt(U32 u32prm);
  113. #endif /* _MAPP_DVD_H_ */
  114. /*------------------------------- E O F ----------------------------------------*/