調(diào)試環(huán)境主要包含3個(gè)部分,仿真器,集成調(diào)試環(huán)境和開發(fā)板。下面將逐一介紹:
2.1 仿真器(emulator)
目前支持AM335x的仿真器的型號(hào)比較多,有XDS560v2,XDS510,XDS100v2, XDS100v3,等,比較常見的是XDS560v2和XDS100v2。
XDS560v2,性能好,速度快,具有trace功能,但是價(jià)格偏貴。 XDS100v2價(jià)格比較便宜。 其具備和XDS560v2一樣的基本調(diào)試功能,只是XDS100v2的速度相對(duì)略慢。
XDS560v2和XDS100v2在PC機(jī)上的驅(qū)動(dòng)(Windows,Linux)都已經(jīng)包含在CCS中了,所以安裝了最新版的CCS,就會(huì)安裝相應(yīng)的驅(qū)動(dòng)。
2.2 集成開發(fā)環(huán)境
TI有自己的集成開發(fā)環(huán)境(IDE)CCS.目前最新的版本是基于Eclipse IDE架構(gòu)的,界面新穎方便。
下載地址 http://processors.wiki.ti.com/index.php/Download_CCS。
CCS有Windows版本和Linux 版本,后面會(huì)在介紹調(diào)試過程中具體介紹兩者的差異。
2.3 開發(fā)板
目前,針對(duì)不同的應(yīng)用,TI發(fā)布了基于AM335x的多個(gè)開發(fā)板。其中BeagleBone,Starter Kit和ICE上配置了基于FT2232的xds100v2。而GPEVM和IDK上引出了CTI JTAG接口。
這里選擇GP EVM和 Spectrum DigitalXDS560v2 作為調(diào)試平臺(tái)。
3. CCS 調(diào)試Uboot/SPL的具體步驟
下面正式開始CCS的調(diào)試。調(diào)試的過程主要分為導(dǎo)入U(xiǎn)-Boot/SPL 工程, CCS 連接AM335x,代碼調(diào)試等幾個(gè)部分。
3.1 導(dǎo)入CCS代碼
在CCS中, Menu File -》 Import … 選擇 Makefile 方式導(dǎo)入,如下圖所示:

在ezsdk中,U-Boot/SPL所對(duì)應(yīng)的Makefile的具體路徑如下:
/home/sitara/ti-sdk-am335x-evm-05.05.00.00/board-support/U-Boot-2011.09-psp04.06.00.08
如前面所提到,U-Boot 和SPL的源碼在同一個(gè)文件夾的,通過不同的Makefile管理不同的編譯宏來區(qū)分的。這里導(dǎo)入的是U-Boot的代碼對(duì)應(yīng)的Makefile,會(huì)相應(yīng)的導(dǎo)入U(xiǎn)-Boot對(duì)應(yīng)的預(yù)編譯選項(xiàng),因?yàn)槠浒怂械拇a。而對(duì)于SPL,也會(huì)相應(yīng)的一起帶入,只是在CCS中看到的代碼的宏定義有些不對(duì),但這個(gè)不影響調(diào)試。
3.2 CCS 連接 AM335x.
主要分成仿真器的連接,target連接和Debug配置等幾部分:
3.2.1 [url=]仿真器的連接[/url]
對(duì)于 AM335x GP EVM選用Spectrum DigitalXDS560v2 的20 pin的接口板,連在baseboard的J2口上即可,注意pin腳的順序,不要把JTAG 接口插反了。
對(duì)于beaglebone,StarterKit,ICE等,這些板子已經(jīng)把XDS100v2 仿真器集成到板子上了,所以直接用usb線連到PC機(jī)上即可。
A. CCS的配置
CCS的配置主要包括Target的配置和連接兩部分。
a. Target 配置
Target的配置包含兩個(gè)部分,一個(gè)是仿真器(XDS560v2),另一個(gè)就是SOC(AM335x)。具體操作如下:
i. View -》 Target Configurations
ii. 點(diǎn)右鍵選擇New Target Configuration.
iii. 新建一個(gè)叫做AM335_EVM的target.
iv. Connection中選擇 Spectrum Digital XDS560V2 STM USB Emulator.
v. 對(duì)于XDS100v2 , 可以選擇 Texas InstrumentsXDS100v2 USB Emulator.
vi. 在Board or Device 中選擇AM335x.
vii. 點(diǎn)擊Save 保存。
viii. 點(diǎn)擊Test Connection 看是否能夠正常連接。
配置target成功后,會(huì)看到如下界面

3.2.2 Target 連接
A. 右鍵選中Target Configurations中已配置好的target,AM335x_EVM.ccxml, 在右鍵菜單中選擇Launch SelectedConfiguration,連接成功后,可以得到下圖

此時(shí),PC 和仿真器以及仿真器和SOC的JTAG連接成功,但是ARM core還沒有連上。從圖中可以看到,有多個(gè)core的配置選項(xiàng),由于U-Boot/SPL,Linux 運(yùn)行在ARM coretex-A8 core上,這里只關(guān)注ARM core。
B. 在Debug窗口中,右鍵點(diǎn)擊CortxA8 core, 選擇Connect Target. 連接成功后,如下圖所示:

此時(shí),已經(jīng)成功連上AM335x的Cortex-A8 core了。
3.2.3 Debug配置
這里的debug配置,是對(duì)emulator連上core后行為的設(shè)置。 可以通過鼠標(biāo)右鍵點(diǎn)擊properties,得到以下界面:

在該頁配置中,在調(diào)試過程需要調(diào)整的就是Auto RunOptions,可以根據(jù)需要設(shè)置,當(dāng)加載了image后,core自動(dòng)運(yùn)行到指定的symbol,并且被JTAG接口所停住
電子發(fā)燒友App








評(píng)論