GLOBAL.h 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. /*******************************************************************************
  2. *
  3. * SW
  4. * Soft version:
  5. * File Name: GLOBAL.h
  6. * Author : zzw (zhangzw_3@163.com)
  7. * creation date: 2011-05-22
  8. * module description:声明SW系统中的全局变量
  9. * Copyright (C)
  10. *
  11. ********************************************************************************/
  12. #if !defined(_GLOBAL_H_)
  13. #define _GLOBAL_H_
  14. #include "gd32f30x.h"
  15. // ************************* Typedef data type *********************************
  16. typedef unsigned char u08;
  17. typedef char s08;
  18. //typedef unsigned short u16;
  19. typedef short s16;
  20. //typedef unsigned long u32;
  21. //typedef long s32;
  22. typedef unsigned char uchar;
  23. typedef unsigned int uint;
  24. typedef unsigned long long u64;
  25. typedef signed long long s64;
  26. typedef unsigned char BOOL;
  27. typedef unsigned char BYTE;
  28. typedef unsigned int WORD;
  29. typedef unsigned long DWORD;
  30. typedef unsigned char byte;
  31. typedef unsigned int word;
  32. typedef unsigned long dword;
  33. typedef unsigned char UCHAR;
  34. typedef unsigned int UINT;
  35. typedef unsigned short USHORT;
  36. typedef unsigned long ULONG;
  37. #ifndef NULL
  38. #define NULL 0
  39. #endif
  40. ///////////////////////////////////////////////////////////////////
  41. //////////////////////////////////////////////////////////////
  42. ////////////////////////////////////////////////////////
  43. //
  44. // UART消息及外设ID定义
  45. //
  46. #define COM1 0 //
  47. #define COM2 1 //
  48. #define COM3 2 //
  49. #define com1timeout (1*10) //100MS超时,重发
  50. #ifndef UART0_TX_BUFFER_SIZE
  51. #define UART0_TX_BUFFER_SIZE 0x00e6 //COM1,同时存50个完整数据包
  52. #endif
  53. #ifndef UART0_RX_BUFFER_SIZE
  54. #define UART0_RX_BUFFER_SIZE 0x047e //COM1,同时存50个完整数据包
  55. #endif
  56. #ifndef UART1_TX_BUFFER_SIZE
  57. #define UART1_TX_BUFFER_SIZE 0x00e6 //COM2,同时存10个完整数据包
  58. #endif
  59. #ifndef UART1_RX_BUFFER_SIZE
  60. #define UART1_RX_BUFFER_SIZE 0x00e6 //COM2,同时存10个完整数据包
  61. #endif
  62. #ifndef UART2_TX_BUFFER_SIZE
  63. #define UART2_TX_BUFFER_SIZE 0x0010 //COM3
  64. #endif
  65. #ifndef UART2_RX_BUFFER_SIZE
  66. #define UART2_RX_BUFFER_SIZE 0x0010 //COM3
  67. #endif
  68. #define COMM1_BUF_LEN 100
  69. #define COMM2_BUF_LEN 100
  70. enum DEVICE ////设备图标显示 value:1-空调,2-地暖,3-新风 0-关闭
  71. {
  72. DEVICE_OFF= 0,
  73. DEVICE_AIR,
  74. DEVICE_FLOOR,
  75. DEVICE_WIND
  76. };
  77. /************************ 位变量定义 ***********************/
  78. typedef union {
  79. byte Byte;
  80. struct {
  81. byte bit0 :1;
  82. byte bit1 :1;
  83. byte bit2 :1;
  84. byte bit3 :1;
  85. byte bit4 :1;
  86. byte bit5 :1;
  87. byte bit6 :1;
  88. byte bit7 :1;
  89. } Bits;
  90. } DBit;
  91. typedef struct SW_Parameters
  92. {
  93. u16 SWID; //模块ID号
  94. u08 KeyEn[8]; //8个按键使能
  95. u08 SCENE[4]; //4个普通灯的状态
  96. u08 SWITCH[4]; //4个场景模式状态
  97. u08 LED[6]; //8个背光状态
  98. u08 LongKey[9]; //长按标志位,LongKey[1-8]:KEY1-KEY8
  99. u32 LongCount[4]; //长按计数器,超过10秒自动推出长按效果
  100. u32 modecounter; //短按计数器,超过5秒自动推出长按效果
  101. u32 modetiger; //短按计数器,超过10秒自动推出长按效果
  102. u32 modestep; //模式切换
  103. u32 setcounter;//设置温度计数器
  104. u32 devicecounter;//设置温度计数器
  105. u32 dpsetcounter;//参数配置
  106. u08 DEBUG;//调试状态,背光常亮
  107. u08 shock;//震动设置,1有效
  108. u08 human;//人感设置,1有效
  109. u08 light;//光感设置,1有效
  110. u08 bluelight;//氛围灯设置,1有效
  111. u08 zigbee_work_state;//zigbee网络状态,0:不在网,1:在网, 2:离线工作
  112. u08 update_config;//更新配置参数
  113. u32 time;//倒计时
  114. } SWParameters;
  115. ///////////////////////////////////////////////////////////////////////////////////////////////
  116. extern volatile DBit _BitParament0;
  117. #define sys10msFlag _BitParament0.Bits.bit0 /* 10ms标志 */
  118. //#define sysstate _BitParament0.Bits.bit7 /* 0代表无故障,1表示故障开启故障指示灯 */
  119. #define Nightledvalue 0x0C00 //背光灯调暗AD采集阈值
  120. extern volatile word tickcount; /* Timer tick count */
  121. extern volatile byte sysTickfor10ms; /* 10millisecond timer */
  122. extern volatile byte sysTickfor100ms;/* 100millisecond timer */
  123. extern volatile byte sysTickfor1000ms;/* 100millisecond timer */
  124. extern SWParameters switchState;
  125. extern unsigned char gRelayOnOff;
  126. extern byte gLedState;//按键灯状态
  127. #define CONDITION_NORMAL_TO_BEFOR_JOINING 101
  128. #define CONDITION_BEFOR_JOINING_TO_JOINING 102
  129. #define CONDITION_JOINGING_TO_NORMAL 103
  130. #define CONDITION_JOINGING__NOT_JION 104
  131. extern byte ZG_Joining;//模块进入配网模式, 指示灯快速闪烁10秒
  132. extern WORD ZG_JoinCounter;//模块进入配网计数器,倒计时开始
  133. extern int gRadarKeepTimer;
  134. extern byte Brightflag; //强光标志位
  135. extern byte NightPWMH; //暗光PWM占空比
  136. extern byte BrightPWMH; //强光PWM占空比,默认60%
  137. extern byte Light_Intensity;//光强度
  138. extern byte mKeyLedWeakLight;//背光最大亮度值,根据光感设置
  139. extern byte mBLedWeakLight;//背光最大亮度值,根据光感设置
  140. #define mKeyLedFlash 240 //亮度变化间隔(频率),默认24ms变化改变一个光强度
  141. //背光参数已移植到protocol.h,根据产品系列区分不同参数
  142. /*
  143. //臣仕
  144. #define mKeyLedWeaknight 2 //中山弱光2/60,按键灯夜晚背光,臣仕2
  145. #define mKeyLedWeakday 4 //中山弱光4/60,按键灯白天背光,臣仕4
  146. #define mKeyLedBrightLight 15 //强光 15/60,继电器触发,按键灯高亮,臣仕15
  147. #define mBLedWeaknight 10 //弱光10/100,氛围灯夜晚背光,臣仕10
  148. #define mBLedWeakday 20 //弱光20/100,氛围灯白天背光,臣仕20
  149. */
  150. //中山
  151. /*
  152. #define mKeyLedWeaknight 4 //中山弱光4/60,按键灯夜晚背光,臣仕2
  153. #define mKeyLedWeakday 10 //中山弱光10/60,按键灯白天背光,臣仕5
  154. #define mKeyLedBrightLight 50 //强光 50/60,继电器触发,按键灯高亮,臣仕15
  155. //中山高成本-氛围灯
  156. //#define mBLedWeaknight 40 //弱光40/100,氛围灯夜晚背光
  157. //#define mBLedWeakday 70 //弱光70/100,氛围灯白天背光
  158. //中山低成本-氛围灯
  159. #define mBLedWeaknight 5 //弱光5/100,氛围灯夜晚背光
  160. #define mBLedWeakday 10 //弱光10/100,氛围灯白天背光 --默认背光
  161. */
  162. //背光参数已移植到protocol.h,根据产品系列区分不同参数
  163. //#define BrightledvalueMAX_night 3600//最大3700 --通用
  164. //#define BrightledvalueMIN_day 3300//最小800
  165. //#define BrightledvalueDt 200//背光熄灭比较参数,可根据实际情况设置-未使用
  166. #define BrightledvalueMAX_night 3100//最大4000
  167. #define BrightledvalueMIN_day 3000//最小800
  168. #define BrightledvalueDt 200//背光熄灭比较参数,可根据实际情况设置-未使用
  169. extern byte gRadarCheckNull;//雷达监测,1为无人,0为有人
  170. extern byte shockCounter;//震动计数器
  171. extern byte shockStart;//按键按下震动触发
  172. extern byte appControlLedEnable; // app控制背光灯点亮使能位,0:忽略,1:强制点亮10秒
  173. extern byte doorCounter;//干触点门禁计数器,2秒计时
  174. extern byte doorOpen;//干触点门禁计数器,2秒计时
  175. extern byte Smartbox_On_Off_State; //设备开关机状态
  176. extern char SignalIntensity;//信号强度,0:脱网,3:联网
  177. extern char DeviceType;//设备图标显示 value:1-空调,2-地暖,3-新风 0-关闭
  178. extern char ModeType;//模式图标显示 value:1-制冷,2-制热,3-除湿,4-吹风, 0-关闭
  179. extern char PM2_5Type;//PM2.5图标显示 value:1-优,2-良,3-差,0-关闭
  180. extern char HumidityData;// //data:0-关闭显示图标,data非0,显示data数值
  181. extern char Set_Temperature_IntegerData; //设置温度整数部分
  182. extern char Set_Temperature_DecimalData; //设置温度小数部分
  183. extern char Now_Temperature_IntegerData; //当前温度整数部分
  184. extern char Now_Temperature_DecimalData; //当前温度小数部分
  185. extern char WindSpeedData;////风速显示界面, value,1-自动,2-低,3-中,4-高,0-关闭所有图标
  186. extern char last_Temperature_IntegerData; //上一秒温度整数部分
  187. #endif // !defined(_GLOBAL_H_)
  188. /* EOF */