board_cfg.h 9.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308
  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 1
  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 0
  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 PPRJ_4_BASE_3_1 0
  54. #define PRJ_7_NO_MON 0
  55. #define PRJ_8_NO_MON 0
  56. #define PRJ_4_KEY_EXIT 0
  57. #define PRJ_5_KEY_EXIT 0
  58. #define PRJ_4_NEW_SELF_LOCK 0
  59. #define PRJ_3_SELF_LOCK 0
  60. #if PRJ_8
  61. #define POWER_TYPE (POWER_AC)
  62. #define INPUT_PT_NUM (INPUT_PT_2)
  63. #define ZERO_CONTRL (ZERO_LINE_CTRL_NO)
  64. #define ZERO_CTRL_NUM (ZERO_LINE_NONE)
  65. #define OUTPUT_CONTRL (OUTPUT_CTRL_YES)
  66. #define RelaySlaveChaNum 8
  67. #define RELAY_REMENBER 1
  68. #define SURPPORT_2_PT 0
  69. #define SUPPORT_ALL_ON_OFF 0
  70. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  71. #define ACSingCurrid 1
  72. #elif PRJ_4_NO_MON
  73. #define RelaySlaveChaNum 4
  74. #define ACSingCurrid 2
  75. #define SURPPORT_2_PT 0
  76. #define PT_SUB_COUNT (RelaySlaveChaNum)
  77. #define SUPPORT_MON 1
  78. #elif PRJ_6_NEW
  79. #define RelaySlaveChaNum 6
  80. #define ACSingCurrid 1
  81. #define SURPPORT_2_PT 1
  82. #define PT_SUB_COUNT (PT_SUB_COUNT_3)
  83. #define SUPPORT_DETECTION 1
  84. #define SUPPORT_RELAY_REMENBER 1
  85. #elif PRJ_8_NEW
  86. #define RelaySlaveChaNum 8
  87. #define ACSingCurrid 1
  88. #define SURPPORT_2_PT 1
  89. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  90. #define SUPPORT_DETECTION 1
  91. #define SUPPORT_RELAY_REMENBER 1
  92. #elif PRJ_3_NEW
  93. #define RelaySlaveChaNum 3
  94. #define ACSingCurrid 2
  95. #define SURPPORT_2_PT 0
  96. #define PT_SUB_COUNT (RelaySlaveChaNum)
  97. #define SUPPORT_DETECTION 1
  98. #define SUPPORT_RELAY_REMENBER 1
  99. // #define SUPPORT_4_ON_FLASH 1
  100. #define SUPPORT_ALL_ON_OFF 1
  101. #elif PRJ_3_BASE
  102. #define RelaySlaveChaNum 3
  103. #define ACSingCurrid 2
  104. #define SURPPORT_2_PT 0
  105. #define PT_SUB_COUNT (RelaySlaveChaNum)
  106. #define SUPPORT_DETECTION 1
  107. #define SUPPORT_RELAY_REMENBER 1
  108. #define SUPPORT_ALL_ON_OFF 1
  109. #elif PRJ_5_NEW
  110. // #define RelaySlaveChaNum 5
  111. // #define ACSingCurrid 1
  112. // #define SURPPORT_2_PT 1
  113. // #define PT_SUB_COUNT (PT_SUB_COUNT_3)
  114. // #define SUPPORT_DETECTION 1
  115. // #define SUPPORT_RELAY_REMENBER 1
  116. #define RelaySlaveChaNum 5
  117. #define ACSingCurrid 1
  118. #define SURPPORT_2_PT 0
  119. #define PT_SUB_COUNT (RelaySlaveChaNum)
  120. #define SUPPORT_DETECTION 1
  121. #define SUPPORT_RELAY_REMENBER 1
  122. #define SUPPORT_SELF_LOCK 1
  123. #define SUPPORT_PWM_OUT_RELAY 1
  124. #define SUPPORT_MICRO_SWITCH 1
  125. #define SUPPORT_KEY_EXIT 1
  126. #elif PRJ_4_NEW_SELF_LOCK
  127. #define RelaySlaveChaNum 4
  128. #define ACSingCurrid 1
  129. #define SURPPORT_2_PT 0
  130. #define PT_SUB_COUNT (RelaySlaveChaNum)
  131. #define SUPPORT_DETECTION 1
  132. #define SUPPORT_RELAY_REMENBER 1
  133. #define SUPPORT_SELF_LOCK 1
  134. #define SUPPORT_PWM_OUT_RELAY 1
  135. #define SUPPORT_MICRO_SWITCH 1
  136. #define SUPPORT_KEY_EXIT 1
  137. #elif PRJ_4_SELF_LOCK
  138. #define RelaySlaveChaNum 4
  139. #define ACSingCurrid 2
  140. #define SURPPORT_2_PT 0
  141. #define PT_SUB_COUNT (RelaySlaveChaNum)
  142. #define SUPPORT_DETECTION 1
  143. #define SUPPORT_RELAY_REMENBER 1
  144. #define SUPPORT_SELF_LOCK 1
  145. #elif PRJ_3_SELF_LOCK
  146. #define RelaySlaveChaNum 3
  147. #define ACSingCurrid 2
  148. #define SURPPORT_2_PT 0
  149. #define PT_SUB_COUNT (RelaySlaveChaNum)
  150. #define SUPPORT_DETECTION 1
  151. #define SUPPORT_RELAY_REMENBER 1
  152. #define SUPPORT_SELF_LOCK 1
  153. #define SUPPORT_PWM_OUT_RELAY 1
  154. #elif PRJ_4_KEY_EXIT
  155. #define RelaySlaveChaNum 4
  156. #define ACSingCurrid 2
  157. #define SURPPORT_2_PT 0
  158. #define PT_SUB_COUNT (RelaySlaveChaNum)
  159. #define SUPPORT_DETECTION 1
  160. #define SUPPORT_RELAY_REMENBER 1
  161. #define SUPPORT_KEY_EXIT 1
  162. #define SUPPORT_PWM_OUT_RELAY 1
  163. #elif PRJ_5_KEY_EXIT
  164. #define RelaySlaveChaNum 5
  165. #define ACSingCurrid 2
  166. #define SURPPORT_2_PT 0
  167. #define PT_SUB_COUNT (RelaySlaveChaNum)
  168. #define SUPPORT_DETECTION 1
  169. #define SUPPORT_RELAY_REMENBER 1
  170. #define SUPPORT_KEY_EXIT 1
  171. #define SUPPORT_PWM_OUT_RELAY 1
  172. #elif PRJ_4_BASE
  173. #define RelaySlaveChaNum 4
  174. #define ACSingCurrid 2
  175. #define SURPPORT_2_PT 0
  176. #define PT_SUB_COUNT (RelaySlaveChaNum)
  177. #define SUPPORT_DETECTION 1
  178. #define SUPPORT_RELAY_REMENBER 1
  179. //#define SUPPORT_ALL_ON_OFF 1
  180. #elif PPRJ_4_BASE_2_2
  181. #define RelaySlaveChaNum 4
  182. #define ACSingCurrid 2
  183. #define SURPPORT_2_PT 0
  184. #define PT_SUB_COUNT (RelaySlaveChaNum)
  185. #define SUPPORT_DETECTION 1
  186. #define SUPPORT_RELAY_REMENBER 1
  187. #define SUPPORT_ALL_ON_OFF 1
  188. #define SUPPORT_CTRL2_LOCK2 1
  189. #define AVALIABLE_RELAY 2
  190. #elif PPRJ_4_BASE_3_1
  191. #define RelaySlaveChaNum 4
  192. #define ACSingCurrid 2
  193. #define SURPPORT_2_PT 0
  194. #define PT_SUB_COUNT (RelaySlaveChaNum)
  195. #define SUPPORT_DETECTION 1
  196. #define SUPPORT_RELAY_REMENBER 1
  197. #define SUPPORT_ALL_ON_OFF 1
  198. #define SUPPORT_CTRL2_LOCK2 1
  199. #define AVALIABLE_RELAY 3
  200. #elif PRJ_1_BASE
  201. #define RelaySlaveChaNum 1
  202. #define ACSingCurrid 2
  203. #define SURPPORT_2_PT 0
  204. #define PT_SUB_COUNT (RelaySlaveChaNum)
  205. #define SUPPORT_DETECTION 1
  206. #define SUPPORT_RELAY_REMENBER 1
  207. //#define SUPPORT_ALL_ON_OFF 1
  208. #elif PRJ_1_SELF_LOCK
  209. #define RelaySlaveChaNum 1
  210. #define ACSingCurrid 2
  211. #define SURPPORT_2_PT 0
  212. #define PT_SUB_COUNT (RelaySlaveChaNum)
  213. #define SUPPORT_DETECTION 1
  214. #define SUPPORT_RELAY_REMENBER 1
  215. #define SUPPORT_SELF_LOCK 1
  216. #elif PRJ_1_ALL_MON
  217. #define RelaySlaveChaNum 1
  218. #define ACSingCurrid 2
  219. #define SURPPORT_2_PT 0
  220. #define PT_SUB_COUNT (RelaySlaveChaNum)
  221. #define SUPPORT_MON 1
  222. #elif PRJ_3_NEW_2
  223. #define RelaySlaveChaNum 3
  224. #define ACSingCurrid 2
  225. #define SURPPORT_2_PT 0
  226. #define PT_SUB_COUNT (RelaySlaveChaNum)
  227. #define SUPPORT_DETECTION 1
  228. #define SUPPORT_RELAY_REMENBER 1
  229. #define SUPPORT_SELF_LOCK 1
  230. #elif PRJ_7_NEW
  231. #define RelaySlaveChaNum 7
  232. #define ACSingCurrid 1
  233. #define SURPPORT_2_PT 1
  234. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  235. #define SUPPORT_DETECTION 1
  236. #define SUPPORT_RELAY_REMENBER 1
  237. #elif PRJ_7_NO_MON
  238. #define RelaySlaveChaNum 7
  239. #define ACSingCurrid 2
  240. #define SURPPORT_2_PT 1
  241. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  242. #define SUPPORT_MON 1
  243. #elif PRJ_8_NO_MON
  244. #define RelaySlaveChaNum 8
  245. #define ACSingCurrid 2
  246. #define SURPPORT_2_PT 1
  247. #define PT_SUB_COUNT (PT_SUB_COUNT_4)
  248. #define SUPPORT_MON 1
  249. #endif
  250. #endif