TA的每日心情 | 奋斗 2020-3-25 15:17 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
基于仿真器的程序加载与烧写 查看仿真器是否安装成功开发板断电,用仿真器连接开发板和电脑终端。右键计算机图标,点击“管理->设备管理器->通用串行总线控制器”或者“管理->设备管理器->端口”,查看是否有对应的仿真器的选项出现,如有说明仿真器驱动已经正常安装。4 R/ Q" g9 [# @
![]()
( B& U0 M- z9 w+ P
4 ~$ y" P( |) ^图 1
2 P* R7 \0 R; }$ K$ Q! E u, D+ @7 r4 X/ s0 E
![]()
, m# M- X: E5 b5 V; m8 k8 A
1 d( G( @; g9 \) r; o4 H) b9 q# |图 2
' Z' x9 j0 f4 b, v, P8 _. f% y" f3 n; Q- {
CCS集成开发环境自带XDS100及XDS200系列仿真器驱动。如果仿真器无法正常使用,请检查是否存在驱动冲突,XDS100系列仿真器使用FTDI芯片,请检查是否与已经安装使用FTDI的USB转串口驱动冲突,如使用XDS200仿真器,请检查计算机中是否正确安装USB转串口驱动或者尝试重新安装计算机主板芯片组驱动。7 I$ Q. V0 Q9 J0 A3 a8 S# U9 p( u$ O
$ p$ ~% g5 Z4 G5 O7 v设置工程配置文件信息( r" x$ _0 \3 X- r
注:如果使用XDS220仿真器,其通过USB的配置方式与XDS200配置相同,但XDS220仿真器有网络仿真功能,详细配置方式,请参考1.2.2章节:网络仿真配置。
$ |4 ^" v, D: p7 H- 单个仿真器配置4 b6 S9 p1 z1 }8 \+ u0 N3 X9 |$ m& B
请先按照软件安装《Windows版本CCS5.5安装》文档安装CCS,然后打开CCS集成开发环境,点击菜单"File->New->Target Configuration File",如下图所示:
; w8 z5 {0 P- K( P) U. h![]()
5 g& b) P, v0 p( L; y u& i" A. D& t+ R5 Y+ u) J" f
图 3: H7 f3 }% F: a j: J
# @2 L5 U/ W8 s4 L$ K在弹出的界面中输入工程配置文件名字,然后点击Finish。如下图所示:
3 e) i! `6 P2 u& J) D/ }& n![]()
3 U1 z- o2 }( G% p# J
8 z) ?0 J5 R+ p图 47 R8 C* F0 v4 @8 X U# J7 ^
' _* _% L- }4 q, N' ]在弹出的对话框的Connection下拉框中选择对应的仿真器类型(如使用TL-XDS200仿真器请选择"Texas Instruments XDS2xx USB Emulator_0"),在"Board or Device"下拉框中选择对应的CPU型号,TMS320C6657、TMS320C6655或TM320C6654,然后点击右边的Save,保存设置。如下图所示:
! Q' }) P6 Q2 s+ E; N0 [![]()
; T7 X# X+ P6 Z7 s4 J6 p. c$ s! t) Z) | W
图 5
5 ~! [8 n8 x) ]: b9 V" F- t) k W! V! f+ n! {: T, I
仿真器连接开发板,拨码开关拨到NO BOOT模式,这个档位是DEBUG调试模式。开发板上电后,点击"Test Connection",测试仿真器是否连接成功。如下图所示:* c, e; r4 i7 D R& N7 t
* b: E$ r8 m5 O3 U6 `1 h
# |* t8 E0 ?# g. q图 6
0 [8 X) Z0 y+ t& T! }+ E
7 N, y8 c( D8 y- \ a- 网络仿真配置9 B" P" J6 l2 H5 L: Q9 Q' ^# _) f
XDS220这一款仿真器具有网络仿真的功能,网络仿真配置的操作如下:- s+ r. K# w* V, K* y
将网线一端连接路由器,另一端接入XDS220仿真器的网络接口。此外,USB接口线需要连接电脑及仿真器,确保仿真器驱动安装正常。
8 y! h8 J) m7 \2 m% I进入CCS安装目录,进入"ti\ccsv5\ccs_base\emulation\specdig"路径,具体以个人CCS安装路径为准,可以看到xds2xx文件夹,如图:2 z" ~$ t8 G* w6 q" x1 g) ?1 C4 Y
![]()
- V# I/ H0 A( ?; |7 y4 _8 G5 N) I
9 |( B4 Q( x7 N' X# Y图 7
& J9 j6 m# ^* X$ c/ A( @/ r7 P/ k: U. d* q) U
选中xds2xx文件夹,按住Shift键,单击右键,在弹出的窗口选中“在此处打开命令窗口”。 B9 o5 c0 M# D
0 b: [% Q& [8 k# l' M5 Y
: N* R4 s# h4 ?, l* ^- j图 8, h9 @0 d: | U; A( P# x- s
o' I/ {' H. V7 K5 {此时会弹出命令窗口,在命令窗口输入如下指令,然后按Enter键。5 B! w( W o' n: e
DOS# xds2xx_conf set xds2xxu 0 ipConfig=dhcp! J3 U% r; E( f$ Z
![]()
* L" j6 z6 y. u7 y( X8 Y- K
7 o9 _, R8 L8 z. P$ v( X5 n; @! l& r图 9# [$ [$ R7 n2 a P* M
9 ?* i, F* q' ~/ y* i3 o, B通过命令行查看仿真器获得的IP,输入如下指令,按Enter键,可看到cmd窗口打印出仿真器获取到的动态IP:192.168.1.61。' r& z7 x3 F7 T* v
; J& R" ~+ M }% i. n3 B
) w1 {/ y% Q I( f4 L
图 10
0 ~8 ^/ H3 ?% _. z/ O2 M; r
6 m( ~2 o E* V) Q" G) r% Q打开CCS,点击菜单"File->New->Target Configuration File",如下图所示:& m5 f) `( j7 u; ^1 Q
![]()
+ U* i8 u& r+ Q
' i. s3 U2 c9 i9 ]图 11+ A7 n* r. C: K3 A6 [2 C% S* [( k
; M4 D( _0 J7 X3 }在弹出的界面中输入工程配置文件名字,然后点击Finish。如下图所示:
; P5 m8 o0 c+ A" j![]()
; l* o* n2 h, K( }/ L; ~& x; u
8 g1 {! Y4 t) w. F图 12
8 y' K5 t d) [ Y, @7 [$ n- q. a
1 F. [ k3 a& r/ ?1 M+ D在弹出的对话框的"Connection"下拉框中选择对应的仿真器类型,在"Board or Device"下拉框中选择对应的CPU型号,TMS320C6657、TMS320C6655或TM320C6654。如下图所示:
& x" F7 |- d7 l' c& E7 N1 d![]()
9 F, W/ z- I! q) q+ k
& Q' o: |8 w/ ^& @) P图 13. C& b, h* f- G! G( ^ `
/ S" H9 M! f, Y6 e: R
选中C66xx_0,在右边的窗口,点击Browser按键,加载gel文件,如下两图。
4 q0 u$ B- E; @0 C' D; V![]()
9 \2 P$ S4 ?7 N8 C$ k' j1 z7 ], ?7 h5 A/ J
图 142 ~- S! k9 e% k- b9 D8 I
* g; `2 B0 y V0 V
加载gel文件,gel文件在光盘的Image目录下,使用时需要复制到非中文路径下,如图。
5 _4 D1 L( m* q5 j1 O 5 j9 A% S5 o6 I; u1 M
8 u% ^/ E3 r' a- J9 T5 h2 ~" p图 153 C. [' s6 K- R% C4 ?9 ~+ a
% D( o1 y% Q& [" C0 m3 D
选中仿真器配置,在IP栏输入仿真器分配到的IP地址:192.168.1.61(具体IP以自己服务器分配为准)# B9 G5 w: s4 N" ]+ A
2 i" B8 {5 A- k+ ^) j T
( y$ |: S6 O& r, T
图 16
& @/ n" _0 @! O6 C4 t7 H3 Z X9 [, T: b5 @
点击Test Connection,看到弹出窗口,测试成功,说明配置成功。
' x7 E, j4 q+ l9 z![]()
1 a. {5 I5 h6 s, j; J$ |9 x/ b4 n! f7 C
图 17# |, y/ O# k* @& P* o3 o
# V+ V! _% ?, c; p2 n
- 多个仿真器配置
* q- E( I) c8 [ _8 d/ ~ 打开上述新建好的配置文件,点击"Advanced->New…",如图所示:
% Y* O/ ~* B, p2 `4 ~' d1 t6 f![]()
* i1 _ a, V7 J9 v6 N7 G: b$ @7 W$ w: {, n5 @) I
图 184 l2 ?3 P8 L4 a3 `$ j% _! _& v
6 f2 u8 J7 v3 ~; G9 W9 i2 K: z; h
选择对应的仿真器连接,如图所示:6 `$ y: D. z' [/ U. m: j
' M q. ^! ~* w: J* T- K
% Z" \( X. U" b( T- ]% y- |/ h/ W图 19
0 A0 R0 ^8 R3 G% O& \ d3 E! f6 y8 P0 o% P+ H* ~
点击新建的仿真器连接,然后点击"Add…",如图所示:
* r% D+ a; e0 G4 O3 ~/ e* F) R![]()
, n! o2 s* D; [! O6 q5 x& z7 p
( n2 {; n5 F" A' X( {图 20
1 L+ N r& Q/ \$ g5 f/ U- z2 c9 L4 P7 X
点击Devices窗口,选择相应的芯片,点击Finish,如图所示:7 c* h- C$ U5 V* V
![]()
9 W ~# @' _7 o- o1 T
, t) Q2 L) k2 C& n图 21
; l: c4 f) N. Q; u. q6 T
! f8 s9 G( H+ U# N点击新建的仿真器连接,修改相应的端口值,并保存,如图所示:
: z# j; Y. L2 E/ y4 @: v + x6 I& s. w" F8 S* z' x( a
5 [ O4 S5 x& ^
图 22+ i# ~3 G# [( }
. g/ E4 R3 @+ d8 }% Z
可按上述操作继续添加多个仿真器配置。. G1 X. Y! j' I& t
9 S* G7 L5 W F2 ?( j2 f
加载GEL文件. k* `# c" P4 t8 m2 i7 l; ]
GEL文件主要用于在仿真调试的过程中对CPU进行初始化,如PLL、DDR等,还可以执行一些调试操作。例程中使用"Tronlong_C665x.gel"文件进行初始化,配置如下CPU为1.0GHz,DDR3等效频率及对CPU风扇进行控制。
: J3 j9 k4 |1 i点击CCS菜单"Run->Debug",弹出以下类似界面,可以看到C66xx_0核,如果使用的是TMS320C6657,还将看到C66xx_1核。C66xx_0和C66xx_1核都是可以单独加载GEL文件和程序镜像的。
' Y1 _; M: f5 J5 ?4 B![]()
$ g: e( W6 a9 `+ i
5 ~2 n9 c* t1 B- u) E图 23
7 V$ u" i0 H/ z; @1 E- J
4 _" k, s; s9 ^3 X* V R右击对应的DSP核,在弹出的界面中选择"Open GEL Files View"选项,右下角会弹出"GEL Files(TMS320C66xx)"对话框。
% ^' J5 b2 l: D5 n. g![]()
# L# E1 h6 G* U! o; F( g
) c% _0 T+ W* k' h1 L! | w, L/ j图 24
J1 W0 [( I( y {- v R# \: ^) [/ F& E6 W8 T
在对话框内点击右键,在弹出的界面中选择"Load GEL"。选择光盘资料Images目录下的GEL文件"Tronlong_C665x.gel",再点击“打开”,接着右下角的"GEL Files(TMS320C66xx)"对话框会出现Success提示语句,如下图:
& O' F+ l: K& ~# a- L![]()
9 ^ {3 n7 q( E4 E/ u1 a* k/ t5 q: H" y: h' z
图 256 y# z7 H" d; I( V
8 ^' c0 B8 f$ L! z. O, V& G8 A4 l- M1 r
CCS连接开发板CPU1 w" h; t* g" ^, U1 W! c- P3 l; q
右击对应的DSP核,选择"Connect Target"选项,会显示Suspended状态。这说明CCS已经和开发板CPU正常连接起来了,如下图所示:
# e4 H' I1 G- i ; o. E1 Z; ?& f
# K6 X3 }3 e8 E
图 26: g1 o- v! Y* d- b( y
W T1 u; [8 X _$ o备注:如果此处提示"No source****"的信息,不是错误信息,可以将其忽视。
`! Z7 B( G: W连接后将自动初始化开发板,如下图所示:
% j8 Y, Z/ ^1 ^ ^" m/ w![]()
; R" g, G# B" `& X8 N* F
: W3 b6 W; }: p1 P, c图 27
- Z5 U: {5 |: [0 }) l0 [
& G1 |5 P* T- d1 K. f( T N7 J可在Scripts菜单下对风扇进行开关控制,如图所示。
; E& \7 m i6 j8 Q6 e![]()
5 y& J$ R" M; v0 y: n# g1 Z* W7 `
5 q% }, x5 W0 i. ]4 X图 286 C, `3 ]: h: s: r$ @6 N9 ~9 o0 ^! t/ s
0 i$ e) Z0 R. d% r* l) `1 f$ S* V/ M4 L: f7 X" q
加载程序镜像文件点击"Run->Load->Load Program",选择程序镜像文件(光盘资料Images目录下有用于演示的"MyC665x.out"文件,现象为底板LED灯被点亮),并点击OK。接着点击绿色三角启动按键 ,程序即可正常运转起来。+ o- A* S4 @+ b# o& \ W! k0 t
+ a( }/ H6 n( C8 n7 O9 K' F; g' P" e
8 a4 G8 G4 p% h B( ^$ ]0 W/ O' u
图 291 [% ?6 x1 U- z1 D! v
( `0 J4 A% @+ ]1 c; [! e![]()
( n9 p# s! h/ M3 r( @( D% E e; E5 B! y) `" k0 ~2 ]& d2 v
图 30/ f4 w/ I* r" Q
: O. S" Y0 d6 {& k9 X6 l 烧写程序到FLASH由于开发板的EEPROM烧写了IBL(Intermediate BootLoader),也就是二级引导程序,支持直接启动ELF格式的二进制.out文件,因此可将生成的.out文件烧写到NAND FLASH或NOR FLASH并脱机运行。依赖IBL的支持,可直接烧写CCS中编译出的.out文件,而不需要经过任何转换。需要注意的是,.out文件中包含有很多调试信息,所以文件较大,具体烧写步骤如下。
* X: }: _& M0 o6 F如需烧写NAND FLASH,将光盘"Demo\Flash Writer"目录下的NandFlashWriter.out、nand_writer_input.txt文件和需要烧写的.out程序拷贝到同一个非中文路径下,并修改需要烧写的.out程序文件名为app.bin。
0 {4 Z& b& N% n如需烧写NOR FLASH,将光盘"Demo\Flash Writer"目录下的NoRFlashWriter.out、nor_writer_input.txt文件和需要烧写的.out程序拷贝到同一个非中文路径下,并修改需要烧写的.out程序文件名为app.bin。) D5 x; b# b7 ~' N+ m6 v% {- _
打开CCS集成开发环境,加载GEL文件并连接CPU,然后加载烧写工具程序文件NandFlashWriter.out或NorFlashWriter.out,点击OK,如下图所示:
" ^( u$ z! E4 H6 a7 g- R $ ^9 Y3 |& l2 }- R9 d6 r
( i& t: i! L; L" q
图 31
# {2 A3 h2 B9 q8 J4 V8 r' ]$ r- W$ f1 |2 ]6 |. s( I1 H( j
- 加载程序镜像文件 U# Q9 s+ {9 r4 g. U
点击CCS菜单栏"View->Memory Browser",在弹出的界面中点击"Save Memory"按钮,然后在下拉框中选择"Load Memory",如下图所示:5 R, F G* _6 R3 I V/ l
![]()
5 U( f( O, h0 R* ~" z; Z: ~
/ J- }- O& J! x+ W$ D% S图 32
$ T! R% ~, y/ u4 r5 \9 z7 v+ I! I; H9 q7 _, a( n; O
选择程序文件,文件类型选择"Raw Data Format(.bin)",如下图所示:# b- F5 U) M% J, _' S
![]()
4 s9 H' P, L$ t, d" L, [, Q4 n" D8 n/ R- U' t5 t
图 33 W; Y( A8 S+ D% y( {% l. w* i
5 C" x2 @! h& T# {+ P; D! Z+ B% J
点击Next,在弹出的界面中输入起始地址:0x80000000,数据类型选择:32bits,然后点击Finish,等待加载完成,如下图所示:
' \; i( F5 Z- l; D2 `* S- b![]()
" H3 _! Y# @; Q1 P# B9 {, v# x" O1 `: k* ]0 z0 {! h6 k6 c0 V( |1 {
图 34
5 F/ t- t4 V9 G$ T
! l3 l& p, l9 p点击运行按钮 ,开始烧写程序,烧写成功后Console提示信息类似下图:
' N" \! | K3 o8 z2 \! p![]()
2 `1 G' G9 _9 ?
, p( X5 A! Y% m( Z图 359 u) D5 u1 a4 v2 }$ l& R& b
2 D, K7 j. b. D5 \- O, D拔掉仿真器,开发板打到对应的启动档位,程序即会正常运行。
! \8 [. {" a* Q) z2 j3 c* c 烧写多核多镜像文件这里的GEL文件使用DSP_C665x.gel文件在"Demo\TargetConfig"文件夹下。请提前安装好python 2.x以上版本,安装程序在文件夹"Demo\HostApp"下。6 X3 l5 a+ g' P6 c
以下步骤实现将多核多镜像文件烧写到NAND FLASH,具体烧写步骤如下(部分类似烧写步骤参考上述小节,此处描述关键步骤)。
8 @ I+ R8 y: ~+ u6 v5 z在"Demo\HostApp\MultiCoreBoot\Image Create\Config"文件夹下用写字板打开deployment_C6657_bypass_prelink.json文件,修改对应多核镜像文件路径,然后保存关闭,如图所示: Z, w( J2 Y* ~" \
, o p. w( R" h' K5 [* G, s1 q
2 ?+ t/ P; |# X8 z; }, T3 }图 36
; q9 D6 k9 x8 w A2 S; j4 H6 [( `
返回上一级目录,以编辑方式打开Build.bat文件,修改C6000编译工具的路径和python的安装路径,保存关闭。再双击Build.bat文件,即可生成单个可烧写文件C6657-le.bin,保存在同级新生成的images文件夹下。" i J. J+ j Y( a
7 d. q- i" N2 x# k& d0 c
; E! n! J$ P& R3 W, t7 K; o5 x T; l
图 37
: z2 n" g" y" R, ^
! a+ h3 S. P: D2 R5 Z: l2 {- 修改GEL文件' J( c6 r$ ~1 ]/ W& u
打开DSP_C665x.gel文件,将启动镜像格式从默认的ibl_BOOT_FORMAT_ELF修改为ibl_BOOT_FORMAT_BBLOB,然后保存。& I; P" ` ?! L0 M. F2 v
) J" J' j0 B0 f8 U3 @
- w4 A! M0 e: ~8 W, F$ P图 382 H8 r% I1 k9 I5 K0 s
4 W8 J* N; \ A# v! Y' M) q. s
连接开发板CPU,加载i2cparam_0x50_c6657_le_0x500.out文件,保存在文件夹"Demo\HostApp\MultiCoreBoot\IBL Config"下。0 E3 U. }( N5 L, _! `* @
![]()
5 X8 D; V3 A5 k7 z- b8 D, X- H( j `. @( {
图 399 ]& S0 C0 J! ^
, | J, h! Y& h& C! z先点击运行,然后点击"Scripts->EVM TL665x IBL->SetConfig_TL665x_main"。
3 b T! W' n7 j( C![]()
5 H8 a5 U5 ]% `! s! C: D! U$ \" W9 @. Z: T* j
图 40
1 [% Y5 ?) T* H* _7 b8 f% R
) d* x% v O$ Q1 [再在Console窗口下,按入回车键,显示修改成功,如下图所示:, o$ R4 V" O" n( Y5 E! {
![]()
" i. E; M9 ]5 D$ o) ~6 P% b0 ^9 N9 G8 X$ F$ V
图 41
: j8 H7 H- g( v6 O, T# k8 o: q2 c
. C4 a: `" f( `" {0 ~- A还可以通过IBL配置控制启动模式跟CPU风扇动作。修改DSP_C665x.gel文件中ibl.EvmConfig.Fan的值,TRUE为开启,FALSE为关闭。
! w- E+ {+ J- C3 r![]()
* s7 [) I6 S7 }5 P
8 d* _% z0 x+ b# Z图 42
, ?: \4 X8 Z0 q" o; i s0 b5 Z- y" }$ [4 [- \2 ^
通过IBL配置从而支持全部的Rom启动模式,光盘里参考文档中有《DSP C665x启动模式汇总》。当ibl.RomBoot.Enable=TRUE;IBL会根据ibl.RomBoot.Mode设置的值修改启动配置寄存器然后跳转到Rom Bootloader执行剩余启动流程(注意,此时不会再执行IBL启动,所以需要IBL启动的话该配置项目应当设置为FALSE)。如图中设置ibl.RomBoot.Mode=0x00001811(仅低16位有效):4 e/ L' g( N7 ~0 g, X
![]()
7 Z0 y; ]" M$ q& Y
3 M# N4 C- A) _, S: I8 N5 U: q图 43* H; c; T1 K0 l- B2 X8 e
7 W' B `' |8 U5 E1 B
低16位0x1811=0001100000010001b,此时启动开发板从用户的角度相当于从RBL UART0启动,这时可以看到串口0打印出"cccc.....",在此期间通过串口0向开发板传输启动表(Boot Table)格式可执行程序即可完成启动。- i# ]8 u* g9 {1 S# n( J
3 P% S( c1 I! k% I" U# ^
/ p1 ^, o, ]0 R6 `- j( m% @9 L9 t! H
图 44
+ O X) ~9 s+ o) e: L
. v1 L# f! X8 _5 i0 m, m按步骤加载烧写工具程序,修改C6657-le.bin程序文件名为app.bin。然后加载多核镜像文件。
0 }- a% J( |+ p$ {0 ^点击运行按钮 ,开始烧写程序,烧写成功后Console提示信息类似下图:5 F1 G3 `0 I& y' m5 M
![]()
% K$ m0 e" a- K& M图 45
8 j$ ?5 b0 o; l `( B; x* Y2 ?4 ~0 x5 x- c5 F4 A, d1 o$ [
拔掉仿真器,开发板打到对应的启动档位,程序即会正常运行。2 ~4 O1 ]" H& x: v) I! ^; [
软件仿真使用CCS进行程序模拟运行,用户不需要连接硬件以及仿真器就可以对程序进行验证,适合于偏重算法的程序。' J. h' u. O7 y' l
- 设置工程配置文件信息5 U" M# @& n6 i9 {, _
工程配置:Connection选择Texas Instruments Simulator,Borad or Device选择对应的平台,点击右侧的Save,保存配置,如下图所示:
2 F+ @2 d1 Q7 q( Q! b! o
+ E0 ^( ]1 Z2 R$ {( G. x% ~) |' M$ S* ~![]()
3 m- j$ j- g, p# h5 G( V图 46$ i/ _0 L6 e8 m, W
+ k' a4 O1 s5 ^" n J7 u d; a- 软件仿真; s* n; C6 R3 X: w3 g+ b
按程序加载步骤加载镜像,即可进行软件仿真。' I# n. p( q; x& D
* a6 {( P- b# r) K. h9 S5 \
|
|