| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948 |
- /*********************************************************************************************************
- * 模块名称:Main.h
- * 摘 要:主文件,包含软硬件初始化函数和main函数
- * 当前版本:1.0.0
- * 作 者:Leyutek(COPYRIGHT 2018 - 2021 Leyutek. All rights reserved.)
- * 完成日期:2021年07月01日
- * 内 容:
- * 注 意:
- **********************************************************************************************************
- * 取代版本:
- * 作 者:
- * 完成日期:
- * 修改内容:
- * 修改文件:
- *********************************************************************************************************/
- #ifndef _MAIN_H_
- #define _MAIN_H_
- /*********************************************************************************************************
- * 包含头文件
- *********************************************************************************************************/
- #include "stdbool.h"
- #include "gd32e230x_conf.h"
- /*********************************************************************************************************
- * 宏定义
- *********************************************************************************************************/
- #define DCPDU_Modbus_Reg_len 300 //modbus寄存器长度
- #define RELAY_ChN_default 8 //所用通道数,默认值
- #define RELAY_ontime_default 0 //继电器开通延时默认及最小值
- #define RELAY_ontime_max 99 //继电器开通延时最大值
- #define RELAY_offtime_default 0 //继电器断开延时默认及最小值
- #define RELAY_offtime_max 99 //继电器断开延时最大值
- #define Read_IM1253E_Deltatime 5 //读取间隔时间
- #define DCPDU_Device_ID 0x0007 //设备型号
- #define Uart0_Baud 115200
- #define Mb_Wcmd_Width 32
- #define Mb_Wcmd_len 8
- #define Vin_LTmax_default 450000 //电压最大阈值
- #define Vin_LTmin_default 12000 //电压最小阈值,未用
- #define Iout_LTmax_default 90000 //电流最大阈值
- #define Iout_LTmin_default 500 //电流最小阈值,未用
- //Modbus的寄存器地址和地址下最多能存储多少个字节数据
- //直流PDU数据表,地址+字节数
- #define DCPDU_Modbus_RegStAd 6000
- #define Devid_ChalNumAddr (DCPDU_Modbus_RegStAd + 0)
- #define Devid_ChalNumQua 2
- #define DCPDU_VInput_Addr (DCPDU_Modbus_RegStAd + 2)
- #define DCPDU_VInput_ByteN 4
- #define DCPDU_IInput_Addr (DCPDU_Modbus_RegStAd + 3)
- #define DCPDU_IInput_ByteN 4
- #define DCPDU_WInput_Addr (DCPDU_Modbus_RegStAd + 4)
- #define DCPDU_WInput_ByteN 4
- #define DCPDU_KWhInput_Addr (DCPDU_Modbus_RegStAd + 5)
- #define DCPDU_KWhInput_ByteN 4
- #define DCPDU_P1Output_Addr (DCPDU_Modbus_RegStAd + 10)
- #define DCPDU_P1Output_ByteN 16
- #define DCPDU_P2Output_Addr (DCPDU_Modbus_RegStAd + 14)
- #define DCPDU_P2Output_ByteN 16
- #define DCPDU_P3Output_Addr (DCPDU_Modbus_RegStAd + 18)
- #define DCPDU_P3Output_ByteN 16
- #define DCPDU_P4Output_Addr (DCPDU_Modbus_RegStAd + 22)
- #define DCPDU_P4Output_ByteN 16
- #define DCPDU_P5Output_Addr (DCPDU_Modbus_RegStAd + 26)
- #define DCPDU_P5Output_ByteN 16
- #define DCPDU_P6Output_Addr (DCPDU_Modbus_RegStAd + 30)
- #define DCPDU_P6Output_ByteN 16
- #define DCPDU_P7Output_Addr (DCPDU_Modbus_RegStAd + 34)
- #define DCPDU_P7Output_ByteN 16
- #define DCPDU_P8Output_Addr (DCPDU_Modbus_RegStAd + 38)
- #define DCPDU_P8Output_ByteN 16
- #define DCPDU_CH1_FT_ST_Addr (DCPDU_Modbus_RegStAd + 42)
- #define DCPDU_CH1_FT_ST_ByteN 1
- #define DCPDU_CH2_FT_ST_Addr (DCPDU_Modbus_RegStAd + 43)
- #define DCPDU_CH2_FT_ST_ByteN 1
- #define DCPDU_CH3_FT_ST_Addr (DCPDU_Modbus_RegStAd + 44)
- #define DCPDU_CH3_FT_ST_ByteN 1
- #define DCPDU_CH4_FT_ST_Addr (DCPDU_Modbus_RegStAd + 45)
- #define DCPDU_CH4_FT_ST_ByteN 1
- #define DCPDU_CH5_FT_ST_Addr (DCPDU_Modbus_RegStAd + 46)
- #define DCPDU_CH5_FT_ST_ByteN 1
- #define DCPDU_CH6_FT_ST_Addr (DCPDU_Modbus_RegStAd + 47)
- #define DCPDU_CH6_FT_ST_ByteN 1
- #define DCPDU_CH7_FT_ST_Addr (DCPDU_Modbus_RegStAd + 48)
- #define DCPDU_CH7_FT_ST_ByteN 1
- #define DCPDU_CH8_FT_ST_Addr (DCPDU_Modbus_RegStAd + 49)
- #define DCPDU_CH8_FT_ST_ByteN 1
- #define DCPDU_VLit1_max_Addr (DCPDU_Modbus_RegStAd + 50)
- #define DCPDU_VLit1_max_ByteN 4
- #define DCPDU_VLit2_max_Addr (DCPDU_Modbus_RegStAd + 51)
- #define DCPDU_VLit2_max_ByteN 4
- #define DCPDU_VLit3_max_Addr (DCPDU_Modbus_RegStAd + 52)
- #define DCPDU_VLit3_max_ByteN 4
- #define DCPDU_VLit4_max_Addr (DCPDU_Modbus_RegStAd + 53)
- #define DCPDU_VLit4_max_ByteN 4
- #define DCPDU_VLit5_max_Addr (DCPDU_Modbus_RegStAd + 54)
- #define DCPDU_VLit5_max_ByteN 4
- #define DCPDU_VLit6_max_Addr (DCPDU_Modbus_RegStAd + 55)
- #define DCPDU_VLit6_max_ByteN 4
- #define DCPDU_VLit7_max_Addr (DCPDU_Modbus_RegStAd + 56)
- #define DCPDU_VLit7_max_ByteN 4
- #define DCPDU_VLit8_max_Addr (DCPDU_Modbus_RegStAd + 57)
- #define DCPDU_VLit8_max_ByteN 4
- #define DCPDU_VLit1_min_Addr (DCPDU_Modbus_RegStAd + 66)
- #define DCPDU_VLit1_min_ByteN 4
- #define DCPDU_VLit2_min_Addr (DCPDU_Modbus_RegStAd + 67)
- #define DCPDU_VLit2_min_ByteN 4
- #define DCPDU_VLit3_min_Addr (DCPDU_Modbus_RegStAd + 68)
- #define DCPDU_VLit3_min_ByteN 4
- #define DCPDU_VLit4_min_Addr (DCPDU_Modbus_RegStAd + 69)
- #define DCPDU_VLit4_min_ByteN 4
- #define DCPDU_VLit5_min_Addr (DCPDU_Modbus_RegStAd + 70)
- #define DCPDU_VLit5_min_ByteN 4
- #define DCPDU_VLit6_min_Addr (DCPDU_Modbus_RegStAd + 71)
- #define DCPDU_VLit6_min_ByteN 4
- #define DCPDU_VLit7_min_Addr (DCPDU_Modbus_RegStAd + 72)
- #define DCPDU_VLit7_min_ByteN 4
- #define DCPDU_VLit8_min_Addr (DCPDU_Modbus_RegStAd + 73)
- #define DCPDU_VLit8_min_ByteN 4
- #define DCPDU_ILit1_max_Addr (DCPDU_Modbus_RegStAd + 82)
- #define DCPDU_ILit1_max_ByteN 4
- #define DCPDU_ILit2_max_Addr (DCPDU_Modbus_RegStAd + 83)
- #define DCPDU_ILit2_max_ByteN 4
- #define DCPDU_ILit3_max_Addr (DCPDU_Modbus_RegStAd + 84)
- #define DCPDU_ILit3_max_ByteN 4
- #define DCPDU_ILit4_max_Addr (DCPDU_Modbus_RegStAd + 85)
- #define DCPDU_ILit4_max_ByteN 4
- #define DCPDU_ILit5_max_Addr (DCPDU_Modbus_RegStAd + 86)
- #define DCPDU_ILit5_max_ByteN 4
- #define DCPDU_ILit6_max_Addr (DCPDU_Modbus_RegStAd + 87)
- #define DCPDU_ILit6_max_ByteN 4
- #define DCPDU_ILit7_max_Addr (DCPDU_Modbus_RegStAd + 88)
- #define DCPDU_ILit7_max_ByteN 4
- #define DCPDU_ILit8_max_Addr (DCPDU_Modbus_RegStAd + 89)
- #define DCPDU_ILit8_max_ByteN 4
- #define DCPDU_ILit1_min_Addr (DCPDU_Modbus_RegStAd + 98)
- #define DCPDU_ILit1_min_ByteN 4
- #define DCPDU_ILit2_min_Addr (DCPDU_Modbus_RegStAd + 99)
- #define DCPDU_ILit2_min_ByteN 4
- #define DCPDU_ILit3_min_Addr (DCPDU_Modbus_RegStAd + 100)
- #define DCPDU_ILit3_min_ByteN 4
- #define DCPDU_ILit4_min_Addr (DCPDU_Modbus_RegStAd + 101)
- #define DCPDU_ILit4_min_ByteN 4
- #define DCPDU_ILit5_min_Addr (DCPDU_Modbus_RegStAd + 102)
- #define DCPDU_ILit5_min_ByteN 4
- #define DCPDU_ILit6_min_Addr (DCPDU_Modbus_RegStAd + 103)
- #define DCPDU_ILit6_min_ByteN 4
- #define DCPDU_ILit7_min_Addr (DCPDU_Modbus_RegStAd + 104)
- #define DCPDU_ILit7_min_ByteN 4
- #define DCPDU_ILit8_min_Addr (DCPDU_Modbus_RegStAd + 105)
- #define DCPDU_ILit8_min_ByteN 4
- #define DCPDU_RL_ST_Addr (DCPDU_Modbus_RegStAd + 114)
- #define DCPDU_RL_ST_ByteN 1
- #define DCPDU_RLft_ST_Addr (DCPDU_Modbus_RegStAd + 116)
- #define DCPDU_RLft_ST_ByteN 1
- #define DCPDU_RL_Ton1_Addr (DCPDU_Modbus_RegStAd + 118)
- #define DCPDU_RL_Ton1_ByteN 1
- #define DCPDU_RL_Ton2_Addr (DCPDU_Modbus_RegStAd + 119)
- #define DCPDU_RL_Ton2_ByteN 1
- #define DCPDU_RL_Ton3_Addr (DCPDU_Modbus_RegStAd + 120)
- #define DCPDU_RL_Ton3_ByteN 1
- #define DCPDU_RL_Ton4_Addr (DCPDU_Modbus_RegStAd + 121)
- #define DCPDU_RL_Ton4_ByteN 1
- #define DCPDU_RL_Ton5_Addr (DCPDU_Modbus_RegStAd + 122)
- #define DCPDU_RL_Ton5_ByteN 1
- #define DCPDU_RL_Ton6_Addr (DCPDU_Modbus_RegStAd + 123)
- #define DCPDU_RL_Ton6_ByteN 1
- #define DCPDU_RL_Ton7_Addr (DCPDU_Modbus_RegStAd + 124)
- #define DCPDU_RL_Ton7_ByteN 1
- #define DCPDU_RL_Ton8_Addr (DCPDU_Modbus_RegStAd + 125)
- #define DCPDU_RL_Ton8_ByteN 1
- #define DCPDU_RL_Toff1_Addr (DCPDU_Modbus_RegStAd + 134)
- #define DCPDU_RL_Toff1_ByteN 1
- #define DCPDU_RL_Toff2_Addr (DCPDU_Modbus_RegStAd + 135)
- #define DCPDU_RL_Toff2_ByteN 1
- #define DCPDU_RL_Toff3_Addr (DCPDU_Modbus_RegStAd + 136)
- #define DCPDU_RL_Toff3_ByteN 1
- #define DCPDU_RL_Toff4_Addr (DCPDU_Modbus_RegStAd + 137)
- #define DCPDU_RL_Toff4_ByteN 1
- #define DCPDU_RL_Toff5_Addr (DCPDU_Modbus_RegStAd + 138)
- #define DCPDU_RL_Toff5_ByteN 1
- #define DCPDU_RL_Toff6_Addr (DCPDU_Modbus_RegStAd + 139)
- #define DCPDU_RL_Toff6_ByteN 1
- #define DCPDU_RL_Toff7_Addr (DCPDU_Modbus_RegStAd + 140)
- #define DCPDU_RL_Toff7_ByteN 1
- #define DCPDU_RL_Toff8_Addr (DCPDU_Modbus_RegStAd + 141)
- #define DCPDU_RL_Toff8_ByteN 1
- #define DCPDU_RL_Allon_Addr (DCPDU_Modbus_RegStAd + 150)
- #define DCPDU_RL_Allon_ByteN 1
- #define DCPDU_RL_Alloff_Addr (DCPDU_Modbus_RegStAd + 151)
- #define DCPDU_RL_Alloff_ByteN 1
- ///
- #define Mb_Dbuff_DevAddr 0
- #define Mb_Dbuff_VInput_Addr 2
- #define Mb_Dbuff_IInput_Addr 3
- #define Mb_Dbuff_WInput_Addr 4
- #define Mb_Dbuff_KWhInput_Addr 5
- #define Mb_Dbuff_P1Output_Addr 10
- #define Mb_Dbuff_P2Output_Addr 14
- #define Mb_Dbuff_P3Output_Addr 18
- #define Mb_Dbuff_P4Output_Addr 22
- #define Mb_Dbuff_P5Output_Addr 26
- #define Mb_Dbuff_P6Output_Addr 30
- #define Mb_Dbuff_P7Output_Addr 34
- #define Mb_Dbuff_P8Output_Addr 38
- #define Mb_Dbuff_CH1FT_ST_Addr 42
- #define Mb_Dbuff_CH2FT_ST_Addr 43
- #define Mb_Dbuff_CH3FT_ST_Addr 44
- #define Mb_Dbuff_CH4FT_ST_Addr 45
- #define Mb_Dbuff_CH5FT_ST_Addr 46
- #define Mb_Dbuff_CH6FT_ST_Addr 47
- #define Mb_Dbuff_CH7FT_ST_Addr 48
- #define Mb_Dbuff_CH8FT_ST_Addr 49
- #define Mb_Dbuff_VLit1_max_Addr 50
- #define Mb_Dbuff_VLit2_max_Addr 51
- #define Mb_Dbuff_VLit3_max_Addr 52
- #define Mb_Dbuff_VLit4_max_Addr 53
- #define Mb_Dbuff_VLit5_max_Addr 54
- #define Mb_Dbuff_VLit6_max_Addr 55
- #define Mb_Dbuff_VLit7_max_Addr 56
- #define Mb_Dbuff_VLit8_max_Addr 57
- #define Mb_Dbuff_VLit1_min_Addr 66
- #define Mb_Dbuff_VLit2_min_Addr 67
- #define Mb_Dbuff_VLit3_min_Addr 68
- #define Mb_Dbuff_VLit4_min_Addr 69
- #define Mb_Dbuff_VLit5_min_Addr 70
- #define Mb_Dbuff_VLit6_min_Addr 71
- #define Mb_Dbuff_VLit7_min_Addr 72
- #define Mb_Dbuff_VLit8_min_Addr 73
- #define Mb_Dbuff_ILit1_max_Addr 82
- #define Mb_Dbuff_ILit2_max_Addr 83
- #define Mb_Dbuff_ILit3_max_Addr 84
- #define Mb_Dbuff_ILit4_max_Addr 85
- #define Mb_Dbuff_ILit5_max_Addr 86
- #define Mb_Dbuff_ILit6_max_Addr 87
- #define Mb_Dbuff_ILit7_max_Addr 88
- #define Mb_Dbuff_ILit8_max_Addr 89
- #define Mb_Dbuff_ILit1_min_Addr 98
- #define Mb_Dbuff_ILit2_min_Addr 99
- #define Mb_Dbuff_ILit3_min_Addr 100
- #define Mb_Dbuff_ILit4_min_Addr 101
- #define Mb_Dbuff_ILit5_min_Addr 102
- #define Mb_Dbuff_ILit6_min_Addr 103
- #define Mb_Dbuff_ILit7_min_Addr 104
- #define Mb_Dbuff_ILit8_min_Addr 105
- #define Mb_Dbuff_RL_ST_Addr 114
- #define Mb_Dbuff_RLft_ST_Addr 116
- #define Mb_Dbuff_RL_Ton1_Addr 118
- #define Mb_Dbuff_RL_Ton2_Addr 119
- #define Mb_Dbuff_RL_Ton3_Addr 120
- #define Mb_Dbuff_RL_Ton4_Addr 121
- #define Mb_Dbuff_RL_Ton5_Addr 122
- #define Mb_Dbuff_RL_Ton6_Addr 123
- #define Mb_Dbuff_RL_Ton7_Addr 124
- #define Mb_Dbuff_RL_Ton8_Addr 125
- #define Mb_Dbuff_RL_Toff1_Addr 134
- #define Mb_Dbuff_RL_Toff2_Addr 135
- #define Mb_Dbuff_RL_Toff3_Addr 136
- #define Mb_Dbuff_RL_Toff4_Addr 137
- #define Mb_Dbuff_RL_Toff5_Addr 138
- #define Mb_Dbuff_RL_Toff6_Addr 139
- #define Mb_Dbuff_RL_Toff7_Addr 140
- #define Mb_Dbuff_RL_Toff8_Addr 141
- #define Mb_Dbuff_RL_Allon_Addr 150
- #define Mb_Dbuff_RL_Alloff_Addr 151
- #define Mb_Dbuff_WLit1_max_Addr 160
- #define Mb_Dbuff_WLit2_max_Addr 161
- #define Mb_Dbuff_WLit3_max_Addr 162
- #define Mb_Dbuff_WLit4_max_Addr 163
- #define Mb_Dbuff_WLit5_max_Addr 164
- #define Mb_Dbuff_WLit6_max_Addr 165
- #define Mb_Dbuff_WLit7_max_Addr 166
- #define Mb_Dbuff_WLit8_max_Addr 167
- #define Mb_Dbuff_kWhLit1_max_Addr 170
- #define Mb_Dbuff_kWhLit2_max_Addr 171
- #define Mb_Dbuff_kWhLit3_max_Addr 172
- #define Mb_Dbuff_kWhLit4_max_Addr 173
- #define Mb_Dbuff_kWhLit5_max_Addr 174
- #define Mb_Dbuff_kWhLit6_max_Addr 175
- #define Mb_Dbuff_kWhLit7_max_Addr 176
- #define Mb_Dbuff_kWhLit8_max_Addr 177
- #define Mb_Dbuff_CH1ST_FT_Addr 181
- #define Mb_Dbuff_CH2ST_FT_Addr 182
- #define Mb_Dbuff_CH3ST_FT_Addr 183
- #define Mb_Dbuff_CH4ST_FT_Addr 184
- #define Mb_Dbuff_CH5ST_FT_Addr 185
- #define Mb_Dbuff_CH6ST_FT_Addr 186
- #define Mb_Dbuff_CH7ST_FT_Addr 187
- #define Mb_Dbuff_CH8ST_FT_Addr 188
- #define Mb_Dbuff_RL_Over_Ch1_Func 190
- #define Mb_Dbuff_RL_Over_Ch2_Func 191
- #define Mb_Dbuff_RL_Over_Ch3_Func 192
- #define Mb_Dbuff_RL_Over_Ch4_Func 193
- #define Mb_Dbuff_RL_Over_Ch5_Func 194
- #define Mb_Dbuff_RL_Over_Ch6_Func 195
- #define Mb_Dbuff_RL_Over_Ch7_Func 196
- #define Mb_Dbuff_RL_Over_Ch8_Func 197
- #define Mb_Dbuff_Clear_Consumer_Ch1 200
- #define Mb_Dbuff_Clear_Consumer_Ch2 201
- #define Mb_Dbuff_Clear_Consumer_Ch3 202
- #define Mb_Dbuff_Clear_Consumer_Ch4 203
- #define Mb_Dbuff_Clear_Consumer_Ch5 204
- #define Mb_Dbuff_Clear_Consumer_Ch6 205
- #define Mb_Dbuff_Clear_Consumer_Ch7 206
- #define Mb_Dbuff_Clear_Consumer_Ch8 207
- #define Mb_Dbuff_Clear_Consumer_ALL 207
-
- #define DCPDU_WLit1_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_WLit1_max_Addr)
- #define DCPDU_WLit1_max_ByteN 4
- #define DCPDU_WLit2_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_WLit2_max_Addr)
- #define DCPDU_WLit2_max_ByteN 4
- #define DCPDU_WLit3_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_WLit3_max_Addr)
- #define DCPDU_WLit3_max_ByteN 4
- #define DCPDU_WLit4_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_WLit4_max_Addr)
- #define DCPDU_WLit4_max_ByteN 4
- #define DCPDU_WLit5_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_WLit5_max_Addr)
- #define DCPDU_WLit5_max_ByteN 4
- #define DCPDU_WLit6_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_WLit6_max_Addr)
- #define DCPDU_WLit6_max_ByteN 4
- #define DCPDU_WLit7_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_WLit7_max_Addr)
- #define DCPDU_WLit7_max_ByteN 4
- #define DCPDU_WLit8_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_WLit8_max_Addr)
- #define DCPDU_WLit8_max_ByteN 4
- #define DCPDU_kWhLit1_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_kWhLit1_max_Addr)
- #define DCPDU_kWhLit1_max_ByteN 4
- #define DCPDU_kWhLit2_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_kWhLit2_max_Addr)
- #define DCPDU_kWhLit2_max_ByteN 4
- #define DCPDU_kWhLit3_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_kWhLit3_max_Addr)
- #define DCPDU_kWhLit3_max_ByteN 4
- #define DCPDU_kWhLit4_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_kWhLit4_max_Addr)
- #define DCPDU_kWhLit4_max_ByteN 4
- #define DCPDU_kWhLit5_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_kWhLit5_max_Addr)
- #define DCPDU_kWhLit5_max_ByteN 4
- #define DCPDU_kWhLit6_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_kWhLit6_max_Addr)
- #define DCPDU_kWhLit6_max_ByteN 4
- #define DCPDU_kWhLit7_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_kWhLit7_max_Addr)
- #define DCPDU_kWhLit7_max_ByteN 4
- #define DCPDU_kWhLit8_max_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_kWhLit8_max_Addr)
- #define DCPDU_kWhLit8_max_ByteN 4
- #define DCPDU_CH1ST_FT_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_CH1ST_FT_Addr)
- #define DCPDU_CH1ST_FT_ByteN 1
- #define DCPDU_CH2ST_FT_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_CH2ST_FT_Addr)
- #define DCPDU_CH2ST_FT_ByteN 1
- #define DCPDU_CH3ST_FT_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_CH3ST_FT_Addr)
- #define DCPDU_CH3ST_FT_ByteN 1
- #define DCPDU_CH4ST_FT_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_CH4ST_FT_Addr)
- #define DCPDU_CH4ST_FT_ByteN 1
- #define DCPDU_CH5ST_FT_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_CH5ST_FT_Addr)
- #define DCPDU_CH5ST_FT_ByteN 1
- #define DCPDU_CH6ST_FT_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_CH6ST_FT_Addr)
- #define DCPDU_CH6ST_FT_ByteN 1
- #define DCPDU_CH7ST_FT_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_CH7ST_FT_Addr)
- #define DCPDU_CH7ST_FT_ByteN 1
- #define DCPDU_CH8ST_FT_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_CH8ST_FT_Addr)
- #define DCPDU_CH8ST_FT_ByteN 1
- #define DCPDU_RL_Over_Ch1_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_RL_Over_Ch1_Func) //add by liyi
- #define DCPDU_RL_Over_Ch1_ByteN 1
- #define DCPDU_RL_Over_Ch2_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_RL_Over_Ch2_Func) //add by liyi
- #define DCPDU_RL_Over_Ch2_ByteN 1
- #define DCPDU_RL_Over_Ch3_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_RL_Over_Ch3_Func) //add by liyi
- #define DCPDU_RL_Over_Ch3_ByteN 1
- #define DCPDU_RL_Over_Ch4_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_RL_Over_Ch4_Func) //add by liyi
- #define DCPDU_RL_Over_Ch4_ByteN 1
- #define DCPDU_RL_Over_Ch5_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_RL_Over_Ch5_Func) //add by liyi
- #define DCPDU_RL_Over_Ch5_ByteN 1
- #define DCPDU_RL_Over_Ch6_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_RL_Over_Ch6_Func) //add by liyi
- #define DCPDU_RL_Over_Ch6_ByteN 1
- #define DCPDU_RL_Over_Ch7_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_RL_Over_Ch7_Func) //add by liyi
- #define DCPDU_RL_Over_Ch7_ByteN 1
- #define DCPDU_RL_Over_Ch8_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_RL_Over_Ch8_Func) //add by liyi
- #define DCPDU_RL_Over_Ch8_ByteN 1
- #define DCPDU_RL_Clear_Consumer_Ch1_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_Ch1) //add by liyi
- #define DCPDU_RL_Clear_Consumer_Ch1_ByteN 1
- #define DCPDU_RL_Clear_Consumer_Ch2_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_Ch2) //add by liyi
- #define DCPDU_RL_Clear_Consumer_Ch2_ByteN 1
- #define DCPDU_RL_Clear_Consumer_Ch3_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_Ch3) //add by liyi
- #define DCPDU_RL_Clear_Consumer_Ch3_ByteN 1
- #define DCPDU_RL_Clear_Consumer_Ch4_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_Ch4) //add by liyi
- #define DCPDU_RL_Clear_Consumer_Ch4_ByteN 1
- #define DCPDU_RL_Clear_Consumer_Ch5_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_Ch5) //add by liyi
- #define DCPDU_RL_Clear_Consumer_Ch5_ByteN 1
- #define DCPDU_RL_Clear_Consumer_Ch6_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_Ch6) //add by liyi
- #define DCPDU_RL_Clear_Consumer_Ch6_ByteN 1
- #define DCPDU_RL_Clear_Consumer_Ch7_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_Ch7) //add by liyi
- #define DCPDU_RL_Clear_Consumer_Ch7_ByteN 1
- #define DCPDU_RL_Clear_Consumer_Ch8_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_Ch8) //add by liyi
- #define DCPDU_RL_Clear_Consumer_Ch8_ByteN 1
- #define DCPDU_RL_Clear_Consumer_All_Addr (DCPDU_Modbus_RegStAd + Mb_Dbuff_Clear_Consumer_ALL) //add by liyi
- #define DCPDU_RL_Clear_Consumer_ALL_ByteN 1
- //Eeprom的存储地址和地址下最多能存储多少个字节数据
- #define RELAY_para_sum 400
- #define ERom_Reg_StAddr 0x0000
- #define ERom_RL_Ch_N_addr 0x0000
- #define ERom_RL_Ch_N_ByteN 1
- #define ERom_RL_ST_Addr 0x0001
- #define ERom_RL_ST_ByteN 1
- #define ERom_RLft_ST_Addr 0x0003
- #define ERom_RLft_ST_ByteN 1
- #define ERom_RL_Ton1_Addr 0x0005
- #define ERom_RL_Ton1_ByteN 1
- #define ERom_RL_Ton2_Addr 0x0006
- #define ERom_RL_Ton2_ByteN 1
- #define ERom_RL_Ton3_Addr 0x0007
- #define ERom_RL_Ton3_ByteN 1
- #define ERom_RL_Ton4_Addr 0x0008
- #define ERom_RL_Ton4_ByteN 1
- #define ERom_RL_Ton5_Addr 0x0009
- #define ERom_RL_Ton5_ByteN 1
- #define ERom_RL_Ton6_Addr 0x000a
- #define ERom_RL_Ton6_ByteN 1
- #define ERom_RL_Ton7_Addr 0x000b
- #define ERom_RL_Ton7_ByteN 1
- #define ERom_RL_Ton8_Addr 0x000c
- #define ERom_RL_Ton8_ByteN 1
- #define ERom_RL_Toff1_Addr 0x0015
- #define ERom_RL_Toff1_ByteN 1
- #define ERom_RL_Toff2_Addr 0x0016
- #define ERom_RL_Toff2_ByteN 1
- #define ERom_RL_Toff3_Addr 0x0017
- #define ERom_RL_Toff3_ByteN 1
- #define ERom_RL_Toff4_Addr 0x0018
- #define ERom_RL_Toff4_ByteN 1
- #define ERom_RL_Toff5_Addr 0x0019
- #define ERom_RL_Toff5_ByteN 1
- #define ERom_RL_Toff6_Addr 0x001a
- #define ERom_RL_Toff6_ByteN 1
- #define ERom_RL_Toff7_Addr 0x001b
- #define ERom_RL_Toff7_ByteN 1
- #define ERom_RL_Toff8_Addr 0x001c
- #define ERom_RL_Toff8_ByteN 1
- #define ERom_RL_Allon_Addr 0x0025
- #define ERom_RL_Allon_ByteN 1
- #define ERom_RL_Alloff_Addr 0x0027
- #define ERom_RL_Alloff_ByteN 1
- #define ERom_VLit1_max_Addr 0x0029
- #define ERom_VLit1_max_ByteN 4
- #define ERom_VLit2_max_Addr 0x002d
- #define ERom_VLit2_max_ByteN 4
- #define ERom_VLit3_max_Addr 0x0031
- #define ERom_VLit3_max_ByteN 4
- #define ERom_VLit4_max_Addr 0x0035
- #define ERom_VLit4_max_ByteN 4
- #define ERom_VLit5_max_Addr 0x0039
- #define ERom_VLit5_max_ByteN 4
- #define ERom_VLit6_max_Addr 0x003d
- #define ERom_VLit6_max_ByteN 4
- #define ERom_VLit7_max_Addr 0x0041
- #define ERom_VLit7_max_ByteN 4
- #define ERom_VLit8_max_Addr 0x0045
- #define ERom_VLit8_max_ByteN 4
- #define ERom_VLit1_min_Addr 0x0059
- #define ERom_VLit1_min_ByteN 4
- #define ERom_VLit2_min_Addr 0x005d
- #define ERom_VLit2_min_ByteN 4
- #define ERom_VLit3_min_Addr 0x0061
- #define ERom_VLit3_min_ByteN 4
- #define ERom_VLit4_min_Addr 0x0065
- #define ERom_VLit4_min_ByteN 4
- #define ERom_VLit5_min_Addr 0x0069
- #define ERom_VLit5_min_ByteN 4
- #define ERom_VLit6_min_Addr 0x006d
- #define ERom_VLit6_min_ByteN 4
- #define ERom_VLit7_min_Addr 0x0071
- #define ERom_VLit7_min_ByteN 4
- #define ERom_VLit8_min_Addr 0x0075
- #define ERom_VLit8_min_ByteN 4
- #define ERom_ILit1_max_Addr 0x0089
- #define ERom_ILit1_max_ByteN 4
- #define ERom_ILit2_max_Addr 0x008d
- #define ERom_ILit2_max_ByteN 4
- #define ERom_ILit3_max_Addr 0x0091
- #define ERom_ILit3_max_ByteN 4
- #define ERom_ILit4_max_Addr 0x0095
- #define ERom_ILit4_max_ByteN 4
- #define ERom_ILit5_max_Addr 0x0099
- #define ERom_ILit5_max_ByteN 4
- #define ERom_ILit6_max_Addr 0x009d
- #define ERom_ILit6_max_ByteN 4
- #define ERom_ILit7_max_Addr 0x00A1
- #define ERom_ILit7_max_ByteN 4
- #define ERom_ILit8_max_Addr 0x00A5
- #define ERom_ILit8_max_ByteN 4
- #define ERom_ILit1_min_Addr 0x00B9
- #define ERom_ILit1_min_ByteN 4
- #define ERom_ILit2_min_Addr 0x00Bd
- #define ERom_ILit2_min_ByteN 4
- #define ERom_ILit3_min_Addr 0x00C1
- #define ERom_ILit3_min_ByteN 4
- #define ERom_ILit4_min_Addr 0x00C5
- #define ERom_ILit4_min_ByteN 4
- #define ERom_ILit5_min_Addr 0x00C9
- #define ERom_ILit5_min_ByteN 4
- #define ERom_ILit6_min_Addr 0x00Cd
- #define ERom_ILit6_min_ByteN 4
- #define ERom_ILit7_min_Addr 0x00D1
- #define ERom_ILit7_min_ByteN 4
- #define ERom_ILit8_min_Addr 0x00D5
- #define ERom_ILit8_min_ByteN 4
- #define ERom_TotalWh1_Addr 0x00D9
- #define ERom_TotalWh1_ByteN 4
- #define ERom_TotalWh2_Addr 0x00DD
- #define ERom_TotalWh2_ByteN 4
- #define ERom_TotalWh3_Addr 0x00E1
- #define ERom_TotalWh3_ByteN 4
- #define ERom_TotalWh4_Addr 0x00E5
- #define ERom_TotalWh4_ByteN 4
- #define ERom_TotalWh5_Addr 0x00E9
- #define ERom_TotalWh5_ByteN 4
- #define ERom_TotalWh6_Addr 0x00ED
- #define ERom_TotalWh6_ByteN 4
- #define ERom_TotalWh7_Addr 0x00F1
- #define ERom_TotalWh7_ByteN 4
- #define ERom_TotalWh8_Addr 0x00F5
- #define ERom_TotalWh8_ByteN 4
- #define ERom_CH1LT_ST_Addr (260)
- #define ERom_CH1LT_ST_ByteN 2
- #define ERom_CH2LT_ST_Addr (262)
- #define ERom_CH2LT_ST_ByteN 2
- #define ERom_CH3LT_ST_Addr (264)
- #define ERom_CH3LT_ST_ByteN 2
- #define ERom_CH4LT_ST_Addr (266)
- #define ERom_CH4LT_ST_ByteN 2
- #define ERom_CH5LT_ST_Addr (268)
- #define ERom_CH5LT_ST_ByteN 2
- #define ERom_CH6LT_ST_Addr (270)
- #define ERom_CH6LT_ST_ByteN 2
- #define ERom_CH7LT_ST_Addr (272)
- #define ERom_CH7LT_ST_ByteN 2
- #define ERom_CH8LT_ST_Addr (274)
- #define ERom_CH8LT_ST_ByteN 2
-
- #define ERom_WLit1_max_Addr (280)
- #define ERom_WLit1_max_ByteN 4
- #define ERom_WLit2_max_Addr (284)
- #define ERom_WLit2_max_ByteN 4
- #define ERom_WLit3_max_Addr (288)
- #define ERom_WLit3_max_ByteN 4
- #define ERom_WLit4_max_Addr (292)
- #define ERom_WLit4_max_ByteN 4
- #define ERom_WLit5_max_Addr (296)
- #define ERom_WLit5_max_ByteN 4
- #define ERom_WLit6_max_Addr (300)
- #define ERom_WLit6_max_ByteN 4
- #define ERom_WLit7_max_Addr (304)
- #define ERom_WLit7_max_ByteN 4
- #define ERom_WLit8_max_Addr (308)
- #define ERom_WLit8_max_ByteN 4
- #define ERom_kWhLit1_max_Addr (320)
- #define ERom_kWhLit1_max_ByteN 4
- #define ERom_kWhLit2_max_Addr (324)
- #define ERom_kWhLit2_max_ByteN 4
- #define ERom_kWhLit3_max_Addr (328)
- #define ERom_kWhLit3_max_ByteN 4
- #define ERom_kWhLit4_max_Addr (332)
- #define ERom_kWhLit4_max_ByteN 4
- #define ERom_kWhLit5_max_Addr (336)
- #define ERom_kWhLit5_max_ByteN 4
- #define ERom_kWhLit6_max_Addr (340)
- #define ERom_kWhLit6_max_ByteN 4
- #define ERom_kWhLit7_max_Addr (344)
- #define ERom_kWhLit7_max_ByteN 4
- #define ERom_kWhLit8_max_Addr (348)
- #define ERom_kWhLit8_max_ByteN 4
- #define ERom_RL_Over_Func_Ch1 (360)
- #define ERom_RL_Over_Func_Ch1_ByteN 1
- #define ERom_RL_Over_Func_Ch2 (361)
- #define ERom_RL_Over_Func_Ch2_ByteN 1
- #define ERom_RL_Over_Func_Ch3 (362)
- #define ERom_RL_Over_Func_Ch3_ByteN 1
- #define ERom_RL_Over_Func_Ch4 (363)
- #define ERom_RL_Over_Func_Ch4_ByteN 1
- #define ERom_RL_Over_Func_Ch5 (364)
- #define ERom_RL_Over_Func_Ch5_ByteN 1
- #define ERom_RL_Over_Func_Ch6 (365)
- #define ERom_RL_Over_Func_Ch6_ByteN 1
- #define ERom_RL_Over_Func_Ch7 (366)
- #define ERom_RL_Over_Func_Ch7_ByteN 1
- #define ERom_RL_Over_Func_Ch8 (367)
- #define ERom_RL_Over_Func_Ch8_ByteN 1
- #define DCPDU_Over_I_Max_Func_enable 0x00000001
- #define DCPDU_Over_V_Max_Func_enable 0x00000002
- #define DCPDU_Over_V_Min_Func_enable 0x00000004
- #define DCPDU_Over_P_Max_Func_enable 0x00000008
- #define DCPDU_Over_C_Max_Func_enable 0x00000010
- #define Default_Consum_Max (4000000000)
- #define Default_Voltage_Max (1000000000)
- #define Default_Current_Max (1000000000)
- #define Default_Power_Max (1000000000)
- #define THRESHOULD_JUDGMENT (50) //enable or disable relay by the small threshold
- #define Shield_Vmax_Threshould_Disable (0xfffffffE)
- #define Shield_Vmin_Threshould_Disable (0xfffffffD)
- #define Shield_Imax_Threshould_Disable (0xfffffffB)
- #define Shield_Wmax_Threshould_Disable (0xffffffF7)
- #define Shield_Kwhmax_Threshould_Disable (0xffffffEF)
- #define Shield_Vmax_Threshould_Enable (0x00000001)
- #define Shield_Vmin_Threshould_Enable (0x00000002)
- #define Shield_Imax_Threshould_Enable (0x00000004)
- #define Shield_Wmax_Threshould_Enable (0x00000008)
- #define Shield_kWhmax_Threshould_Enable (0x00000010)
- #define DCPDU_Vmax_Fault 0x00000001
- #define DCPDU_Vmax_NFault 0xfffffffe
- #define DCPDU_Vmin_Fault 0x00000002
- #define DCPDU_Vmin_NFault 0xfffffffd
- #define DCPDU_Imax_Fault 0x00000004
- #define DCPDU_Imax_NFault 0xfffffffb
- #define DCPDU_Wmax_Fault 0x00000008
- #define DCPDU_Wmax_NFault 0xfffffff7
- #define DCPDU_kWhmax_Fault 0x00000010
- #define DCPDU_kWhmax_NFault 0xffffffef
- #define DCPDU_Vmax_LT_enable 0x00000001
- #define DCPDU_Vmin_LT_enable 0x00000002
- #define DCPDU_Imax_LT_enable 0x00000004
- #define DCPDU_Wmax_LT_enable 0x00000008
- #define DCPDU_kWhmax_LT_enable 0x00000010
- /////////////////////////////////////
- typedef struct DCPDU_RELAY_Para_Reg
- {
- uint8_t RL_chn;
- uint8_t RL_ontime[RELAY_ChN_default];
- uint8_t RL_offtime[RELAY_ChN_default];
- }DCPDU_RELAY_Para_Reg;
- typedef struct DC_Output_struct_Reg
- {
- uint32_t DC_Vout; //输出电压
- uint32_t DC_Iout; //输出电流
- uint32_t DC_Pout; //输出功率
- }DC_Output_struct_Reg;
- typedef struct DC_SUM_Para_struct_Reg
- {
- uint32_t DC_Vin; //输入直流电压
- uint32_t DC_Iin; //总的输入电流
- uint32_t DC_Win; //总的输入功率
- uint32_t DC_KWhin; //总的输入功率
- uint32_t DC_Qin; //功率因数
- uint32_t DC_CO2; //二氧化碳排量
- uint32_t DC_Tp; //温度
- uint32_t DC_Hz; //频率
-
- }DC_SUM_Para_struct_Reg;
- extern unsigned int All_On_Flag; //继电器全开标志
- extern unsigned int All_Off_Flag; //继电器全关标志
- extern unsigned int All_On_Flag1; //继电器全开标志
- extern unsigned int All_Off_Flag1; //继电器全关标志
- extern bool Start_Read_Flag; //开始读取数据标志
- //uint32_t DCPDU_Modbus_Reg[DCPDU_Modbus_Reg_len];
- /*********************************************************************************************************
- * 枚举结构体
- *********************************************************************************************************/
- /*********************************************************************************************************
- * API函数声明
- *********************************************************************************************************/
- void Init_Dev_parameter(void);
- #endif
|