diff options
Diffstat (limited to 'Projects/NUCLEO-WB35CE/Examples_LL/I2C/I2C_TwoBoards_MasterRx_SlaveTx_IT_Init/Inc/main.h')
-rw-r--r-- | Projects/NUCLEO-WB35CE/Examples_LL/I2C/I2C_TwoBoards_MasterRx_SlaveTx_IT_Init/Inc/main.h | 130 |
1 files changed, 130 insertions, 0 deletions
diff --git a/Projects/NUCLEO-WB35CE/Examples_LL/I2C/I2C_TwoBoards_MasterRx_SlaveTx_IT_Init/Inc/main.h b/Projects/NUCLEO-WB35CE/Examples_LL/I2C/I2C_TwoBoards_MasterRx_SlaveTx_IT_Init/Inc/main.h new file mode 100644 index 000000000..180dfb2b5 --- /dev/null +++ b/Projects/NUCLEO-WB35CE/Examples_LL/I2C/I2C_TwoBoards_MasterRx_SlaveTx_IT_Init/Inc/main.h @@ -0,0 +1,130 @@ +/* USER CODE BEGIN Header */ +/** + ****************************************************************************** + * @file Examples_LL/I2C/I2C_TwoBoards_MasterRx_SlaveTx_IT_Init/Inc/main.h + * @author MCD Application Team + * @brief Header for main.c module + ****************************************************************************** + * @attention + * + * <h2><center>© Copyright (c) 2019 STMicroelectronics. + * All rights reserved.</center></h2> + * + * This software component is licensed by ST under BSD 3-Clause license, + * the "License"; You may not use this file except in compliance with the + * License. You may obtain a copy of the License at: + * opensource.org/licenses/BSD-3-Clause + * + ****************************************************************************** + */ +/* USER CODE END Header */ + +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __MAIN_H +#define __MAIN_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "stm32wbxx.h" +#include "stm32wbxx_ll_i2c.h" +#include "stm32wbxx_ll_crs.h" +#include "stm32wbxx_ll_rcc.h" +#include "stm32wbxx_ll_bus.h" +#include "stm32wbxx_ll_system.h" +#include "stm32wbxx_ll_exti.h" +#include "stm32wbxx_ll_cortex.h" +#include "stm32wbxx_ll_utils.h" +#include "stm32wbxx_ll_pwr.h" +#include "stm32wbxx_ll_dma.h" +#include "stm32wbxx_ll_gpio.h" + +#if defined(USE_FULL_ASSERT) +#include "stm32_assert.h" +#endif /* USE_FULL_ASSERT */ + +/* 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 */ +/** + * @brief Toggle periods for various blinking modes + */ + +#define LED_BLINK_FAST 200 +#define LED_BLINK_SLOW 500 +#define LED_BLINK_ERROR 1000 + +/** + * @brief Slave settings + */ +#define SLAVE_OWN_ADDRESS 180 /* This value is a left shift of a real 7 bits of a slave address + value which can find in a Datasheet as example: b0101101 + mean in uint8_t equivalent at 0x2D and this value can be + seen in the OAR1 register in bits OA1[1:7] */ + +/* Uncomment this line to use the board as slave, if not it is used as master */ +#define SLAVE_BOARD + +/* 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 */ +/* IRQ Handler treatment functions */ +#ifdef SLAVE_BOARD +void Slave_Ready_To_Transmit_Callback(void); +void Slave_Complete_Callback(void); +#else /* MASTER_BOARD */ +void Master_Reception_Callback(void); +void Master_Complete_Callback(void); +void UserButton_Callback(void); +#endif /* SLAVE_BOARD */ +void Error_Callback(void); +/* USER CODE END EFP */ + +/* Private defines -----------------------------------------------------------*/ +#define USER_BUTTON_Pin LL_GPIO_PIN_0 +#define USER_BUTTON_GPIO_Port GPIOA +#define USER_BUTTON_EXTI_IRQn EXTI0_IRQn +#define LED2_Pin LL_GPIO_PIN_0 +#define LED2_GPIO_Port GPIOB +#ifndef NVIC_PRIORITYGROUP_0 +#define NVIC_PRIORITYGROUP_0 ((uint32_t)0x00000007) /*!< 0 bit for pre-emption priority, + 4 bits for subpriority */ +#define NVIC_PRIORITYGROUP_1 ((uint32_t)0x00000006) /*!< 1 bit for pre-emption priority, + 3 bits for subpriority */ +#define NVIC_PRIORITYGROUP_2 ((uint32_t)0x00000005) /*!< 2 bits for pre-emption priority, + 2 bits for subpriority */ +#define NVIC_PRIORITYGROUP_3 ((uint32_t)0x00000004) /*!< 3 bits for pre-emption priority, + 1 bit for subpriority */ +#define NVIC_PRIORITYGROUP_4 ((uint32_t)0x00000003) /*!< 4 bits for pre-emption priority, + 0 bit for subpriority */ +#endif +/* USER CODE BEGIN Private defines */ + +/* USER CODE END Private defines */ + +#ifdef __cplusplus +} +#endif + +#endif /* __MAIN_H */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ |