msp430微控制器的cpu屬於risc(精簡指令集)處理器,risc處理器基本上是為高階語言所設計的,因為精簡指令系統很大程度上降低了編譯器的設計難度,有利於產生高效緊湊的**。初學者完全可以在不深入了解彙編指令系統的情況下,直接開始c語言的學習。本章介紹msp430微控制器軟體工程的開發基礎,主要講解msp430微控制器c語言程式設計基礎、msp430微控制器的軟體程式設計方法及軟體整合開發環境的基本操作。通過本章的講解,旨在使讀者對msp430微控制器的程式設計思想有一定的了解。
變數定義
微控制器的ram較小,運算速度有限,在程式設計時應注意通過合理的編碼提高微控制器的利用效率。對於小於256的正整數,定義為uint8_t,變數名可取ui8count;如果有負數存在,可定義為int16 i16flag。
變數名應有字首,全域性變數以"g_"開頭,指標以「p"開頭,結構體以」s"開頭。
函式宣告
呼叫函式之前首先要在所有函式外宣告函式原型。
如果乙個函式只能被本檔案內的其他函式所呼叫,稱為內部函式。在定義內部函式時,在函式名和函式型別的前面加static。
在宣告函式時,如果在函式首部的最左端冠以關鍵字extern,則表示此函式是外部函式,可供其他檔案呼叫。
原始檔分別編譯,再將目標檔案連線成可執行檔案
$>gcc -c main.c
$>gcc -c function.c
$>gcc -o sum main.o function.o
當多人協作時,需要各自負責一部分工程,可以只是負責通訊或著顯示這塊。這個時候,應該將自已寫的這一塊程式寫成乙個模組,單獨除錯,留出介面給其他模組呼叫,當小組成員都將自己寫的模組寫完並除錯通過後,最後由專案組組長進行聯調,這就要求程式必須模組化。
模組化程式設計需理解以下概念:
(1)模組是乙個.c 檔案和乙個.**件的結合,標頭檔案(.h)中是對於該模組介面的宣告;
(2)某模組提供給其他模組呼叫的外部函式及變數需在.**件中冠以extern關鍵字宣告;
(3)模組內的函式和全域性變數需在.c檔案開頭冠以static關鍵字宣告;
(4)永遠不要在.**件中定義變數。
(5)在.**件中使用#ifndef條件編譯,防止重複宣告。
最簡單、最常用的msp430微控制器軟體流程如圖所示。主監控程式首先進行系統初始化,包括初始化i/o埠、片內外設和變數等,之後進入低功耗休眠模式。當被中斷喚醒後,通過查詢標誌位來執行相應的任務。當查詢結束後,再次進入低功耗休眠模式等待被中斷喚醒。中斷服務程式可以置位相應標誌位或執行相應任務。使用者可以選擇在中斷喚醒msp430微控制器後在主迴圈中通過查詢標誌位處理任務,也可以選擇在中斷服務程式中處理任務。可以將對定時要求不嚴格或實時性要求不高的任務放在主迴圈中,通過查詢標誌位來完成,例如,液晶顯示任務等。將對定時要求嚴格或實時性要求較高的任務放在中斷服務程式中完成,例如, adc取樣任務、按鍵處理任務等。
MSP430系列微控制器筆記00 嵌入式系統
嵌入式系統是以應用為中心,以現代計算機技術為基礎,能夠根據使用者需求 功能 可靠性 成本 體積 功耗 環境等靈活裁剪軟硬體模組的專用計算機系統。01.以應用為中心 強調嵌入式系統的目標是滿足使用者的特定需求。就絕大多數完整的嵌入式系統而言,使用者開啟電源即可直接享用其功能,無需二次開發或僅需少量配置...
MSP430教程8 MSP430微控制器復位電路
msp430 微控制器系統復位電路 從上msp430 系統復位電路功能模組圖中可以看到了兩個復位訊號,乙個是上電復位訊號 por power on reset 和上電清除訊號 puc power up clear por 訊號是器件的復位訊號,此訊號只有在以下的事件發生時才會產生 器件上電時。rst...
MSP430微控制器原理及應用 實驗
實驗專案 msp430簡單程式設計 實驗目的 學會用c語言進行簡單程式設計 實驗要求 掌握編寫排序程式 實驗內容 1 設計乙個對8個資料 0 255,任意設定 的由小到大排序程式。2 將結果顯示在lcd顯示器上。程式 如下 include include config.h include inclu...