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

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

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

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

[复制链接]

1

主题

2

帖子

21

积分

新手上路

Rank: 1

积分
21
跳转到指定楼层
楼主
发表于 2016-8-27 09:37:02 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
问题背景:现有两个工程,第一个工程led1中包含一个asm文件和c文件,asm文件实现向led1.c程序入口点跳转,如附件中所示。第二个工程只有一个c文件。三个程序的入口点分配如附件所示。  p) `; X$ s8 S
问题描述:在asm文件中跳转语句是“B _c_int00”,但我有两个c文件,也就有两个_c_int00,所以总是无法实现跳转(个人猜测是这个原因)。如何才能实现正常跳转?
6 Q2 Y* E$ s9 d- {/ A, D7 x补充:不能改变工程及文件结构0 l, N. s  W9 O8 n9 p+ O8 W
请各位大神答疑解惑,必感激不尽4 ?& |& W& e5 F4 B3 B

本帖子中包含更多资源

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

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

使用道具 举报

15

主题

1357

帖子

4579

积分

创龙

Rank: 8Rank: 8

积分
4579
沙发
发表于 2016-8-29 08:52:37 | 只看该作者
这个程序是测试通过的 其中的地址就是 _c_int00
) c% u2 s6 `3 `8 a0 p) _' H5 y# B. `; H
  1. /****************************************************************************/2 p" {' e  _5 V& x
  2. /*                                                                          */
    4 z$ f4 E# E% o- J
  3. /*              BootMenu                                                    */; B1 F3 |$ r' f6 M/ R$ p
  4. /*                                                                          */
    9 f1 J/ C7 O. Y: K( _: W2 k8 k) S
  5. /*              2014年11月07日                                              */
    2 U' x, ^4 s! z+ C2 c7 I# @
  6. /*                                                                          */
    3 K" t7 z- v; S) |
  7. /****************************************************************************/
    # W  a/ q6 L# ~# z) S
  8. #include "uartStdio.h"
    $ Y% p7 C3 e0 |) E0 w

  9. ( i0 R( C6 ^. K; K$ _4 M+ o
  10. /****************************************************************************/% ~+ ^& B2 A6 b2 ^& @
  11. /*                                                                          */
    & }% a4 O% e3 ]3 s
  12. /*              宏定义                                                      */
    ) c6 }3 _7 }* m- n+ y' O, [& H
  13. /*                                                                          */
    # {9 U) Z' O$ a. y! E6 Z
  14. /****************************************************************************/
    6 R- ~9 ~' a4 p, q- N7 n! f1 t8 q

  15. $ K3 j7 R9 q4 x0 f
  16. /****************************************************************************/
    % l2 g6 R7 ^, z& A! z- ?
  17. /*                                                                          */. a4 v# h3 @; ~9 T
  18. /*              全局变量                                                    */
    % c& `( k0 o6 B. z8 |6 M; J/ x
  19. /*                                                                          */! {/ z% h0 ~% L3 K, {
  20. /****************************************************************************/
    ! M" c0 m5 @5 Z$ I, y3 [% F
  21. unsigned int EntryPoint = 0xC0000000;) M7 B  s0 x& B7 d: v7 }3 |

  22. ( r3 Y, K2 f% w& j
  23. /****************************************************************************/. E+ b- Y2 o+ P' F: o8 e
  24. /*                                                                          */0 L6 m- Z/ ]. H4 W3 g
  25. /*              函数声明                                                    */
    4 v: m/ p# q( K  D
  26. /*                                                                          */
    . c2 p; J& D+ A2 q" O
  27. /****************************************************************************/
    ( ?* B2 Z/ {! H: l- C" Z
  28. void (*AppEntry)();% _+ O3 U- e* I" H1 |/ ?5 N1 R

  29. ( U! ]. M9 V3 W8 k% {1 P! }% }
  30. /****************************************************************************/0 R' X0 A% R$ `9 u; I
  31. /*                                                                          */
    ) L$ V* h& e- ?: a, j' ?# S
  32. /*              主函数                                                      */7 y0 i8 [9 V1 }- j& M  G8 }6 v+ W
  33. /*                                                                          */) H" B! Q( r8 t2 x9 s4 V
  34. /****************************************************************************/
    - e( E5 @: t5 S; N, M5 @/ q
  35. int main(void)) c9 U  g& y1 x/ A! c4 P8 [
  36. {& A6 X9 f# p! f( I/ \- ]% x
  37.         UARTStdioInit();
    2 r6 {* ]1 G) e  h" g  ~: d8 r( o

  38. : U" B; |/ J2 |
  39.         UARTprintf("\r\nTronlong DSP TMS320C6748 BootMenu\r\n\r\n");, E* ^- L9 W4 ]. b, Y0 D
  40. 0 W8 G" Q7 T5 U/ u- P- h
  41.         UARTprintf("0.StarterWare LED Test\r\n");
    + ?% z/ h! U, w5 f  l5 t0 b
  42.         UARTprintf("1.SYS/BIOS EasyEvm Test\r\n");
    5 Q* [  A) O2 O7 D; V- y
  43.         UARTprintf("2.StarterWare USB OTG HOST Test\r\n");
    0 D4 h' R$ O2 E$ Z6 A) B  \2 i4 w
  44.         UARTprintf("3.DSP/BIOS USB HOST / USB OTG Test\r\n");
    : m& T! e' _! |' U% p
  45. $ E" f" y. \; y8 l3 O
  46.         UARTprintf("\r\n");& d- L& u5 i# a0 r! y7 ~
  47. * y3 d: k* A  z. X  R& ^% Y
  48.         unsigned char val, status = 1;& g0 L8 D0 f( C$ D( _) L
  49. Choice:( q7 `# q3 y. A7 {& g8 c
  50.         val = UARTGetNum();& U. K7 k) V, e. S7 r
  51.         UARTprintf("\r\n");! F! X; q: r- }0 k- C

  52.   e- L5 [! U4 G6 v& b2 [6 N8 y
  53.         switch(val)5 C0 ~: O. x8 N) O
  54.         {8 d) C6 C% h9 j- f- c% F7 e! b
  55.                 case 0: EntryPoint = 0xC1000000; break;& v6 O. \# u& ]# A' O. ~
  56.                 case 1: EntryPoint = 0xC0251FE0; break;5 u! R- Q5 D! e
  57.                 case 2: EntryPoint = 0xC2000000; break;
    8 W7 i: L3 G; e2 Q  ?
  58.                 case 3: EntryPoint = 0xC541DEE0; break;: U- |' k3 |1 q2 }3 o5 _. [) t
  59. ( E7 {; p$ v- `1 O
  60.                 default: UARTprintf("Please input a correct number.\n"); status = 0; goto Choice;
    " N& a, a5 t% _8 }
  61.         }1 S$ G; o" E$ t+ ~' @: P
  62.        
    2 Z, P' M0 b" A/ ?. @
  63.         if(status != 0)9 e9 g. D9 U1 K5 ^: h2 |+ U7 U( R0 X
  64.         {' t4 c+ U3 a5 a
  65.                 UARTprintf("Starting Application ......\n\r\n");
    7 Z0 S. Z% c5 ^: |  J( G& ~0 c
  66. - O2 ~2 q! Z  o4 ]" [
  67.                 AppEntry = (void (*)(void))EntryPoint;
    1 s6 }  a) E0 r2 j
  68.                 (*AppEntry)();+ S; \4 p. t& v5 `# y- A; g( ^
  69.         }
    8 u: P3 G2 K2 C

  70. " _7 @( ]& U* r- \% w& i
  71.         return 0;
    # A# k) W- P+ H
  72. }# X/ ~3 M# i0 E9 L" V' X0 v
复制代码

8 b& {; w: A- `6 R5 F0 n7 w: ?0 s$ {! l+ P# e
回复 支持 反对

使用道具 举报

1

主题

2

帖子

21

积分

新手上路

Rank: 1

积分
21
板凳
 楼主| 发表于 2016-9-4 20:48:58 | 只看该作者
您好,我试了一下这种方法,结果报错了# ~9 R+ {. [+ [6 }" A/ d  m4 ^

3 ?1 v- _9 s7 P6 t' H8 M

本帖子中包含更多资源

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

x
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2026-3-17 10:39 , Processed in 0.039228 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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