67 lines
2.5 KiB
C
67 lines
2.5 KiB
C
#pragma once
|
||
|
||
#ifdef __cplusplus
|
||
extern "C" {
|
||
#endif
|
||
|
||
/*4表示16KB(小容量ld), 6表示32KB(小容量ld), 8表示64KB(中容量md),
|
||
B表示128KB(中容量md), C表示256 KB(大容量hd), E表示512 KB(大容量hd),
|
||
F表示768KB(超大容量xl), G表示1024KB(超大容量xl), */
|
||
/* Includes ------------------------------------------------------------------ */
|
||
#include <main.h>
|
||
|
||
#include "bsp/bsp.h"
|
||
|
||
/* Exported constants -------------------------------------------------------- */
|
||
|
||
|
||
/* Exported macro ------------------------------------------------------------ */
|
||
|
||
#define STM32F103x8
|
||
#ifdef STM32F103x8
|
||
/*
|
||
页0 0x0800 0000-0x0800 07FF
|
||
页1 0x0800 0800-0x0800 0FFF
|
||
页2 0x0800 1000-0x0800 17FF
|
||
页3 0x0800 1800-0x0800 1FFF
|
||
页255 0x0807 F800-0x0807 FFFF
|
||
系统存储器 0x1FFF F000 -0x1FFF F7FF
|
||
*/
|
||
#define ADDR_FLASH_SECTOR(x) ((uint32_t)0x08000000) + ((x) * 0x800) //每个扇区2KB
|
||
#endif
|
||
|
||
/* Base address of the Flash sectors */
|
||
#define ADDR_FLASH_SECTOR_0 ((uint32_t)0x08000000)
|
||
/* Base address of Sector 0, 16 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_1 ((uint32_t)0x08004000)
|
||
/* Base address of Sector 1, 16 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_2 ((uint32_t)0x08008000)
|
||
/* Base address of Sector 2, 16 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_3 ((uint32_t)0x0800C000)
|
||
/* Base address of Sector 3, 16 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_4 ((uint32_t)0x08010000)
|
||
/* Base address of Sector 4, 64 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_5 ((uint32_t)0x08020000)
|
||
/* Base address of Sector 5, 128 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_6 ((uint32_t)0x08040000)
|
||
/* Base address of Sector 6, 128 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_7 ((uint32_t)0x08060000)
|
||
/* Base address of Sector 7, 128 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_8 ((uint32_t)0x08080000)
|
||
/* Base address of Sector 8, 128 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_9 ((uint32_t)0x080A0000)
|
||
/* Base address of Sector 9, 128 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_10 ((uint32_t)0x080C0000)
|
||
/* Base address of Sector 10, 128 Kbytes */
|
||
#define ADDR_FLASH_SECTOR_11 ((uint32_t)0x080E0000)
|
||
/* Base address of Sector 11, 128 Kbytes */
|
||
/* Exported types ------------------------------------------------------------ */
|
||
/* Exported functions prototypes --------------------------------------------- */
|
||
void BSP_Flash_EraseSector(uint32_t sector);
|
||
void BSP_Flash_WriteBytes(uint32_t address, const uint8_t *buf, size_t len);
|
||
void BSP_Flash_ReadBytes(uint32_t address, void *buf, size_t len);
|
||
|
||
#ifdef __cplusplus
|
||
}
|
||
#endif
|