×
嵌入式 > 技术百科 > 详情

对于HCS12 ECT模块的一些心得

发布时间:2020-06-09 发布时间:
|
所周知,ECT模块是HCS12里相对比较复杂的一个部分.它主要有四个功能
1、Pulse Accumulator(脉冲累加)
2、Modulus Down-Counter(模数计数器)
3、 Input Capture (输入捕捉)
4、 Output Compare (输出比较)
复杂就复杂在:1功能太多,     2时钟也不好看,         3有时这个用了那个就不能用     4寄存器设置比较复杂,容易混淆。
详细地比较它们也不是一两句话能说完,这里告诉大家一个方法:分块学习的方法。
看各个模块之前,最先要弄清楚工作过程。其次弄清楚参考时钟的设定(分频),接着是控制寄存器的设置
比如脉冲累加器这块:首先明确:肯定有功能开启设置(使能);即然是脉冲累加,肯定有沿的触发选择,看是上升沿还是下降沿;要不要级联,怎么控制级联。级联之后的数据处理有什么差异?;再就是必须有一个结果寄存器存结果(如果测的脉冲结果太多了,溢出了怎么办呢?)这都是一系列的问题,理清思路,先看DS,再看别人的程序,会有较大的收获的。
这里,也主要对 脉冲累加器 作点说明。
明确:脉冲累加器计脉冲,计多长时间类的脉冲要定时控制读取。(PACA除外)
级联的情况:
PACA时:当PACTL_PAEN=1时将PAC2与PAC3级联成16位脉冲累加器A ,PT7为输入引脚,结果放在PACN32;用PACB做脉冲累计器的话,非常简单,甚至都不用开启定时器。只需用TCTL4中的EDG0B和EDG0A位设置有效沿,再用PBCTL开启PACB和中断即可。外部脉冲从PT0输入。
PACB时:当PBCTL_PBEN=1时将PAC0与PAC1级联成16位脉冲累加器B,PT0为输入引脚,结果放在PACN10。PACA用起来就比较麻烦一些,因为它的功能更加强大。它必须与定时器合用,而且即可以对外部脉冲计数,也可以根据外部电平宽度对内部总线频率计数。
不级联的情况:比较的简单,一一对应,看DS很容易。
另外:1、建议测速时尽量用脉冲累加器,不要用输入捕捉,频繁地进中断没好处的。
          

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
Semtech的LoRa技术携手Chipsafer将牧场连接至云端