TA的每日心情 | 奋斗 2020-3-25 15:17 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
开发环境说明8 o9 l7 [" o& K' B# C
表 1
( K5 o) x, q6 D, x: Z开发板型号
* _7 Q# h$ `- R+ E; w4 ] | 是否支持本实验
$ d" I" a o" [" _ | TL570x-EVM4 P- D6 G- T+ C) O3 q, t6 p
| 不支持
8 G2 }! q- Z& X5 } | TL5728-EasyEVM
* C: }/ |4 q: @8 Q, x7 h$ N4 E+ a | 支持
. J8 s2 r6 |" I" _1 r9 h | TL5728-IDK
7 W7 Y5 d4 y* x- w5 R( `! D | 支持! O( D4 p6 U/ V ?8 |5 v0 Y
| TL5728F-EVM& [5 O+ U! |' w& X
| 支持
+ c; g' Q J3 u8 Z |
3 `) L" G9 U$ ?4 l1 y. X- VMware14.1.1;
- Ubuntu 14.04.3 64bit;
- RTOS Processor-SDK 04.03.00.05;
- Linux-RT-4.9.65内核;
- IPC开发包版本:3.47.01.00。
/ I+ ]& }! {$ o- B3 W; X- u 基于TI RTOS Processor-SDK 04.03.00.05的开发方法主要有两种,一是在Windows下开发,需要安装Windows版本CCS 7.4.0;二是在Linux下开发,基于Linux Processor-SDK开发环境。在Windows版本CCS 7.4.0下开发,RTOS工程文件的依赖关系比较复杂、繁琐,我司默认使用Linux环境进行开发。由于RTOS的Linux Processor-SDK开发包中已带有CCS编译器,故不需要额外安装Linux版本的CCS开发工具。! x/ Q# J+ i) j( Z
7 T( }, T" Q) {0 S/ J; ?Linux RTOS SDK开发环境搭建 安装Linux版本RTOS Processor-SDK-04.03由于RTOS安装包下的cgt6x_x86_installer等组件为32 bit工具,因此需要在64 bit的Ubuntu下安装32 bit依赖库,否则会导致cgt6x_x86_installer等组件安装失败,最后无法正常编译RTOS工程。Ubuntu下执行如下指令,出现提示信息输入Y,等待安装结束。
# y* m8 y& g4 X) NHost#sudo apt-get install libc6:i386- x. k- r8 X6 u; D2 @6 T
![]() 图 1! S6 H- x7 `+ k( W, @2 O
|. u3 b' `6 \+ L将光盘“Tools\Linux-RT\ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin”开发包拷贝到Ubuntu,执行如下指令安装RTOS Processor-SDK:
5 E" a! f* A+ z- m3 M: p3 eHost#chmod +x ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin
9 v- r. [* f8 ]# EHost# ./ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin! m1 z* X- X( t
![]() 图 2# U5 r n1 d$ q3 C
. B4 Z, ]6 I; \: ^( t6 p, e
![]() 图 3; x$ m2 m7 `. x3 s
# K9 R0 N: g$ w& L在弹出的安装界面中点击Next选项,进入“Select Components”安装组件选择界面,默认全选,点击Next进入下一步:3 s2 c: Z+ S6 Y
![]() 图 4
7 f2 \; b: N6 p: P1 b
$ ?: P+ ?) f2 M) X' x进入安装目录选择界面,将“/home/tronlong/ti”默然安装目录修改为“/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05”,也可以根据实际情况选择安装路径。如下图所示:. ?' V( k, Q4 Q X# @
![]() 图 5
! b( _% P6 Y# |2 c) S- L# w; m: Q! S8 b2 U/ x2 ]% K' C/ j- p6 ?
连续点击Next,进入到RTOS Processor-SDK开发包安装界面如下图所示:; u( v/ N, |7 V
![]() 图 6
9 D$ a- f2 h1 I5 y1 t% P7 Y4 B
% a$ t5 h1 L) B, r耗时约3min后安装完成,“/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05”安装目录内容如下图所示: ?$ Q6 j$ a8 x- ]) `
![]() 图 7$ n2 @$ c3 v5 H. k9 n0 r
6 I! Z6 s( L( }/ {) B. R) u, l![]() 图 8$ P7 w8 X: Q" V- @
# v0 X/ k3 u. k+ _% ^8 |+ q
RTOS开发环境配置将光盘“Tools\Linux-RT\pdksetupenv.sh”文件替换掉“ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/pdk_am57xx_1_0_10/packages/”目录下的同名文件,该脚本文件主要用于RTOS组件的路径配置。3 M8 n3 O" v- W7 u, W
![]() 图 9
) `& n) x9 H% s; j1 @7 n0 t
+ W7 L1 E7 I+ h- r9 n执行如下指令,打开“/etc/profile”环境变量配置文件:
; a% ~) ]! D* x+ c' z2 Q/ nHost# vi /etc/profile
6 o1 `2 {9 ^) P0 S" j( }![]() 图 108 X( ~# q7 p& \% L; H
# u2 e7 d) J5 h( k1 X1 S参照如下方法将RTOS Processor-SDK开发包中的交叉编译工具链路径、RTOS组件配置脚本文件路径加入系统环境变量中。Ubuntu系统将自动执行setupenv.sh脚本配置RTOS Processor-SDK的环境变量,setupenv.sh脚本文件会跳转到pdksetupenv.sh脚本运行,并完成RTOS组件的路径配置。, K( U- \/ s9 V E# a0 y
export SDK_INSTALL_PATH=/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05
! {9 K" }1 D; Qsource /home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/processor_sdk_rtos_am57xx_4_03_00_05/setupenv.sh% F8 H s+ \+ d* s, H( |( K
![]() 图 119 B# d K0 p( P/ B; [. ?$ T
; |( T% ~( b2 R0 z* {7 c! q5 K
确认添加路径无误后保存退出。执行如下指令,使能交叉编译工具链,并验证环境变量是否已生效,然后重启Ubuntu。
# `& m0 V# [3 Z1 PHost# source /etc/profile; B& L6 }9 @# c9 ]
Host# echo $SDK_INSTALL_PATH
1 K/ y* ^# U; Q9 E0 S![]() 图 12+ K% K4 |& p* e" A: L
) t! s% s, y/ |0 I1 r8 C- PDK_INSTALL_PATH: PDK安装路径
- C6X_GEN_INSTALL_PATH: C66X 编译器路径
- TOOLCHAIN_PATH_A15: A15 编译器路径
- TOOLCHAIN_PATH_M4: M4编译器路径
- XDC_INSTALL_PATH: xdc工具路径
- BIOS_INSTALL_PATH: bios系统路径
- IPC_INSTALL_PATH: ipc开发包路径
- EDMA3LLD_BIOS6_INSTALLDIR: edma路径
- PROC_SDK_INSTALL_PATH: processor_sdk_rtos 路径
% D# n/ R y! e' V( Q 按照前面步骤配置好RTOS Processor-SDK环境变量,如需编译整个RTOS Processor-SDK开发包,可进入processor_sdk_rtos_am57xx_4_03_00_05目录下执行以下命令编译。实际开发中一般无需编译整个RTOS开发包,只编译需要用到的RTOS组件即可。2 x; q- p* N9 @: h3 i
Host# cd ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/processor_sdk_rtos_am57xx_4_03_00_05/
" O6 Z& u3 K6 U) tHost# make -j 8
& x: ]; E0 d" a! b; R" m8 ^ H; A: ^![]() 图 13
7 Q9 ^( I) I7 V$ L5 N+ W
4 a' ~; n/ G3 G. v3 W _, ~本次操作用时约55min后(由PC性能决定),完成整个RTOS Processor-SDK开发包编译工作,结果如下图所示:' N4 ?, f* r& c# ^, l9 X3 d
![]() 图 14
2 L0 T( u8 Q, ^" ^( r! D& {
4 _6 @; ?+ e6 i+ i ? IPC编译RTOS IPC开发包的编译依赖于RTOS Processor-SDK、Linux内核等,版本对应关系如下表:
9 g$ ~7 V% Z! h! P' _: f# U1 d/ B: F2 }- d1 Z
表 2
6 T" N. F/ r2 QIPC版本
0 G3 y4 h) p3 w# G- ^1 ] | RTOS SDK版本
2 q* m1 x3 G) J9 S* @* c# p7 i | CCS版本
' ~1 N8 l% x; @7 B: v | 内核版本
1 l; u) B3 s. k0 X" u | 3.47.01.00: _' L- }1 w! [& y: X ~3 w& ?
| 04.034 _6 y# X* @: u1 M' } m& @
| 7.4.0
# }$ O, M a, u; u. [, o: X& n | Linux-RT-4.9.65
+ g( g' j/ t6 l0 g( o% b1 X3 { | ; o6 J! W, P; `# r' ~' s& q8 `
参照用户手册《Linux-RT Processor-SDK安装》文档配置好Linux-RT交叉编译工具链。参照《Linux-RT内核编译方法》文档,将光盘“Linux-RT\kernel\Linux-RT-4.9.65\src”目录下的Linux-RT内核源码解压到Ubuntu并编译内核。
. y5 F$ N% ~5 Y/ s将光盘"Demo\rtos-examples\ipcdev"目录下的ipc_3_47_01_00_v1.X.tar.gz压缩包复制到Ubuntu工作目录。由于TI RTOS Processor-SDK安装目录下原来的IPC开发包缺少一些映射,会影响到GPMC通信案例,需要将创龙修改的ipc_3_47_01_00_v1.X.tar.gz压缩包替换掉原来的,创龙主要修改了DSP1,DSP2,IPU1,IPU2核心的部分中断映射。
3 F( t" T0 d+ b) f0 ]. ]* j执行如下指令删除RTOS Processor-SDK原来的IPC开发包,并将ipc_3_47_01_00_v1.X.tar.gz压缩包解压替换。具体版本型号以实际为准。
" w& Q( o( F3 E7 E) yHost# rm -r ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/ipc_3_47_01_00/
) W8 _3 l( \7 d( x' N( CHost# tar -xvf ipc_3_47_01_00_v1.0.tar.gz -C ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/
5 [, Z0 u5 w, s) D3 J![]() 图 152 F& y% K& a; q8 p2 k& V; B
! ?: E$ C& m, t% t4 [9 v' J' Y, b a4 n
按照前面步骤配置好RTOS Processor-SDK环境变量,并替换TI RTOS Processor-SDK安装目录下的IPC开发包。进入ipc_3_47_01_00开发包目录,执行如下指令打开products.mak文件,参照如下方法配置IPC案例环境变量:
: K9 {9 r: j. X+ DHost# vi products.mak6 ]' Z7 K9 g. H* A- l
![]() 图 16
2 }7 Q6 B- }8 n+ v
+ w- Y' u; B( B49 PLATFORM = DRA7XX //平台名称
4 m! w3 z Q( o$ Y63 TOOLCHAIN_LONGNAME = ARM-linux-gnueabihf
' t# Y4 y$ w% u/ f64 TOOLCHAIN_INSTALL_DIR = /home/tronlong/ti-processor-sdk-linux-rt-am57xx-evm-04.03.00.05/linux-devkit/sysroots/x86_64-arago-linux/usr//Linux-RT交叉编译链
" }7 H! o: S) V, o' j" |2 H8 @69 KERNEL_INSTALL_DIR = /home/tronlong/AM57xx/kernel/Linux-RT-4.9.65/! W5 f9 I& e% G1 o' i1 D: i# |8 O
100 XDC_INSTALL_DIR = ${XDC_INSTALL_PATH}
! H1 c# h0 [# f* g9 c101 BIOS_INSTALL_DIR = ${BIOS_INSTALL_PATH}* }$ D! Z; u0 P* X6 e+ T
113 ti.targets.elf.C66 = ${C6X_GEN_INSTALL_PATH}
: Y; e( |; S3 l) a121 ti.targets.arm.elf.M4 = ${TOOLCHAIN_PATH_M4}
/ X; O6 R; E7 G1 O% H6 s128 gnu.targets.arm.A15F =${TOOLCHAIN_PATH_A15}
. O$ V2 ?7 K' y& @! E r. O![]() 图 17
7 [) f2 K# b' D/ u- d5 b% c/ r2 e/ i7 r8 u- r/ x$ C
![]() 图 18( r% S/ }8 @3 F% }+ h4 V) n
, F: Z/ q9 E+ s5 g
修改完成保存退出。在“/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/ipc_3_47_01_00”目录下,执行如下指令进行IPC编译配置并编译IPC链接库。- _- a D7 Y) Y+ R( j
Host# make -f ipc-linux.mak config //IPC编译配置; |% u/ ]9 u; d) y
Host# make //编译IPC链接库( k& J7 H4 A6 Y; g* v, a/ m
![]() 图 192 U }2 D( c7 s! q/ V, b
3 E9 R/ r8 G9 I$ z
![]() 图 209 w' i$ ^" c( @+ q6 y! y( @
![]() 图 21, I1 M' \0 `& t, O- Y
8 G5 g5 Q6 I0 W执行如下指令编译整个IPC开发包相关依赖文件,本次编译用时约40min。/ ]/ a: j3 A3 Z( J3 ?- o8 U Q0 k5 @" _
Host# make -f ipc-bios.mak all) \) e$ e- g$ K) h1 q& p
![]() 图 22
, U3 _ l1 `9 P: Y0 m+ Y# a! e" u) @4 V3 s% c _! S; C
![]() 图 23
n& o+ }6 ^+ z& M1 d. f; f2 O3 H F- C, p
|
|