當前位置:編程學習大全網 - 編程語言 - msp430編程

msp430編程

MSP430系列單片機簡介

原作者: 張俊謨

1、MSP430 單片機的發展

MSP430 系列是壹個 16 位的、具有精簡指令集的、超低功耗的混合型單片機,在 1996 年問世,由於它具有極低的功耗、豐富的片內外設和方便靈活的開發手段,已成為眾多單片機系列中壹顆耀眼的新星。回憶 MSP430 系列單片機的發展過程,可以看出有這樣三個階段:

開始階段 從 1996 年推出 MSP430 系列開始到 2000 年初,這個階段首先推出有 33X 、 32X 、 31X 等幾個系列,而後於 2000 年初又推出了 11X 、 11X1 系列。

MSP430 的 33X 、 32X 、 31X 等系列具有 LCD 驅動模塊,對提高系統的集成度較有利。每壹系列有 ROM 型( C )、 OTP 型( P )、和 EPROM 型( E )等芯片。 EPROM 型的價格昂貴,運行環境溫度範圍窄,主要用於樣機開發。這也表明了這幾個系列的開發模式,即:用戶可以用 EPROM 型開發樣機;用 OTP 型進行小批量生產;而 ROM 型適應大批量生產的產品。

2000 年推出了 11X/11X1 系列。這個系列采用 20 腳封裝,內存容量、片上功能和 I/O 引腳數比較少,但是價格比較低廉。

這個時期的 MSP430 已經顯露出了它的特低功耗等的壹系列技術特點,但也有不盡如人意之處。它的許多重要特性,如:片內串行通信接口、硬件乘法器、足夠的 I/O 引腳等,只有 33X 系列才具備。 33X 系列價格較高,比較適合於較為復雜的應用系統。當用戶設計需要更多考慮成本時, 33X 並不壹定是最適合的。而片內高精度 A/D 轉換器又只有 32X 系列才有。

尋找突破,引入 Flash 技術 隨著 Flash 技術的迅速發展, TI 公司也將這壹技術引入 MSP430 系列中。在 2000 年 7 月推出 F13X/F14X 系列,在 2001 年 7 月到 2002 年又相繼推出 F41X 、 F43X 、 F44X 這些全部是 Flash 型單片機。

F41X 單片機是目前應用比較廣的單片機,它有 48 個 I/O 口, 96 段 LCD 驅動。 F43X 、 F44X 系列是在 13X 、 14X 的基礎上,增加了液晶驅動器,將驅動 LCD 的段數由 3XX 系列的最多 120 段增加到 160 段。並且相應地調整了顯示存儲器在存儲區內的地址,為以後的發展拓展了空間。

MSP430 系列由於具有 Flash 存儲器,在系統設計、開發調試及實際應用上都表現出較明顯的優點。這是 TI 公司推出具有 Flash 型存儲器及 JTAG 邊界掃描技術的廉價開發工具 MSP-FET430X110 ,將國際上先進的 JTAG 技術和 Flash 在線編程技術引入 MSP430 。

這種以 Flash 技術與 FET 開發工具組合的開發方式,具有方便、廉價、實用等優點,給用戶提供了壹個較為理想的樣機開發方式。

另外, 2001 年 TI 公司又公布了 BOOTSTRAP 技術,利用它可在燒斷熔絲以後只要幾根線就可更改並運行內部的程序。這為系統軟件的升級提供了又壹方便的手段。 BOOTSTRAP 具有很高的保密性,口令可達到 32 個字節的長度。

蓬勃發展階段 在前壹階段,引進新技術和內部進行調整之後,為 MSP430 的功能擴展打下了良好的基礎。於是 TI 公司在 2002 年底和 2003 年期間又陸續推出了 F15X 和 F16X 系列的產品。

在這壹新的系列中,有了兩個方面的發展。壹是從存儲器方面來說,將 RAM 容量大大增加,如 F1611 的 RAM 容量增加到了 10KB 。這樣壹來,希望將實時操作系統( RTOS )引入 MSP430 的,就不會因 RAM 不夠而發愁了。二是從外圍模塊來說,增加了 I 2 C 、 DMA 、 DAC12 和 SVS 等模塊。

