對(duì)于HCS12 ECT模塊的一些心得
1、Pulse Accumulator(脈沖累加)
2、Modulus Down-Counter(模數(shù)計(jì)數(shù)器)
3、 Input Capture (輸入捕捉)
4、 Output Compare (輸出比較)
復(fù)雜就復(fù)雜在:1功能太多,詳細(xì)地比較它們也不是一兩句話能說完,這里告訴大家一個(gè)方法:分塊學(xué)習(xí)的方法。
看各個(gè)模塊之前,最先要弄清楚工作過程。其次弄清楚參考時(shí)鐘的設(shè)定(分頻),接著是控制寄存器的設(shè)置
比如脈沖累加器這塊:首先明確:肯定有功能開啟設(shè)置(使能);即然是脈沖累加,肯定有沿的觸發(fā)選擇,看是上升沿還是下降沿;要不要級(jí)聯(lián),怎么控制級(jí)聯(lián)。級(jí)聯(lián)之后的數(shù)據(jù)處理有什么差異?;再就是必須有一個(gè)結(jié)果寄存器存結(jié)果(如果測(cè)的脈沖結(jié)果太多了,溢出了怎么辦呢?)這都是一系列的問題,理清思路,先看DS,再看別人的程序,會(huì)有較大的收獲的。
這里,也主要對(duì) 脈沖累加器 作點(diǎn)說明。
明確:脈沖累加器計(jì)脈沖,計(jì)多長(zhǎng)時(shí)間類的脈沖要定時(shí)控制讀取。(PACA除外)
級(jí)聯(lián)的情況:
PACA時(shí):當(dāng)PACTL_PAEN=1時(shí)將PAC2與PAC3級(jí)聯(lián)成16位脈沖累加器A ,PT7為輸入引腳,結(jié)果放在PACN32;用PACB做脈沖累計(jì)器的話,非常簡(jiǎn)單,甚至都不用開啟定時(shí)器。只需用TCTL4中的EDG0B和EDG0A位設(shè)置有效沿,再用PBCTL開啟PACB和中斷即可。外部脈沖從PT0輸入。
PACB時(shí):當(dāng)PBCTL_PBEN=1時(shí)將PAC0與PAC1級(jí)聯(lián)成16位脈沖累加器B,PT0為輸入引腳,結(jié)果放在PACN10。PACA用起來就比較麻煩一些,因?yàn)樗墓δ芨訌?qiáng)大。它必須與定時(shí)器合用,而且即可以對(duì)外部脈沖計(jì)數(shù),也可以根據(jù)外部電平寬度對(duì)內(nèi)部總線頻率計(jì)數(shù)。
不級(jí)聯(lián)的情況:比較的簡(jiǎn)單,一一對(duì)應(yīng),看DS很容易。
另外:1、建議測(cè)速時(shí)盡量用脈沖累加器,不要用輸入捕捉,頻繁地進(jìn)中斷沒好處的。
評(píng)論