| 巧妙利用DMA来实现脉冲累加(Kinetis) | |
| 所屬分類:参考设计 | |
| 上傳者:hanqi1236 | |
| 文檔大小:770 K | |
| 所需積分:0分積分不夠怎么辦? | |
| 文檔介紹:Kinetis 系列 只有 一路 LPT 模块 ,要实现 多路脉冲累加 (不进入中断服务函数,不占用 CPU 资源),难道就没方法了吗?就目前网上公开的资料来看,貌似还没有公开实现多路脉冲累加的方法吧?都是靠 FTM 的 输入捕捉 或者 GPIO 的触发中断,在中断函数里进来累加。其实,Kinetis 的DMA模块,是 可以实现 16路 15位 的 脉冲累加。 完全可以不进入中断服务函数,由硬件进行累加。彻底解决 Kinetis单片机不能多路脉冲累加的功能 …… 可通过增加个中断来实现拓展计数位数,几乎不影响CPU…… 实测 30KHz 的PWM脉冲波 ,用PIT 来 1秒定时,读取到脉冲波:30012个 ,比 LPT误差还更小……与 LPT 相比,我们的方法是巧妙借用了 DMA 每次传输,会自动减1 的功能 (硬件实现的)而 LPT 则是一个计数器 ,两种的原理是不一样的……实测 30KHz 的PWM脉冲波 ,用PIT 来 1秒定时,读取到脉冲波:30012个 ,比 LPT误差还更小……函数接口非常方便…… DMA_count_Init 初始化…… DMA_count_get 获取计数值…… DMA_count_reset 重新计数…… | |
| 現(xiàn)在下載 | |
| VIP會(huì)員,AET專家下載不扣分;重復(fù)下載不扣分,本人上傳資源不扣分。 | |
Copyright ? 2005-2024 華北計(jì)算機(jī)系統(tǒng)工程研究所版權(quán)所有 京ICP備10017138號(hào)-2