在 2003 年中, TI 公司還推出了專門用於電量計量的 MSP430FE42X 和用於水表、氣表、熱表上的具有無磁傳感模塊的 MSP430FW42X 單片機。我們相信由於 MSP430 的開放性的基本架構和新技術的應用,新的 MSP430 的產品品種必將會不斷出現。

2、 MSP430 單片機的特點

MSP430 系列單片機的迅速發展和應用範圍的不斷擴大,主要取決於以下的特點。

強大的處理能力 MSP430 系列單片機是壹個 16 位的單片機,采用了精簡指令集( RISC )結構,具有豐富的尋址方式( 7 種源操作數尋址、 4 種目的操作數尋址)、簡潔的 27 條內核指令以及大量的模擬指令;大量的寄存器以及片內數據存儲器都可參加多種運算;還有高效的查表處理指令;有較高的處理速度,在 8MHz 晶體驅動下指令周期為 125 ns 。這些特點保證了可編制出高效率的源程序。

在運算速度方面, MSP430 系列單片機能在 8MHz 晶體的驅動下,實現 125ns 的指令周期。 16 位的數據寬度、 125ns 的指令周期以及多功能的硬件乘法器(能實現乘加)相配合,能實現數字信號處理的某些算法(如 FFT 等)。

MSP430 系列單片機的中斷源較多,並且可以任意嵌套,使用時靈活方便。當系統處於省電的備用狀態時,用中斷請求將它喚醒只用 6us 。

超低功耗 MSP430 單片機之所以有超低的功耗,是因為其在降低芯片的電源電壓及靈活而可控的運行時鐘方面都有其獨到之處。

首先, MSP430 系列單片機的電源電壓采用的是 1.8~3.6V 電壓。因而可使其在 1MHz 的時鐘條件下運行時, 芯片的電流會在 200~400uA 左右,時鐘關斷模式的最低功耗只有 0.1uA 。

其次,獨特的時鐘系統設計。在 MSP430 系列中有兩個不同的系統時鐘系統:基本時鐘系統和鎖頻環( FLL 和 FLL+ )時鐘系統或 DCO 數字振蕩器時鐘系統。有的使用壹個晶體振蕩器( 32768Hz ) , 有的使用兩個晶體振蕩器)。由系統時鐘系統產生 CPU 和各功能所需的時鐘。並且這些時鐘可以在指令的控制下,打開和關閉,從而實現對總體功耗的控制。

由於系統運行時打開的功能模塊不同,即采用不同的工作模式,芯片的功耗有著顯著的不同。在系統中***有壹種活動模式( AM )和五種低功耗模式( LPM0~LPM4 )。在等待方式下,耗電為 0.7uA ,在節電方式下,最低可達 0.1uA 。

系統工作穩定 上電復位後,首先由 DCOCLK 啟動 CPU ,以保證程序從正確的位置開始執行,保證晶體振蕩器有足夠的起振及穩定時間。然後軟件可設置適當的寄存器的控制位來確定最後的系統時鐘頻率。如果晶體振蕩器在用做 CPU 時鐘 MCLK 時發生故障, DCO 會自動啟動,以保證系統正常工作;如果程序跑飛,可用看門狗將其復位。

豐富的片上外圍模塊 MSP430 系列單片機的各成員都集成了較豐富的片內外設。它們分別是看門狗( WDT )、模擬比較器 A 、定時器 A ( Timer_A )、定時器 B ( Timer_B )、串口 0 、 1 ( USART0 、 1 )、硬件乘法器、液晶驅動器、 10 位 /12 位 ADC 、 I 2 C 總線直接數據存取( DMA )、端口 O ( P0 )、端口 1~6 ( P1~P6 )、基本定時器( Basic Timer )等的壹些外圍模塊的不同組合。其中,看門狗可以使程序失控時迅速復位;模擬比較器進行模擬電壓的比較,配合定時器,可設計出 A/D 轉換器; 16 位定時器( Timer_A 和 Timer_B )具有捕獲 / 比較功能,大量的捕獲 / 比較寄存器,可用於事件計數、時序發生、 PWM 等;有的器件更具有可實現異步、同步及多址訪問串行通信接口可方便的實現多機通信等應用;具有較多的 I/O 端口,最多達 6*8 條 I/O 口線; P0 、 P1 、 P2 端口能夠接收外部上升沿或下降沿的中斷輸入; 12/14 位硬件 A/D 轉換器有較高的轉換速率,最高可達 200kbps ,能夠滿足大多數數據采集應用;能直接驅動液晶多達 160 段;實現兩路的 12 位 D/A 轉換;硬件 I 2 C 串行總線接口實現存儲器串行擴展;以及為了增加數據傳輸速度,而采用直接數據傳輸( DMA )模塊。 MSP430 系列單片機的這些片內外設為系統的單片解決方案提供了極大的方便。

