国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Davinci調(diào)試環(huán)境的搭建 2

Davinci調(diào)試環(huán)境的搭建  

2011-06-17 13:48:05|  分類: TI備查 |  標(biāo)簽: |字號 訂閱

一、Davinci調(diào)試環(huán)境搭建所需軟件
    Davinci的程序分DSP程序及ARM程序,DSP程序我們在CCS中編輯和編譯,ARM程序在Source Insight中編輯,在Linux中的dvsdk1.3工具鏈下編譯。

 

以下是我們在開發(fā)過程中所使用的軟件:

Windows:

       CCS 3.3               DSP程序編譯環(huán)境

       TDS560USB          仿真器驅(qū)動

       VMWare5.0           虛擬機軟件

       Source Insight 3.5 軟件工程編輯工具

       Tera Term             串口控制軟件

       DVFlasher             串口flash燒寫工具

       UltraEdit-32           文本編輯工具

 

Linux:

       dvsdk1.3               ARM交叉編譯工具鏈

       GCC3.2.2              編譯器

       VI                         文本編輯工具

 

同時,在linux下需要啟動如下服務(wù):

       samba    通過網(wǎng)絡(luò)提供與windows共享文件功能

      nfs          通過網(wǎng)絡(luò)給Davinci板卡提供根文件系統(tǒng)

      tftp         通過網(wǎng)絡(luò)下載文件至Davinci板卡

      dhcp              動態(tài)分配IP

 

二、Davinci調(diào)試環(huán)境搭建及使用總體步驟
 

Davinci調(diào)試環(huán)境搭建及使用可以分成5大步:

1,  搭建linux環(huán)境

2,  安裝arm編譯環(huán)境

3,  搭建CCS環(huán)境

4,  編譯庫,生成x64P,由ARM端可執(zhí)行程序調(diào)用運行

5,  編譯uboot并燒寫進flash,燒寫內(nèi)核及根文件系統(tǒng)

 

 

三、搭建linux環(huán)境
      安裝linux操作系統(tǒng),可以在物理硬盤上直接安裝,也可以采用在Windows的虛擬機上安裝,方法并不唯一,我們采用的是在Windows的虛擬機上安裝。同樣,本文提到的許多方法都不是唯一的實現(xiàn)方式,而只是我們所采用的那一種方法。

安裝虛擬機與linux時請參考文檔《虛擬機軟件Vmware Workstation 5.0使用指南.doc》,需要注意幾點:

1,  分配硬盤空間時,至少需要12G;

2,  物理內(nèi)存推薦256M以上,安裝linux時,swap空間大小加上物理內(nèi)存大小必須超過600M;

3,  安裝linux時,可以使用光盤安裝,也可以使用硬盤上的ISO映象文件進行安裝;與不用虛擬機在物理硬盤上安裝的過程是一樣的;在安裝好linux后,需要安裝VMware Tools。

 


注意:由于后面需要與Windows之間進行通訊,我們的虛擬機網(wǎng)絡(luò)采用網(wǎng)橋的方式,將虛擬機中l(wèi)inux的IP配置成與主機Windows同一網(wǎng)段,例如,Windows的IP為192.168.1.80,我們可以指定Linux的IP為192.168.1.81,在命令行輸入如下命令:

ifconfig eth0 192.168.1.81 netmask 255.255.255.0

      然后,Linux與Windows就可以互相ping通了。

 

 


 

四、安裝ARM程序的編譯環(huán)境
要執(zhí)行本步驟,系統(tǒng)需要滿足如下條件:

 

1. 安裝了RedHat Linux 9.0或其他較新linux版本,且安裝時應(yīng)選擇了下列組件:

a) Editors包中的vi

b) Network servers包中的dhcp

2. Redhat Linux 服務(wù)器的IP地址為192.168.1.81、子網(wǎng)掩碼為255.255.255.0

3. 知道root用戶的密碼。

 

安裝arm編譯環(huán)境需要以下的工具包:

mvl_4_0_1_demo_sys_setuplinux.bin

mvl_4_0_1_demo_target_setuplinux.bin

mvl_4_0_1_demo_lsp_setuplinux_#_#_#_#.bin

dvsdk_setuplinux_#_#_#_#.bin

xdc_setuplinux_#_#_#_#.bin

bios_setuplinux_#_#_#_#.bin

TI-C6x-CGT-v#.#.#.#.bin

其中的#代替數(shù)字,表示版本號,我們當(dāng)前使用的版本具體如下:

mvl_4_0_1_demo_sys_setuplinux.bin

mvl_4_0_1_demo_target_setuplinux.bin

mvl_4_0_1_demo_lsp_setuplinux_01_20_00_014.bin

dvsdk_setuplinux_1_30_00_40.bin

bios_setuplinux_5_33_03.bin

TI-C6x-CGT-v6.0.15.1.bin

xdc_setuplinux_3_00_02_14.bin

 

下面詳細(xì)說明以上這些文件如何安裝:

 

1、安裝ARM交叉編譯環(huán)境
啟動RedHat Linux服務(wù)器,到出現(xiàn)登錄畫面時,使用root用戶登錄,

 

(1)搭建MontaVista Linux開發(fā)環(huán)境
直接運行前3個文件,根據(jù)提示操作即可。命令如下:

host $ ./mvl_4_0_1_demo_sys_setuplinux.bin

host $ ./mvl_4_0_1_demo_target_setuplinux.bin

