|
这个程序是测试通过的 其中的地址就是 _c_int00
# T* r/ d/ f5 e7 t, V+ E5 T7 v( Y$ N; u% c
- /****************************************************************************/
$ u$ c5 R* J4 Y$ l& j! Y' r - /* */% U1 @: c. I. y5 `% k3 e V1 G$ y. v
- /* BootMenu */
: P8 h+ f7 C" o" _5 t" L - /* */* D7 n2 ^ X, y0 Q
- /* 2014年11月07日 */1 [, }( w, }5 z5 P5 [- d
- /* */
2 n7 \ x& R# ]+ V( }. o( C; ` - /****************************************************************************/8 o p& F9 d2 [9 Y
- #include "uartStdio.h". \9 G; y5 s& \8 ^4 [( x& L. j* m
- ; d7 a- h* g! M6 R, k
- /****************************************************************************/
3 i1 G- V: O, N) u - /* */% _4 R, M6 X- |3 E
- /* 宏定义 */, t$ K, u4 R) b
- /* */
3 X+ ?) } u( Z' c5 y- O1 f - /****************************************************************************/
4 ]: y7 D' y1 [$ U - 6 P o5 j% R8 O$ U! d
- /****************************************************************************/
. [) k7 R% `% d0 r. _4 Y - /* */
( J' @1 v" [: t: b - /* 全局变量 */
1 n T* Y0 v$ Y/ d - /* */4 {& u5 h+ M+ X
- /****************************************************************************/0 ^& I- n$ K' M+ t
- unsigned int EntryPoint = 0xC0000000;+ P' N c6 \/ R# f9 L
2 G9 w4 W+ [: ?$ s$ P& r3 C- M- /****************************************************************************/; ^( M/ C% V, ?3 C5 R; m0 G1 ~: }
- /* */
. `8 b$ H' b2 V6 y' B- p7 B - /* 函数声明 */
4 n# M5 d6 j; E# V$ F, o - /* */3 A! n* N- N( K1 ^/ M% ?
- /****************************************************************************/
+ \. F' c( ^' g5 `" w - void (*AppEntry)();
: S+ O0 S/ a! g8 r& [
! H; x( X8 C2 L* `' P- /****************************************************************************/) s5 L8 B1 D5 `' i0 T) k, I5 N/ v
- /* */3 x" |6 M9 }0 D3 Z& y' p
- /* 主函数 */$ h( u- q5 n7 ^9 Q
- /* */
; M% i; i0 b% i4 c - /****************************************************************************/- V: g* g Q) k5 L3 |& N
- int main(void). ~! A9 F% T0 F1 k) }9 {
- {8 l1 o5 W" `) [) e# q& b
- UARTStdioInit();# |6 _3 j5 P$ [) M b) k9 p$ z
5 {6 r( X( x0 B* ?: p' ]/ @/ s- UARTprintf("\r\nTronlong DSP TMS320C6748 BootMenu\r\n\r\n");
9 W/ k1 ^6 Y7 V$ F/ J. V9 A
5 M5 d5 D. u- u( A/ R2 n- UARTprintf("0.StarterWare LED Test\r\n");
% l+ O& E! l% W. i7 ?" v* U6 e - UARTprintf("1.SYS/BIOS EasyEvm Test\r\n");6 H2 @% P! x/ E+ ], X
- UARTprintf("2.StarterWare USB OTG HOST Test\r\n"); u0 U8 p, c S
- UARTprintf("3.DSP/BIOS USB HOST / USB OTG Test\r\n");0 L: e2 V1 ]+ z5 |$ ^8 e: A, |) q
& I! d# K0 [) [# b- UARTprintf("\r\n");
7 ?2 ?1 X4 Y- F) O4 r5 t6 l+ o" K+ p - % ^7 W0 }& r& W& \4 e% R2 d4 ~
- unsigned char val, status = 1;
. S9 j! l; r) J6 J" m, ], e; x - Choice:
' @0 p' I+ n8 h# I! a - val = UARTGetNum();, Q& X# V6 G- C* l9 L! h( x1 ^& w* g, F
- UARTprintf("\r\n");1 A+ z* O0 _' v, y$ d2 X, F T
- R( L' m4 {, W& M5 J: B6 {
- switch(val)$ g$ w3 s6 |) l0 M5 w$ H
- {
+ m, X- Q, Z: d; m - case 0: EntryPoint = 0xC1000000; break;
+ W, t5 u5 |$ i4 h+ c - case 1: EntryPoint = 0xC0251FE0; break;! K) ^9 s* D; ?3 P' u5 k
- case 2: EntryPoint = 0xC2000000; break;
9 M( {* Q- i0 O$ r1 w& G - case 3: EntryPoint = 0xC541DEE0; break;
4 o& d- h. H* O - ! O, g9 k" P9 L2 ~! M! Y
- default: UARTprintf("Please input a correct number.\n"); status = 0; goto Choice;7 z7 T6 ]9 n/ f& S: E
- }
! d& |% T9 A! j - ) }* C% `& S. E1 O3 G+ w2 c& B
- if(status != 0)* a0 X3 U2 L/ K$ w
- { O: h8 ~8 {, I9 u4 ^* G) |
- UARTprintf("Starting Application ......\n\r\n");6 s3 U& ]( S1 c, M2 _
R8 x. t; X5 g7 J+ {$ N2 s, s& c- AppEntry = (void (*)(void))EntryPoint;: j: H) i; S* n7 f! J
- (*AppEntry)();2 y" K; I4 I$ Q$ f! G% D% Y1 U
- }
! ?' ~5 L" N+ o - ' Y5 T3 D2 |% k# P. I% w+ @9 `' |* r0 b! H
- return 0;
1 P2 @1 k% \, A - }7 U( w/ }, K0 N
复制代码 ' k! c) n8 u4 c
7 F9 L$ R$ G5 w; {
|
|