DSP

【创龙TMS320C6748开发板试用】+ECAP模块初探

2019-07-13 12:37发布

这一个礼拜一直在看DSP的程序偏底层的部分,cmd连接配置文件,gel文件……
当初课上学习的2812的很多内容其实和6748是相通的,而然当初毕竟只是对着书学习,领悟有限,老师讲的也很模糊,这几天对着视频慢慢摸索有了些许了解,然而写成帖子还是很困难,这周就来写写看的ECAP的一些datasheet上的东西吧。
当初申请说是做电机控制,那首先PWM肯定是需要的,测速也是必须的,然后很明显了,ECAP和eHRPWM肯定是需要用的。看了看例程,我觉得实现起来肯定不难,而且还有个例程几乎能直接用,于是决定先看看底层了。
今天先看看datasheet。顺便提高下读手册能力。。
应用和特点:

应用包括:
音频输入采样速率测量
旋转机械测速 :-) need it!
估计位置传感器两脉冲之间时间
……
特点:
4个时间标签寄存器(32 bit)
可以为4个连续的时间标签捕捉时间选择边沿极性
4个时间都可以产生中断
……
当不使用捕捉模式,ECAP可以配置为单通道PWM输出(APWM模式)


今天就来用APWM啦~


APWM操作模式有:
定时标签计数器可以通过两个数字比较器实现比较操作
但工作在捕捉模式不适用CAP1/2寄存器,CAP1与CAP2用作周期与比较寄存器
在APWM模式,对CAP1/2进行写操作是会将同样的只写到相应的映射寄存器CAP3/4中

APWM高有效(APWMPOL == 0)操作如下:
CMP = 0x00000000, output low for duration of period (0% duty)
CMP = 0x00000001, output high 1 cycle
CMP = 0x00000002, output high 2 cycles
CMP = PERIOD, output high except for 1 cycle (<100% duty)
CMP = PERIOD+1, output high for complete period



APWM低有效(APWMPOL == 1) 操作如下:
CMP = 0x00000000, output high for duration of period (0% duty)
CMP = 0x00000001, output low 1 cycle
CMP = 0x00000002, output low 2 cycles
CMP = PERIOD, output low except for 1 cycle (<100% duty)
CMP = PERIOD+1, output low for complete period (100% duty)
CMP > PERIOD+1, output low for complete period

datasheet中就给了这么多东西,然而我看完还是不知道该干嘛……求各位指教,接下来应该看什么呢?看创龙的例程么?但是我感觉我并不清楚应该做什么,只是看到它写了什么,我知道了什么意思,但我并不知道有哪些需要做的事,感觉这样太被动了。希望大家能多交流交流。