TA的每日心情 | 奋斗 2020-3-25 15:17 |
---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
开发环境说明
+ o z( x: q! ]! S+ _! Y表 1. q8 p) X$ l/ @+ N
开发板型号; U# g: W: i/ w N' [& g
| 是否支持本实验, ^4 K( k0 y# l$ n5 N( T0 |
| TL570x-EVM
# {) _0 \" {' f" e' H( k | 不支持; M& |+ J# Q! s
| TL5728-EasyEVM! U" X* d1 g; p( Z( C
| 支持
3 v" h' e$ }. O {# @; c | TL5728-IDK
# ?+ Z3 ~) P3 v a3 N& ? | 支持2 |" @5 s. O$ ~ m% z
| TL5728F-EVM& K3 Z1 \1 l* b! k
| 支持
, C( ~/ h) u" F' l2 Q8 R# B | 6 Q/ J/ U. R& W: _
- 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。
( E# O' D1 U1 D9 @ 基于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开发工具。
% P: I; p0 [2 o! G
; O4 Z1 f/ s( r/ yLinux 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,等待安装结束。
* j3 Y; X) T$ K6 n+ w7 ?2 W! J- nHost#sudo apt-get install libc6:i386
- I7 ]# Y2 w) F _% b! E# c![]() 图 1+ S9 M- B6 y5 q0 d9 @+ P5 x7 W
, Q& a$ Q8 L l+ U, L将光盘“Tools\Linux-RT\ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin”开发包拷贝到Ubuntu,执行如下指令安装RTOS Processor-SDK:
5 G: A* c3 b) s$ U( KHost#chmod +x ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin
+ m/ B r1 r/ C3 T1 wHost# ./ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin& e" X# b! ?4 e3 B
![]() 图 2
7 p' c1 j% r5 G/ f3 ]1 j, [# o9 E {+ a2 L2 D4 [" j
![]() 图 3
: Z# b$ C4 s, @1 M- n( m+ ^ b% p5 }3 d6 J+ B
在弹出的安装界面中点击Next选项,进入“Select Components”安装组件选择界面,默认全选,点击Next进入下一步:+ l5 {# P6 H- W* u6 Y
![]() 图 4% A/ i. S& N) c$ H0 G2 b/ T$ [
6 Z9 T1 S8 i& f% Q9 k( D5 ^进入安装目录选择界面,将“/home/tronlong/ti”默然安装目录修改为“/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05”,也可以根据实际情况选择安装路径。如下图所示:
3 d- \: _/ T- ^0 K. ^4 G![]() 图 5
& L: g' d3 k$ k- q! ^' Y0 q- J2 c6 c3 n, X( P. @4 T! s" {
连续点击Next,进入到RTOS Processor-SDK开发包安装界面如下图所示:& g7 K; O) K1 A2 ^7 L( V# T% k
![]() 图 6: d4 C2 W2 f7 Z6 t* }1 Y1 ?9 _
% r) U: @( ?7 _5 [耗时约3min后安装完成,“/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05”安装目录内容如下图所示:1 P& @! E8 i2 ?% C0 Q1 _
![]() 图 7( J* V! F' r6 y4 k* [% t
O2 r- `" [0 I g! a
![]() 图 8+ L0 |. b; x! |
9 B, e0 \* [9 i* v' b RTOS开发环境配置将光盘“Tools\Linux-RT\pdksetupenv.sh”文件替换掉“ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/pdk_am57xx_1_0_10/packages/”目录下的同名文件,该脚本文件主要用于RTOS组件的路径配置。1 S- G0 b/ h! }
![]() 图 9; R9 D3 U" w/ _1 H' |. }
3 O+ ^3 A ~% a8 h' C执行如下指令,打开“/etc/profile”环境变量配置文件:4 h7 \8 r4 G$ ]/ \
Host# vi /etc/profile( ]& e5 x' ?1 N3 Y: V
![]() 图 10
" r7 }' F5 n3 A+ ~% q$ n1 ^7 R
7 t/ y) S6 t' Q* ?" C7 v0 M0 b参照如下方法将RTOS Processor-SDK开发包中的交叉编译工具链路径、RTOS组件配置脚本文件路径加入系统环境变量中。Ubuntu系统将自动执行setupenv.sh脚本配置RTOS Processor-SDK的环境变量,setupenv.sh脚本文件会跳转到pdksetupenv.sh脚本运行,并完成RTOS组件的路径配置。
0 P" r0 d# x1 ^" e, pexport SDK_INSTALL_PATH=/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05) n" G/ m0 v9 O) ^
source /home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/processor_sdk_rtos_am57xx_4_03_00_05/setupenv.sh8 S }7 `/ R* n5 }; m
![]() 图 11- h' B6 b5 \: X( u! h$ T- c
' }3 a! L3 [9 s; }确认添加路径无误后保存退出。执行如下指令,使能交叉编译工具链,并验证环境变量是否已生效,然后重启Ubuntu。
( B$ q" q% ^# s f- L9 M" l' SHost# source /etc/profile m) m9 Q6 y9 O) ~& J
Host# echo $SDK_INSTALL_PATH5 W% r' g% e5 |' o; x
![]() 图 12+ I! e" o+ ~+ J4 p
: ?; P* S6 k9 W# \, x! _* ~- 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 路径
3 N; ^. D6 x8 \6 ~% u+ v3 T 按照前面步骤配置好RTOS Processor-SDK环境变量,如需编译整个RTOS Processor-SDK开发包,可进入processor_sdk_rtos_am57xx_4_03_00_05目录下执行以下命令编译。实际开发中一般无需编译整个RTOS开发包,只编译需要用到的RTOS组件即可。& S+ B; c( Y, Q, l
Host# cd ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/processor_sdk_rtos_am57xx_4_03_00_05/" ~4 u2 Z b; A' o
Host# make -j 8
2 n8 Q4 q; T) ]; C7 v![]() 图 13
/ l% Z e" V: h8 \" h9 [" O. [% b; _+ V/ I* z# k4 q7 V3 U4 Z
本次操作用时约55min后(由PC性能决定),完成整个RTOS Processor-SDK开发包编译工作,结果如下图所示:" i; S1 s( O4 _1 U4 r8 p
![]() 图 14) i3 z! I0 |4 q$ R' L. g. X
; v4 A4 `6 ]4 w' {4 A
IPC编译RTOS IPC开发包的编译依赖于RTOS Processor-SDK、Linux内核等,版本对应关系如下表:$ C; W& c2 B9 X- E8 H& ~% ]. I% {
& O# l" p0 c# H% y表 2
b5 u" L5 n! W+ |$ s9 fIPC版本# H* C0 M) m' r
| RTOS SDK版本
! @- P3 b2 O7 i; i0 [ | CCS版本
! f0 L/ F( b+ P. f4 f! R+ W8 z: L | 内核版本
* _% R$ w* ]7 O5 w6 f | 3.47.01.00& ]' b" ?5 j3 N. V" D' l6 A8 Z
| 04.03- L3 y0 [$ S0 j
| 7.4.0
1 `3 j: T% m. Q* E% V9 T( _ | Linux-RT-4.9.65; T: H$ z* ?: N/ S& }
| ( M6 g' T. N1 E# s' G n
参照用户手册《Linux-RT Processor-SDK安装》文档配置好Linux-RT交叉编译工具链。参照《Linux-RT内核编译方法》文档,将光盘“Linux-RT\kernel\Linux-RT-4.9.65\src”目录下的Linux-RT内核源码解压到Ubuntu并编译内核。- R) G# Q b2 ~) F
将光盘"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核心的部分中断映射。
+ y5 Z. O- B0 A& p u执行如下指令删除RTOS Processor-SDK原来的IPC开发包,并将ipc_3_47_01_00_v1.X.tar.gz压缩包解压替换。具体版本型号以实际为准。
2 s1 Q0 K# Y" [/ RHost# rm -r ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/ipc_3_47_01_00/
1 P: t/ o2 }" m7 UHost# tar -xvf ipc_3_47_01_00_v1.0.tar.gz -C ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/$ `- h$ k" Y* V3 z; g9 k
![]() 图 15
# H) `. z9 d$ f- x: \& |/ v# d0 x$ N; n# P* V) z
按照前面步骤配置好RTOS Processor-SDK环境变量,并替换TI RTOS Processor-SDK安装目录下的IPC开发包。进入ipc_3_47_01_00开发包目录,执行如下指令打开products.mak文件,参照如下方法配置IPC案例环境变量:
; L% [" i7 Y) XHost# vi products.mak$ n# j7 f4 u, R6 u
![]() 图 16
% H; u* W u' ]- K. Q1 X* @ k" _9 l/ m; b/ D- {* x" Y
49 PLATFORM = DRA7XX //平台名称
) U- k' Z2 ~7 K. |8 ?0 z4 K63 TOOLCHAIN_LONGNAME = ARM-linux-gnueabihf
" o; e: T9 V V* K& x64 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交叉编译链
: |* k; p6 A! {# @' Q/ ]69 KERNEL_INSTALL_DIR = /home/tronlong/AM57xx/kernel/Linux-RT-4.9.65/
5 C' U( r2 _) L100 XDC_INSTALL_DIR = ${XDC_INSTALL_PATH}
2 [( p1 T) n. i9 d( I& E7 \101 BIOS_INSTALL_DIR = ${BIOS_INSTALL_PATH}0 @& a, }, f c( z- j4 U
113 ti.targets.elf.C66 = ${C6X_GEN_INSTALL_PATH}
" e+ q! o( v1 K* `121 ti.targets.arm.elf.M4 = ${TOOLCHAIN_PATH_M4}3 z6 X/ i% Y( b6 B+ z
128 gnu.targets.arm.A15F =${TOOLCHAIN_PATH_A15}/ h1 H! R: G" n" U d, }
![]() 图 17# W- r5 ^$ F4 T$ S8 H
a" m' G) e* I4 w5 X
![]() 图 18. g w9 m0 H+ a! _* }
5 q9 q7 E9 ^- ^2 K3 o9 f* b修改完成保存退出。在“/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/ipc_3_47_01_00”目录下,执行如下指令进行IPC编译配置并编译IPC链接库。$ c- d2 {8 |& X9 G7 N# b: x
Host# make -f ipc-linux.mak config //IPC编译配置
% r7 z# J9 P. z* Y1 A/ F" bHost# make //编译IPC链接库
/ r$ W7 B- u/ Y![]() 图 19
4 f1 _0 C: B6 W1 V4 x% K6 n! j. f6 h! L/ a# r
![]() 图 20
: @( o9 _% t& S5 |5 @) f% d![]() 图 21
2 E1 I5 x! d5 l5 U4 j% D/ r9 C! m6 J: V
执行如下指令编译整个IPC开发包相关依赖文件,本次编译用时约40min。
# Q- ?: q" d/ w. |+ ~1 l e) PHost# make -f ipc-bios.mak all. H0 r' E8 i0 x
![]() 图 229 Y0 c- Z' v+ ~9 q
7 D/ ^$ M7 H1 c+ U+ h1 {![]() 图 239 H; Q& I: X; b+ p
3 x4 G6 {0 t( L |
|