配置:CCS8.3 + CC3200 + SDK1.3.0
踩了一下午的坑,才完整的創建了一個能夠用工程。爲了方面說明,後面直接使用SDK中的PWM例程中的文件。
一、紅色框框爲須要注意的地方
二、右鍵工程,選擇添加文件,而後定位到SDK中的pwm例程中,選中三個文件,以下圖:
而後點擊打開,ccs會提示覆制仍是連接到工程中,以下圖
這裏須要注意:
(1)添加這個main文件以前須要刪除建立工程時自動建立的main文件。
(2)若是是添加庫文件的話,由於庫文件咱們通常不會去改動,因此選擇link to files,連接該文件便可,若是是添加後面可能會改動的文件,那麼就選擇copy files。
這裏由於咱們添加的主函數和引腳配置函數,不屬於庫文件,因此最好選擇copy。
三、接下來就是配置工程屬性了,主要包括一下幾個步驟,
(1)先建立一個路徑變量,方便後面使用。
(2)CCS對於工程的配置有兩種模式,debug和release,debug模式下生成的bin文件很大,大概是release模式下的10倍還要多(實測debug模式bin文件47k,release只有4k),並且我在debug模式下生成的bin文件下載到板子上以後沒法運行,不知道怎麼回事。
因此索性剛開始我就把模式改成release模式,不用默認的debug模式。修改方式以下圖
(3)優化等級調爲off,不須要優化。
(4)添加包含路徑,這一步很重要,保證程序編譯過程當中編譯器能找到正確的頭文件。添加以後以下圖
固然,若是工程中須要的文件比較多的話,爲了便於管理,可能會本身新建文件夾,這時也須要把本身新建的文件夾路徑包含進去。
(5)修改堆和棧的大小爲0x800。
(6)添加連接器的查找路徑
四、重要問題解決
通過上面的配置,一個工程基本上創建了,編譯發現沒有問題,在線調試也是妥妥的:
可是當想要下載到開發板上的時候,發現release文件夾中沒有生成bin文件!
百度了不少,都說須要在build選項卡中添加一段代碼
添加的代碼具體內容以下:
"${CCE_INSTALL_ROOT}/utils/tiobj2bin/tiobj2bin" "${BuildArtifactFileName}" "${BuildArtifactFileBaseName}.bin" "${CG_TOOL_ROOT}/bin/armofd" "${CG_TOOL_ROOT}/bin/armhex" "${CCE_INSTALL_ROOT}/utils/tiobj2bin/mkhex4bin"
可是添加完了以後,從新編譯仍是沒有生成bin文件!
經過對比標準工程的配置,發現了上面配置的一個疏忽的地方:預約義標誌,以下圖
那麼爲何須要添加這個預約義標誌呢?
經過搜索main文件,會發現主函數中有下面這段代碼:
也就是說沒有定義ccs的時候,這個函數得不到執行。進一步查看這個函數的功能:
用來爲中斷向量表分配地址!
那麼這個函數的參數就應該是中斷向量表了:
那麼以前之因此沒法生成bin文件,多是由於沒有中斷向量表!
因此在工程屬性選項卡中添加了CCS的預約義標誌以後,再次編譯,發如今release文件夾中出現了bin文件:
至此,一個完整的工程算是創建了。