[STM32L0] stm32l0写eeprom会影响到pwm的输出

[复制链接]
2151|10
 楼主| zoulinqi110 发表于 2017-12-5 15:29 | 显示全部楼层 |阅读模式
最近做pwm调光的项目,发现写eeprom的时候等轻微的抖动了一下,屏蔽掉写eeprom工作就正常了,感觉像是芯片的问题,写eeprom的时候单片机cpu停掉了,导致pwm输出抖动,不知道有什么方法解决?
kingkits 发表于 2017-12-5 15:53 | 显示全部楼层
按说是有办法解决的,不过没有你想象的那样简单
大概描述一下,
1 eeprom操作之前,把中断向量表和PWM服务程序都放在RAM
2 调整系统终端时跳转的位置(指向RAM)
3 操作eeprom
4 完成后恢复之前的状态
tomzbj 发表于 2017-12-5 16:30 | 显示全部楼层
不如上个几毛钱的24c0x...
 楼主| zoulinqi110 发表于 2017-12-5 16:33 | 显示全部楼层
kingkits 发表于 2017-12-5 15:53
按说是有办法解决的,不过没有你想象的那样简单
大概描述一下,
1 eeprom操作之前,把中断向量表和PWM服务 ...

不是很明白你说的这种方法,没有做过这方便操作,希望有些资料,谢谢!
kingkits 发表于 2017-12-5 16:38 | 显示全部楼层
很少有你这样需求的,一般操作eeprom都是不能有干扰的。一旦有干扰(尤其是中断),就会崩溃
 楼主| zoulinqi110 发表于 2017-12-5 16:46 | 显示全部楼层
kingkits 发表于 2017-12-5 16:38
很少有你这样需求的,一般操作eeprom都是不能有干扰的。一旦有干扰(尤其是中断),就会崩溃 ...

现在是由于写eeprom,影响到了pwm的输出,导致灯闪,这是最不能接受的,写eeprom时候一般会开关总中断,不至于让写eeprom崩掉。
kingkits 发表于 2017-12-5 17:48 | 显示全部楼层
因为你要关中断,所以PWM会受影响
antusheng 发表于 2017-12-5 20:00 | 显示全部楼层
在主函数里通过IO操作应该可以避免吧。
 楼主| zoulinqi110 发表于 2017-12-6 08:28 | 显示全部楼层
antusheng 发表于 2017-12-5 20:00
在主函数里通过IO操作应该可以避免吧。

通过io?能说的详细点?
一周一天班 发表于 2017-12-6 08:56 来自手机 | 显示全部楼层
pwm要使用定时器产生的硬件输出,不要软件模拟产生。常识。
jackliu999 发表于 2017-12-6 18:38 | 显示全部楼层
根据你的描述,PWM使用软件实现的吗?
建议用定时器硬件输出实现,就不存在收到干扰的情况
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

62

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部