njhying 发表于 2018-4-29 19:42:37

DSPIC33FJ芯片使用FLASH自编程功能时,只要有中断函数就失效!

本帖最后由 njhying 于 2018-4-29 19:46 编辑

现在使用DSPIC33FJ64MC802的单片机,为了能够保存参数,参考了官方的例程,使用官方简单例程时,功能正常,但是在自己的程序中使用时,因为有2个中断函数,就不正常了,请问是什么原因和解决办法,谢谢!

注:上点初始化后就测试FLASH的读写功能,中断都还没有打开,就不行了。要么在代码中去除中断函数的代码,要么去除FLASH读写函数,才能有正确的对应功能。

需要莫元直接说哈,我还没有操作过。

vipcff 发表于 2018-4-29 20:04:30

手册有没有建议读写的时候关闭中断?

njhying 发表于 2018-4-29 21:17:54

本帖最后由 njhying 于 2018-4-29 21:19 编辑

vipcff 发表于 2018-4-29 20:04
手册有没有建议读写的时候关闭中断?

中断都还没有开始,只是上电后测试一下FLASH读写函数,只是有中断函数的程序段就不行。我用的C30。

lushanlq 发表于 2018-6-1 21:55:00

我用stm32也遇到同样问题,猜测是MDK链接器的原因,因为FLASH写之前需要整页擦除,而页的未用部分存有只读数据,被破坏了

lushanlq 发表于 2018-6-1 21:55:00

我用stm32也遇到同样问题,猜测是MDK链接器的原因,因为FLASH写之前需要整页擦除,而页的未用部分存有只读数据,被破坏了

lushanlq 发表于 2018-6-1 21:55:00

我用stm32也遇到同样问题,猜测是MDK链接器的原因,因为FLASH写之前需要整页擦除,而页的未用部分存有只读数据,被破坏了

lushanlq 发表于 2018-6-1 21:55:00

我用stm32也遇到同样问题,猜测是MDK链接器的原因,因为FLASH写之前需要整页擦除,而页的未用部分存有只读数据,被破坏了

lushanlq 发表于 2018-6-1 21:55:00

我用stm32也遇到同样问题,猜测是MDK链接器的原因,因为FLASH写之前需要整页擦除,而页的未用部分存有只读数据,被破坏了

lushanlq 发表于 2018-6-1 21:55:00

我用stm32也遇到同样问题,猜测是MDK链接器的原因,因为FLASH写之前需要整页擦除,而页的未用部分存有只读数据,被破坏了

lushanlq 发表于 2018-6-1 22:00:58

可以试一试定义一个1024个字节const数组,把这个页占下来,页擦除就不会破坏只读数据了,这只是个思路

lushanlq 发表于 2018-6-1 22:04:49

前面那个回复因为网络的原因发重了,望站长见谅

小西西 发表于 2018-6-1 22:54:37

楼主检查一下是否擦除了中断向量表
页: [1]
查看完整版本: DSPIC33FJ芯片使用FLASH自编程功能时,只要有中断函数就失效!