你好我好大家好! 发表于 2015-6-18 10:29:32

alisa123 发表于 2015-6-18 10:23
还是非常感谢你的回复指点。

问题解决了吗?

alisa123 发表于 2015-6-18 10:34:18

风子 发表于 2015-6-16 15:54
这样的话那就定时器中断中只设置判断是上溢还是下溢的中断标志位,AD中改变占空比之前先查询标志位,符合 ...

谢谢你的回复指点,我试试。谢谢

alisa123 发表于 2015-6-19 08:34:03

你好我好大家好! 发表于 2015-6-18 10:29
问题解决了吗?

我已经用重复寄存器设置了,现在发现我的AD触发的定时和产生PWM的定时有可能不同步,正在进一步实验,谢谢

alisa123 发表于 2015-6-19 17:27:49

风子 发表于 2015-6-16 15:54
这样的话那就定时器中断中只设置判断是上溢还是下溢的中断标志位,AD中改变占空比之前先查询标志位,符合 ...

你好,我现在用进入中断方式判断TIM1的计数器的值来确定是上溢还是下溢,但是进入中断后用if(TIM_GetCounter(TIM1) == 1)
{
    flag = 1;
}来判断是否下溢对吗?怎么一直进不到里面呢,更新中断倒是能进去,麻烦帮忙指点,谢谢。

你好我好大家好! 发表于 2015-6-19 22:45:18

alisa123 发表于 2015-6-19 08:34
我已经用重复寄存器设置了,现在发现我的AD触发的定时和产生PWM的定时有可能不同步,正在进一步实验,谢 ...

恩,只要不放弃一定会解决

风子 发表于 2015-6-23 15:43:20

alisa123 发表于 2015-6-19 17:27
你好,我现在用进入中断方式判断TIM1的计数器的值来确定是上溢还是下溢,但是进入中断后用if(TIM_GetCoun ...

不知道你问题解决了没,但是这样判断肯定是不行的,以计时器的速度,当你读取的时候肯定已经超过1了,可以用读取值和ARR值的一半来比较判断,不过我没试过这样做,不知道是否可行

alisa123 发表于 2015-6-23 16:17:10

风子 发表于 2015-6-23 15:43
不知道你问题解决了没,但是这样判断肯定是不行的,以计时器的速度,当你读取的时候肯定已经超过1了,可 ...

还没解决,还在调试和办法寻找中。。。。。。

alisa123 发表于 2015-6-23 16:18:03

风子 发表于 2015-6-23 15:43
不知道你问题解决了没,但是这样判断肯定是不行的,以计时器的速度,当你读取的时候肯定已经超过1了,可 ...

你说的“用读取值和ARR值的一半来比较判断”是什么意思,不是很明白,请明示,谢谢。

风子 发表于 2015-6-23 21:03:50

刚刚想到的,这样做应该更准确:读TIMx_CR1的DIR位,即计数方向位,中心对齐模式下该位是只读的,为0向上计数,则刚刚发生了下溢,为1向下计数,则刚刚发生了上溢

alisa123 发表于 2015-6-24 11:59:47

风子 发表于 2015-6-23 21:03
刚刚想到的,这样做应该更准确:读TIMx_CR1的DIR位,即计数方向位,中心对齐模式下该位是只读的,为0向上计 ...

谢谢你的热心指导,昨天下午就采用这种方法,一直不对,今天上午调试好了,非常感谢。
页: 1 [2]
查看完整版本: stm32 中央对称模式 怎样配置为计数器为0 的时候产生更新...