| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219 |
- #ifndef __MAIN_H_
- #define __MAIN_H_
- #include "stm32f10x_conf.h"
- #include <stdio.h>
- #include <stdlib.h>
- #include <stdbool.h>
- #include <string.h>
- #include <math.h>
- #include "sys.h"
- //功能配置
- #if defined (STM32F10X_VET6_DEF)
- #define SYSLed_def (1)
- #define key16_def (0)
- #define Solen_def (1)
- #define LCD_def (1)
- #define Pull_up_down_def (0)
- #define DS1302_def (1)
- #define TEA5767_def (0)
- #define DHT11_def (1)
- #define WIFI_Uart1_def (1)
- #define xy5200_Uart2_def (1)
- #define SPI1_DMA_SD_def (1)
- #define UART1_SD_def (0)
- #define SPI2_DMA_SD_def (0)
- //wifi注册ID\服务器ID\目标ID
- #define SERVER_ID 0x00
- #define REGMY_ID 0x03
- #define AIM_ID 0x02
- #elif defined (STM32F10X_C8T6_DEF)
- #define SYSLed_def (0)
- #define key16_def (0)
- #define Solen_def (1)
- #define LCD_def (1)
- #define Pull_up_down_def (0)
- #define DS1302_def (0)
- #define TEA5767_def (0)
- #define DHT11_def (1)
- #define WIFI_Uart1_def (1)
- #define xy5200_Uart2_def (0)
- #define SPI1_DMA_SD_def (1)
- #define UART1_SD_def (0)
- #define SPI2_DMA_SD_def (0)
- //wifi注册ID\服务器ID\目标ID
- #define SERVER_ID 0x00
- #define REGMY_ID 0x04
- #define AIM_ID 0x02
- #endif
- /*SYSLed_def*/
- #define LED_RCC_CONFIG (RCC_APB2Periph_GPIOC)
- #define LED_PORT_CONFIG (GPIOC)
- #define LED_PIN_CONFIG (GPIO_Pin_7)
- //GPIO_Pin_6已经 用作wifi信号led
- #define LED_PC7_LOW() (GPIO_ResetBits(LED_PORT_CONFIG, LED_PIN_CONFIG))
- #define LED_PC7_HIGH() (GPIO_SetBits(LED_PORT_CONFIG, LED_PIN_CONFIG))
- /*key16_def*/
- #define KEY16_RCC_CONFIG (RCC_APB2Periph_GPIOA)
- #define KEY16_PORT_CONFIG (GPIOA)
- #define KEY16_OUTPIN_CONFIG (GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3)
- #define KEY16_INPIN_CONFIG (GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6|GPIO_Pin_7)
- /*Solen_def*/
- //E8 E9 ->B2
- #if defined (STM32F10X_VET6_DEF)
- #define SOLEN_RCC_CONFIG (RCC_APB2Periph_GPIOE)
- #define SOLEN_PORT_CONFIG (GPIOE)
- #define SOLEN_PIN_CONFIG (GPIO_Pin_8|GPIO_Pin_9)
- #define SOLEN_PE8_LOW() (GPIO_ResetBits(SOLEN_PORT_CONFIG, GPIO_Pin_8))
- #define SOLEN_PE8_HIGH() (GPIO_SetBits(SOLEN_PORT_CONFIG, GPIO_Pin_8))
- #define SOLEN_PE9_LOW() (GPIO_ResetBits(SOLEN_PORT_CONFIG, GPIO_Pin_9))
- #define SOLEN_PE9_HIGH() (GPIO_SetBits(SOLEN_PORT_CONFIG, GPIO_Pin_9))
- #elif defined (STM32F10X_C8T6_DEF)
- #define SOLEN_RCC_CONFIG (RCC_APB2Periph_GPIOB)
- #define SOLEN_PORT_CONFIG (GPIOB)
- #define SOLEN_PIN_CONFIG (GPIO_Pin_2)
- #define SOLEN_PE8_LOW() (GPIO_ResetBits(SOLEN_PORT_CONFIG, SOLEN_PIN_CONFIG))
- #define SOLEN_PE8_HIGH() (GPIO_SetBits(SOLEN_PORT_CONFIG, SOLEN_PIN_CONFIG))
- #define SOLEN_PE9_LOW() //(GPIO_ResetBits(SOLEN_PORT_CONFIG, GPIO_Pin_9))
- #define SOLEN_PE9_HIGH() //(GPIO_SetBits(SOLEN_PORT_CONFIG, GPIO_Pin_9))
- #endif
- /*LCD_def*/
- #if defined (STM32F10X_VET6_DEF)
- #define LCD_N5110_RCC (RCC_APB2Periph_GPIOE)
- #define LCD_N5110_PORT (GPIOE)
- #define LCD_N5110_PIN (GPIO_Pin_0|GPIO_Pin_1|GPIO_Pin_2|GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5)
- #define BACKLIGHT (PEout(0))
- #define LCD_RST (PEout(1))
- #define LCD_CE (PEout(2))
- #define LCD_DC (PEout(3))
- #define SDIN (PEout(4))
- #define SCLK (PEout(5))
- #elif defined (STM32F10X_C8T6_DEF)
- #define LCD_N5110_RCC (RCC_APB2Periph_GPIOB)
- #define LCD_N5110_PORT (GPIOB)
- #define LCD_N5110_PIN (GPIO_Pin_10|GPIO_Pin_11|GPIO_Pin_12|GPIO_Pin_13|GPIO_Pin_14|GPIO_Pin_15)
- #define BACKLIGHT (PBout(10))
- #define LCD_RST (PBout(11))
- #define LCD_CE (PBout(12))
- #define LCD_DC (PBout(13))
- #define SDIN (PBout(14))
- #define SCLK (PBout(15))
- #endif
- /*Pull_up_down_def*/
- #define PULL_RCC_CONFIG (RCC_APB2Periph_GPIOE)
- #define PULL_PORT_CONFIG (GPIOE)
- #define PULL_PIN_CONFIG (GPIO_Pin_8 | GPIO_Pin_9 | GPIO_Pin_10 | GPIO_Pin_11)
- #define PULL_UP_PIN (GPIO_Pin_8 | GPIO_Pin_10)
- #define PULL_DOWN_PIN (GPIO_Pin_9 | GPIO_Pin_11)
- /*DS1302_def*/
- #define DS1302_IORCC (RCC_APB2Periph_GPIOB) //DS18B20对应IO的时钟
- #define DS1302_PORT (GPIOB)
- #define DS1302_SCK_PIN (GPIO_Pin_2) //定义DS18B20对应的IO口
- #define DS1302_IO_PIN (GPIO_Pin_1)
- #define DS1302_CE_PIN (GPIO_Pin_0)
- /*TEA5767_def*/
- #define TEA5767_RCC_CONFIG (RCC_APB2Periph_GPIOD)
- #define TEA5767_PORT_CONFIG (GPIOD)
- #define TEA5767_PIN_CONFIG (GPIO_Pin_12 | GPIO_Pin_13)
- #define TEA5767_SCL (PDout(13))
- #define TEA5767_SDA (PDout(12))
- #define TEA5767_SDA_VALUE (TEA5767ReadSDA())
- /*DHT11_def*/
- //C4->B0
- #if defined (STM32F10X_VET6_DEF)
- #define DHT11_IORCC (RCC_APB2Periph_GPIOC) //DHT11对应IO的时钟
- #define DHT11_PORT (GPIOC)
- #define DHT11_DATA_PIN (GPIO_Pin_4) //定义DHT11对应的IO口
- #define DHT11_Out (PCout(4))
- #define DHT11_In (PCin(4))
- #elif defined (STM32F10X_C8T6_DEF)
- #define DHT11_IORCC (RCC_APB2Periph_GPIOB) //DHT11对应IO的时钟
- #define DHT11_PORT (GPIOB)
- #define DHT11_DATA_PIN (GPIO_Pin_0) //定义DHT11对应的IO口
- #define DHT11_Out (PBout(0))
- #define DHT11_In (PBin(0))
- #endif
- /*WIFI_Uart1_def*/
- //UART1
- #define Wifi_SEL_UART (1)
- #if(Wifi_SEL_UART == 1)
- /****** RCC 配置******/
- /* APB2: USART1
- ** APB1: USART2\3\4\5
- */
- #define Wifi_RCC_GPIO_CONFIG() (RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE))
- #define Wifi_RCC_UART_CONFIG() (RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE))
- //波特率
- #define Wifi_UART_BAUD (115200)
- /****** GPIO 配置******/
- //UART端口号
- #define Wifi_GPIO (GPIOA)
- #define Wifi_Tx (GPIO_Pin_9)
- #define Wifi_Rx (GPIO_Pin_10)
- //串口号
- #define Wifi_UART (USART1)
- /****** UART优先级******/
- #define Wifi_NVIC_Group (NVIC_PriorityGroup_0)
- #define Wifi_NVIC_Interrupt (USART1_IRQn) //uart1中断号
- #define Wifi_NVIC_Pre (0)
- #define Wifi_NVIC_Sub (1)
- #endif
- //复位脚 PB10
- #define Reset_IORCC (RCC_APB2Periph_GPIOB) //Reset对应IO的时钟
- #define Reset_PORT (GPIOB)
- #define Reset_Pin (GPIO_Pin_4)
- //信号脚 PB15
- //C6->C13
- #if defined (STM32F10X_VET6_DEF)
- #define WifiLed_IORCC (RCC_APB2Periph_GPIOC) //Reset对应IO的时钟
- #define WifiLed_PORT (GPIOC)
- #define WifiLed_Pin (GPIO_Pin_6)
- #define WifiLedOn (GPIO_SetBits(WifiLed_PORT, WifiLed_Pin))
- #define WifiLedOff (GPIO_ResetBits(WifiLed_PORT, WifiLed_Pin))
- #elif defined (STM32F10X_C8T6_DEF)
- #define WifiLed_IORCC (RCC_APB2Periph_GPIOC) //Reset对应IO的时钟
- #define WifiLed_PORT (GPIOC)
- #define WifiLed_Pin (GPIO_Pin_13)
- #define WifiLedOn (GPIO_SetBits(WifiLed_PORT, WifiLed_Pin))
- #define WifiLedOff (GPIO_ResetBits(WifiLed_PORT, WifiLed_Pin))
- #endif
- /*YX5200*/
- //UART2
- #define YX5200_SEL_UART (2)
- #if(YX5200_SEL_UART == 2)
- /****** RCC 配置******/
- /* APB2: USART1
- ** APB1: USART2\3\4\5
- */
- #define YX5200_RCC_GPIO_CONFIG() (RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD|RCC_APB2Periph_AFIO,ENABLE))
- #define YX5200_RCC_UART_CONFIG() (RCC_APB1PeriphClockCmd(RCC_APB1Periph_USART2,ENABLE))
- #define YX5200_RCC_Remap_CONFIG() (GPIO_PinRemapConfig(GPIO_Remap_USART2, ENABLE))
- //波特率
- #define YX5200_UART_BAUD (9600)
- /****** GPIO 配置******/
- //UART端口号
- #define YX5200_GPIO (GPIOD)
- #define YX5200_Tx (GPIO_Pin_5)
- #define YX5200_Rx (GPIO_Pin_6)
- //串口号
- #define YX5200_UART (USART2)
- /****** UART优先级******/
- #define YX5200_NVIC_Group (NVIC_PriorityGroup_0)
- #define YX5200_NVIC_Interrupt (USART2_IRQn) //uart1中断号
- #define YX5200_NVIC_Pre (0)
- #define YX5200_NVIC_Sub (2)
- #endif
- #define LCD_Backlight_AutoOff_Time_DEF (12000/100) //12s,在100ms扫描函数里
- //配置函数
- extern bool DS1302ReadIO ( void );
- extern bool TEA5767ReadSDA ( void );
- #endif
|