CCS&VScode簡(jiǎn)介及配置

從下節(jié)課開(kāi)始,我們將要開(kāi)始學(xué)習(xí)TI的MSP430系列單片機(jī),它與Arduino相比,有更高的運(yùn)行速度、更大的內(nèi)存、更多的引腳以及更多的功能。首先是開(kāi)發(fā)環(huán)境的配置。

TI所有系列單片機(jī)都可以用一個(gè)名為CCS(Code Composer Studio)的IDE進(jìn)行開(kāi)發(fā),所以只要熟悉了MSP430的開(kāi)發(fā)與調(diào)試步驟,就可以順利地過(guò)渡到TI其他系列單片機(jī)的開(kāi)發(fā)。本文除了介紹CCS外,還將對(duì)如何使用VScode進(jìn)行項(xiàng)目開(kāi)發(fā)進(jìn)行介紹,利用其自動(dòng)補(bǔ)全功能可以給編寫(xiě)程序帶來(lái)極大的便利。

Part I CCS

Step1.下載CCS并安裝:

下載地址:http://processors.wiki.ti.com/index.php/Download_CCS#Download_the_latest_CCS

下載最新版的就可以了,不需要與截圖一致

安裝過(guò)程:正常安裝即可,以下只說(shuō)需要注意的

關(guān)于CCS安裝時(shí)由于中文用戶(hù)名導(dǎo)致的安裝錯(cuò)誤,可以通過(guò)以下方法解決(使用注冊(cè)表硬改用戶(hù)名,win10家庭版也適用):

https://blog.csdn.net/weixin_44912787/article/details/101167806

安裝目錄可以在其他盤(pán),但是目錄名最好是全英文


就選MSP430即可,其他的以后要用再裝

Step2.工作路徑設(shè)置

自己創(chuàng)建一個(gè)文件夾,工作路徑也要全英文!

English! English! English!


主頁(yè)面介紹

Step3.文件準(zhǔn)備

由于一些奇妙的原因,ResourceExplorer常常打不開(kāi),不過(guò)可以通過(guò)這個(gè)地址進(jìn)入到TI的資源檢索頁(yè)進(jìn)行檢索:http://dev.ti.com/tirex/#/,速度都有點(diǎn)慢,可以借助一些工具進(jìn)行加速,不在本文介紹范圍之內(nèi)。將我們所要查找的芯片/開(kāi)發(fā)板信號(hào)輸入搜索框就能得到關(guān)于這個(gè)期間的所有資料,下圖以我們所要使用的MSP430F5529為例。查找到相應(yīng)元件會(huì)跳轉(zhuǎn)到這對(duì)應(yīng)的頁(yè)面,資料應(yīng)有盡有,從原理圖、數(shù)據(jù)手冊(cè)、用戶(hù)手冊(cè)到示例代碼。我們主要需要的是芯片與開(kāi)發(fā)板的原理圖(管腳接法)、用戶(hù)手冊(cè)(寄存器版本和庫(kù)函數(shù)版本)、庫(kù)函數(shù)代碼以及示例??梢钥吹?,這里面還有我們所要使用的開(kāi)發(fā)板的介紹(MSP430F5529LP)。

芯片資源索引頁(yè)


芯片軟件支持首頁(yè)(有個(gè)下載按鈕)


開(kāi)發(fā)板介紹頁(yè)

然后點(diǎn)擊軟件支持頁(yè)的下載按鈕把相關(guān)文件下載下來(lái)(好像只能一次性全部下完),有1G多,打開(kāi)壓縮包我們可以看到文件結(jié)構(gòu)比較復(fù)雜,因?yàn)槠浒烁鞣N功能的介紹和demo,而且是一整個(gè)大系列的芯片,而經(jīng)過(guò)觀察與猜測(cè),我們只要把其中的driberlib文件夾提出來(lái)就夠了。其中有我們需要的基本庫(kù)函數(shù)文件(~/driverlib/MSP430F5xx_6xx)、基礎(chǔ)功能的庫(kù)函數(shù)實(shí)現(xiàn)示例(~/examples/MSP430F5xx_6xx)、以及庫(kù)函數(shù)的文檔(~/docs/MSP430F5xx_6xx)。

下載資料包總文件結(jié)構(gòu)
driverlib下文件結(jié)構(gòu)

Step4.創(chuàng)建一個(gè)項(xiàng)目

File-New-CCS Project,選擇芯片型號(hào),填寫(xiě)項(xiàng)目名稱(chēng)(英文)


新建項(xiàng)目

新建完成之后,自動(dòng)彈出main.c,點(diǎn)擊工具欄中的Build,稍等幾秒鐘,可以看到底下Console處顯示Build Finished

看看編譯器能不能用

通過(guò)usb連接上我們的msp430,再點(diǎn)一下工具欄上面的小蟲(chóng)子,進(jìn)入debug模式,中間除了出現(xiàn)進(jìn)度條的窗口讓他自己執(zhí)行之外,其他都選yes(一定要保證在代碼保存+已經(jīng)build成功的情況下再debug,要不然就會(huì)報(bào)錯(cuò)讓你修改代碼)。第一次用板子可能會(huì)彈窗提示固件需要更新,選確定讓它更新即可。然后出來(lái)下圖的界面。其實(shí)跟C語(yǔ)言用的codeblocks挺像的,其中一個(gè)很重要的窗口就是寄存器窗口,這個(gè)對(duì)我們的調(diào)試非常重要,而且也不是每種單片機(jī)都能這么方便地使用這個(gè)功能的(stm32出來(lái)挨打)。一開(kāi)始默認(rèn)是停在main的,再點(diǎn)一下工具欄上的Resume(綠色那個(gè))就開(kāi)始自動(dòng)運(yùn)行了,除非設(shè)置了斷點(diǎn)或者手動(dòng)暫停,否則不會(huì)繼續(xù)運(yùn)行。點(diǎn)擊Stop退出調(diào)試模式。如果還想要?jiǎng)e的窗口,可以通過(guò)菜單欄的View下面的項(xiàng)目對(duì)它們進(jìn)行調(diào)出。

