AM335x芯片的eCAP捕获功能应该如何初始化

2019-07-21 16:28发布

AM335x的eCAP捕获功能应该如何初始化,需要中断支持。
是否可以提供初始化代码。谢谢
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
zhangmangui
2019-07-21 16:46
AM335X的PWMSS分三个部分:

◦Enhanced PWM Module(ePWM);
◦Enhanced Capture Module(eCAP);
◦Enhanced Quadrature Encoder Pulse Module(eQEP).

1. eQEP概述

eQEP,顾名思义,为正交编码器解码模块。

参阅AM335X 技术参考手册,你会了解到其有四种工作模式。而其中前两种模式是与编码器相关的。

Mode0: Quadrature Count Mode

从图中可以看出,其是通过编码器输出的A,B两个方波的相位来决定是加还是减,并且以方波的上升沿和下降沿作为计数。




Mode1: Direction Count Mode

输入两个信号: 一个为脉冲输入信号,另一个为方向信号。

通过脉冲输入信号来计数,通过方向信号的高或低电平来判断是加还是减。


了解了上述工作模式后,在进行编码器应用时,就可以选择合适的编码器,并配置合适的eQEP模式进行。






2. 驱动

因为在TI发布的SDK包及starterware下都无驱动,所以会有一些客户在应用过程中问及此处的问题。

关于驱动,其实可以参考一个open source的源码:

0882.dtsi_for_eqep.tar.gz

该源码是基于beaglebone 或beaglebone-black的平台进行开源项目beaglebot的。

由于其是linux-3.8的,同样是device tree的架构,所以我们可以比较方便的移植到AM335X SDK07.00的linux-3.12中。

附上移植完的dtsi文件,驱动源码可以直接使用patch中的。

或者通过git clone https://github.com/Teknoman117/beaglebot.git下载

一周热门 更多>