在线时间2 小时
UID420134
注册时间2013-3-9
NXP金币0
该用户从未签到
新手上路

- 积分
- 36
- 最后登录
- 1970-1-1
|

楼主 |
发表于 2014-6-18 15:01:02
|
显示全部楼层
回复:在PIT中断函数中使用i++,居然影响PWM输出波形的稳定
回复第 12 楼 于2014-06-17 17:16:29发表:
楼主定时中断中:
FL1 = BGET(GPIOE_PDIR,5);
FL2 = BGET(GPIOE_PDIR,4);
FL3 = BGET(GPIOE_PDIR,3);
FR3 = BGET(GPIOE_PDIR,2);
FR2 = BGET(GPIOC_PDIR,13);
FR1 = BGET(GPIOC_PDIR,12);
这个是干什么的?
读端口方向吗? 还有你只要屏蔽time_counter++就没有问题了?
你time_counter这个后面还有做什么呢?
如果你去掉中断中FL1,FL2等的操作会有什么影响?
是不是中断函数内执行时间过长导致的。
FL1 = BGET(GPIOE_PDIR,5);
FL2 = BGET(GPIOE_PDIR,4);
FL3 = BGET(GPIOE_PDIR,3);
FR3 = BGET(GPIOE_PDIR,2);
FR2 = BGET(GPIOC_PDIR,13);
FR1 = BGET(GPIOC_PDIR,12);
很明显是读端口输入电平的
后面没有什么了,我奇怪的原因和管理员一样,理论上不该产生干扰的两部分(中断和TPM模块),为什么就因为在中断中执行了i++就产生了干扰
|
|