host $ ./mvl_4_0_1_demo_lsp_setuplinux_#_#_#_#.bin

運行時會詢問存放目錄,推薦為 /opt/mv_pro_4.0.1 。

以上3個命令生成3個壓縮包,先確認(rèn)生成的3個壓縮包:

host $ cd /opt/mv_pro_4.0.1

host $ ls

有如下3個壓縮文件:

  mvltools4.0.1-no-target.tar.gz

  mvl4.0.1-target_path.tar.gz

  DaVinciLSP-#_#_#_#.tar.gz

分別解壓,使用下面命令:

host $ tar zxf mvltools4.0.1-no-target.tar.gz

host $ tar zxf mvl4.0.1-target_path.tar.gz

host $ tar zxf DaVinciLSP-#_#_#_#.tar.gz

這樣就創(chuàng)建了新目錄 /opt/mv_pro_4.0.1/montavista/ ,其中存放了內(nèi)核源碼、根文件系統(tǒng)、Arm-gcc編譯器等。

(2)安裝dvsdk工具鏈
運行如下命令:

host $ ./dvsdk_setuplinux_#_#_#_#.bin

會生成一個目錄/opt/dvsdk_1_30_00_40,

host $ ./xdc_setuplinux_#_#_#_#.bin

host $ ./bios_setuplinux_5_#_#_#.bin

運行時會詢問存放目錄,指定為 /opt/dvsdk_1_30_00_40 。

在/opt/dvsdk_1_30_00_40下新建一個目錄,名為cg6x_6_0_15

執(zhí)行如下命令:

host $ ./TI-C6x-CGT-v#.#.#.#.bin

運行時會詢問存放目錄,指定為 /opt/dvsdk_1_30_00_40/ cg6x_6_0_15 。

到這一步,所需要的工具鏈就安裝完成。下一步是進行適當(dāng)?shù)穆窂脚渲谩?nbsp;      

(3)dvsdk工具鏈的路徑配置
/opt/dvsdk_1_30_00_40路徑下有一個重要的配置文件:Rules.make,由于剛才另外在dvsdk目錄下安裝了三個工具,在Rules.make需要有相應(yīng)的更改。

對應(yīng)XDC_INSTALL_DIR宏及BIOS_INSTALL_DIR宏,需要改成如下值:

XDC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/xdc_3_00_02

BIOS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/bios_5_33_03

在需要使用到DSP程序編譯處,需要改動相應(yīng)的CGTOOLS_C64X宏如下:

CGTOOLS_C64X = $(DVSDK_INSTALL_DIR)/cg6x_6_0_15

至此,就可以進行ARM端程序的編譯了。

 

2、系統(tǒng)配置
      嵌入式系統(tǒng)由于對成本、體積、功耗等方面的要求,一般不能安裝發(fā)行版的Linux系統(tǒng)。所以Davinci系統(tǒng)也需要相應(yīng)的開發(fā)環(huán)境,來進行程序的開發(fā)調(diào)試。

      在進行程序開發(fā)調(diào)試時,我們采用NFS與tftp等網(wǎng)絡(luò)通信方式共享Linux服務(wù)器中的資源,用于嵌入式Linux進行訪問、改寫。

    本部分主要介紹包括NFS,DHCP服務(wù),samba服務(wù)以及DVEVM板部分參數(shù)的配置。

(1)設(shè)置NFS
[davinci@DavinciServer davinci]$ cd /root

[davinci@DavinciServer davinci]$ mkdir -p armfs

[davinci@DavinciServer davinci]$ cd /root/armfs/

[root@DavinciServer filesys]# cp -a 下面一行內(nèi)容緊跟在-a后,有一空格 /opt/mv_pro_4.0/montavista/pro/devkit/arm/v5t_le/target/* .

[root@DavinciServer filesys]# vi /etc/exports

在vi的界面下按i鍵進入輸入狀態(tài),輸入如下內(nèi)容:

/root/armfs/ *(rw,sync,no_root_squash)

按Esc鍵退出輸入狀態(tài),按:鍵(即Shift+;)鍵,鍵入命令wq?,退回到命令行提示符下。

[root@DavinciServer filesys]# /usr/sbin/exportfs -a

[root@DavinciServer filesys]# /sbin/chkconfig --level 12345 nfs on

[root@DavinciServer filesys]# /sbin/service nfs restart

Shutting down NFS mountd: [FAILED]

Shutting down NFS daemon: [FAILED]

Shutting down NFS quotas: [FAILED]

Shutting down NFS services: [ OK ]

Starting NFS services: [ OK ]

Starting NFS quotas: [ OK ]

Starting NFS daemon: [ OK ]

Starting NFS mountd: [ OK ]

[root@DavinciServer filesys]# rpm -q tftp-server

package tftp-servere is not installed 如果顯示這樣的內(nèi)容則未安裝tftp-server;如顯示為tftp-server-#.##-#的格式則已經(jīng)安裝tftp-server,請不要執(zhí)行帶下劃線的內(nèi)容。

[root@DavinciServer filesys]# eject放入RedHat Linux 9.0 Disk 3

[root@DavinciServer filesys]# mount /dev/cdrom 

[root@DavinciServer filesys]# cd /mnt/cdrom/

[root@DavinciServer cdrom]# cd RedHat/RPMS/ 

[root@DavinciServer RPMS]# rpm -ivh tftp-server-0.32-4.i386.rpm