Debug窗口


工具欄按鈕具體功能

現(xiàn)在,輸入以下代碼:

#include <msp430.h>

#include "driverlib.h"

void main (void)

{

? ? //Stop WDT

? ? WDT_A_hold(WDT_A_BASE);

? ? //P8.1 output

? ? GPIO_setAsOutputPin(GPIO_PORT_P8,GPIO_PIN1);

? ? //Set all PA pins HI

? ? GPIO_setOutputHighOnPin(GPIO_PORT_P8,GPIO_PIN1);

? ? //Enter LPM4 w/interrupts enabled

? ? __bis_SR_register(LPM4_bits + GIE);

? ? //For debugger

? ? __no_operation();

}

Build


果然不行

當(dāng)然不行啦!庫(kù)函數(shù)都沒(méi)加進(jìn)去,driverlib.h都找不到怎么編譯嘛,接下來(lái)我們就把庫(kù)函數(shù)加進(jìn)去(~/driverlib/MSP430F5xx_6xx)


右鍵菜單打開(kāi)相應(yīng)文件夾


把庫(kù)函數(shù)文件夾復(fù)制進(jìn)來(lái)

然后,再編譯……沒(méi)錯(cuò)!這次也不能成功!還要把它加到編譯目錄中。

選中項(xiàng)目-右鍵-Properties


照著做吧

然后……沒(méi)有然后了,這次編譯是真的能過(guò)了。

再點(diǎn)開(kāi)Debug選項(xiàng),下載并運(yùn)行程序,可以看到口袋版上最左側(cè)的LED燈亮了。

到此,一個(gè)能使用庫(kù)函數(shù)的項(xiàng)目創(chuàng)建完畢!以后都能通過(guò)這個(gè)流程創(chuàng)建項(xiàng)目了。

Part 2 VScode

Step1. 下載并安裝

https://code.visualstudio.com/

這個(gè)沒(méi)什么難度,可能還要安裝一些插件吧,自動(dòng)補(bǔ)全之類(lèi)的,具體谷歌/百度。(注:需要安裝C/C++的推薦插件)

打開(kāi)界面大致長(zhǎng)這樣


初始界面

Step2.添加文件(夾),建立工作區(qū)


不過(guò)這個(gè)時(shí)候還是不能直接在driverlib.h上右鍵“轉(zhuǎn)到定義”的,需要 文件-另存為工作區(qū),把目前的狀態(tài)保存了之后才可以將整個(gè)文件夾里面的內(nèi)容鏈接起來(lái)。另存為工作區(qū)之后,可以看到已經(jīng)可以根據(jù)庫(kù)函數(shù)文件進(jìn)行自動(dòng)補(bǔ)全了。

自動(dòng)補(bǔ)全

還有一個(gè)很重要的功能,Go to Declearation,在新窗口中打開(kāi)該函數(shù)或者宏定義的定義位置。由于TI的庫(kù)函數(shù)寫(xiě)得比較好,有得時(shí)候直接根據(jù)注釋就能看懂這一系列函數(shù)怎么用了,連UserGuide都不用看~ Ctrl+F12這個(gè)快捷鍵很常用



函數(shù)跳轉(zhuǎn)結(jié)果


宏定義跳轉(zhuǎn)結(jié)果

當(dāng)然,CCS里面也有跳轉(zhuǎn)功能,步驟也是一樣的,選中對(duì)應(yīng)的函數(shù)/變量,右鍵就能看到,快捷鍵是F3。(但是他沒(méi)有自動(dòng)補(bǔ)全,差評(píng))

最后一點(diǎn),有一個(gè)文件也很重要,就是msp430f5529.h,可以看到我們例程的第一行用的是msp430.h,不過(guò)這樣只有CCS能識(shí)別出來(lái),VScode識(shí)別不出來(lái),我們需要在安裝目錄(我的是E:\Program Files (x86)\CCS\ccsv8\ccs_base\msp430\include)下找到這個(gè)文件,復(fù)制到我們項(xiàng)目的根目錄中,再把main.c第一行改成#include <msp430f5529.h>,這樣就能在VScode中看到并引用其中的一些變量了。


最終的文件架構(gòu)

至此,VScode這邊也配置完畢。

p.s.中文亂碼解決辦法

如果注釋中有中文,CCS保存的文件使用的是GB2312編碼,而VS中默認(rèn)是UTF-8編碼??梢酝ㄟ^(guò)選擇菜單-文件-首選項(xiàng)-設(shè)置,在右邊用戶(hù)設(shè)置輸入:"files.autoGuessEncoding": true,并保存即可自動(dòng)識(shí)別編碼。

先打開(kāi)這個(gè)
有些版本是這樣的

如果不是GB2312的編碼,記得先保存到這種編碼再在CCS中打開(kāi)

然后再輸入GB2312

如果現(xiàn)有的代碼已經(jīng)時(shí)UTF-8了,在CCS中打開(kāi)可能會(huì)亂碼,點(diǎn)擊編輯區(qū),菜單欄Edit-Set Encoding,選擇Other,下拉點(diǎn)擊UTF-8就餓能正常顯示了。



盡情享受msp430吧~

p.s.如果無(wú)法正常打開(kāi)CCS(閃退),請(qǐng)?jiān)囍帽镜刭~戶(hù)登陸。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容