chen
2024-09-20 292ed46c6066d47289f1330b1c2bcc6d74761f95
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include "mainex.h"
 
//#define FLASH_SIZE               (uint32_t)0x10000
#define PAGE_SIZE               (0x100)                       //C8T6 Flash is 64KB ,each page is 256Byte
#define MAX_FPAGE_NUM           64
  
#define FLASH_BASE_ADDR           (uint32_t)0x08000000    //the start address of APP,keep the 0x8000000-0x8004FFF forIAP(20K)
 
#define FLASH_IAP_CTRL_MAP        (uint32_t)0x0803fc00    //the control map start address, 255K
#define FLASH_IAPFLAG_MAP                (uint32_t)0x08003410
 
#define MAX_APP_ADDR              (uint32_t)0x0800FFFF    //the max array of Flash address 
#define FLASH_HARDWARE_VERSION_MAP        (uint32_t)0x08002c00    //Ó²¼þ°æ±¾ºÅºÍÅú´ÎÐÅϢλÖÃ
 
#define NVIC_VectTab_FLASH           ((uint32_t)0x08000000)
 
//parameters position
uint32_t FLASH_Pages_Calculate(uint32_t Size);
uint32_t FLASH_Prepare( uint32_t Address, uint32_t Len);
void FLASH_Read( uint32_t Address, uint8_t *Readbuff, uint32_t Len);
uint32_t FLASH_Write( uint32_t Address, const uint8_t* pData, uint32_t Len);
void FLASH_Dis_WriteProt_Pages(void);
    unsigned short int STMFLASH_ReadHalfWord(unsigned int faddr);