PosCheck.h 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. #ifndef __MOTORPOSCHECK_H_
  2. #define __MOTORPOSCHECK_H_
  3. typedef enum
  4. {
  5. RPD_0 = 0,
  6. RPD_1 = 1,
  7. RPD_2 = 2,
  8. RPD_3 = 3,
  9. RPD_4 = 4,
  10. RPD_5 = 5,
  11. RPD_6 = 6,
  12. RPD_7 = 7,
  13. RPD_8 = 8,
  14. RPD_9 = 9,
  15. RPD_10 = 10,
  16. RPD_11 = 11,
  17. RPD_12 = 12,
  18. RPD_13 = 13,
  19. RPD_14 = 14,
  20. RPD_15 = 15,
  21. }RPD_TypeDef;
  22. typedef struct
  23. {
  24. uint16 InsetIdStep1[6];// RPD检测处理
  25. uint16 InsetIdStep2[3];// RPD检测处理
  26. uint16 InsetIdStep3[2];// RPD检测处理
  27. uint16 InsetIdMax;
  28. uint8 injectmax1;
  29. uint8 injectmax2;
  30. uint8 injectmax3;
  31. int16 Angle;
  32. int16 ThetaGet; // RPD的角度获取
  33. uint8 injecttimes;// RPD注入次数
  34. uint8 injectstep;
  35. uint8 injectCnt;
  36. uint8 injectCntTemp;
  37. uint16 InjectOffFocIntCnt;
  38. uint16 InjectOnFocIntCnt;
  39. uint16 InjectStep1VoltageProportion;
  40. uint16 InjectStep2VoltageProportion;
  41. int16 Theta;
  42. uint8 ForwardDirectionVectorFlag;
  43. uint8 OppositeDirectionVectorFlag;
  44. uint8 ZeroVectorFlag;
  45. uint8 NextShotFlag;
  46. uint8 injectstartflag;
  47. uint8 injectcntstartflag;
  48. } RPD_Param_TypeDef;
  49. extern void RPD (void);
  50. extern void RPD_Inject(void);
  51. extern void RPD_Detect(void);
  52. extern void RPD_Init(void);
  53. extern void Time2_RPD_Init(void);
  54. extern void RPD_0_VUWinit(void);//VW
  55. extern void RPD_1_WVinit(void);//WV
  56. extern void RPD_2_UVWinit(void);//UV
  57. extern void RPD_3_VUinit(void);//VU
  58. extern void RPD_4_WUVinit(void);//WU
  59. extern void RPD_5_UWinit(void);//UW
  60. extern void RPD_ZeroVector(void);
  61. extern void RPD_Angle_Inject(uint16 *InjectBuf);
  62. extern void RPD_Get_ID(void);
  63. extern RPD_Param_TypeDef RPDPara;
  64. extern RPD_TypeDef RPD_Status;
  65. #endif