方便高效的開發環境 目前 MSP430 系列有 OPT 型、 FLASH 型和 ROM 型三種類型的器件,這些器件的開發手段不同。對於 OPT 型和 ROM 型的器件是使用仿真器開發成功之後在燒寫或掩膜芯片;對於 FLASH 型則有十分方便的開發調試環境,因為器件片內有 JTAG 調試接口,還有可電擦寫的 FLASH 存儲器,因此采用先下載程序到 FLASH 內,再在器件內通過軟件控制程序的運行,由 JTAG 接口讀取片內信息供設計者調試使用的方法進行開發。這種方式只需要壹臺 PC 機和壹個 JTAG 調試器,而不需要仿真器和編程器。開發語言有匯編語言和 C 語言。

MSP430 單片機目前主要以 FLASH 型為主。

適應工業級運行環境 MSP430 系列器件均為工業級的,運行環境溫度為 -40~+ 85 攝氏度 ,所設計的產品適合用於工業環境下。

⒊ MAP430 系列與 89C 51 系列的比較

我國的多數讀者對 89C 51 系列的單片機是很熟悉的,為了加深對 MSP430 系列單片機的認識,我們不妨將兩者進行壹下比較。

首先, 89C 51 單片機是 8 位單片機。其指令是采用的被稱為“ CISC ”的復雜指令集,***具有 111 條指令。而 MSP430 單片機是 16 位的單片機,采用了精簡指令集( RISC )結構,只有簡潔的 27 條指令,大量的指令則是模擬指令,眾多的寄存器以及片內數據存儲器都可參加多種運算。這些內核指令均為單周期指令,功能強,運行的速度快。

其次, 89C 51 單片機本身的電源電壓是 5 伏,有兩種低功耗方式:待機方式和掉電方式。正常情況下消耗的電流為 24mA ,在掉電狀態下,其耗電電流仍為 3mA ;即使在掉電方式下,電源電壓可以下降到 2V ,但是為了保存內部 RAM 中的數據,還需要提供約 50uA 的電流。而 MSP430 系列單片機在低功耗方面的優越之處,則是 89C 51 系列不可比擬的。正因為如此, MSP430 更適合應用於使用電池供電的儀器、儀表類產品中。

再者, 89C 51 系列單片機由於其內部總線是 8 位的,其內部功能模塊基本上都是 8 位的雖然經過各種努力其內部功能模塊有了顯著增加,但是受其結構本身的限制很大,尤其模擬功能部件的增加更顯困難。 MSP430 系列其基本架構是 16 位的,同時在其內部的數據總線經過轉換還存在 8 位的總線,在加上本身就是混合型的結構,因而對它這樣的開放型的架構來說,無論擴展 8 位的功能模塊,還是 16 位的功能模塊,即使擴展模 / 數轉換或數 / 模轉換這類的功能模塊也是很方便的。這也就是為什麽 MSP430 系列產品和其中功能部件迅速增加的原因。

最後,就是在開發工具上面。對於 89C 51 來說,由於它是最早進入中國的單片機,人們對它在熟悉不過了,再加上我國各方人士的努力,創造了不少適合我們使用的開發工具。但是如何實現在線編程還是壹個很大的問題。對於 MSP430 系列而言,由於引進了 Flash 型程序存儲器和 JTAG 技術,不僅使開發工具變得簡便,而且價格也相對低廉,並且還可以實現在線編程。

  • 上一篇:51單片機四路搶答器畢業論文 只要四路
  • 下一篇:DDS門禁系統,有何獨到之處啊?我們正在設備選型!請業內人士說明
  • copyright 2024編程學習大全網