warning: tftp-server-0.32-4.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e

Preparing... ########################################### [100%]

1:tftp-server ########################################### [100%]

[root@DavinciServer RPMS]# cd

[root@DavinciServer root]# eject放入TDS6446EVM配套光盤DaVinci Digital Video uation Kit Disk

[root@DavinciServer root]# mount /dev/cdrom 

[root@DavinciServer root]# ls /如果安裝了tftp-server接此運行

bin dev home lib misc opt root tmp var

boot etc initrd lost+found mnt proc sbin usr

[root@DavinciServer root]# mkdir /tftpboot如果上面沒有目錄tftpboot則創(chuàng)建之

[root@DavinciServer root]# cd /tftpboot

[root@DavinciServer tftpboot]# mkdir DVEVM

[root@DavinciServer tftpboot]# cp /mnt/cdrom/uImage DVEVM

[root@DavinciServer tftpboot]# /sbin/chkconfig tftp on 

[root@DavinciServer tftpboot]# /sbin/chkconfig --list

xinetd based services:

chargen-udp: off

rsync: off

chargen: off

daytime-udp: off

daytime: off

echo-udp: off

echo: off

services: off

servers: off

time-udp: off

time: off

cups-lpd: off

sgi_fam: on

rexec: off

rlogin: on

rsh: on

telnet: on

tftp: on on表示tftp服務(wù)已經(jīng)成功啟動

[root@RedHatServer root]# exit 

[davinci@RedHatServer filesys]# cd /home/davinci/workdir/filesys/opt

[davinci@RedHatServer opt]# tar zxf /mnt/cdrom/examples.tar.gz

(2)設(shè)置DHCP服務(wù)器
[root@DavinciServer opt]# vi /etc/dhcpd.conf 

在vi的界面下按i鍵進入輸入狀態(tài),輸入如下內(nèi)容:

ddns-update-style interim;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

subnet 192.168.1.0 netmask 255.255.255.0

{

range 192.168.1.100 192.168.1.253;

default-lease-time 1800;

max-lease-time 28800;

}

按Esc鍵退出輸入狀態(tài),按:鍵(即Shift+;)鍵,鍵入命令wq,退回到命令行提示符下。

[root@RedHatServer opt]# /sbin/service dhcpd restart 

Shutting down dhcpd: [FAILED]

Starting dhcpd: [ OK ]

[root@RedHatServer opt]# /sbin/chkconfig --level 12345 dhcpd on

 

(3)配置samba服務(wù)
1,查看機器上是否安裝了samba服務(wù),輸入下面命令:

rpm -q samba

如果安裝了,會顯示版本號。如果沒有安裝,插入Linux安裝光盤,輸入下面命令:

rpm -vih /mnt/cdrom/RedHat(Mandrake)/RPMS/samba*

2,samba配置

Samba是用來實現(xiàn)SMB(Server Messages Block)協(xié)議的一種軟件,是一套讓Unix/Linux系統(tǒng)能夠應(yīng)用Microsoft網(wǎng)絡(luò)通信協(xié)議的軟件,它可以和運行Windows 98、Windows 2000等操作系統(tǒng)的計算機實現(xiàn)文件共享和打印機共享服務(wù)。

      通過配置Samba服務(wù)器,可以提供Windows客戶機來訪問Linux系統(tǒng)上共享的資源,也能夠在Linux上通過SMB協(xié)議訪問Windows系統(tǒng)上的共享資源。

 

一、訪問Samba服務(wù)器配置工具

要訪問Samba服務(wù)器配置工具,只須依次單擊“主菜單→系統(tǒng)設(shè)置→服務(wù)器設(shè)置→Samba服務(wù)器”,即可打開Samba服務(wù)器配置窗口。

小提示:

  1.必須以root用戶身份才可以對Samba服務(wù)器進行配置。
    2.也可以在終端窗口輸入redhat-config-samba命令打開配置窗口。

二、進行服務(wù)器設(shè)置

  這里首先要對Samba服務(wù)器的基本設(shè)置和安全選項進行配置,單擊配置窗口上的“首選項→服務(wù)器設(shè)置”,即可打開服務(wù)器設(shè)置對話框)。

1)基本設(shè)置
在對話框的“基本”標(biāo)簽頁,我們可以指定Linux主機所在的工作組名稱,需要注意的是,此處的工作組名稱不一定非得與Windows主機所在的工作組名稱一致。


2)安全設(shè)置
現(xiàn)在就進行Samba服務(wù)器安全設(shè)置,這里一共有四個選項,分別介紹如下:

A. 驗證模式:如果Windows主機不是位于NT域里,此處應(yīng)該選擇“共享”驗證模式,這樣只有在連接Samba服務(wù)器上的指定共享時才要求輸入用戶名、密碼;
B. 驗證服務(wù)器:對于“共享”驗證模式,無須啟用此項設(shè)置;
C. 加密口令:應(yīng)該選擇“是”,這樣可以防止黑客用嗅探器截獲密碼明文;
D.來賓賬號:當(dāng)來賓用戶要登錄入 Samba服務(wù)器時,他們必須被映射到服務(wù)器上的某個有效用戶。選擇系統(tǒng)上的現(xiàn)存用戶名之一作為來賓Samba賬號。當(dāng)用戶使用來賓賬號登錄入Samba服務(wù)器,他們擁有和這個用戶相同的權(quán)限。

  三、添加共享目錄

