#ifndef __BSP_USART_H #define __BSP_USART_H #include "stm32f0xx.h" #include //DEBUG_USART1引脚定义 /*******************************************************/ #define DEBUG_USART USART2 #define DEBUG_USART_CLK RCC_APB1Periph_USART2 #define DEBUG_USART_BAUDRATE 115200 //串口波特率 #define DEBUG_USART_RX_GPIO_PORT GPIOA #define DEBUG_USART_RX_GPIO_CLK RCC_AHBPeriph_GPIOA #define DEBUG_USART_RX_PIN GPIO_Pin_3 #define DEBUG_USART_RX_AF GPIO_AF_1 #define DEBUG_USART_RX_SOURCE GPIO_PinSource3 #define DEBUG_USART_TX_GPIO_PORT GPIOA #define DEBUG_USART_TX_GPIO_CLK RCC_AHBPeriph_GPIOA #define DEBUG_USART_TX_PIN GPIO_Pin_2 #define DEBUG_USART_TX_AF GPIO_AF_1 #define DEBUG_USART_TX_SOURCE GPIO_PinSource2 #define DEBUG_USART_IRQHandler USART2_IRQHandler #define DEBUG_USART_IRQ USART2_IRQn /************************************************************/ //NH3_USART2引脚定义 /*******************************************************/ #define NH3_USART USART1 #define NH3_USART_CLK RCC_APB2Periph_USART1 #define NH3_USART_BAUDRATE 9600 //串口波特率 #define NH3_USART_RX_GPIO_PORT GPIOB #define NH3_USART_RX_GPIO_CLK RCC_AHBPeriph_GPIOB #define NH3_USART_RX_PIN GPIO_Pin_7 #define NH3_USART_RX_AF GPIO_AF_0 #define NH3_USART_RX_SOURCE GPIO_PinSource7 #define NH3_USART_TX_GPIO_PORT GPIOB #define NH3_USART_TX_GPIO_CLK RCC_AHBPeriph_GPIOB #define NH3_USART_TX_PIN GPIO_Pin_6 #define NH3_USART_TX_AF GPIO_AF_0 #define NH3_USART_TX_SOURCE GPIO_PinSource6 #define NH3_USART_IRQHandler USART1_IRQHandler #define NH3_USART_IRQ USART1_IRQn /************************************************************/ //CH2O_USART3引脚定义 /*******************************************************/ #define CH2O_USART USART3 #define CH2O_USART_CLK RCC_APB1Periph_USART3 #define CH2O_USART_BAUDRATE 9600 //串口波特率 #define CH2O_USART_RX_GPIO_PORT GPIOC #define CH2O_USART_RX_GPIO_CLK RCC_AHBPeriph_GPIOC #define CH2O_USART_RX_PIN GPIO_Pin_5 #define CH2O_USART_RX_AF GPIO_AF_1 #define CH2O_USART_RX_SOURCE GPIO_PinSource5 #define CH2O_USART_TX_GPIO_PORT GPIOC #define CH2O_USART_TX_GPIO_CLK RCC_AHBPeriph_GPIOC #define CH2O_USART_TX_PIN GPIO_Pin_4 #define CH2O_USART_TX_AF GPIO_AF_1 #define CH2O_USART_TX_SOURCE GPIO_PinSource4 #define CH2O_USART_IRQHandler USART3_8_IRQHandler #define CH2O_USART_IRQ USART3_8_IRQn /************************************************************/ //PM25_USART4引脚定义 /*******************************************************/ #define PM25_USART USART4 #define PM25_USART_CLK RCC_APB1Periph_USART4 #define PM25_USART_BAUDRATE 9600 //串口波特率 #define PM25_USART_RX_GPIO_PORT GPIOA #define PM25_USART_RX_GPIO_CLK RCC_AHBPeriph_GPIOA #define PM25_USART_RX_PIN GPIO_Pin_1 #define PM25_USART_RX_AF GPIO_AF_4 #define PM25_USART_RX_SOURCE GPIO_PinSource1 #define PM25_USART_TX_GPIO_PORT GPIOA #define PM25_USART_TX_GPIO_CLK RCC_AHBPeriph_GPIOA #define PM25_USART_TX_PIN GPIO_Pin_0 #define PM25_USART_TX_AF GPIO_AF_4 #define PM25_USART_TX_SOURCE GPIO_PinSource0 #define PM25_USART_IRQHandler USART3_8_IRQHandler #define PM25_USART_IRQ USART3_8_IRQn /************************************************************/ //H2S_USART5引脚定义 /*******************************************************/ #define H2S_USART USART5 #define H2S_USART_CLK RCC_APB1Periph_USART5 #define H2S_USART_BAUDRATE 9600 //串口波特率 #define H2S_USART_RX_GPIO_PORT GPIOD #define H2S_USART_RX_GPIO_CLK RCC_AHBPeriph_GPIOD #define H2S_USART_RX_PIN GPIO_Pin_2 #define H2S_USART_RX_AF GPIO_AF_2 #define H2S_USART_RX_SOURCE GPIO_PinSource2 #define H2S_USART_TX_GPIO_PORT GPIOC #define H2S_USART_TX_GPIO_CLK RCC_AHBPeriph_GPIOC #define H2S_USART_TX_PIN GPIO_Pin_12 #define H2S_USART_TX_AF GPIO_AF_2 #define H2S_USART_TX_SOURCE GPIO_PinSource12 #define H2S_USART_IRQHandler USART3_8_IRQHandler #define H2S_USART_IRQ USART3_8_IRQn /************************************************************/ //CO2_USART6引脚定义 /*******************************************************/ #define CO2_USART USART6 #define CO2_USART_CLK RCC_APB2Periph_USART6 #define CO2_USART_BAUDRATE 9600 //串口波特率 #define CO2_USART_RX_GPIO_PORT GPIOA #define CO2_USART_RX_GPIO_CLK RCC_AHBPeriph_GPIOA #define CO2_USART_RX_PIN GPIO_Pin_5 #define CO2_USART_RX_AF GPIO_AF_5 #define CO2_USART_RX_SOURCE GPIO_PinSource5 #define CO2_USART_TX_GPIO_PORT GPIOA #define CO2_USART_TX_GPIO_CLK RCC_AHBPeriph_GPIOA #define CO2_USART_TX_PIN GPIO_Pin_4 #define CO2_USART_TX_AF GPIO_AF_5 #define CO2_USART_TX_SOURCE GPIO_PinSource4 #define CO2_USART_IRQHandler USART3_8_IRQHandler #define CO2_USART_IRQ USART3_8_IRQn /************************************************************/ //WIFI_USART7引脚定义 /*******************************************************/ #define WIFI_USART USART7 #define WIFI_USART_CLK RCC_APB2Periph_USART7 #define WIFI_USART_BAUDRATE 115200 //串口波特率 #define WIFI_USART_RX_GPIO_PORT GPIOC #define WIFI_USART_RX_GPIO_CLK RCC_AHBPeriph_GPIOC #define WIFI_USART_RX_PIN GPIO_Pin_7 #define WIFI_USART_RX_AF GPIO_AF_1 #define WIFI_USART_RX_SOURCE GPIO_PinSource7 #define WIFI_USART_TX_GPIO_PORT GPIOC #define WIFI_USART_TX_GPIO_CLK RCC_AHBPeriph_GPIOC #define WIFI_USART_TX_PIN GPIO_Pin_6 #define WIFI_USART_TX_AF GPIO_AF_1 #define WIFI_USART_TX_SOURCE GPIO_PinSource6 #define WIFI_USART_IRQHandler USART3_8_IRQHandler #define WIFI_USART_IRQ USART3_8_IRQn /************************************************************/ //LORA_USART8引脚定义 /*******************************************************/ #define LORA_USART USART8 #define LORA_USART_CLK RCC_APB2Periph_USART8 #define LORA_USART_BAUDRATE 9600 //串口波特率 #define LORA_USART_RX_GPIO_PORT GPIOC #define LORA_USART_RX_GPIO_CLK RCC_AHBPeriph_GPIOC #define LORA_USART_RX_PIN GPIO_Pin_9 #define LORA_USART_RX_AF GPIO_AF_1 #define LORA_USART_RX_SOURCE GPIO_PinSource9 #define LORA_USART_TX_GPIO_PORT GPIOC #define LORA_USART_TX_GPIO_CLK RCC_AHBPeriph_GPIOC #define LORA_USART_TX_PIN GPIO_Pin_8 #define LORA_USART_TX_AF GPIO_AF_1 #define LORA_USART_TX_SOURCE GPIO_PinSource8 #define LORA_USART_IRQHandler USART3_8_IRQHandler #define LORA_USART_IRQ USART3_8_IRQn /************************************************************/ //按键引脚定义 /*******************************************************/ #define BUTTON0_PORT GPIOB #define BUTTON0_CLK RCC_AHBPeriph_GPIOB #define BUTTON0_PIN GPIO_Pin_0 #define BUTTON0_EXTI_PORTSOURCE EXTI_PortSourceGPIOB #define BUTTON0_EXTI_PINSOURCE EXTI_PinSource0 #define BUTTON0_EXTI_LINE EXTI_Line0 #define BUTTON0_EXTI_IRQ EXTI0_1_IRQn #define BUTTON0_IRQHandler EXTI0_1_IRQHandler /*******************************************************/ //LORA_RST引脚定义 #define LORA_RST_PORT GPIOA #define LORA_RST_CLK RCC_AHBPeriph_GPIOA #define LORA_RST_PIN GPIO_Pin_8 #define NH3_BUF_LEN 64 #define CH2O_BUF_LEN 64 #define PM25_BUF_LEN 128 #define H2S_BUF_LEN 64 #define CO2_BUF_LEN 64 #define NH3_BUF_LEN 64 #define LoraNode_BUF_LEN 128 #define WIFI_BUF_LEN 128 void USART_RCC_Configuration(void); void GPIO_Configuration(void); void USART_Configuration(void); void NVIC_Configuration(void); void EXTI_Button_Config(void); void UsartxSendDataByte(USART_TypeDef* USARTx,uint16_t Data); void UsartxSendDataStr(USART_TypeDef* USARTx,const uint8_t Data[],uint32_t len); #endif /* __BSP_USART_H */