你的浏览器版本过低,可能导致网站不能正常访问!为了你能正常使用网站功能,请使用这些浏览器。
nyszx 发表于 2017-12-4 20:05 因为我一开始也不确定,担心中断延迟会导致计数不准,所以直到我亲自验证了不会,才决定使用主从定时器方案 ...
nyszx 发表于 2017-12-5 11:37 挺有意思的,一道题引发出这么多讨论,说道定时器数量,STM32确实有很多,刚才用工具检索了一下,能够满足 ...
nyszx 发表于 2017-12-5 14:27 确实,我也是为了学习更多知识而来,不同的用户看待问题的角度不同,解决思想也不同,条条大路通罗马。这样 ...
TIMER 资源是很多,Timer1 和Timer8 ,Timer2~Timer5 基础型大部分都有
但Timer9~timer14 也不是全部分布的,不是个个单片机都跟STM32F413Zx一样定时器那么全,
也是重要的外设资源,定时器进行主从关系设置的也不是都满足进行设置。控制4路独立脉冲信号就占用了8个。在这样的情况下就占用,若还有剩下的定时器要求,明显就不足了。
DMA 是能关闭,ExtI0~ExtI4、RCC、Flash、RTC这些优先于Time的中断呢?大面积使用定时器,稍微有些定时器优先不够,那么主从会被其他优先还是不能确保中断不被其他抢占,总不能存在优先级干扰的中断都进行使能关闭吧。
虽然定时器用的是APB,随便打开一个定时器,还有APB1、APB2, 在再通过AHB耦合二者,通道占用也不小,这不同样分担AHB总线资源,中断还要到MCU那边去,这8个Timer占用的系统资源也不小。
你说的DMA与MCU的 AHB 竞争关系 与MCU的时间不是一个概念。
DAM还分DMA1和DMA2每个DMA还有8个通道,16个通道, 这里只占用1/4通道资源,还很富足。
定时器 的Timer 脉宽 是时间周期吧? 主定时器的脉宽与从定时器的分频运行到一定周期,发送的数量多了会出现耦合性Reset,这还是会影响脉冲周期的,典型案例是用步进电机的时候,脉冲发送久了会丢个几步很正常,通常用感应元器件来修正偏差。这时候就离不开感应元器件的中断。。。。。
这道题的确很有赖人寻味,出题者应该是有些水平,一题击中定时器日常应用中要点。
首先定时器这个设备就是经常用到的元器件,应用广泛,计个数、定个时啥的都会用到。
其次本题本题就涉及到用Timer用来控制脉冲,脉冲的宽度用定时器的计数器来控制,是一个常用的方法,这里要用4路脉冲,OK没什么,找一个或几个独立定是器过来用起就好了。
这里脉冲方法原理也如同ST 提供的应用笔记AN4776 中提到的一样,有多种方法来控制。这些方法是前人总结的经验,在前人不同场景应用中受某些条件限制的需要而得出的方法。就看我们如何灵活运用前人总结的基础上运用创新,设计出满足的条件的产品。
的确ST可供选择的含多定时器MCU的确很多,1路脉冲就占2个,如果还有其他保险措施还需要占用,增加到3个、4个是不是再多也不够。或者有些产品需要用定时器来计数、提供Systick 、或者提供RTC、日历之类的内容占用了,我们还要退回到MCU重新选型?
我真不是为板子而说这些,没想改变什么,只是想借这个机会,讨论一下定时器的用法,原本就想换一种思路来解答,我很乐意跟大家一起探讨定时器的用法,在这种思维的碰撞中,单比回答题目收获更多。
曾经MCU的资源没有如今这么丰富,在定时器资源稀缺的情况下,有资源稀缺的设计方法,在定时器资源富有也有富有的设计方法;
我也没说级联不对,我只是想换一种思路看看定时器级联存在着哪些潜在问题,几个方案在实际应用中综合考虑来使用,这不是更好?
谢谢,交流愉快!