接下來是添加共享目錄,單擊Samba配置窗口工具欄上的“增加”按鈕,即可打開一個添加共享對話框。

1)在該對話框上的“基本”標(biāo)簽頁上,指定要共享的目錄為某個存在的目錄,例如可以指定/tmp,再指定該目錄的基本權(quán)限是只讀還是讀/寫。

2)在“訪問”標(biāo)簽頁上,可以指定允許所有用戶訪問、或者只允許某些用戶訪問。

四、從Windows訪問Samba服務(wù)器

  好了,現(xiàn)在萬事俱備、只欠東風(fēng),只須啟動Samba服務(wù)即可。打開一個終端窗口,鍵入“/sbin/service smb start”命令,即可出現(xiàn)以下提示信息,表示Samba服務(wù)已經(jīng)啟動:

# /sbin/service smb start
啟動SMB 服務(wù) [確定]
啟動NMB 服務(wù) [確定]

接下來的事情就簡單了,在Windows里打開“網(wǎng)上鄰居”,就可以看到我們剛才設(shè)置的Samba服務(wù)器了。當(dāng)然,我們在文件夾的地址欄里直接輸入  \\192.168.1.81 能更快的訪問到剛才共享出來的內(nèi)容。

 

(4)設(shè)置DVEVM
此處的設(shè)置,我們假定正確的uboot已經(jīng)燒寫在Flash上,如果需要燒寫uboot,請參照第六部分的“燒寫uboot”內(nèi)容進行操作。

我們使用串口軟件Tera Term與Davinci板連接,設(shè)置波特率為115200,無校驗,1個停止位,無流控。設(shè)置好串口軟件后,將Davinci板上電,出現(xiàn)如下信息:

U-Boot 1.1.3 (Jun 15 2006 - 17:43:55)

U-Boot code: 81080000 -> 81096A0C BSS: -> 8109F31C

RAM Configuration:

Bank #0: 80000000 256 MB  

ARM Clock :- 243MZ        

DDR Clock :- 162MZ

MY AMD Flash: 16 MB

In: serial

Out: serial

Err: serial

Hit any key to stop autoboot: 0

 

在3秒倒計時內(nèi)按任意鍵,進入命令模式。下面輸入命令進行配置,在uBoot下輸入出錯只能用backspace刪除,而不能用左右鍵移動光標(biāo)。

 

DaVinci EVM # setenv ethaddr 00:0e:99:02:51:46 

DaVinci EVM # setenv ipaddr dhcp 

DaVinci EVM # setenv nfshost 192.168.1.81 

DaVinci EVM # setenv bootfile uImage 

DaVinci EVM # setenv rootpath /root/armfs 

DaVinci EVM # setenv fileaddr 80700000 

DaVinci EVM # setenv gatewayip 192.168.1.81 

DaVinci EVM # setenv serverip 192.168.1.81 

DaVinci EVM # setenv bootcmd 'dhcp;bootm' 

DaVinci EVM # setenv netmask 255.255.255.0v 

DaVinci EVM # setenv bootargs console=ttyS0,115200n8 noinitrd rw ip=dhcp root=/dev/nfs nfsroot=$(nfshost):$(rootpath),nolock mem=120M與上同行

DaVinci EVM # printenv 看設(shè)置的內(nèi)容是否一致

……………………………… 省略了相關(guān)顯示

DaVinci EVM # saveenv

Saving Environment to Flash...

Un-Protected 1 sectors

Erasing Flash...

Erasing sector 4 ... done.

Erase Operation Completed.

Erased 1 sectors

Writing to Flash...-done

Protected 1 sectors

將系統(tǒng)斷電后,重新上電,等到出現(xiàn)

…………………… 省略內(nèi)容若干 ……………………

192.168.1.?? login:root

root@192.168.1.?? # cd /root/loop

root@192.168.1.?? # ./loadmodules.sh

……………………省略內(nèi)容若干

root@192.168.1.?? # ./videoloop

 

說明:此配置設(shè)置波特率為115200,采用動態(tài)分配IP,內(nèi)核從Linux服務(wù)器使用tftp協(xié)議下載uImage,根文件系統(tǒng)從Linux服務(wù)器使用NFS方式訪問共享路徑/root/armfs,這樣的配置適合程序的調(diào)試運行。這些部分的設(shè)置都是可以改動的,具體參見《DVEVM Getting Started Guide.pdf》,關(guān)于uboot的命令使用,請參考《U-Boot命令 emLinuxARM.pdf》。

 

(5)編譯調(diào)試工具框圖
    下圖為常見調(diào)試框圖,在Windows端通過samba服務(wù)訪問Linux中的源代碼,用Soure Insight進行編輯,在Linux中的dvsdk1.3工具鏈中編譯,將生成應(yīng)用程序放在NFS所共享的目錄下,供Davinci板卡訪問。我們通過串口控制軟件Tera Term來查看與改變Davinci板卡的運行狀態(tài)。

 

五、安裝DSP程序的編譯環(huán)境
TI公司提供了高效的C編譯器和集成開發(fā)環(huán)境Code Composer Studio ,可以方便的編譯調(diào)試DSP程序,同時CCS的幫助文檔也是十分全面。

1、安裝CCS3.3
這部分安裝比較簡單,詳細(xì)指導(dǎo)參見TI公司的CCS安裝指南,可分成兩部分:

