在本教程中,我們將了解代碼編輯器工作室以及如何使用它來(lái)編程 MSP430。本教程是為初學(xué)者編寫的,除了 MSP430 板和計(jì)算機(jī)外,不需要任何硬件。在本教程結(jié)束時(shí),我們將能夠閃爍MSP430的板載LED。
MSP-EXP430G2 開(kāi)發(fā)板:
華麗的紅色板是MSP-EXP430G2開(kāi)發(fā)板。該板可以對(duì)屬于 MSP430 系列的 TI 微控制器進(jìn)行編程。該板的主要目的是將代碼從計(jì)算機(jī)上傳到MCU,并從MCU讀取串行數(shù)據(jù)以進(jìn)行調(diào)試。它還為MCU的每個(gè)引腳提供引腳布局,以及兩個(gè)LED和一個(gè)按鈕,使開(kāi)發(fā)變得容易。自推出以來(lái),該板已經(jīng)發(fā)展了很多,下面顯示的是MSP_EXP430G2 Rev1.5。
MSP430G2553 具有比其他系列更好的規(guī)格,它還具有一個(gè) UART 模塊,在使用代碼編輯器工作室進(jìn)行調(diào)試時(shí)非常方便。因此,在本系列教程中,我們將使用 MSP430G2553 來(lái)探索該開(kāi)發(fā)套件的所有功能。
為開(kāi)發(fā)板供電和測(cè)試:
在我們開(kāi)始之前,TI 已經(jīng)在您的 MSP430G2553 微控制器上上傳了一個(gè)示例程序,因此讓我們?yōu)殡娐钒骞╇姴z查它是否正常工作。您可以通過(guò)迷你 USB 插孔為電路板供電,完成后,您應(yīng)該注意到主板左下角的 LED(紅色和綠色)交替發(fā)光。然后,您可以按下連接到P1.3的按鈕,檢查內(nèi)部溫度傳感器是否正常工作。是的,MSP2553 有一個(gè)內(nèi)部溫度傳感器,按下按鈕后只需揉搓手指將其預(yù)熱并將其放在 IC 上,您就可以注意到紅色 LED 亮起以指示溫度升高。涼??!右??好了,現(xiàn)在讓我們繼續(xù)討論軟件環(huán)境。
適用于 MSP430 LaunchPad 的編程軟件 (IDE):
德州儀器允許我們通過(guò)各種環(huán)境對(duì)他們的微控制器進(jìn)行編程。官方的是一個(gè)代碼編輯器工作室,通常被稱為CCS。該軟件是免費(fèi)提供的。此外,它需要一些最低水平的微控制器經(jīng)驗(yàn)。不用擔(dān)心,我們將涵蓋熟悉CCS的每一步。
還有一個(gè)IDE可用于編寫我們的程序,即Energia IDE。那么,CCS和Energia IDE有什么區(qū)別呢?我們已經(jīng)在之前的教程中介紹了Energia IDE。
Energia IDE vs. Code Composer Studio:
Energia是一個(gè)開(kāi)源和免費(fèi)的環(huán)境,使我們能夠輕松地對(duì)TI微控制器進(jìn)行編程。Energia的主要目的是使TI MCU的編程像在Arduino中編程一樣簡(jiǎn)單。因此,Energia相當(dāng)于支持德州儀器微控制器的Arduino。使用過(guò)Arduino的人一旦下載并啟動(dòng)Energia IDE,就會(huì)更加同意這一點(diǎn)。
Code Composer Studio (CCS)是一個(gè)更通用的專業(yè) IDE,在訪問(wèn)微控制器的內(nèi)部架構(gòu)方面具有更多的功能和能力。它具有內(nèi)置的調(diào)試功能,可以檢查代碼中的錯(cuò)誤,您可以逐行運(yùn)行代碼,這有助于查找錯(cuò)誤而不會(huì)令人頭疼。適應(yīng)CCS需要一些時(shí)間。一旦你設(shè)置了這個(gè)很棒的軟件,相信我,你會(huì)對(duì)特定的微控制器有所了解。您必須借助微控制器的數(shù)據(jù)表來(lái)編寫程序。
如果您完成了Arduino iDE或Energia IDE,請(qǐng)將編碼環(huán)境更改為CCS,這是工業(yè)中最苛刻的軟件。
下載并啟動(dòng)代碼編輯器工作室:
該軟件可在德州儀器的網(wǎng)站上免費(fèi)獲得。因此,您可以從給定的鏈接下載它 下載鏈接 .我們將使用Code Composer Studio V7,但您也可以下載最新版本,過(guò)程保持不變。
您可以使用 Web 安裝程序下載整個(gè)軟件,也可以下載安裝程序/離線安裝程序。該軟件在1GB左右非常重,因此您需要等到下載完成。
下載軟件后,打開(kāi)并安裝。
當(dāng)您單擊安裝程序時(shí),就像任何其他軟件一樣,系統(tǒng)會(huì)要求您同意條款和條件并選擇安裝文件夾。之后,您必須選擇要為其下載文件的板。在我們的例子中,我們使用的是MSP430 MCU,請(qǐng)單擊第一個(gè)選項(xiàng)。您可以下載多個(gè)電路板文件。
下一個(gè)窗口是選擇調(diào)試探針。默認(rèn)情況下,有一個(gè)選項(xiàng)可用,因此,單擊它并完成?,F(xiàn)在,您的安裝將開(kāi)始,所以只需等待它完成。
安裝后,它會(huì)詢問(wèn)工作區(qū)文件夾,因此選擇要保存文件的文件夾,然后單擊確定。
因此,讓我們看一下我們將看到的第一個(gè)窗口。
這是一個(gè)簡(jiǎn)單的界面,您可以在其中看到入門菜單,您可以在其中開(kāi)始制作項(xiàng)目,在入門旁邊有一個(gè)資源瀏覽器。這是該軟件的一項(xiàng)很棒的功能,您可以在其中找到 TI 產(chǎn)品的每個(gè)細(xì)節(jié),例如數(shù)據(jù)表、文檔等。無(wú)需在互聯(lián)網(wǎng)上查找數(shù)據(jù)表,只需單擊資源瀏覽器并單擊要探索的設(shè)備,然后您就可以看到有關(guān)產(chǎn)品的所有詳細(xì)信息。
在代碼編輯器工作室中創(chuàng)建第一個(gè)項(xiàng)目:閃爍 LED:
在CCS中創(chuàng)建項(xiàng)目:
第 1 步:-單擊“文件 ->新建 -> CCS 項(xiàng)目”。如下圖所示
Step 2:-Next, you have to choose MSP board that you are using. I am using MSP430G2553 so, I will choose this as shown.
為您的項(xiàng)目命名,然后單擊完成。
單擊完成后,將打開(kāi)一個(gè)新窗口,其中已經(jīng)寫入了一些行代碼。
在 CCS 中編寫代碼:
讓我們看看已經(jīng)給出的代碼的結(jié)構(gòu)。第一行是我們的頭文件,它取決于我們?cè)趧?chuàng)建項(xiàng)目時(shí)選擇的變體。正如我所說(shuō),我使用的是 MSP430G2553,所以我將頭文件重命名為
#include
下一行是主要功能。在主函數(shù)中,您將看到看門狗定時(shí)器的初始化。MSP430和其他基于TI的微控制器具有特殊類型的定時(shí)器,稱為看門狗定時(shí)器。該定時(shí)器的工作是在微控制器開(kāi)始掛起或停止發(fā)出響應(yīng)時(shí)重置微控制器。在我們的代碼中,我們不會(huì)使用看門狗計(jì)時(shí)器,因?yàn)樗哂诔鯇W(xué)者的觀點(diǎn)。當(dāng)我們打開(kāi)微控制器時(shí),看門狗定時(shí)器默認(rèn)打開(kāi),因此我們必須通過(guò)編寫此行來(lái)關(guān)閉此計(jì)時(shí)器
WDTCTL = WDTPW | WDTHOLD;
現(xiàn)在,我們必須編寫代碼來(lái)閃爍連接到P1.0的板載LED。另一個(gè)指示燈連接到P1.6。我們將僅使用第一個(gè) LED。在了解閃爍程序后,您也可以編寫用于切換這兩個(gè) LED 的代碼。
首先,我們必須聲明這些 PIN,因?yàn)槲覀儗⑺鼈冇米?INPUT 或 OUTPUT。
有許多類型的寄存器,即用于控制端口的內(nèi)存塊。因此,對(duì)于將端口定義為輸入或輸出,PXDIR(X是端口號(hào))。(數(shù)據(jù)方向寄存器)寄存器使用。如果 PXDIR 為 1,則充當(dāng)輸出,0 表示輸入。我們的 LED 位于端口號(hào) 1,因此我們將寫為P1DIR 。
我們需要配置 PIN 0,因?yàn)槲覀兊?LED 連接到此 PIN 并且它是輸出的。每個(gè)端口有 8 位,我們希望 Bit0 作為 HIGH 以使其輸出。因此,我們將 P1DIR 分配為
P1DIR = 0b00000001;
it is in binary , we can also write it in Hexadecimal i.e.
P1DIR = 0x01;
接下來(lái),我們必須將特定端口的特定引腳設(shè)置為高或低。為此,我們必須使用P1OUT寄存器,1 表示高電平,0 表示低電平。最初,我通過(guò)將 BIT0 設(shè)置為 1 個(gè)保持零來(lái)使 LED 亮起。
P1OUT=0b00000001
;
P1OUT = 0x01; //
in hexadecimal
由于MSP430中沒(méi)有內(nèi)置的延遲功能,因此我們必須使用for循環(huán)來(lái)提供延遲。
因此,在下一步中,我們必須聲明一個(gè)變量'i'用于延遲目的,它可以寫為
Unsigned int i;
首先,我們將使 PIN0 為高電平,并使用 FOR 循環(huán)給出一些延遲,然后使引腳為低電平。這樣,我們得到了閃爍效果。我們像這樣編寫程序:
P1OUT=0X01; //make bit0 HIGH
for
(i=0;i<20000;i++){ ? // ? ?delay till you make LED HIGH ? ?} ? ? ? ?P1OUT=0X00; ? //make bit0 LOW ? ? ? ?
for
(i=0;i<20000;i++){ ? // delay till you make LED LOW ? ? ? ? ? ? ? }
您也可以以其他方式編寫此代碼??梢允褂冒次贿\(yùn)算符來(lái)減少代碼行數(shù)。有 OR、AND 和 XOR 位運(yùn)算符可用。您可以使用異或運(yùn)算符 (^)。當(dāng)兩個(gè)位都相等時(shí),XOR 運(yùn)算給出 1,例如 1 和 1、0 和 0。我們這樣寫
P1OUT ^= 0x01;
這意味著P1OUT = P1OUT xor 0b00000001;
因此,最初我們將 P1OUT 初始化為 0b00000001,如果我們使用 0b00000001 進(jìn)行異或運(yùn)算,輸出將為 0b00000000 表示我們的 LED 將熄滅。在此之后,我們出于延遲目的放置了 for 循環(huán)。
while
(1) { P1OUT ^=0X01; //toggle the bits
for
(i=0;i<20000;i++){ ? // delay till you make LED LOW HIGH ? ? ?} ? ?}
將代碼上傳到 MSP430:
CCS的完整程序在頁(yè)面末尾給出。因此,我們的代碼已準(zhǔn)備好在 MSP430 中刻錄。因此,請(qǐng)使用USB電纜將MSP與筆記本電腦連接。
現(xiàn)在,我們必須編譯/構(gòu)建我們的代碼,為此單擊項(xiàng)目 -> 全部構(gòu)建。在窗口底部的控制臺(tái)框中檢查編譯報(bào)告。它將顯示“構(gòu)建完成”。
是時(shí)候上傳程序了。單擊“運(yùn)行”->“調(diào)試”。單擊調(diào)試后,您將獲得一個(gè)與省電相關(guān)的窗口,只需單擊繼續(xù)即可。在調(diào)試選項(xiàng)中,轉(zhuǎn)到“運(yùn)行>恢復(fù)”。如果選項(xiàng)已清空,則無(wú)需擔(dān)心,請(qǐng)轉(zhuǎn)到“查看>調(diào)試”,然后再次轉(zhuǎn)到“運(yùn)行>恢復(fù)”。
調(diào)試代碼后,程序?qū)⒘⒓瓷蟼鞯?MSP 中。一種快捷方法是簡(jiǎn)單地單擊屏幕上的播放/暫停按鈕。調(diào)試屏幕如下所示,如下所示
如果 LED 不閃爍,則重置主板或再次連接 USB。
這就是如何在代碼編寫器工作室中編寫一個(gè)簡(jiǎn)單的程序來(lái)使用 MSP430 閃爍 LED。
-
led
+關(guān)注
關(guān)注
242文章
23785瀏覽量
672363 -
msp430
+關(guān)注
關(guān)注
181文章
2406瀏覽量
230859 -
編輯器
+關(guān)注
關(guān)注
1文章
821瀏覽量
31898
發(fā)布評(píng)論請(qǐng)先 登錄
msp430g2553程序(msp430初學(xué)及省賽必備)
如何利用MSP430實(shí)現(xiàn)Blackfin DSP的程序引導(dǎo)?
如何利用MSP430輸出PWM控制小車呢
用C語(yǔ)言編寫程序實(shí)現(xiàn)通過(guò)按鍵使LED燈周期閃爍
msp430的實(shí)驗(yàn)程序
msp430延時(shí)程序設(shè)計(jì)
MSP430代碼編寫器Studio V5.2
基于MSP430的SPI驅(qū)動(dòng)編寫之用MSP430驅(qū)動(dòng)AFE4400

MSP430入門級(jí)程序:定時(shí)閃爍
利用MSP430實(shí)現(xiàn)智能電子時(shí)鐘的程序和設(shè)計(jì)資料免費(fèi)下載

使用MSP430G2553實(shí)現(xiàn)LED閃爍的程序和工程文件免費(fèi)下載的

如何利用ccs生成msp430的.hex文件

如何利用ccs生成msp430的.hex文件

評(píng)論