board_cfg.h 8.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262
  1. /*********************************************************************************************************
  2. * Module : board_cfg
  3. * Abstract : controller board expecil configuration !!!!
  4. * Version : 1.0.0
  5. * Author : Leopul(COPYRIGHT 2025 ~ 2027 Leopul. All rights reserved.)
  6. * Complete : 2025-02-16
  7. * Content : None
  8. * Note : None
  9. *********************************************************************************************************/
  10. #ifndef __BOARD_CFG_H_
  11. #define __BOARD_CFG_H_
  12. #define OPEN_WATCH_DOG 0
  13. #define OPEN_NOT_READ_EN 0
  14. #define POWER_DC 0
  15. #define POWER_AC 1
  16. #define POWER_AC_3_3 4
  17. #define POWER_AC_3_1 2
  18. #define POWER_AC_3_2 3
  19. #define INPUT_PT_NONE 0 /* detect module count */
  20. #define INPUT_PT_1 1
  21. #define INPUT_PT_2 2
  22. #define INPUT_PT_3 3
  23. #define ZERO_LINE_CTRL_NO 0
  24. #define ZERO_LINE_CTRL_YES 1
  25. #define OUTPUT_CTRL_NO 0 /* */
  26. #define OUTPUT_CTRL_YES 1
  27. #define DEIVECE(elec_type,input_pt,ctrl_zero_flag,zero_count,ctrl_output_flag,relay_count) ((elec_type << 12)\
  28. |(input_pt << 10)\
  29. |(ctrl_zero_flag << 9)\
  30. |(zero_count << 7)\
  31. |(ctrl_output_flag << 6)\
  32. |relay_count)
  33. #define PT_SUB_COUNT_3 3
  34. #define PT_SUB_COUNT_4 4
  35. #define PRJ_8_NEW 0
  36. #define PRJ_3_4 0
  37. #define PRJ_3_2 0
  38. #define PRJ_DC_8 0
  39. #define PRJ_6_NEW 0
  40. #define PRJ_3_NEW 0
  41. #define PRJ_5_NEW 0
  42. #define PRJ_4_SELF_LOCK 0
  43. #define PRJ_4_BASE 0
  44. #define PRJ_1_BASE 0
  45. #define PRJ_1_SELF_LOCK 0
  46. #define PRJ_1_ALL_MON 0
  47. #define PRJ_4_NO_MON 0
  48. #define PRJ_3_BASE 1
  49. #define PRJ_3_NEW_2 0
  50. #define PRJ_7_NEW 0
  51. #define PRJ_4_SELF_LOCK_2_2 0
  52. #define PPRJ_4_BASE_2_2 0
  53. #define PRJ_7_NO_MON 0
  54. #define PRJ_8_NO_MON 0
  55. #if PRJ_8
  56. #define POWER_TYPE (POWER_AC)
  57. #define INPUT_PT_NUM (INPUT_PT_2)
  58. #define ZERO_CONTRL (ZERO_LINE_CTRL_NO)
  59. #define ZERO_CTRL_NUM (ZERO_LINE_NONE)
  60. #define OUTPUT_CONTRL (OUTPUT_CTRL_YES)
  61. #define RelaySlaveChaNum 8
  62. #define RELAY_REMENBER 1
  63. #define SURPPORT_2_PT 0
  64. #define SUPPORT_ALL_ON_OFF 0
  65. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  66. #define ACSingCurrid 1
  67. #elif PRJ_4_NO_MON
  68. #define RelaySlaveChaNum 4
  69. #define ACSingCurrid 2
  70. #define SURPPORT_2_PT 0
  71. #define PT_SUB_COUNT (RelaySlaveChaNum)
  72. #define SUPPORT_MON 1
  73. #elif PRJ_6_NEW
  74. #define RelaySlaveChaNum 6
  75. #define ACSingCurrid 1
  76. #define SURPPORT_2_PT 1
  77. #define PT_SUB_COUNT (PT_SUB_COUNT_3)
  78. #define SUPPORT_DETECTION 1
  79. #define SUPPORT_RELAY_REMENBER 1
  80. #elif PRJ_8_NEW
  81. #define RelaySlaveChaNum 8
  82. #define ACSingCurrid 1
  83. #define SURPPORT_2_PT 1
  84. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  85. #define SUPPORT_DETECTION 1
  86. #define SUPPORT_RELAY_REMENBER 1
  87. #elif PRJ_3_NEW
  88. #define RelaySlaveChaNum 3
  89. #define ACSingCurrid 2
  90. #define SURPPORT_2_PT 0
  91. #define PT_SUB_COUNT (RelaySlaveChaNum)
  92. #define SUPPORT_DETECTION 1
  93. #define SUPPORT_RELAY_REMENBER 1
  94. #define SUPPORT_4_ON_FLASH 1
  95. #define SUPPORT_ALL_ON_OFF 1
  96. #elif PRJ_3_BASE
  97. #define RelaySlaveChaNum 3
  98. #define ACSingCurrid 2
  99. #define SURPPORT_2_PT 0
  100. #define PT_SUB_COUNT (RelaySlaveChaNum)
  101. #define SUPPORT_DETECTION 1
  102. #define SUPPORT_RELAY_REMENBER 1
  103. #define SUPPORT_ALL_ON_OFF 1
  104. #elif PRJ_5_NEW
  105. // #define RelaySlaveChaNum 5
  106. // #define ACSingCurrid 1
  107. // #define SURPPORT_2_PT 1
  108. // #define PT_SUB_COUNT (PT_SUB_COUNT_3)
  109. // #define SUPPORT_DETECTION 1
  110. // #define SUPPORT_RELAY_REMENBER 1
  111. #define RelaySlaveChaNum 5
  112. #define ACSingCurrid 1
  113. #define SURPPORT_2_PT 0
  114. #define PT_SUB_COUNT (RelaySlaveChaNum)
  115. #define SUPPORT_DETECTION 1
  116. #define SUPPORT_RELAY_REMENBER 1
  117. #elif PRJ_4_SELF_LOCK
  118. #define RelaySlaveChaNum 4
  119. #define ACSingCurrid 2
  120. #define SURPPORT_2_PT 0
  121. #define PT_SUB_COUNT (RelaySlaveChaNum)
  122. #define SUPPORT_DETECTION 1
  123. #define SUPPORT_RELAY_REMENBER 1
  124. #define SUPPORT_SELF_LOCK 1
  125. #elif PRJ_4_KEY_EXIT
  126. #define RelaySlaveChaNum 4
  127. #define ACSingCurrid 2
  128. #define SURPPORT_2_PT 0
  129. #define PT_SUB_COUNT (RelaySlaveChaNum)
  130. #define SUPPORT_DETECTION 1
  131. #define SUPPORT_RELAY_REMENBER 1
  132. #define SUPPORT_KEY_EXIT 1
  133. #elif PRJ_4_BASE
  134. #define RelaySlaveChaNum 4
  135. #define ACSingCurrid 2
  136. #define SURPPORT_2_PT 0
  137. #define PT_SUB_COUNT (RelaySlaveChaNum)
  138. #define SUPPORT_DETECTION 1
  139. #define SUPPORT_RELAY_REMENBER 1
  140. #define SUPPORT_ALL_ON_OFF 1
  141. #elif PPRJ_4_BASE_2_2
  142. #define RelaySlaveChaNum 4
  143. #define ACSingCurrid 2
  144. #define SURPPORT_2_PT 0
  145. #define PT_SUB_COUNT (RelaySlaveChaNum)
  146. #define SUPPORT_DETECTION 1
  147. #define SUPPORT_RELAY_REMENBER 1
  148. #define SUPPORT_ALL_ON_OFF 1
  149. #define SUPPORT_CTRL2_LOCK2 1
  150. #define AVALIABLE_RELAY 2
  151. #elif PPRJ_4_BASE_3_1
  152. #define RelaySlaveChaNum 4
  153. #define ACSingCurrid 2
  154. #define SURPPORT_2_PT 0
  155. #define PT_SUB_COUNT (RelaySlaveChaNum)
  156. #define SUPPORT_DETECTION 1
  157. #define SUPPORT_RELAY_REMENBER 1
  158. #define SUPPORT_ALL_ON_OFF 1
  159. #define SUPPORT_CTRL2_LOCK2 1
  160. #define AVALIABLE_RELAY 3
  161. #elif PRJ_1_BASE
  162. #define RelaySlaveChaNum 1
  163. #define ACSingCurrid 2
  164. #define SURPPORT_2_PT 0
  165. #define PT_SUB_COUNT (RelaySlaveChaNum)
  166. #define SUPPORT_DETECTION 1
  167. #define SUPPORT_RELAY_REMENBER 1
  168. #define SUPPORT_ALL_ON_OFF 1
  169. #elif PRJ_1_SELF_LOCK
  170. #define RelaySlaveChaNum 1
  171. #define ACSingCurrid 2
  172. #define SURPPORT_2_PT 0
  173. #define PT_SUB_COUNT (RelaySlaveChaNum)
  174. #define SUPPORT_DETECTION 1
  175. #define SUPPORT_RELAY_REMENBER 1
  176. #define SUPPORT_SELF_LOCK 1
  177. #elif PRJ_1_ALL_MON
  178. #define RelaySlaveChaNum 1
  179. #define ACSingCurrid 2
  180. #define SURPPORT_2_PT 0
  181. #define PT_SUB_COUNT (RelaySlaveChaNum)
  182. #define SUPPORT_MON 1
  183. #elif PRJ_3_NEW_2
  184. #define RelaySlaveChaNum 3
  185. #define ACSingCurrid 2
  186. #define SURPPORT_2_PT 0
  187. #define PT_SUB_COUNT (RelaySlaveChaNum)
  188. #define SUPPORT_DETECTION 1
  189. #define SUPPORT_RELAY_REMENBER 1
  190. #define SUPPORT_SELF_LOCK 1
  191. #elif PRJ_7_NEW
  192. #define RelaySlaveChaNum 7
  193. #define ACSingCurrid 1
  194. #define SURPPORT_2_PT 1
  195. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  196. #define SUPPORT_DETECTION 1
  197. #define SUPPORT_RELAY_REMENBER 1
  198. #elif PRJ_7_NO_MON
  199. #define RelaySlaveChaNum 7
  200. #define ACSingCurrid 2
  201. #define SURPPORT_2_PT 1
  202. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  203. #define SUPPORT_MON 1
  204. #elif PRJ_8_NO_MON
  205. #define RelaySlaveChaNum 8
  206. #define ACSingCurrid 2
  207. #define SURPPORT_2_PT 1
  208. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  209. #define SUPPORT_MON 1
  210. #endif
  211. #endif