前幾天寫了有關F280049庫函數版工程的建立,庫函數編程方便快捷,但是我們不方便對寄存器操作,不利於我們的理解。採用寄存器編程,我們可以方便的操作寄存器的每一位,編寫代碼思路清晰。因此,我寫這篇博客來講述如何建立F280049寄存器版工程的建立。以下鏈接爲F280049庫函數版工程的建立,大家可以對比一下兩者的區別。
https://blog.csdn.net/fanxianyan1993/article/details/88090308
Step1:下載文件
下載C2000Ware軟件並安裝。下載地址如下:
下載該軟件主要是爲了獲得C2000系列DSP的一些資料。安裝之後打開安裝目錄的文件夾如下所示,需要用到的就是以下圖中標識的device_support這個文件裏邊的f28004x文件夾。
Step2:新建工程
打開CCS軟件(注:低版本的CCS不支持TMS329F280049這款芯片),點擊Project,New CCS Project....
彈出如下對話框:
- 選擇芯片類型和仿真器類型
- 工程名及工程地址
- 建立帶main函數的空工程
Step3:工程目錄添加文件
將Step1中提到的device_support文件夾拷貝到和工程目錄在同一文件夾(一般在workspace中),如下圖所示:
爲方便工程的管理,在工程目錄添加src、cmd、asm三個文件夾,如下圖所示:
1. src文件夾中添加工程所需要的源文件,源文件從工程目錄的device_support\f28004x文件夾中獲取。打開f28004x文件夾,複製目錄C:\Users\fanxianyan\Documents\CCS\my_workspace\device_support\f28004x\common\source中的部分c文件到剛纔新建的src文件夾中,如下圖所示:
再複製C:\Users\fanxianyan\Documents\CCS\my_workspace\device_support\f28004x\headers\source中的C文件到工程目錄src文件夾,如下圖所示:
最後,工程目錄C:\Users\fanxianyan\Documents\CCS\my_workspace\F280049C_DEMO(register)\src文件夾中包含的文件如下所示:
2.asm文件夾中主要添加工程所需要的彙編文件。複製文件夾C:\Users\fanxianyan\Documents\CCS\my_workspace\device_support\f28004x\common\source中的asm文件到工程目錄下的asm文件夾。如下圖所示:
3.cmd文件夾主要添加工程所需要的CMD文件,複製目錄C:\Users\fanxianyan\Documents\CCS\my_workspace\device_support\f28004x\common\cmd中的兩個CMD文件到工程目錄CMD文件夾中,如下圖所示:
再添加目錄C:\Users\fanxianyan\Documents\CCS\my_workspace\device_support\f28004x\headers\cmd 下的CMD文件到工程目錄CMD文件夾中
最終,工程目錄cmd文件夾中的文件如下所示:
CCS工程目錄如下所示:
Step4:添加文件以及路徑
右鍵工程,點擊Properties後彈出以下對話框,在選擇Include Options。
點擊上圖所示的綠色箭頭,彈出以下對話框:
點擊Browse,彈出以下對話框,找到路徑 C:\Users\fanxianyan\Documents\CCS\my_workspace\device_support\f28004x\common\include。如下圖所示:
再包含路徑 C:\Users\fanxianyan\Documents\CCS\my_workspace\device_support\f28004x\headers\include,如下圖所示:
接下來修改CCS工程文件,刪除CMD文件,如下圖所示:
再將 main.c 文件修改爲 F280049C_DEMO(register).c 文件,移動到src文件夾中,如下圖所示:
打開文件 F280049C_DEMO(register).c 添加如下代碼:
#include "F28x_Project.h"
void main(void)
{
InitSysCtrl(); //初始化系統時鐘
InitPieCtrl(); //初始化PIE
InitGpio(); //初始化GPIO
IER = 0x0000; //CPU級中斷失能
IFR = 0x0000; //清除CPU級中斷標誌
InitPieVectTable(); //初始化向量表
EnableInterrupts(); //使能全局中斷和PIE中斷
EINT;
ERTM;
while(1)
{
}
}
點開CMD文件夾,右鍵28004x_generic_flash_lnk.cmd,點擊Exclude from Build,如下圖所示:
最後編譯工程,0errors,0warning。
Step5:工程文件下載
我將編譯好的工程文件打包上傳到CSDN,需要的朋友可以下載。鏈接如下:
https://download.csdn.net/download/fanxianyan1993/11128253
提問方式:有啥不懂的可以隨時向我提問哈,掃描下方二維碼我會在第一時間給大家回覆的哈,謝謝。