board_cfg.h 9.2 KB

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