1,解壓并安裝Code_Composer_Studio_v3.3_Build_3.3.38.2.zip

一般使用默認(rèn)的配置即可,但是要注意在選擇仿真芯片類型時,必須同時選上C6000、OMAP,以及TMS470系列,這是由于需要同時支持DSP與ARM的仿真運行。

2,運行CCS_v3.3_SR5_3.3.54.1.exe,采用默認(rèn)的配置即可。

 

2、安裝TDS560USB驅(qū)動
安裝TDS560USB驅(qū)動與ccs設(shè)置都需要仔細(xì)操作,一步操作錯誤就會導(dǎo)致最后使用不起來。

 

(1)安裝TDS560USB驅(qū)動時注意事項
請注意正確連接14針的JTAG電纜,該電纜接錯可能會導(dǎo)致仿真器或目標(biāo)系統(tǒng)永久損壞;仿真器14孔插頭的第六孔已經(jīng)封閉,目標(biāo)系統(tǒng)JTAG 14針插針的第六針應(yīng)該拔掉。如果不能確定接插件的連接方向,請與您的經(jīng)銷商聯(lián)系或查詢我們的網(wǎng)站中的相關(guān)信息。

 

 

為發(fā)揮TDS560USB 仿真器的性能,主機應(yīng)具備USB2.0接口。如果沒有USB2.0的接口,最好使用PCI-USB2.0 or PCMCIA-USB2.0轉(zhuǎn)接卡。

 

請不要帶電拔插JTAG電纜。

 

在移動和搬運TDS560USB系統(tǒng)時,請注意TDS560 POD上的線纜不能負(fù)重,否則內(nèi)部電纜容易損壞。

 

(2)USB設(shè)備驅(qū)動程序安裝
將TDS560USB仿真器與目標(biāo)板連接、計算機相連。

 

然后將電源與TDS560USB仿真器相連,此時POWER燈亮,READY閃爍。

 

按照Windows 的“發(fā)現(xiàn)新硬件”提示指定 WintechDigital TDS560USB設(shè)備驅(qū)動程序所在的目錄。在產(chǎn)品安裝光盤的drivers目錄下 (Win98/SE 是在 drivers\win98_me, Win2000/XP是drivers\win2k_xp )。

設(shè)備驅(qū)動安裝完成后,Windows將在設(shè)備列表中列出TDS560USB Emulator for Windows 98 或TDS560USB Emulator for Windows 2000/XP/2003。

 

注:

 

如果找不到這個設(shè)備,請檢查硬件的連接是否正確。

 

如果誤把TDS560USB Emulator for Windows 98驅(qū)動程序安裝到Windows 2000/XP/2003系統(tǒng)中,請在設(shè)備管理器中對該設(shè)備使用“更新驅(qū)動程序”功能。

 

 

(3)安裝TDS560USB仿真器工具軟件
在安裝TDS560USB仿真器工具軟件之前,請確認(rèn)CCS已經(jīng)安裝,否則仿真器無法工作。運行產(chǎn)品安裝光盤根目錄下的Setup.exe。根據(jù)您的需要選擇DSP類型,再選定相應(yīng)的CCS目錄。我們是選上了C6000,OMAP,Others DSPs。

 

軟件安裝完成后,可以在桌面上看到 “WintechDigital ” 快捷方式圖標(biāo),同時在CCS目錄下建立“TDS560USB”目錄。

如果需要更換CCS,請重新運行Setup.exe卸載TDS560USB仿真器工具軟件,并再次運行Setup.exe,選定新的DSP及新的CCS路徑。

3、進行CCS setup
在DAVINCI 板卡上使用TDS560USB仿真器時進行CCS Setup 設(shè)置的步驟如下:

首先要注意:

CCS的版本需要是3.2版本或更高版本;

設(shè)置前必須已經(jīng)運行過TDS560USB 仿真器光盤所附帶的支持工具setup.exe 。

 

1.CCS Setup啟動后,選擇”Create Board”,雙擊 WintechDigital TDS560USB Emulator.

2. 設(shè)置連接名稱:TDS560USB Davinci

3. 不用作任何改動,直接完成。

4.選擇TDS560USB Davinci ,并在中欄雙擊或拖ICEPICK_C到左欄中

5.在彈出窗口中設(shè)置CPU的個數(shù)為2

6.點擊next 跳過。

7.設(shè)置Subpath name 和端口號,名字隨便取,但是端口號ARM必須為16,DSP為18。

8.以上步驟完成后,選擇左欄的ARM9

9.在中間欄拖ARM9 CPU到左欄中,掃描鏈中的ARM9處理器。

10.設(shè)置ARM9處理器的GEL 文件

此處需要選中隨板提供的 DaVinciEVM_arm.gel 文件

11.開始設(shè)置DSPC64+,在左欄中選中\(zhòng)dSPC64,然后把中間欄的C6400PLUS拖到左欄的DSPC64中

12.設(shè)置C64PLUS處理器的GEL文件。

此處需要選中隨板提供的 DaVinciEVM_dsp.gel 文件

13.到此,設(shè)置工作完成,存儲并退出CCS Setup 。

 

