#ifndef _bsp_H #define _bsp_H #include "STM32L1xx_PWR.h" #include "stm32l1xx_exti.h" #include "stm32l1xx_syscfg.h" #include "delay.h" #include "usart.h" #include "usart3.h" #include "usart1_sdi.h" #include "usart2.h" #include "usart4.h" #include "usart5.h" #include "adc.h" #include "pwr_ctrl.h" #include "eeprom.h" #include "spi.h" #include "rtc.h" #include "SPI_SD_driver.h" #include "L76X.h" #include "ff.h" #include "ffconf.h" #include "data_handle.h" #include "esp8266.h" #include "tcp.h" #include "BC25.h" #include "sdi12.h" #include "process.h" #include "bsp_dwt.h" #include "myiic.h" #include "DS3231.h" #include "string.h" #include "stdio.h" #include "stdarg.h" #include #include "cmsis_os2.h" #include "RTE_Components.h" #include CMSIS_device_header void bsp_init(void); void bsp_init_wakeup(void); void bsp_init_first(void); extern ITStatus Wake_way; extern osEventFlagsId_t EventFlagID_PROCESS; #define EVENT_PROCESS1_BIT_0 (1 << 0) // 间隔测量模式完毕 #define EVENT_PROCESS0_BIT_1 (1 << 1) // WIFI连接测量 #define EVENT_ALARMA_BIT_2 (1 << 2) // 闹钟唤醒 #define EVENT_LinkStatus_BIT_3 (1 << 3) // WIFI连接查询 #define EVENT_BC25send_BIT_4 (1 << 4) // BC25发送TF卡备份数据 #define EVENT_TFread_BIT_5 (1 << 5) // TF卡读取数据 #define EVENT_TFstore_BIT_6 (1 << 6) // TF卡存储数据 #define EVENT_TFread2_BIT_7 (1 << 7) // TF卡读取数据 #define EVENT_TFstore2_BIT_8 (1 << 8) // TF卡存储数据 #define EVENT_WIFIcreat_BIT_9 (1 << 9) // TF卡存储数据 #define BIT_ALL (EVENT_PROCESS1_BIT_0 | EVENT_GNSS_BIT_1 | EVENT_DATA_BIT_2) #define EVENT_Test_BIT_10 (1 << 10) // TF卡存储数据 #define EVENT_StartPROCESS1_BIT_0 (1 << 0) // 启动测量 #define EVENT_StartBC25_BIT_1 (1 << 1) // 启动远传 #define EVENT_StartWIFI_BIT_1 (1 << 2) // 启动WIFI #define EVENT_FishPROCESS1_BIT_0 (1 << 0) // 结束测量 #define EVENT_FishBC25_BIT_1 (1 << 1) // 结束远传 #define EVENT_FishWIFI_BIT_1 (1 << 2) // 结束WIFI /* 任务句柄 */ //osMutexId_t uartIDMutex=NULL; extern osThreadId_t ThreadIdSMSG ; extern osThreadId_t ThreadIdTaskLinkStatus ; extern osThreadId_t ThreadIdTaskBC25 ; extern osThreadId_t ThreadIdWIFI ; extern osThreadId_t ThreadIdStart ; extern osThreadId_t ThreadIdProcsee1 ; extern osThreadId_t ThreadIdUSERTask_Resume ; extern osThreadId_t ThreadIdTest ; extern osEventFlagsId_t EventFlagID_PROCESS; extern osEventFlagsId_t EventFlagID_Start; extern osEventFlagsId_t EventFlagID_Fished; extern osMutexId_t WIFI_MutexID; extern osMutexId_t SDI_MutexID; extern u8 Par_store_flag,IS_FIRST_SAVE; //设备参数是否写入标志 extern u32 send_pos;//TF卡数据发送位置 extern u32 wut_rtc_s;//开启间隔测量的RTC时间 extern char rtc_data[15];//全局变量日期 extern char rtc_time[15];//全局变量时间 extern u32 time__sta_bc25;//BC25任务启动时间 extern u32 time__sta_pro1;//流程1任务启动时间 extern uint8_t IsAppointmentRight(void); typedef struct TASKFIS { unsigned char BC25_FIS :1; //远传完成标志 unsigned char POW_FIS :1; //上电测量完成标志 unsigned char PROS1_FIS :1; //采集完成标志 unsigned char WIFILink_FIS :1; //WIFI断开标志 unsigned char APPO_FIS :1; //预约完成标志 unsigned char WIFIMEA_FIS :1; //wifi测量完成标志 }TASKFISHED; //定义任务完成的结构体 typedef struct TASKFIS_RUN { unsigned char BC25_RUN :1; //任务运行态 unsigned char POW_RUN :1; unsigned char PROS1_RUN :1; unsigned char WIFILink_RUN :1; unsigned char APPO_RUN :1; unsigned char WIFIMEA_RUN :1; unsigned char Test_RUN :1; }TASKRUNS; //定义任务完成的结构体 extern TASKRUNS TASKRUNSS; //任务运行标志 extern u8 WKUP_PIN_Status;//按键状态 1,摁下,0未摁下 extern u8 Creat_BC25; extern u8 Check_WKUP_key; extern char IOT_Theme_TYPE; #endif