华大HC32F130J8如何使用内部FLASH存储用户数据
大家好,HC32F130这颗芯片用华大官网FLASH读写案例操作,能存用户数据,但是我的工程中开通了TIM中断和UART中断,导入FLASH读写程序后,程序跑到FLASH写操作时就会跑飞,请问有这方面经验的朋友指点一二,非常感谢!写Flash耗时5ms以上,要禁止中断 walton1226 发表于 2021-3-30 08:23
写Flash耗时5ms以上,要禁止中断
在网上找了一些资料,说是把写FLASH放在RAM中执行,能够规避与中断之间的冲突,不知道对不对,试了一下之后也是不行,搞得有点尴尬! 俺也一样,请问可以写入了吗? 俺的问题找到了,是因为flash配置时钟不对, 注意以下这个函数
*****************************************************************************
** \brief FLASH 初始化函数——中断服务程序、编程时间配置及低功耗模式
**
** 该函数用于配置中断服务函数、低功耗模式、根据系统时钟配置FLASH编程时间相关寄存器.
**
** \param u8FreqCfg FLASH编程时钟频率配置(根据HCLK的频率选择配置值):
** 1 - 4MHz;
** 2 - 8MHz;
** 4 - 16MHz;
** 6 - 24MHz;
** 8 - 32MHz;
** 12 - 48MHz;
** other -无效值
** \param bDpstbEn TRUE- 当系统进入DeepSleep模式,FLASH进入低功耗模式;
** FALSE - 当系统进入DeepSleep模式,FLASH不进入低功耗模式;
**
** \retval Ok 操作成功.
** \retval ErrorInvalidParameter 参数无效.
** \retval ErrorUninitialized 初始化失败。
*****************************************************************************/
en_result_t Flash_Init(uint8_t u8FreqCfg, boolean_t bDpstbEn) 修改scf文件,在flash尾部按sector大小分割出一块,专门用于存储数据,这样不会存在擦除代码区风险。 当做数据存储区操作
页:
[1]