123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141 |
- #ifndef __CONFIGMACROS_H
- #define __CONFIGMACROS_H
- #include "oled.h"
- #include "key.h"
- #include "interface.h"
- /**
- * @breaf 定义测试开关
- */
- #define Test_old 0 //演示入口
- #define keyDebuginfo 1
- /**
- * @breaf 简化函数单体
- */
- #define open16 11 //开字
- #define close16 12 //关字
- #define resetDevAddr ((uint32_t)0x8075000)
- #define TIM_Start(htim) HAL_TIM_Base_Start_IT(htim)
- #define LED_TOGGLE(pin) HAL_GPIO_TogglePin(GPIOC, (pin)) //运行灯
- #define UART_PRINT(huart) HAL_UART_Transmit(huart, (uint8_t *)&ch, 1, 0xFFFF);
- #define PRINT_MENU_STATUS(key) printf("--->%s pressed\t%d %d %d %d\n", key, menu.current, menu.up, menu.next, menu.enter)
- #define HELLO(message) printf("%s\r\n", message)
- #define PRINT_UUID(message) printf("#%s符合设置项\n",message)
- #define PRINT_NUUID(message) printf("%s不符合\n",message)
- #define RXNE_UART(huart) __HAL_UART_ENABLE_IT(huart, UART_IT_RXNE)
- #define RESET_BT_MODULE_demo() \
- if(resetBTmodule) { \
- MBA32A_Init_demo(); \
- }
-
- #define RESET_BT_MODULE() \
- if(resetBTmodule) { \
- MBA32A_Init(); \
- }
- /**
- * @breaf 简化函数多体
- */
- /* OLED显示 */
- #define OLED_DISPLAY(color, display) do { \
- OLED_Init(); \
- OLED_ColorTurn(color); \
- OLED_DisplayTurn(display); \
- } while(0)
- /* 设置键值 */
- #define SET_MENU_STATUS(current_value, up_value, next_value, enter_value) \
- do { \
- menu.current = current_value; \
- menu.up = up_value; \
- menu.next = next_value; \
- menu.enter = enter_value; \
- refresh = true;\
- } while(0)
- /* WDI */
- #define TOGGLE_WDI_PIN(htim_instance) \
- do { \
- if ((htim_instance)->Instance == TIM2) { \
- HAL_GPIO_TogglePin(WDI_GPIO_Port, WDI_Pin); \
- } \
- } while(0)
- /* 扫描按键刷新屏幕 */
- #define UPDATE_EXECUTE_REFRESH() \
- do { \
- updatekeystate(); \
- execute_interface(menu); \
- OLED_Refresh(); \
- } while(0)
- /* U1-U4 DMA */
- #define IDLE_DMA_UART(huart) \
- do {\
- __HAL_UART_ENABLE_IT(huart, UART_IT_IDLE); \
- HAL_UART_Receive_DMA(huart, recvBuff, 2048); \
- } while(0)
- /* 蓝牙参数初始化(流水号/dtu1/自动施封时间) */
- #define INIT_BT_FRAME() \
- do { \
- btframe.serialNum = 0x00000001; \
- btframe.userId = 0x64747531; \
- btframe.Autoseal = 0x01; \
- printf("\t\tBTinit%d...\r\n", resetcount); \
- } while (0)
- /**
- * @breaf 结构体定义
- */
- /* 界面参数结构体 */
- typedef struct
- {
- uint8_t current; //当前状态索引号
- uint8_t up; //向下一个
- uint8_t next; //向下一个
- uint8_t enter; //确定
- unsigned char* sn; //sn
- uint32_t home;
-
- } Menu_table;
- /* 按键参数结构体 */
- struct keys
- {
- unsigned char judge_sta; //判断按键按键按下的动作到了第几步
- bool key_sta; //如果按键被按下,为0
- bool key_flag; //如果确认被按下,为1
- };
- /* 蓝牙锁信息帧参数结构体 */
- typedef struct
- {
- uint32_t serialNum; //4字节流水号
- uint32_t userId; //4字节userid
- uint32_t Ntime; //4字节时间
- uint8_t Autoseal; //1字节自动施封
-
- } BtFrame;
- typedef enum {
- BtStepDefault = 0,
- UUIDS = 1,
- UUIDN = 2,
- UUIDW = 3,
- } BtStep;
- typedef enum {
- Default = 0,
- InProgress = 1,
- Abnormal_motor = 2
- } TipsFlag;
- #endif /*__CONFIGMACROS_H*/
|