TMS320F2837x開發例程使用手冊(2)
CCS工程新建、編譯和導入
為了減少視覺疲勞,建議選擇Yahei?Consolas?Hybrid字體,這是一種合成字體,由微軟雅黑的中文字體和微軟專為程序員開發的Consolas的英文字體合成的,特別適合中英文的編程開發和代碼編寫。先將光盤tools目錄下的YaHei.Consolas.1.12.ttf文件復制到計算機"C:\Windows\Fonts"目錄下。
打開CCS,點擊CCS菜單欄下"Window->Preferences",如下圖所示:
圖 38
分別點擊"General->Appearance->Colors?and?Fonts->Basic->Text?Font"和"General->Appearance->Colors?and?Fonts->C/C++->EDITOR->C/C++ Editor?Text?Font",再點擊"Edit…",在彈出的界面中選擇12號常規"Yahei?Consolas?Hybrid"字體。
圖 39
圖 40
本平臺所有例程均使用TI v6.4.2及以上版本編譯工具,請先按照相關軟件安裝文檔安裝對應的編譯工具。如果出現提示編譯工具版本不一致警告信息,但例程可以直接編譯和使用,修改編譯工具版本配置可以去掉警告信息。步驟如下:
右擊工程,選擇"Properties"設置,如下圖所示:
圖 41
在彈出的對話框中選擇"General->Compiler?version-> TI?v6.4.2",如下圖所示:
圖 42
裸機工程新建
第一次啟動CCS的時候會讓你選擇一個Workspace,Workspace就是你的工作空間也就是項目文件所在的目錄,路徑隨意不能夠包含非ASCII字符(例如:中文)。還有一點需要注意的是,Windows系統對文件路徑是不區分大小寫的,但是如果你使用的是基于Linux版本的CCS需要注意路徑的大小寫。
圖 43
新建工程
點擊CCS菜單的"File->New->Project-> CCS?Project"。如下圖所示,
圖 44
接著彈出如下界面:
圖 45
Project?name:myled,CCS工程名字,稱里面不能夠包含非ASCII字符;
Location:工程存放路徑,可以自定義;
Output?type:Executable,輸出文件類型,可以選擇可執行文件或者靜態庫,選擇Executable編譯出來的程序是可以被DSP直接運行的,選擇"Static?Library"可以供其它應用程序調用的靜態庫。
Variant:TMS320F2837xS,CPU型號;
Connection:Texas?Instruments?XDS2xx?USB?Onboard Debug Probe,仿真器類型;
在"Empty?Projects"下方選擇"Empty?Project(with?main.c)"。如下圖所示:
圖 46
點擊Finish就可以完成工程新建了,彈出如下界面:
圖 47
添加工程文件
右鍵工程點擊"Add?Files…",選擇的源文件包括如下:
"NonOS\NonOS\Application\LED"目錄下
F2837xS_CodeStartBranch.asm
F2837xS_DefaultISR.c
F2837xS_GlobalVariableDefs.c
F2837xS_Gpio.c
F2837xS_Headers_nonBIOS.cmd
F2837xS_PieCtrl.c
F2837xS_PieVect.c
F2837xS_SysCtrl.c
F2837xS_usDelay.asm
Sci.c
SciStdio.c
SciStdio.h
圖 48
添加完文件后彈出如下窗口,選擇"Copy?files"。
圖 49
添加完畢后如下圖所示:
圖 50
配置工程屬性
右鍵myled工程,點擊Properties,在彈出的對話框中添加相應的頭文件路徑,如下:
"${CG_TOOL_ROOT}/include"
"../../../F2837xS_common/include"
"../../../F2837xS_common/inc"
"../../../F2837xS_headers/include"
圖 51
添加庫文件如下圖所示:
圖 52
編寫程序
編輯main.c文件,增加用戶需要實現的功能代碼,如下圖所示:
圖 53
代碼如下:
#include "F28x_Project.h"
#include "SciStdio.h"
void delay_loop(void);
void Gpio_select(void);
void main(void)
{
InitSysCtrl();
// GPIO初始化
Gpio_select();
// 關中斷
DINT;
// 初始化Pie控制寄存器
InitPieCtrl();
// 不使能中斷,清中斷標志
IER = 0x0000;
IFR = 0x0000;
// 初始化中斷向量表
InitPieVectTable();
// 初始化串口
SCIStdioInit();
SCIPuts("\r\n ============Test Start===========.\r\n", -1);
SCIPuts("Welcome to TL2837x LED Demo application.\r\n\r\n", -1);
while(1)
{
// GPIO 翻轉
GpioDataRegs.GPDTOGGLE.bit.GPIO115 = 1;
// 延時 500ms
DELAY_US(500000);
GpioDataRegs.GPDTOGGLE.bit.GPIO116 = 1;
DELAY_US(500000);
GpioDataRegs.GPDTOGGLE.bit.GPIO111 = 1;
DELAY_US(500000);
GpioDataRegs.GPDTOGGLE.bit.GPIO112 = 1;
DELAY_US(500000);
GpioDataRegs.GPDTOGGLE.bit.GPIO113 = 1;
DELAY_US(500000);
GpioDataRegs.GPDTOGGLE.bit.GPIO114 = 1;
DELAY_US(500000);
}
}
void Gpio_select(void)
{
EALLOW;
// 管腳復用設置為 GPIO功能
GpioCtrlRegs.GPDMUX2.bit.GPIO115 = 0; // led1
// GPIO 方向設置為輸出
GpioCtrlRegs.GPDDIR.bit.GPIO115 = 1;
GpioCtrlRegs.GPDMUX2.bit.GPIO116 = 0; // led2
GpioCtrlRegs.GPDDIR.bit.GPIO116 = 1;
GpioCtrlRegs.GPDMUX1.bit.GPIO111 = 0; // led1
GpioCtrlRegs.GPDDIR.bit.GPIO111 = 1;
GpioCtrlRegs.GPDMUX2.bit.GPIO112 = 0; // led2
GpioCtrlRegs.GPDDIR.bit.GPIO112 = 1;
GpioCtrlRegs.GPDMUX2.bit.GPIO113 = 0; // led3
GpioCtrlRegs.GPDDIR.bit.GPIO113 = 1;
GpioCtrlRegs.GPDMUX2.bit.GPIO114 = 0; // led4
GpioCtrlRegs.GPDDIR.bit.GPIO114 = 1;
EDIS;
}
編譯和運行程序
右擊工程,在彈出來的對話框中點擊"Build?Project",即可對當前工程編譯并產生可執行.out文件,最后再按照前面章節步驟進行加載,就可以運行編譯好的.out文件。
圖 54
通過以上步驟,用戶可以學習如何新建工程和在CCS下運行程序了。
SYS/BIOS工程新建
新建工程
選擇"Project"目錄下的"New CCS Project…"
圖 55
接著彈出如下界面:
圖 56
確認各項選擇無誤后,點擊Next,開始配置工程屬性。
配置工程屬性
選擇對應的XDCtools版本和Platform,點擊Finish,完成工程的新建。
圖 57
編譯和運行程序
新建工程的目錄,如圖所示:
圖 58
右鍵點擊工程文件,選擇"Build Project"
圖 59
成功編譯后,控制臺打印信息如圖所示。
圖 60
最后按照前面章節步驟進行加載,就可以運行編譯好的.out文件,控制臺打印信息如圖所示。
圖 61
控制臺
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。