2019-07-20 10:03发布
郭子 发表于 2018-1-11 08:59 谢谢原子哥,我是在中断里喂狗的,但是这个操作FLASH的时间在哪里可以设置呢?没找到啊
Noctis 发表于 2018-1-11 09:50 FLASH的烧写、刷除时间你是改变不了的。另外你这个问题不是简单的在中断里喂狗就可以的。本身窗口看门狗 ...
郭子 发表于 2018-1-11 11:28 万分感谢,我试一下吧,之前你说的“在对FLASH操作前建一个定时器,在定时器中喂狗,操作完后关闭定时器 ...
最多设置5个标签!
FLASH的烧写、刷除时间你是改变不了的。另外你这个问题不是简单的在中断里喂狗就可以的。本身窗口看门狗用起来就比较麻烦,你要自己算好间隔,不能迟喂也不能早喂。而且最麻烦的是,默认情况下你的中断向量是在FLASH中,当你对FLASH进行写操作时,中断函数是执行不了的,因为写操作期间读不了FLASH。所以你还需要将中断向量移到ram中,中断函数也要放在ram中,否则你的喂狗时间肯定不准。
我在FLASH_WaitForLastOperation(FLASH_WAITETIME); //等待上次操作完成这个函数里面也进行了喂狗,这个函数就是等待FLASH操作的函数,然后我在这里面加了喂狗函数,也是不行
抱歉,之前说的太简单了,你要按我后面说的将中断向量表,以及中断函数移到非FLASH的地方才能正常喂狗。
一周热门 更多>