多个独立程序之间跳转问题 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站
点击跳转“创龙科技服务通”

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4651|回复: 2
打印 上一主题 下一主题

多个独立程序之间跳转问题

[复制链接]

1

主题

2

帖子

21

积分

新手上路

Rank: 1

积分
21
跳转到指定楼层
楼主
发表于 2016-8-27 09:37:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题背景:现有两个工程,第一个工程led1中包含一个asm文件和c文件,asm文件实现向led1.c程序入口点跳转,如附件中所示。第二个工程只有一个c文件。三个程序的入口点分配如附件所示。' @% G- y, m7 _' f4 R  Y2 J
问题描述:在asm文件中跳转语句是“B _c_int00”,但我有两个c文件,也就有两个_c_int00,所以总是无法实现跳转(个人猜测是这个原因)。如何才能实现正常跳转?  D( |  P4 G- ~/ M+ z
补充:不能改变工程及文件结构! l# D9 g% M: o5 N% T: y
请各位大神答疑解惑,必感激不尽! O* F3 V( H" s

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
沙发
发表于 2016-8-29 08:52:37 | 只看该作者
这个程序是测试通过的 其中的地址就是 _c_int003 M: O6 T; W# Z  r. R8 C

! E1 ~) p9 R- S! J& Q2 o; q0 E
  1. /****************************************************************************/
    & @; |' P; [% _& s  U
  2. /*                                                                          */" W) i2 a9 o# u( |' o- j2 ]0 T
  3. /*              BootMenu                                                    */
    , D3 m' f, v( C7 \/ H5 M
  4. /*                                                                          */+ A4 g+ s' H/ ?( P( h1 y
  5. /*              2014年11月07日                                              */
    ( C! i5 @! {* t$ f% X9 u  o$ X
  6. /*                                                                          */
    * y' P* `, i3 p+ {! t
  7. /****************************************************************************/# ^; c6 R4 q: Q- d' R
  8. #include "uartStdio.h"
    " }5 r2 M: x$ X- w8 R
  9. + f: r$ ^# g+ z" `- W( B/ h
  10. /****************************************************************************/
    2 [: I- H. i0 T+ C
  11. /*                                                                          *// G8 T$ C  L" t. {1 d2 T2 }
  12. /*              宏定义                                                      */
    6 N% [6 I2 f& }/ K- J* `
  13. /*                                                                          */
      A! x' F' l) O7 a+ Z$ |
  14. /****************************************************************************/
    % x' y: A( k9 d

  15. + g& c0 ]2 n% c
  16. /****************************************************************************// ]  i" C% x; a+ f" ^/ d
  17. /*                                                                          */
    ( E) }6 r( N* k- x" m) @' `# T
  18. /*              全局变量                                                    */
    / y- q" w3 h% r: S( C* N
  19. /*                                                                          */* ]( `# E* t  Q; U
  20. /****************************************************************************/
    + Y6 Q  {& G, L, ?
  21. unsigned int EntryPoint = 0xC0000000;3 q/ G7 v9 W( ~! t

  22. $ H; _& g+ V$ w+ q
  23. /****************************************************************************/
      w- ~# V. |% b1 N6 X4 _
  24. /*                                                                          */( B: Q) w. L( ?* B* {' u
  25. /*              函数声明                                                    */
    4 f2 ^# _/ y2 w' q
  26. /*                                                                          */* r3 P& }3 e+ q4 U5 r- x$ a' ^
  27. /****************************************************************************/9 d6 F- o$ ]& F" X5 z% ~
  28. void (*AppEntry)();: S# z- Q/ |( J5 }0 s9 u6 L
  29. 2 I! p. Z1 ?9 p1 }" D3 ^
  30. /****************************************************************************/
    # H6 a% I; C/ ?* D6 g6 D$ J
  31. /*                                                                          */- o. |8 r& q5 ?- A2 [
  32. /*              主函数                                                      */' i6 T6 q" F, l
  33. /*                                                                          */, `$ J) A# {6 H1 A! Q) {, n/ {
  34. /****************************************************************************/4 e6 \4 X3 B. A) p; Y
  35. int main(void)
    ' t( W8 E' j. N2 g" q' G
  36. {! `6 z/ I$ p  z% e# g, @
  37.         UARTStdioInit();
    , ^, {- \( U6 ~: x0 f% {4 s% ]7 w
  38. + t8 g* q) z$ G6 D- z
  39.         UARTprintf("\r\nTronlong DSP TMS320C6748 BootMenu\r\n\r\n");
      W' u% c0 N5 c% h1 j) U

  40. # |( a) G" n$ n  e* ?
  41.         UARTprintf("0.StarterWare LED Test\r\n");* b1 K& S; H$ E9 `/ d
  42.         UARTprintf("1.SYS/BIOS EasyEvm Test\r\n");
    1 z9 }7 U# X* B) E8 h( Z% C
  43.         UARTprintf("2.StarterWare USB OTG HOST Test\r\n");0 ]2 E7 x2 |- A$ F
  44.         UARTprintf("3.DSP/BIOS USB HOST / USB OTG Test\r\n");, J8 _, r, H& y* `8 j
  45. : s/ U4 C4 u( b! n) F5 [' i9 X9 ~
  46.         UARTprintf("\r\n");
    1 l) K: A, l% t
  47. - r1 n5 r% M! _5 E7 ~
  48.         unsigned char val, status = 1;; T! L$ ?# m" c3 e! n
  49. Choice:
    + x( V1 i* J" D% ^; T0 p
  50.         val = UARTGetNum();
    2 ?/ @- G! S  p& [
  51.         UARTprintf("\r\n");) h, y+ I) ?6 Z

  52. 7 H, [* ^4 Z! d9 f
  53.         switch(val). i# q! x' ~; i! M0 a
  54.         {& J+ P9 g! L- c; ?* G7 r
  55.                 case 0: EntryPoint = 0xC1000000; break;
    / ~3 O$ ^( Z( q$ {1 L
  56.                 case 1: EntryPoint = 0xC0251FE0; break;" Z4 k6 g% f" T2 ^
  57.                 case 2: EntryPoint = 0xC2000000; break;' c7 Y& l* T" o; y: J/ m8 q
  58.                 case 3: EntryPoint = 0xC541DEE0; break;/ E9 E0 W& m: w) u9 R) G
  59. & j+ X# |# j+ t; c
  60.                 default: UARTprintf("Please input a correct number.\n"); status = 0; goto Choice;
    ( c8 J! p* f& S5 R7 ]. K1 a* y0 m
  61.         }) C( o3 V2 m6 u: _" \
  62.         6 U9 b# F8 D; \# c6 d7 J
  63.         if(status != 0)/ V! {0 `1 a7 X0 e* N& U+ J
  64.         {
    ) H! C, {5 J2 `
  65.                 UARTprintf("Starting Application ......\n\r\n");
    " z0 D2 j* n, x" {
  66. 8 B9 l- q9 H: g3 {; R
  67.                 AppEntry = (void (*)(void))EntryPoint;
    + u% |/ ~" c* i- N7 H1 q7 z
  68.                 (*AppEntry)();0 I, G) q% ?1 x$ R3 M" d  W
  69.         }
    ' z8 I7 e1 [9 S: ?. b
  70. / @  v2 P. O3 C* r7 S
  71.         return 0;5 u6 {- ]  o0 }: X
  72. }
    6 G5 G) @! V, k. v+ M: Y& R5 V
复制代码
2 [4 i/ q7 k9 J+ A2 l+ n
/ P) U! _/ U9 _- u
回复 支持 反对

使用道具 举报

1

主题

2

帖子

21

积分

新手上路

Rank: 1

积分
21
板凳
 楼主| 发表于 2016-9-4 20:48:58 | 只看该作者
您好,我试了一下这种方法,结果报错了
$ E0 g& G; r& w; {/ E, Z& h2 ]6 f+ o6 _" z! f

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

点击跳转“创龙科技服务通”

QQ|手机版|小黑屋|嵌入式开发者社区 ( 粤ICP备15055271号

GMT+8, 2026-1-31 06:43 , Processed in 0.040588 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

快速回复 返回顶部 返回列表