【案例測(cè)試一】 TMS320C665557開發(fā)板|ndk_client的功能案例測(cè)試
0 q6 D, U. X7 y; R
! j' J3 w2 L" X$ h
" C, y* Z, ^4 G* J! D; y4 b
" N; @4 J7 j4 t% K% c, E5 d# u, `ndk_client案例" ]) @ W5 Y3 s9 l9 }4 t
) v3 `4 f+ Y" [8 x- U
% E. W# d# x- |. Q0 `) K$ B/ `
本文檔案例程序默認(rèn)使用DSP型號(hào)為TMS320C6657評(píng)估板、DSP端DDR3容量為1GByte的核心板,通過TL-XDS200仿真器加載運(yùn)行進(jìn)行操作效果演示。請(qǐng)通過Micro USB線將DSP UART0調(diào)試串口與PC機(jī)進(jìn)行連接,打開串口調(diào)試終端SecureCRT并正確進(jìn)行串口連接設(shè)置。
5 b0 B5 s/ a7 Z, s7 I0 h& s
" _7 t5 o6 N0 P9 i& A" b
8 G* @* N2 W0 t6 }
4 z% I& B" v9 L本開發(fā)案例,主要基于創(chuàng)龍科技TI KeyStone架構(gòu)C6000系列TMS320C665x多核C66x定點(diǎn)/浮點(diǎn)DSP以及Xilinx Artix-7 FPGA處理器設(shè)計(jì)的高端異構(gòu)多核TMS320C6655/57評(píng)估板,由核心板和評(píng)估底板組成。核心板內(nèi)部DSP與FPGA通過SRIO、EMIF16/uPP、I2C通信總線連接。核心板經(jīng)過專業(yè)的PCB layout和高低溫測(cè)試驗(yàn)證,穩(wěn)定可靠,可滿足各種工業(yè)應(yīng)用環(huán)境。
. L9 m7 f- t9 V; a
- M; Z7 O( d$ b! R q) Q3 E \) R( [
; e1 G9 ^+ P- \
2 e" \( u0 \ f0 KTMS320C6655/57評(píng)估板接口資源豐富,引出千兆網(wǎng)口、PCIe、SRIO、EMIF16/uPP、雙路SFP光口等高速通信接口,方便用戶快速進(jìn)行產(chǎn)品方案評(píng)估與技術(shù)預(yù)研。
8 J% P5 `" o# F& l3 D) x
9 y8 T5 K2 v8 y {# s2 d! Z+ g
1 o2 j! l7 _1 x- g, Q0 n; j( ?5 ~1 C( {5 I
DSP RTOS(SYS/BIOS)案例基于多核軟件開發(fā)包BIOS-MCSDK中的pdk_C6657_1_1_2_6包進(jìn)行開發(fā),底層調(diào)用的是CSL(Chip Support Library)函數(shù)庫,并加入SYS/BIOS實(shí)時(shí)內(nèi)核實(shí)現(xiàn)多任務(wù)運(yùn)行。
0 a' h0 z( b5 s
3 i/ R( W9 E- u
9 k& [4 ?# w& r- K8 K' P3 V9 `DSP RTOS案例位于產(chǎn)品資料“4-軟件資料\Demo\DSP_Demo\RTOS-demos\”路徑下。案例目錄說明如下表,其中bin目錄存放程序可執(zhí)行文件,project目錄存放案例工程源文件。
2 c1 w: O y( y, [# F$ f+ \* y# t​
Y# F" ^: C' M" B' z4 D" ]; T& W1 m0 ^ h0 p7 G
表 1; |. ], w+ }' k" g/ E% p
目錄
5 V% I) c+ I3 ~+ A8 I4 p/ z, Q | 文件/目錄& W* ^7 ~- X j7 C6 X$ A- D/ ]
| 說明
* m, P1 B) R# u0 x: [ | bin
6 N* ^2 ~3 P: ^7 y( c2 w6 i | xxx.out0 Z# f0 h+ W% p5 L- [
| 程序可執(zhí)行文件
( Z- e8 q0 e- I- h; J4 { | project
- n% G( Q& W' j7 @ | xxx.c0 P6 R# c4 X2 ]- _6 ~ R. T
| 程序源碼文件4 W7 z/ `. z" m! t/ `" j! C
| xxx.cfg
& R* \) H! I. e- p. D$ E3 [: v$ E | RTSC配置文件' T- s9 x8 m, c7 g
| driver
% ?1 a2 y; ]) j5 R* E8 P! P8 c | 驅(qū)動(dòng)文件存放目錄
, _( I/ H6 ?4 @: `" p' R | system' K) I0 A% W+ w
| 平臺(tái)文件存放目錄 R {3 L, h+ e7 h' M# [
| .ccsproject/.cproject/.project
" K% y- O( `" `) Z* K2 p | CCS工程文件
4 V# F& b0 ]# j" d" e$ D. @6 ]) k/ d
| * n$ a' N3 i, V9 B, u0 F
​1.1 案例說明案例功能:TMS320C6655/57評(píng)估板通過網(wǎng)口接收上位機(jī)數(shù)據(jù)后,將數(shù)據(jù)重新發(fā)送至上位機(jī)(PC)。TMS320C6655/57評(píng)估板作為UDP Server和TCP Server,上位機(jī)作為UDP Client和TCP Client。& j ^4 f' g6 d# w& K0 D! y
​1.2 關(guān)鍵代碼(1) 初始化sgmii。 ​
' [, t( B2 I# q6 a& R! g圖 9
* [0 e! a6 G4 ]8 _4 u: Z9 y* N/ w7 e! y+ l+ [
, H8 V' C+ F/ \# B' e* [(2) 動(dòng)態(tài)創(chuàng)建ndk_client任務(wù)。 ​2 U! o, U8 f; z4 P. _
圖 10
; J9 _. e. m- \% D6 i, ~7 z! w, f# w. r7 G+ u% _' m" D
! V% f0 E1 ` B! p(3) 默認(rèn)使用DHCP模式自動(dòng)獲取IP地址,如需修改為靜態(tài)IP地址,可參考如下說明進(jìn)行配置。 ​2 h8 H! |4 m1 ^1 s V3 G$ `
圖 11
) ~( z% B% y2 W​/ P* l! L- F' b" W$ d9 R& P \
圖 12: X) {! P- q0 E7 W* \. D# z& u1 R
​
6 J2 A+ t8 z( i$ P, y& d: D# ~圖 13: R6 x1 w7 J# k* W9 s
. B7 z" W$ ] S6 g/ G
- _& u7 b" u1 E, x3 z4 A1 V/ @
(4) 設(shè)置網(wǎng)頁界面登錄賬號(hào)與密碼。 ​ {# ~0 Y- T; S) B. [1 E
圖 14
& r* d, x! Y$ z0 G# c4 e u! Z+ r9 l/ p4 ^- j8 ^) M- e
; h) F0 N- X5 _6 C( {! a5 p(5) NetworkOpen中創(chuàng)建兩個(gè)守護(hù)進(jìn)程,分別用于監(jiān)聽網(wǎng)絡(luò)端口7與網(wǎng)絡(luò)端口8。網(wǎng)絡(luò)端口接收到數(shù)據(jù)后,程序?qū)⑦M(jìn)入對(duì)應(yīng)的函數(shù)響應(yīng)數(shù)據(jù)接收,并將數(shù)據(jù)回傳至上位機(jī)。
* C: @2 J! r2 e: w
n port_id:7 - dtask_tcp_echo,響應(yīng)tcp的接收,并回傳。 n port_id:8 - dtask_udp_echo,響應(yīng)udp的接收,并回傳。 ​& X9 P0 L: e* M2 d
圖 15
0 @7 h. n+ g1 e# ^' A8 A* C& O- [- _
! x3 n; J: u3 y- _
​1.3 案例測(cè)試, _+ H# h$ _4 p& G. _2 y
請(qǐng)將TMS320C6655/57評(píng)估板DSP ETHERNET網(wǎng)口與PC機(jī)通過網(wǎng)線連接到同一個(gè)路由器。請(qǐng)運(yùn)行程序,CCS的Console窗口將會(huì)打印如下信息,TMS320C6655/57評(píng)估板使用DHCP模式自動(dòng)獲取IP地址。案例源碼、產(chǎn)品資料(用戶手冊(cè)、核心板硬件資料、產(chǎn)品規(guī)格書)site.tronlong.com/pfdownload
8 V4 r1 ]7 V6 s, p! k​3 m8 \, ^% r& c3 b# d7 S) V# D
圖 2) C6 N8 Q; ?+ u6 Y5 V4 \. C) J
- S9 g. V( d8 v5 \$ k" j0 N' m7 X/ R7 b+ @" ]' d q# I3 K1 k
(1) 上位機(jī)作為UDP Client / G4 y7 }/ `* K7 k2 G8 y
打開產(chǎn)品資料“4-軟件資料\Tools\Windows\NetDebugTool\”目錄下的網(wǎng)絡(luò)調(diào)試助手軟件NetDebugTool.exe,在彈出的界面中點(diǎn)擊“新建UDP”,在設(shè)置區(qū)輸入上位機(jī)IP地址,端口號(hào)默認(rèn)為6666。在數(shù)據(jù)發(fā)送區(qū)輸入TMS320C6655/57評(píng)估板IP地址,端口號(hào)為8(端口號(hào)可在源碼中修改)。點(diǎn)擊設(shè)置區(qū)的“啟動(dòng)”,在數(shù)據(jù)發(fā)送區(qū)輸入需發(fā)送的數(shù)據(jù),再點(diǎn)擊“發(fā)送”。: @8 H& ?5 W) k9 W& Z' S" t0 H; d
8 a& C- p2 p. H8 X' P; p* n1 M' X: x8 C
TMS320C6655/57評(píng)估板(UDP Server)接收到上位機(jī)發(fā)送的數(shù)據(jù)后進(jìn)行回傳,上位機(jī)接收到回傳數(shù)據(jù)后將其在數(shù)據(jù)接收區(qū)進(jìn)行顯示。. R0 O7 ~! h E/ b
​0 N# g# p3 u' K6 Q' O: ^: U
圖 3
5 C& b8 Z4 Z- z(2) 上位機(jī)作為TCP Client
$ n1 t: g0 J! f& U, g 點(diǎn)擊網(wǎng)絡(luò)調(diào)試助手軟件界面的“新建TCP Client”,在設(shè)置區(qū)輸入TMS320C6655/57評(píng)估板IP地址,端口號(hào)為7(端口號(hào)可在源碼中修改),點(diǎn)擊“連接”。在數(shù)據(jù)發(fā)送區(qū)輸入需發(fā)送的數(shù)據(jù),再點(diǎn)擊“發(fā)送”。5 H- H1 [8 ]1 G3 S \ `
% d; p3 Z$ o+ q$ C* O) U
( O" [* S* `: \% r$ l/ o
TMS320C6655/57評(píng)估板(TCP Server)接收到上位機(jī)發(fā)送的數(shù)據(jù)后進(jìn)行回傳,上位機(jī)接收到回傳數(shù)據(jù)后將其在數(shù)據(jù)接收區(qū)進(jìn)行顯示。
5 z7 X7 n1 b: c* f1 o
& j. C5 I! y3 }7 I4 E# O" Z; [ _
# v1 T' Z% O# M, \​
& h$ H x8 b: b& U圖 4/ f( U/ _/ U4 }4 n' j; Y# z0 G
8 ` @, {/ j) K2 n" f% A$ X# m- Q) [
若5s內(nèi)無數(shù)據(jù)進(jìn)行發(fā)送,網(wǎng)絡(luò)會(huì)自動(dòng)斷開連接。
7 n6 X9 `0 m" ^​) m+ W+ R g7 R1 V6 F
圖 5
8 P3 n7 G+ S! i c! M* B& b s6 v" K* ~
2 E$ R6 F5 \- t0 c7 w4 {+ _7 c, ?本案例亦實(shí)現(xiàn)了簡(jiǎn)易的HTML網(wǎng)頁功能,可通過創(chuàng)建網(wǎng)頁界面獲取TMS320C6655/57評(píng)估板信息,實(shí)現(xiàn)用戶交互功能。請(qǐng)?jiān)谏衔粰C(jī)瀏覽器輸入TMS320C6655/57評(píng)估板IP地址打開網(wǎng)頁界面,可點(diǎn)擊不同選項(xiàng)跳轉(zhuǎn)至相應(yīng)的功能界面。
" a2 k0 i$ P0 _例如點(diǎn)擊頁面最下方的"Authenticated CGI Form Example"選項(xiàng),該選項(xiàng)主要演示身份驗(yàn)證功能,在彈出的界面中輸入賬號(hào)密碼(默認(rèn)賬號(hào):username,默認(rèn)密碼:password,賬戶密碼可在源碼中進(jìn)行設(shè)置),登錄成功后可在網(wǎng)頁界面查看相關(guān)信息。" ? C$ k# _+ A9 Z n4 U7 Z
​0 J% {% J0 c# Q
圖 64 h6 h1 A5 B0 b
7 D1 G! F/ @3 ]3 q5 n" b. n. |, B" k
​
: t1 }5 X0 w0 W' p圖 76 I- O6 G+ }. n# v$ G. L% M" `
8 w! b0 P/ E. A
) a1 J- ^2 C" O% b0 ~( _+ {7 X+ G, ^
​; w- W2 _& P6 i( {* Y, [
圖 89 }' M- h9 J: u, ~8 X
3 N1 G6 W2 `3 M8 }% T R
+ v* g, S3 ^! T; W- u: d4 Z m
# P r) r+ y7 J3 z+ _
- ?3 o+ [* Y. C" a3 N4 D6 l5 X5 l1 X. F O6 T6 C% Z" r r
下一章節(jié)分享:【案例測(cè)試二】 基于TI KeyStone TMS320C665557評(píng)估板|ndk_benchmark的功能案例測(cè)試,敬請(qǐng)期待!0 Q- D4 F: f& Q2 m# p2 j- _
5 x4 e" H2 z* F |