430系列單片機(jī)是美國德州儀器(TI)1996年開始推向市場的一種16位超低功耗、具有精簡指令集(RISC)的混合信號處理器(Mixed Signal Processor)。430單片機(jī)稱之為混合信號處理器,是由于其針對實(shí)際應(yīng)用需求,將多個不同功能的模擬電路、數(shù)字電路模塊和微處理器集成在一個芯片上,以提供“單片機(jī)”解決方案。該系列單片機(jī)多應(yīng)用于需要電池供電的便攜式儀器儀表中。
430單片機(jī)特點(diǎn)
處理能力強(qiáng)
430系列單片機(jī)是一個16位的單片機(jī),采用了精簡指令集(RISC)結(jié)構(gòu),具有豐富的尋址方式(7 種源操作數(shù)尋址、4 種目的操作數(shù)尋址)、簡潔的 27 條內(nèi)核指令以及大量的模擬指令;大量的寄存器以及片內(nèi)數(shù)據(jù)存儲器都可參加多種運(yùn)算;還有高效的查表處理指令。這些特點(diǎn)保證了可編制出高效率的源程序。
運(yùn)算速度快
430 系列單片機(jī)能在25MHz晶體的驅(qū)動下,實(shí)現(xiàn)40ns的指令周期。16位的數(shù)據(jù)寬度、40ns的指令周期以及多功能的硬件乘法器(能實(shí)現(xiàn)乘加運(yùn)算)相配合,能實(shí)現(xiàn)數(shù)字信號處理的某些算法(如FFT等)。
超低功耗
430 單片機(jī)之所以有超低的功耗,是因?yàn)槠湓诮档托酒?a target="_blank">電源電壓和靈活而可控的運(yùn)行時鐘方面都有其獨(dú)到之處。
首先,430 系列單片機(jī)的電源電壓采用的是1.8-3.6V 電壓。因而可使其在1MHz 的時鐘條件下運(yùn)行時,芯片的電流最低會在165μA左右,RAM保持模式下的最低功耗只有0.1μA。
其次,獨(dú)特的時鐘系統(tǒng)設(shè)計。在 MSP430 系列中有兩個不同的時鐘系統(tǒng):基本時鐘系統(tǒng)、鎖頻環(huán)(FLL 和FLL+)時鐘系統(tǒng)和DCO數(shù)字振蕩器時鐘系統(tǒng)??梢灾皇褂靡粋€晶體振蕩器(32.768kHz)DT-26 OR DT-38,也可以使用兩個晶體振蕩器。由系統(tǒng)時鐘系統(tǒng)產(chǎn)生 CPU 和各功能所需的時鐘。并且這些時鐘可以在指令的控制下,打開和關(guān)閉,從而實(shí)現(xiàn)對總體功耗的控制。
由于系統(tǒng)運(yùn)行時開啟的功能模塊不同,即采用不同的工作模式,芯片的功耗有著顯著的不同。在系統(tǒng)中共有一種活動模式(AM)和五種低功耗模式(LPM0~LPM4)。在實(shí)時時鐘模式下,可達(dá)2.5μA ,在RAM 保持模式下,最低可達(dá)0.1μA 。
片內(nèi)資源豐富
MSP430 系列單片機(jī)的各系列都集成了較豐富的片內(nèi)外設(shè)。它們分別是看門狗(WDT)、模擬比較器A、定時器A0(Timer_A0)、定時器A1(Timer_A1)、定時器B0(Timer_B0)、UART、SPI、I2C、硬件乘法器、液晶驅(qū)動器、10位/12位ADC、16位Σ-Δ ADC、DMA、I/O端口、基本定時器(Basic Timer)、實(shí)時時鐘(RTC)和USB控制器等若干外圍模塊的不同組合。
其中,看門狗可以使程序失控時迅速復(fù)位;模擬比較器進(jìn)行模擬電壓的比較,配合定時器,可設(shè)計出A/D 轉(zhuǎn)換器;16 位定時器(Timer_A 和 Timer_B)具有捕獲/比較功能,大量的捕獲/比較寄存器,可用于事件計數(shù)、時序發(fā)生、PWM等;有的器件更具有可實(shí)現(xiàn)異步、同步及多址訪問串行通信接口可方便的實(shí)現(xiàn)多機(jī)通信等應(yīng)用;具有較多的 I/O 端口,P0、P1、P2 端口能夠接收外部上升沿或下降沿的中斷輸入;10/12位硬件 A/D 轉(zhuǎn)換器有較高的轉(zhuǎn)換速率,最高可達(dá)200kbps ,能夠滿足大多數(shù)數(shù)據(jù)采集應(yīng)用;能直接驅(qū)動液晶多達(dá) 160 段;實(shí)現(xiàn)兩路的 12 位D/A轉(zhuǎn)換;硬件I2C串行總線接口實(shí)現(xiàn)存儲器串行擴(kuò)展;以及為了增加數(shù)據(jù)傳輸速度,而采用的DMA模塊。MSP430 系列單片機(jī)的這些片內(nèi)外設(shè)為系統(tǒng)的單片解決方案提供了極大的方便。
另外,430 系列單片機(jī)的中斷源較多,并且可以任意嵌套,使用時靈活方便。當(dāng)系統(tǒng)處于省電的低功耗狀態(tài)時,中斷喚醒只需5μs。
方便高效的開發(fā)環(huán)境
430 系列有 OTP 型、 FLASH 型和 ROM 型三種類型的器件,這些器件的開發(fā)手段不同。對于 OTP 型和 ROM 型的器件是使用仿真器開發(fā)成功之后燒寫或掩膜芯片;對于 FLASH 型則有十分方便的開發(fā)調(diào)試環(huán)境,因?yàn)槠骷瑑?nèi)有 JTAG 調(diào)試接口,還有可電擦寫的 FLASH 存儲器,因此采用先下載程序到 FLASH 內(nèi),再在器件內(nèi)通過軟件控制程序的運(yùn)行,由 JTAG 接口讀取片內(nèi)信息供設(shè)計者調(diào)試使用的方法進(jìn)行開發(fā)。這種方式只需要一臺 PC 機(jī)和一個 JTAG 調(diào)試器,而不需要仿真器和編程器。開發(fā)語言有匯編語言和C 語言。
430單片機(jī)之定時器A功能的大致介紹
總的來說,430單片機(jī)一共有三個定時器,定時器A,定時器B,還有就是看門狗定時器,這里我們主要是討論430單片機(jī)的定時器A的功能,定時器A的功能是我目前見過最厲害的定時器,視頻上說用好定時器A的話,對于今后真正的掌握430具有很重要的意義
同樣是先介紹一下定時器A的特點(diǎn):(英語六級科學(xué)類文章的常用寫法,總分總)
1:可作為異步的16位定時器,16位的計數(shù)器,其中計數(shù)器有四種工作方式
2:可以調(diào)節(jié)的外部時鐘源
3:3個捕獲比較源
4:擁有可以輸出PWM功能
5:異步的輸入與輸出鎖存
6:擁有多個中斷源
其實(shí),看datasheet現(xiàn)在真的掌握方法了,看完簡介關(guān)鍵就是看懂下面這張圖,在編程的時候熟悉相關(guān)寄存器的操作就可以了
并且看圖也還有個先后的順序,因?yàn)闄C(jī)器是死的,運(yùn)作起來是要靠晶振的振動,所以看圖的時候,可以依據(jù)時鐘源這條主線來看
首先,目光聚集在標(biāo)號1,特點(diǎn)2講了,可以調(diào)節(jié)的外部時鐘源,有4種可以用的時鐘源,
之后標(biāo)號2是一個分頻器,可以進(jìn)行三種分頻,
在接下來標(biāo)號3是一個16位的工作區(qū),就是一個加一計數(shù)器吧,
在接下來標(biāo)號4就是一個計數(shù)器,計數(shù)器的話,有4種計數(shù)模式;
這里還是需要注意畫藍(lán)色的控制位,TACLR這個控制位是計數(shù)器還有定時器的復(fù)位控制位,如果這一位置位,則時鐘源,分頻比,還有計數(shù)器的方向都需要重新設(shè)定
Set TAIFG這個是計數(shù)器的中斷標(biāo)志位
接下來下面這一部分才是重頭戲,捕獲比較,標(biāo)號5是捕獲模式的比較來源,有四種捕獲模式選擇
標(biāo)號6是一個捕獲時鐘源的同步選擇,一般選擇的是與內(nèi)部時鐘先一致,以避免內(nèi)部資源的沖突
標(biāo)號7是一個捕獲寄存器,用來存放不同的時間戳,進(jìn)而計算出脈寬的長度
標(biāo)號8是一個鎖存位
標(biāo)號9是用來選擇捕獲模式還是比較模式
標(biāo)號10是用來輸出各種控制波形,比如PWM波形等等
接下來按照英語六級科學(xué)類閱讀常用的方法,到了分的結(jié)構(gòu),430的定時器模式的介紹,其實(shí)定時器沒什么可說的,無非就是具有時鐘時鐘源,分頻比可以設(shè)置,以得到用戶需要的計時效果,需要注意的是,當(dāng)TACLR置位的時候,外部時鐘源,分頻比都會清除掉,再次使用的時候,用戶需要重新設(shè)置,所以這一位的操作需要謹(jǐn)慎
在接下來便是計數(shù)器模式的介紹,430提供三種計數(shù)模式,增計數(shù)模式,連續(xù)計數(shù)模式,增減計數(shù)模式
增計數(shù)模式的話,這里需要注意的是增計數(shù)模式與連續(xù)計數(shù)模式差不多,都是輸出鋸齒波形,但是他們的峰值是不同的,因?yàn)樵鲇嫈?shù)模式的話的峰值是用戶自己設(shè)置的,設(shè)置的值存放在TACCR0的寄存器上,但是連續(xù)計數(shù)模式的峰值是固定的,是一直計數(shù)知道16位全部溢出,所以峰值是0xffff
圖中所示,1表示增計數(shù)模式的話,2表示連續(xù)計數(shù)模式
值得注意的,值增計數(shù)模式的話的時候,如果突然間TACCR0上的值被改變,表示峰值被改變,假設(shè)由原來的峰值A(chǔ)變成峰值B
如果峰值B小于峰值A(chǔ),則計數(shù)器馬上變?yōu)?,重新開始技術(shù)
如果峰值B大于峰值A(chǔ),則計數(shù)器會超過A,一直加大B,在變?yōu)?,之后輸出峰值位B的鋸齒波
接下來便是增減計數(shù)模式,這個比較有意思,他可以得到一個三角波,見圖:
注意的是,該三角波的峰值也是可以調(diào)節(jié)的,還有三角波的技術(shù)具有記憶性,所以使用時需要注意,所謂的記憶性,就是在A出來一個暫停,他會暫停,并且恢復(fù)之后,計數(shù)的方向都不會改變
接下來就是選擇捕獲模式或者是比較模式,有CAP控制位來選擇
當(dāng)工作在捕獲模式下的時候,單片機(jī)會捕獲預(yù)先設(shè)定的脈沖,記錄脈沖出現(xiàn)的時間戳,之后兩個時間戳進(jìn)行相減,得到的便是脈沖的寬度,但是當(dāng)時間戳用戶沒有及時的取走的話,就會發(fā)生重復(fù)捕獲,這是上一次出現(xiàn)的時間戳就會被覆蓋
比較模式通常是CAP = 0,定時器工作在比較模式的情況下的時候,通常是用來輸出PWM波形
到這里,定時器A的大部分功能都弄明白了,但是還有最重要的一個模塊,那就是脈沖的輸出模塊,定時器A可以輸出大量可以供用戶選擇的波形,這個功能真的是超級無敵的強(qiáng)大,這個輸出模塊需要很具體的工程實(shí)踐能力,還需要很深的理論功底但需要的時候,但需要輸出的波形的時候,可以優(yōu)先考慮MSP430
評論
查看更多