|
|
这个程序是测试通过的 其中的地址就是 _c_int00
" U5 h- N3 T4 |/ a. i! k$ c9 w
& [5 k3 {. }( E D' ], ~4 K- /****************************************************************************/3 l* u# S2 N3 n& H2 r' c
- /* */% }2 g/ D% a+ R- L& z/ d
- /* BootMenu */
( p d# F \# R8 V, ~ - /* */9 p9 p- _" o, h% R
- /* 2014年11月07日 */3 R& a0 d7 W, ?% j6 J( e
- /* */
1 A r* f! d$ w! H6 a9 Y$ c% ~0 ~ - /****************************************************************************/
' C' y; \' ^+ P8 O - #include "uartStdio.h"
: P0 F4 @& j( u+ E* n, b
5 A9 z) p5 R+ |! n* G" d. ]. s( W& h- /****************************************************************************/
& ]% A( T3 L K* |6 E- Q! t - /* */
8 {4 ^& ~1 G5 ^, s& \ - /* 宏定义 */
$ }2 d* S! h; p& M - /* */
" k) S' w1 y X5 a$ x1 u - /****************************************************************************/3 V+ Z5 M$ J0 f+ _, T
- ) C% s+ D: O/ l1 @! `1 ?
- /****************************************************************************/! B5 U% a. l0 s! x/ y" E
- /* */
( z# d* {! n0 K0 F4 [$ p" w - /* 全局变量 */
) V# }. P, u( R/ b - /* *// n( [1 I- c+ x0 D( s" q
- /****************************************************************************/
( @+ j% [2 U, ^ e# J: B3 K - unsigned int EntryPoint = 0xC0000000;
" m% b' f3 x+ X H5 U - 0 l4 _ f! i7 D( I( G1 ~
- /****************************************************************************/
! [- b; d2 y; ~1 Y0 l9 W - /* */
$ i4 S ^. f, O* E0 o( l4 S+ l - /* 函数声明 */% ^7 V0 D: R# P7 L2 x7 M8 X/ N
- /* */8 {: e% d- P1 z$ I% [! O3 Q
- /****************************************************************************/
3 y: `0 Z0 p8 d' W - void (*AppEntry)();; U. C1 {, P3 R1 m. W& M; ^+ V
& q. g+ B& [% K) V. u O- /****************************************************************************/
& H6 T9 g v5 y' ` - /* */
3 f: Y; @: W3 P" d1 j7 R - /* 主函数 */& k" [, U% z0 g
- /* */1 o* y; Z, `8 o- F" e
- /****************************************************************************/
: G; \- U5 Z5 A1 P* f - int main(void): G. n0 w# d0 y5 B1 S
- {
% K) t6 h s% N3 c - UARTStdioInit();
+ M% a' ^. u; w, ?: N - 5 O% O4 K4 N1 a! Y
- UARTprintf("\r\nTronlong DSP TMS320C6748 BootMenu\r\n\r\n");
0 w' a9 ]; j0 x0 v9 F% \6 |& \' C
" c5 m |, b. G! i3 Y& a; L- UARTprintf("0.StarterWare LED Test\r\n");
! T. ?: E7 k" }2 {7 u - UARTprintf("1.SYS/BIOS EasyEvm Test\r\n");# d$ D* c) y9 E. E7 r2 m# Q$ Q
- UARTprintf("2.StarterWare USB OTG HOST Test\r\n");. X3 |6 E: j9 q9 i6 W( h
- UARTprintf("3.DSP/BIOS USB HOST / USB OTG Test\r\n");
( J5 V" o9 x2 y0 g; Q: @8 \ - : s% _6 `9 E$ n5 K& T& H: T) G
- UARTprintf("\r\n");( R; y. F9 h; m; e; T0 [8 h1 ~
- ( ?1 R3 [$ t) a9 Q- `; S! J. {
- unsigned char val, status = 1;. \' S# i H5 g! ?5 {: a
- Choice:8 T0 K1 ^# H- n
- val = UARTGetNum();7 d3 }2 A& [ X8 F& D0 `
- UARTprintf("\r\n");( n$ d5 d7 ~" q) X+ X' V; W A
9 |3 N3 M4 A, [ F2 X/ u- switch(val)' P4 l P9 S( ~
- {
! l9 v% r4 N5 ^" n6 e - case 0: EntryPoint = 0xC1000000; break;, ?6 N) _# S" f+ Y: [4 E
- case 1: EntryPoint = 0xC0251FE0; break;
( @/ {% u+ `1 K' B; J - case 2: EntryPoint = 0xC2000000; break;7 y: h- \# D2 F, i; @# t
- case 3: EntryPoint = 0xC541DEE0; break;0 Q( O/ p m7 J% a/ \& I, X! z
- ' z* ]6 m* Z) `% Z( M! v! v0 }
- default: UARTprintf("Please input a correct number.\n"); status = 0; goto Choice;
1 ^7 d& \7 M$ L - } I: E- Z9 R4 j4 H) |
-
+ k0 A% m) i4 Z - if(status != 0)$ H7 x3 z5 u8 m. y- Z0 e
- {/ [; Z$ T7 }: d& ]$ x$ @
- UARTprintf("Starting Application ......\n\r\n");. m9 v: }: R+ A C
- ; S& h% s7 b) x
- AppEntry = (void (*)(void))EntryPoint;
- S5 y8 Z! C, m* O% d ], Q! E' } - (*AppEntry)();
0 S. ] c; y. d7 o y5 ^ - }2 }0 R0 q! l4 m' Y# w
- , F2 P. ?/ f% T4 W1 y
- return 0;* f t, t# D+ ~# J5 D
- }
' F* f; t% K; G4 ]9 ~ g
复制代码
4 {1 a5 W# [1 R" `$ Q q! Z( x; \" }% I# w
|
|