4、運行CCS
以上步驟完成后,先斷開仿真器電源,將TDS560USB POD上的JTAG電纜與目標(biāo)板JTAG接口相連,然后打開目標(biāo)板電源,接通仿真器電源,運行CCS。觀察兩個指示燈,如果READY燈和BUSY燈輪流閃爍,表示TDS560USB正常工作,否則請斷開TDS560USB仿真器的電源,拔下USB線纜,重新檢查前面的硬件連接和軟件安裝、設(shè)置是否正確。

 

CCS及驅(qū)動都安裝完成之后,在CCS運行前,最好先運行一下 “桌面 \wintechdigital\ RESET TDS560USB”,如果復(fù)位正常,則運行CCS進行實時仿真,如果不能正常復(fù)位,請拔下仿真器電源和USB電纜,重新連接硬件,并檢查硬件連接和軟件安裝是否正確。

 

六、程序編譯
    Davinci的程序分DSP程序及ARM程序,DSP程序我們在CCS中編輯和編譯,ARM程序在Source Insight中編輯,在Linux中的dvsdk1.3工具鏈下編譯。

 

下面以視頻編解碼V1.2版本的編譯為例,來說明調(diào)試程序操作步驟。

 

V1.2版本中有5部分,分別是:

 

解碼算法              :    VidDec_lib

編碼算法              :    VidEnc_lib

編譯x64P環(huán)境       :    video_copy

ARM運行程序      :    videoloop

運行目錄              :    loop

 

VidDec_lib 與VidEnc_lib目錄推薦放在CCS安裝路徑下的MyProjects目錄下,我的存放路徑為:C:\CCStudio_v3.3\MyProjects 。

video_copy、videoloop與loop目錄都存放在Linux服務(wù)器下,loop目錄必須存放在NFS所共享的、Davinci板卡可以訪問的根文件系統(tǒng)內(nèi),而video_copy與videoloop目錄沒有存放路徑的限制,推薦將這兩個目錄存放在同一路徑下。

1、在Windows上編譯DSP端運行庫
由于只是編譯,并不需要仿真器的參與,以下CCS編譯時仿真器都不是必須的。在調(diào)試的過程中,才會需要用到仿真器。

啟動CCS,在CCS中分別編譯視頻解碼工程VidDec_lib及視頻編碼工程VidEnc_lib,得到所生成的庫文件VidDec_lib.lib及VidEnc_lib.lib。

2、在Linux中編譯DSP可執(zhí)行程序
將在CCS中編譯的VidDec_lib.lib改名復(fù)制為

video_copy\codecs\viddec_copy\lib\viddec_copy.a64P ,

將在CCS中編譯的VidEnc_lib.lib復(fù)制為

video_copy\codecs\videnc_copy\lib\videnc_copy.a64P。

也可以使用VidDec_lib.lib及VidEnc_lib.lib同目錄下的批處理文件copylib.bat來實現(xiàn)以上兩次改名復(fù)制。

 

在linux環(huán)境下的video_copy\servers\video_copy目錄下先執(zhí)行

       make clean

然后執(zhí)行

make

生成DSP端的可執(zhí)行文件video_copy.x64P;并且將video_copy.x64P拷貝至運行目錄loop中。以上的video_copy.x64P生成并拷貝至運行目錄可以使用同目錄下的mkall腳本執(zhí)行文件來實現(xiàn)。(腳本是為了簡化調(diào)試步驟而使用的,大家自己寫出就是了)

 

3、在Linux中編譯ARM可執(zhí)行程序
在linux環(huán)境下進入videoloop工程,運行make,生成ARM端可執(zhí)行程序videoloop,將videoloop拷貝至運行目錄loop中。

這一步的make及拷貝也可以使用同目錄下的mkall腳本文件來執(zhí)行。

4、啟動板卡,執(zhí)行程序
啟動板卡,使用root登錄,然后進入運行目錄loop中。首先運行裝載模塊程序loadmodules.sh,然后運行ARM端可執(zhí)行程序videoloop。在運行過程中,videoloop會根據(jù)需要調(diào)用DSP端的視頻解碼算法程序及視頻編碼算法程序。

 

以上的2、3、4步使用mkall腳本文件需要注意:

       IP地址與路徑必須與實際情況匹配,特別是在程序版本升級及Linux服務(wù)器更換時。

編譯x64P時,注意要先 make clean 。

七、脫機運行
      一般在進行程序調(diào)試時,我們采用NFS與tftp等網(wǎng)絡(luò)通信方式共享Linux服務(wù)器中的資源,用于嵌入式Linux進行訪問、改寫。

      在程序調(diào)試成功,并且版本穩(wěn)定之后,我們需要嵌入式Linux脫離服務(wù)器的支持,單獨運行起來。這時,需要有完整的Linux操作系統(tǒng)各部分,包括 BootLoader,內(nèi)核,根文件系統(tǒng)這三部分。

Davinci板卡采用的BootLoader是uboot,內(nèi)核提供了源文件,編譯即可得到,根文件系統(tǒng)我們分別使用過ramdisk及yaffs2這兩種方式。

Davinci板卡采用的存儲介質(zhì)是Flash,根據(jù)功能差異分為Nor Flash與Nand Flash兩種。

脫機運行前需要將uboot、內(nèi)核及根文件系統(tǒng)燒寫到Flash中,然后在uboot中進行相應(yīng)的配置。

 

Davinci的一般啟動過程如下:

       Rbl->[ubl->] uboot->uImage->rootfs->用戶程序

在Nor flash上的啟動過程:

