/** ****************************************************************************** * @file USB_Host/FWupgrade_Standalone/Inc/flash_if.h * @author MCD Application Team * @brief Header file for flash_if.c ****************************************************************************** * @attention * * Copyright (c) 2017 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. * ****************************************************************************** *//* ... *//* Define to prevent recursive inclusion -------------------------------------*/#ifndef__FLASH_IF_H#define__FLASH_IF_H#ifdef__cplusplusextern"C"{#endif/* Includes ------------------------------------------------------------------*/#include"stm32f4xx_hal.h"Includes/* Exported types ------------------------------------------------------------*/typedefvoid(*pFunction)(void);Exported types/* Exported constants --------------------------------------------------------*//* Define the flash memory start address */#defineUSER_FLASH_STARTADDRESS((uint32_t)0x08000000)/* Define the address from where user application will be loaded.Note: the 1st and the second sectors 0x08000000-0x08007FFF are reservedfor the Firmware upgrade code *//* ... */#defineAPPLICATION_ADDRESS(uint32_t)0x08008000/* Last Page Address */#defineUSER_FLASH_LAST_PAGE_ADDRESS0x081FFFFF-4/* Define the user application size */#defineUSER_FLASH_SIZE(USER_FLASH_LAST_PAGE_ADDRESS-APPLICATION_ADDRESS+1)/* Base address of the Flash sectors *//* Bank 1 */#defineADDR_FLASH_SECTOR_0((uint32_t)0x08000000)/* Base @ of Sector 0, 16 Kbytes */#defineADDR_FLASH_SECTOR_1((uint32_t)0x08004000)/* Base @ of Sector 1, 16 Kbytes */#defineADDR_FLASH_SECTOR_2((uint32_t)0x08008000)/* Base @ of Sector 2, 16 Kbytes */#defineADDR_FLASH_SECTOR_3((uint32_t)0x0800C000)/* Base @ of Sector 3, 16 Kbytes */#defineADDR_FLASH_SECTOR_4((uint32_t)0x08010000)/* Base @ of Sector 4, 64 Kbytes */#defineADDR_FLASH_SECTOR_5((uint32_t)0x08020000)/* Base @ of Sector 5, 128 Kbytes */#defineADDR_FLASH_SECTOR_6((uint32_t)0x08040000)/* Base @ of Sector 6, 128 Kbytes */#defineADDR_FLASH_SECTOR_7((uint32_t)0x08060000)/* Base @ of Sector 7, 128 Kbytes */#defineADDR_FLASH_SECTOR_8((uint32_t)0x08080000)/* Base @ of Sector 8, 128 Kbytes */#defineADDR_FLASH_SECTOR_9((uint32_t)0x080A0000)/* Base @ of Sector 9, 128 Kbytes */#defineADDR_FLASH_SECTOR_10((uint32_t)0x080C0000)/* Base @ of Sector 10, 128 Kbytes */#defineADDR_FLASH_SECTOR_11((uint32_t)0x080E0000)/* Base @ of Sector 11, 128 Kbytes *//* Bank 2 */#defineADDR_FLASH_SECTOR_12((uint32_t)0x08100000)/* Base @ of Sector 12, 16 Kbytes */#defineADDR_FLASH_SECTOR_13((uint32_t)0x08104000)/* Base @ of Sector 13, 16 Kbytes */#defineADDR_FLASH_SECTOR_14((uint32_t)0x08108000)/* Base @ of Sector 14, 16 Kbytes */#defineADDR_FLASH_SECTOR_15((uint32_t)0x0810C000)/* Base @ of Sector 15, 16 Kbytes */#defineADDR_FLASH_SECTOR_16((uint32_t)0x08110000)/* Base @ of Sector 16, 64 Kbytes */#defineADDR_FLASH_SECTOR_17((uint32_t)0x08120000)/* Base @ of Sector 17, 128 Kbytes */#defineADDR_FLASH_SECTOR_18((uint32_t)0x08140000)/* Base @ of Sector 18, 128 Kbytes */#defineADDR_FLASH_SECTOR_19((uint32_t)0x08160000)/* Base @ of Sector 19, 128 Kbytes */#defineADDR_FLASH_SECTOR_20((uint32_t)0x08180000)/* Base @ of Sector 20, 128 Kbytes */#defineADDR_FLASH_SECTOR_21((uint32_t)0x081A0000)/* Base @ of Sector 21, 128 Kbytes */#defineADDR_FLASH_SECTOR_22((uint32_t)0x081C0000)/* Base @ of Sector 22, 128 Kbytes */#defineADDR_FLASH_SECTOR_23((uint32_t)0x081E0000)/* Base @ of Sector 23, 128 Kbytes */28 definesExported constants/* Exported macros -----------------------------------------------------------*//* Exported functions ------------------------------------------------------- */voidFLASH_If_FlashUnlock(void);FlagStatusFLASH_If_ReadOutProtectionStatus(void);uint32_tFLASH_If_EraseSectors(uint32_tAddress);uint32_tFLASH_If_Write(uint32_tAddress,uint32_tData);#ifdef__cplusplus}extern "C" { ... }#endif/* ... */#endif/* __FLASH_IF_H */
Details
Show: from
Types: Columns:
All items filtered out
All items filtered out
This file uses the notable symbols shown below. Click anywhere in the file to view more details.