因CH32F103 相对于STM32F103 flash 操作多了快速编程模式,该文档说明主要目的是为了方便客户在原先ST 工程的基础上实现flash 快速编程模式的快速移植。
1、在stm32f10x.h 文件中,在FLASH_TypeDef 结构体中,增加MODEKEYR 成员定义。
修改后如下图所示:
2、在stm32f10x_flash.c文件中,在FLASH_Unlock 函数中,增加MODEKEYR 成员的操作。修改后如下图所示:
3、目前CH32F103 的FLASH 最大为64K,在stm32f10x_flash.h 文件中,增加对于flash 容量的定义
修改后如下图所示:
注:大容量芯片可以相应修改STM32_FLASH_BASE_END的“0x10000”数据即可
4、在stm32f10x_flash.c 文件中,增加flash 寄存器快速编程位定义
修改后如下图所示:
5、在stm32f10x_flash.c 文件中,修改FLASH_ErasePage()函数
修改后如下图所示:
6、在stm32f10x_flash.c 中增加FLASH_BufReset()函数、FLASH_BufLoad()函数和FLASH_ProgramPage_Fast()快速编程函数。
修改后如下图所示:
7、在stm32f10x_flash.h文件中,增加FLASH_BufReset()函数、FLASH_BufLoad()函数和FLASH_ProgramPage_Fast()快速编程函数的声明。
修改后如下图所示:
8、上述步骤完成后,即可执行单次128字节的编程,在main.c文件中,编写Flash_Test_Fast()函数,使能USART1_TX(PA9)打印调试结果,测试单次128字节编程。
标签:STM32F103,FLASH,函数,stm32f10x,flash,CH32F103,所示,编程 From: https://www.cnblogs.com/wchmcu/p/17078923.html