STS_M1A/Core/Inc/main.h

164 lines
4.7 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/* USER CODE BEGIN Header */
/**
******************************************************************************
* @file : main.h
* @brief : Header for main.c file.
* This file contains the common defines of the application.
******************************************************************************
* @attention
*
* Copyright (c) 2021 STMicroelectronics.
* All rights reserved.
*
* This software is licensed under terms that can be found in the LICENSE file
* in the root directory of this software component.
* If no LICENSE file comes with this software, it is provided AS-IS.
*
******************************************************************************
*/
/* USER CODE END Header */
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef __MAIN_H
#define __MAIN_H
#ifdef __cplusplus
extern "C" {
#endif
/* Includes ------------------------------------------------------------------*/
#include "stm32wlxx_hal.h"
/* Private includes ----------------------------------------------------------*/
/* USER CODE BEGIN Includes */
/* USER CODE END Includes */
/* Exported types ------------------------------------------------------------*/
/* USER CODE BEGIN ET */
/* USER CODE END ET */
/* Exported constants --------------------------------------------------------*/
/* USER CODE BEGIN EC */
/* USER CODE END EC */
/* Exported macro ------------------------------------------------------------*/
/* USER CODE BEGIN EM */
/* USER CODE END EM */
/* Exported functions prototypes ---------------------------------------------*/
void Error_Handler(void);
/* USER CODE BEGIN EFP */
/* USER CODE END EFP */
/* Private defines -----------------------------------------------------------*/
#define RTC_N_PREDIV_S 10
#define RTC_PREDIV_S ((1<<RTC_N_PREDIV_S)-1)
#define RTC_PREDIV_A ((1<<(15-RTC_N_PREDIV_S))-1)
#define LED1_Pin GPIO_PIN_15
#define LED1_GPIO_Port GPIOB
#define LED2_Pin GPIO_PIN_9
#define LED2_GPIO_Port GPIOB
#define BUT1_Pin GPIO_PIN_0
#define BUT1_GPIO_Port GPIOA
#define BUT1_EXTI_IRQn EXTI0_IRQn
#define PROB2_Pin GPIO_PIN_13
#define PROB2_GPIO_Port GPIOB
#define PROB1_Pin GPIO_PIN_12
#define PROB1_GPIO_Port GPIOB
#define BUT3_Pin GPIO_PIN_6
#define BUT3_GPIO_Port GPIOC
#define BUT3_EXTI_IRQn EXTI9_5_IRQn
#define BUT2_Pin GPIO_PIN_1
#define BUT2_GPIO_Port GPIOA
#define BUT2_EXTI_IRQn EXTI1_IRQn
#define LED3_Pin GPIO_PIN_11
#define LED3_GPIO_Port GPIOB
#define USARTx_RX_Pin GPIO_PIN_3
#define USARTx_RX_GPIO_Port GPIOA
#define USARTx_TX_Pin GPIO_PIN_2
#define USARTx_TX_GPIO_Port GPIOA
#define USE_IPS_LCD_ST7789
/* USER CODE BEGIN Private defines */
#define VOLTAGE_DETECT_Pin GPIO_PIN_15
#define VOLTAGE_DETECT_GPIO_Port GPIOA
#define LED_Pin GPIO_PIN_8
#define LED_GPIO_Port GPIOA
/* FOR FLASH CHIP */
#define W25Q_CS_Pin GPIO_PIN_9
#define W25Q_CS_GPIO_Port GPIOA
/* FOR LCD ST7789 SPI MOSI CONTROL */
#if defined(USE_IPS_LCD_ST7789)
/* works well FOR NUCLEO WL55JC1/2
#if defined(STM32WL55xx)
#define MEMS_SPI_SCK_Pin GPIO_PIN_3
#define MEMS_SPI_SCK_GPIO_Port GPIOB
#define MEMS_SPI_MOSI_Pin GPIO_PIN_5
#define MEMS_SPI_MOSI_GPIO_Port GPIOB
#define LCD_RST_Pin GPIO_PIN_4
#define LCD_RST_GPIO_Port GPIOA
#define LCD_DC_Pin GPIO_PIN_5
#define LCD_DC_GPIO_Port GPIOA
#define LCD_CS_Pin GPIO_PIN_6
#define LCD_CS_GPIO_Port GPIOA
#define LCD_BL_Pin GPIO_PIN_7
#define LCD_BL_GPIO_Port GPIOA
#endif
*/
#if defined(STM32WLE5xx) || defined(STM32WL55xx) // ******************* STS_IOT_CORE & NUCLEO WL55JC1/2
#define MEMS_SPI_SCK_Pin GPIO_PIN_5
#define MEMS_SPI_SCK_GPIO_Port GPIOA
#define MEMS_SPI_MOSI_Pin GPIO_PIN_7
#define MEMS_SPI_MOSI_GPIO_Port GPIOA
#define LCD_RST_Pin GPIO_PIN_4
#define LCD_RST_GPIO_Port GPIOB
#define LCD_DC_Pin GPIO_PIN_3
#define LCD_DC_GPIO_Port GPIOB
#define LCD_CS_Pin GPIO_PIN_8
#define LCD_CS_GPIO_Port GPIOB
#define LCD_BL_Pin GPIO_PIN_5
#define LCD_BL_GPIO_Port GPIOB
#endif // ******************* for STS_IOT_CORE & NUCLEO WL55JC1/2
#define KEY1_Pin GPIO_PIN_0
#define KEY1_GPIO_Port GPIOA
#define KEY2_Pin GPIO_PIN_1
#define KEY2_GPIO_Port GPIOA
#endif
#if defined(STM32WLE5xx)|| defined(STM32WL55xx)
extern I2C_HandleTypeDef hi2c2;
#define MEMS_I2C_HANDLE hi2c2
#define MEMS_I2C_SCL_Pin GPIO_PIN_12
#define MEMS_I2C_SCL_GPIO_Port GPIOA
#define MEMS_I2C_SDA_Pin GPIO_PIN_11
#define MEMS_I2C_SDA_GPIO_Port GPIOA
#define MEMS_SENSOR_INTERRUPT_Pin GPIO_PIN_8
#define MEMS_SENSOR_INTERRUPT_GPIO_Port GPIOA
#define MEMS_SENSOR_INTERRUPT_EXTI_IRQn EXTI9_5_IRQn
//#define MEMS_ENABLE_Pin GPIO_PIN_5
//#define MEMS_ENABLE_GPIO_Port GPIOB
#endif
/* USER CODE END Private defines */
#ifdef __cplusplus
}
#endif
#endif /* __MAIN_H */