首先運行芯片中的Rbl,然后啟動flash上的uboot,加載uImage,使用rootfs,運行用戶可執(zhí)行程序。

在Nand flash上的啟動過程:

首先運行芯片中的Rbl,然后ubl,再啟動uboot,加載uImage,使用rootfs,運行用戶可執(zhí)行程序。

 

下面以運行在Nor flash上的ramdisk文件系統(tǒng)為例說明。下面提到的Flash,如果沒有指定為Nand Flash,則Flash就指的是Nor Flash。

 

1,燒寫uboot
(1)編譯uboot
目前我們使用uboot1.1.4 ,在Linux下,進入uboot1.1.4目錄,

依次輸入如下命令:

make clobber

make davinci_config

make ARCH=arm

就生成了可執(zhí)行文件 u-boot.bin 。

(2)燒寫uboot
將uboot燒寫進Flash,有兩種方法:一是使用JTAG頭連接仿真器,使用仿真器燒寫;二是使用串口進行燒寫。

注意:

在連接仿真器及串口線,撥動S3開關(guān),切換J4跳線時,必須要在斷電情況下操作。

 

仿真器燒寫:

將Davinci板卡斷電,

將DM6446開發(fā)板上的S3開關(guān)撥到全部為ON,在J4跳線處選上Nor Flash,連接仿真器;

將Davinci板卡上電,

打開CCS(需要設(shè)置CCS為仿真模式),在菜單中選擇 File-- Load Program ,找到Flash的燒寫程序flashwrite.out ,然后運行,根據(jù)提示分別輸入uboot文件名u-boot.bin,及偏移地址0,等燒寫完畢即可;

將Davinci板卡斷電,

將S3切換到Nor Flash啟動,即撥為1011111111,運行串口控制軟件Tera Term ,選擇COM1口,設(shè)置波特率為115200;

將Davinci板卡上電,

在Tera Term窗口會有uboot的啟動信息顯示。

 

串口燒寫:

       由于dvflasher運行需要 .net FrameWork 2.0,所以先安裝這個程序。

將Davinci板卡斷電,

將DM6446開發(fā)板上的S3開關(guān)撥到全部為ON,在J4跳線處選上Nor Flash,用串口線連接PC主機與Davinci板卡;

將Davinci板卡上電,

在主機上運行命令行,在命令行輸入命令:dvflasher -r u-boot.bin,等燒寫完畢;

將Davinci板卡斷電,

將S3切換到Nor Flash啟動,即撥為1011111111,運行串口控制軟件Tera Term ,選擇COM1口,設(shè)置波特率為115200;

將Davinci板卡上電,

在Tera Term窗口會有uboot的啟動信息顯示。

 

串口燒寫nand flash:

將Davinci板卡斷電,

將DM6446開發(fā)板上的S3開關(guān)撥到:1101111111,在J4跳線處選上Nand Flash CS2,用串口線連接PC主機與Davinci板卡;

將Davinci板卡上電,

在主機上運行命令行,在命令行輸入命令:dvflasher -fnandbin u-boot_nand.bin,等燒寫完畢;

將Davinci板卡斷電,

將S3切換為Nand Flash啟動,即撥為全部為OFF,運行串口控制軟件Tera Term ,選擇COM1口,設(shè)置波特率為115200;

將Davinci板卡上電,

在Tera Term窗口會有uboot的啟動信息顯示。

2,燒寫Linux內(nèi)核
內(nèi)核指的是一個提供硬件抽象層、磁盤及文件系統(tǒng)控制、多任務(wù)等功能的系統(tǒng)軟件。一個內(nèi)核不是一套完整的操作系統(tǒng)。一套基于Linux內(nèi)核的完整操作系統(tǒng)叫作Linux操作系統(tǒng)。

  在Linux 內(nèi)核中,包括了:進程管理、定時器、中斷管理、內(nèi)存管理、模塊管理、虛擬文件系統(tǒng)接口、文件系統(tǒng)管理、設(shè)備驅(qū)動程序、進程間通信、網(wǎng)絡(luò)管理、系統(tǒng)啟動等操作系統(tǒng)功能的實現(xiàn)。

(1)編譯Linux內(nèi)核
當(dāng)板卡硬件有改動,或需要增加某些底層功能時,需要改動內(nèi)核模塊,可以使用如下命令來更改內(nèi)核模塊的配置:

make menuconfig

生成的配置文件保存在

mv_pro_4.0\montavista\pro\devkit\lsp\ti-davinci\arch\arm\defconfig

然后在:

mv_pro_4.0\montavista\pro\devkit\lsp\ti-davinci


目錄下輸入如下命令:

make ARCH=arm CROSS_COMPILE=arm_v5t_le- davinci_dm644x_defconfig

      make ARCH=arm CROSS_COMPILE=arm_v5t_le- checksetconfig

      make ARCH=arm CROSS_COMPILE=arm_v5t_le- uImage

      cp arch/arm/boot/uImage /tftpboot/uImage

chmod a+r /tftpboot/uImage


 


 

就可以編譯出新的內(nèi)核。

更多的細(xì)節(jié)請參考《Building a Small Embedded Linux Kernel Example  spraah2.pdf》。

(2)燒寫Linux內(nèi)核
從Linux服務(wù)器下載內(nèi)核映象文件并燒寫進Davinci板卡的Nor Flash中,我們使用板卡上的uboot,通過tftp協(xié)議,從Linux服務(wù)器上下載編譯好的內(nèi)核,過程如下:

