TA的每日心情 | 奋斗 2020-3-25 15:17 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
开发环境说明
; f6 i5 v& x0 z1 n" Z表 1' Z, s* S( m$ J7 t
开发板型号9 J3 Q; {3 C0 z/ a$ U1 i7 _0 T
| 是否支持本实验
7 r) }* q/ P' k | TL570x-EVM
% @3 k# g" a! |' |; e: y/ Z. B | 不支持
2 o& r2 T" L* {7 q | TL5728-EasyEVM! p/ B% \; X: ]
| 支持
& E$ ?9 s! s& S | TL5728-IDK. M$ Z( b* y7 l5 D8 [! V3 ]* f
| 支持
5 u! w* }& z6 ?* w {& T" A9 } | TL5728F-EVM
2 |, M' o+ \' ]0 o. M1 j | 支持2 s3 F! A4 ^/ l8 \! Y
| 1 D, }+ R) V" [$ U2 B6 x( g# \
- 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。 u! H0 w( C; Z- s
基于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开发工具。
1 X1 U: j' W) p6 o3 X! x7 f" [; ^2 V
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,等待安装结束。
) E% z1 l: B5 U! eHost#sudo apt-get install libc6:i386- S! l4 J. z1 e0 }4 K) l- I o6 X
![]() 图 1
/ x# ]* s* _# o: {% d( _* y" E7 k2 h* B) o
将光盘“Tools\Linux-RT\ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin”开发包拷贝到Ubuntu,执行如下指令安装RTOS Processor-SDK:3 k* d5 M2 L: U! e7 i& H, Q ]: o
Host#chmod +x ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin; Z5 s( o+ d8 v5 Q9 g% ~% t
Host# ./ti-processor-sdk-rtos-am57xx-evm-04.03.00.05-Linux-x86-Install.bin' s8 ~4 F5 u9 F7 V W7 G) S' ]
![]() 图 2" R& h M5 C% a' i, U5 O! Q
5 I8 w+ ^. k' ?0 S b0 f![]() 图 3+ t# W' u9 O) a8 f
; @2 U! C: T/ s7 n$ ~
在弹出的安装界面中点击Next选项,进入“Select Components”安装组件选择界面,默认全选,点击Next进入下一步:# }: X% d9 s9 g0 `
![]() 图 4
^# \0 |4 ^, y! R
7 f- e1 }# Q/ C& K进入安装目录选择界面,将“/home/tronlong/ti”默然安装目录修改为“/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05”,也可以根据实际情况选择安装路径。如下图所示:, j1 Z: Q9 u) K8 x9 g& D- E1 ?% w
![]() 图 5! Y- E( a# J- m: {4 f T; N/ B
* _0 d/ f: j, w* C7 H7 T
连续点击Next,进入到RTOS Processor-SDK开发包安装界面如下图所示:4 E0 w* Z( p+ |5 ?2 x
![]() 图 6
- L2 ?) o* L1 O) c/ r* C2 a! m5 S
3 c: t6 g: K; |3 e# ~耗时约3min后安装完成,“/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05”安装目录内容如下图所示:
: N( z, @2 X0 Z$ O# {# l![]() 图 7
) r+ R* v0 [7 a# ]8 Z4 q! r& z: G* L+ \+ N
![]() 图 8# {4 `; u& F. o3 `% T* V
) o4 o: S% l% D; @, r8 |
RTOS开发环境配置将光盘“Tools\Linux-RT\pdksetupenv.sh”文件替换掉“ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/pdk_am57xx_1_0_10/packages/”目录下的同名文件,该脚本文件主要用于RTOS组件的路径配置。
2 W1 T' ~+ w; K& A6 A7 a! S![]() 图 9
# ?4 a8 y% U6 `& x$ m% d
$ V! q& c8 r. z5 E' p5 t4 o执行如下指令,打开“/etc/profile”环境变量配置文件:
3 C# R2 T$ i" W5 lHost# vi /etc/profile2 S9 V. N5 @1 \
![]() 图 10
7 d M/ V2 p( K" l
2 Q' r7 K% u9 x4 g; T/ p参照如下方法将RTOS Processor-SDK开发包中的交叉编译工具链路径、RTOS组件配置脚本文件路径加入系统环境变量中。Ubuntu系统将自动执行setupenv.sh脚本配置RTOS Processor-SDK的环境变量,setupenv.sh脚本文件会跳转到pdksetupenv.sh脚本运行,并完成RTOS组件的路径配置。 n T8 o; a2 I$ E
export SDK_INSTALL_PATH=/home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05
, u% `, u3 f) n6 g( Y0 fsource /home/tronlong/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/processor_sdk_rtos_am57xx_4_03_00_05/setupenv.sh
" d4 J2 A0 o# g8 d! m![]() 图 11+ l0 G1 y/ U! a. ~6 E
1 a# u, B* @, n* ~
确认添加路径无误后保存退出。执行如下指令,使能交叉编译工具链,并验证环境变量是否已生效,然后重启Ubuntu。$ G8 h( ~- a% W3 q
Host# source /etc/profile
% ~0 G' K, g, Z0 W7 f1 Q' S6 Z7 C# [Host# echo $SDK_INSTALL_PATH& T* \* W( F0 _0 r. I; s1 G
![]() 图 12. m: f! U$ l/ O6 Z" f4 X; {7 a3 \6 Z
% ?+ P4 \- f6 J" j
- 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 路径! A, M" x1 W2 B9 q; `2 s& ?9 P
按照前面步骤配置好RTOS Processor-SDK环境变量,如需编译整个RTOS Processor-SDK开发包,可进入processor_sdk_rtos_am57xx_4_03_00_05目录下执行以下命令编译。实际开发中一般无需编译整个RTOS开发包,只编译需要用到的RTOS组件即可。; U) I) ~* D. O! w
Host# cd ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/processor_sdk_rtos_am57xx_4_03_00_05/
! |7 L" t6 z/ J' P. A6 j+ VHost# make -j 8/ g# d/ X8 Y8 d# [
![]() 图 13: ~- w' b8 n; L1 M
; m8 g: s) f2 S本次操作用时约55min后(由PC性能决定),完成整个RTOS Processor-SDK开发包编译工作,结果如下图所示:
! J1 [' M. s* S; Z![]() 图 142 j5 I# T; w0 @. s i' _, K
& `3 Z* ]' ~ J/ e
IPC编译RTOS IPC开发包的编译依赖于RTOS Processor-SDK、Linux内核等,版本对应关系如下表:
! h$ b, E) Q2 ]% n- p- P* B
7 P2 r& W( P% _2 h: o+ }) g+ m- I表 2
1 t8 F9 Y$ q1 Y p7 ?! @: M' uIPC版本
, \5 ~* R g/ M& V- [ | RTOS SDK版本. g! }) q8 L( r" I
| CCS版本
' q+ ?/ u) J* [9 l1 N8 o" W: M( t | 内核版本
: E/ J7 N' S# j3 b | 3.47.01.002 q E3 c2 p' ] E# Q; ~
| 04.03: }6 F& d' a4 @. @1 ]
| 7.4.0- k. Q* N5 ?! M1 e3 |& T
| Linux-RT-4.9.65
; h1 }( k) P( u |
% r4 Q, l2 N8 Q* g/ x1 E参照用户手册《Linux-RT Processor-SDK安装》文档配置好Linux-RT交叉编译工具链。参照《Linux-RT内核编译方法》文档,将光盘“Linux-RT\kernel\Linux-RT-4.9.65\src”目录下的Linux-RT内核源码解压到Ubuntu并编译内核。
8 Q x2 C2 E4 a& o9 }. a将光盘"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核心的部分中断映射。
; @, S8 F1 @ H& X执行如下指令删除RTOS Processor-SDK原来的IPC开发包,并将ipc_3_47_01_00_v1.X.tar.gz压缩包解压替换。具体版本型号以实际为准。
6 \, w; y, [. b* r# b$ n) LHost# rm -r ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/ipc_3_47_01_00/! k1 ~. E0 i$ h/ g
Host# tar -xvf ipc_3_47_01_00_v1.0.tar.gz -C ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/! O7 H3 t* H9 c
![]() 图 15
' [; P+ B7 x% Z: B3 ^' R: J# Q9 s' K( h3 o
按照前面步骤配置好RTOS Processor-SDK环境变量,并替换TI RTOS Processor-SDK安装目录下的IPC开发包。进入ipc_3_47_01_00开发包目录,执行如下指令打开products.mak文件,参照如下方法配置IPC案例环境变量:# [, N7 A+ u2 l6 I
Host# vi products.mak
5 `% n+ X( |, I' b+ Z/ m, I![]() 图 16
9 G6 C7 R7 N/ O% b k+ `; T$ S; L* D: l7 \% c
49 PLATFORM = DRA7XX //平台名称. t+ k6 ~9 F; k( M( G) {
63 TOOLCHAIN_LONGNAME = ARM-linux-gnueabihf& ~. n( Q( N3 K/ B6 V; u$ g
64 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交叉编译链5 O! h" K% ]* N1 {: Q
69 KERNEL_INSTALL_DIR = /home/tronlong/AM57xx/kernel/Linux-RT-4.9.65/
& }' }6 x5 i) C3 K m' R4 O100 XDC_INSTALL_DIR = ${XDC_INSTALL_PATH}
$ M; A9 N9 ?# f4 ~, [/ j8 J$ p101 BIOS_INSTALL_DIR = ${BIOS_INSTALL_PATH}
/ E( v3 e6 N) ~' q! C- x6 m113 ti.targets.elf.C66 = ${C6X_GEN_INSTALL_PATH}
4 Q! o# q; z. k* y- w5 \4 a121 ti.targets.arm.elf.M4 = ${TOOLCHAIN_PATH_M4}
; E% q1 f% H% Z; P$ H( k% A128 gnu.targets.arm.A15F =${TOOLCHAIN_PATH_A15}( Q1 ]# n$ J5 e) } ^
![]() 图 17! T# P3 m$ z; V$ C/ Y+ G h4 x
% }% t$ O1 _2 v" |![]() 图 189 z" ?+ G& w$ D4 H; }
) @1 `+ x+ w! v! g修改完成保存退出。在“/ti-processor-sdk-rtos-am57xx-evm-04.03.00.05/ipc_3_47_01_00”目录下,执行如下指令进行IPC编译配置并编译IPC链接库。
7 v+ I; y* ]' g U6 i' `Host# make -f ipc-linux.mak config //IPC编译配置
3 ]# d/ W+ U) B1 n6 `# CHost# make //编译IPC链接库: Y5 x: a5 i% N! ?* M- G0 r& A
![]() 图 19+ N4 K9 L- G/ {6 N
2 X/ m. ^' I! Y+ l3 m5 @5 N/ t
![]() 图 20! ]7 k/ i2 W/ Z! Y3 g) \: c9 B
![]() 图 21
+ Y8 h8 V0 R, V: D u
: j4 A: M% E; u Z, J; x' o' Y执行如下指令编译整个IPC开发包相关依赖文件,本次编译用时约40min。7 ]% A1 C7 O+ B* ^" M/ a
Host# make -f ipc-bios.mak all
! q4 K$ ~, g9 K: [- a: B4 ~![]() 图 22
) o9 ]) t0 ]; W( ]' l, D5 E# I8 r" ]" p8 e7 e0 O) m3 c
![]() 图 23 |" r5 N& J( |
# z! |$ A# F0 t- n& j6 t/ k |
|