APM32F103VCT6 写内部Flash失败解决方案(亲试可用)


1 前言

  • STM32芯片价格飞涨,现用 APM32F103VCT6 替代 STM32F103VCT6

  • 遇到问题:用同样的代码去分别读写上述两种型号芯片的内部Flash:

    • 读写STM32F103VCT6内部Flash成功

    • 读写APM32F103VCT6内部Flash,会出现读写数据不正确的现象。

2 APM32F103xCxDxE 与 Sxx32F103xCxDxE 差异

3 两种解决方案

3.1 解决方案1 - 换芯片型号

  • 换APM32的另一个型号的芯片 APM32E103VCT6
  • APM32E103VCT6 优化了这个差异
  • 此方案不用修改代码去兼容STM32和APPM32


3.2 解决方案2 - 改代码

  • 改写芯片内部Flash函数:写前关闭总中断,写后再打开总中断
  • 这样改写,可兼容STM32和APM32两款芯片
void STMFlash_Write(u32 WriteAddr, u16 *pBuffer, u16 NumToWrite)	
{
	__disable_irq();	// 写内部Flash前,关闭总中断

	/*****这里进行写内部Flash操作*******/

	__enable_irq();		//写内部Flash后,打开总中断
}

4. 想说的话


授人以鱼,不如授人以渔

这里只提供钓鱼方法而不是一条完整的鱼

有问题欢迎留言交流 / 指正o( *  ̄▽ ̄ * )ブ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

努力的小肥丸

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值