a,將內(nèi)核文件uImage復(fù)制到Linux服務(wù)器的 /tftpboot/ 目錄下,

b,連接PC與Davinci板卡,需要連接串口線及網(wǎng)線,在連接串口線時需要將Davinci板卡斷電。

c,啟動運行串口控制軟件Tera Term

d,將Davinci板卡上電,在Tera Term窗口中按下任意鍵,進入輸入命令狀態(tài)

e,依次輸入如下命令:

             tftpboot 0x80080000 uImage                    //從tftp服務(wù)器拷貝至內(nèi)存中

             erase 0x2100000 22fffff                            //擦除2M的空間

             cp.b 0x80080000 0x2100000 0x200000     //從內(nèi)存拷貝至Flash中

              等待命令執(zhí)行完畢,就成功燒寫內(nèi)核文件進Nor Flash中了。

最后,在正式啟動板卡時要讀取flash上的內(nèi)核文件,還需要設(shè)置環(huán)境變量為從flash啟動,使用如下命令設(shè)置即可:

setenv bootcmd ‘bootm 0x2100000’

3,燒寫根文件系統(tǒng)
Linux引導(dǎo)啟動時,默認(rèn)使用的文件系統(tǒng)是根文件系統(tǒng)。其中一般都包括這樣一些子目錄:
etc, dev, usr, usr/bin, bin, var等。
etc目錄主要含有一些系統(tǒng)配置文件;dev含有設(shè)備特殊文件,用于使用文件操作語句操作設(shè)備;usr存放庫函數(shù)、手冊和其它一些文件。bin存放執(zhí)行程序;var用于存放系統(tǒng)運行時可變的數(shù)據(jù)或者是日志等信息。

根文件系統(tǒng)有多種格式,例如romfs、ramfs、jffs2、yaffs2等,我們以ramfs為例說明編譯及燒寫過程。

(1)制作ramdisk
在Linux服務(wù)器中制作ramdisk過程如下:

a,開辟一塊硬盤空間,這里定為14M,名字為ramrootfs,并格式化為ext2文件系統(tǒng):

 dd if=/dev/zero of=ramrootfs bs=1k count=14336

  mke2fs -F -m 0 -i 2000 ramrootfs

b,把虛擬盤掛載到目錄ramfs:

  mount -o loop -t ext2 ramrootfs ramfs

c,復(fù)制所需根文件系統(tǒng)內(nèi)容至ramfs中

d,使用nfs方式調(diào)試,確認(rèn)文件系統(tǒng)可用。

e,跳到ramfs目錄外,卸載ramfs,并壓縮文件系統(tǒng)映象:

 umount ramfs

 cat ramrootfs | gzip -9 > ramdisk.gz

(2)燒寫ramdisk
從Linux服務(wù)器下載ramdisk.gz文件并燒寫進Davinci板卡的Nor Flash中,     我們使用板卡上的uboot,通過tftp協(xié)議,從Linux服務(wù)器上下載壓縮好的ramdisk.gz,過程如下:

a,將ramdisk.gz復(fù)制到Linux服務(wù)器的 /tftpboot/ 目錄下;

b,連接PC與Davinci板卡,需要連接串口線及網(wǎng)線,在連接串口線時需要將Davinci板卡斷電;

c,啟動運行串口控制軟件Tera Term;

d,將Davinci板卡上電,在Tera Term窗口中按下任意鍵,進入輸入命令狀態(tài);

e,依次輸入如下命令:

             tftpboot 0x80080000 ramdisk.gz                 //從tftp服務(wù)器拷貝至內(nèi)存中

             erase 0x2300000  0x28fffff                         //擦除6M的空間

             cp.b 0x80080000 0x2300000 0x600000       //從內(nèi)存拷貝至Flash中

              等待命令執(zhí)行完畢,就成功燒寫ramdisk根文件系統(tǒng)進Nor Flash中了。

最后,在正式啟動板卡時要讀取flash上的根文件系統(tǒng),還需要設(shè)置環(huán)境變量為從flash讀取,使用如下兩個命令設(shè)置即可:

setenv bootcmd 'cp.b 0x2300000 0x85000000 0x600000; bootm 0x2100000'

setenv bootargs console=ttyS0,57600n8 video=dm64xxfb:interface=composite:mode=pal ip=192.168.1.82::192.168.1.1 root=/dev/ram0 rw initrd=0x85000000,14M mem=112M

第一個命令中主要相關(guān)部分是cp.b 0x2300000 0x85000000 0x600000 ,作用是在Davinci板卡啟動時拷貝根文件系統(tǒng)至內(nèi)存中;

第一個命令中主要相關(guān)部分是root=/dev/ram0 rw initrd=0x85000000,14M ,作用是設(shè)置Davinci板卡啟動時采用ramdisk根文件系統(tǒng)。

轉(zhuǎn)自新浪博客,如有侵權(quán),請告知,會在第一時間刪除。

 

本文來自CSDN博客,轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/ufo995/archive/2009/12/12/4993672.aspx

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
LINUX下Web服務(wù)器配置
利用samba3.0構(gòu)建samba服務(wù)器
Davinci燒寫程序
Davinci DM6446開發(fā)攻略——linux
一步一學(xué)Linux與Windows 共享文件Samba (v0.2b) | LinuxSi...
Ubuntu下配置共享軟件samba
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服