#ifndef _STMFLASH_H #define _STMFLASH_H #include "stm32f10x.h" ////////////////////////////////////////////////////////////////////////////////////////////////////// //用户根据自己的需要设置 #define STM32_FLASH_SIZE 256 //所选STM32的FLASH容量大小(单位为K) #define STM32_FLASH_WREN 1 //使能FLASH写入(0,不是能;1,使能) ////////////////////////////////////////////////////////////////////////////////////////////////////// //FLASH起始地址 #define STM32_FLASH_BASE 0x08000000 //STM32 FLASH的起始地址 //FLASH解锁键值 //#define PC_NUM_ADDR 0x08030000 //数据存储开始地址 0X08030000-0X08030023 #define STORE_DATA_NUM 10 //数组中的数据个数 extern u16 StoreBuffer[STORE_DATA_NUM];//要写入flash中的数据 extern u8 Save_Buffer[STORE_DATA_NUM*2];//要通过串口读出来的数据 u16 STMFLASH_ReadHalfWord(u32 faddr); //读出半字 void STMFLASH_WriteLenByte(u32 WriteAddr,u32 DataToWrite,u16 Len); //指定地址开始写入指定长度的数据 u32 STMFLASH_ReadLenByte(u32 ReadAddr,u16 Len); //指定地址开始读取指定长度数据 void STMFLASH_Write(u32 WriteAddr,u16 *pBuffer,u16 NumToWrite); //从指定地址开始写入指定长度的数据 void STMFLASH_Read(u32 ReadAddr,u16 *pBuffer,u16 NumToRead); //从指定地址开始读出指定长度的数据 //测试写入 void Test_Write(u32 WriteAddr,u16 WriteData); #endif