关于HWI创建的问题 - OMAP-L138 - 嵌入式开发者社区 - 51ele.net
设为首页收藏本站

嵌入式开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 14003|回复: 22
打印 上一主题 下一主题

关于HWI创建的问题

[复制链接]

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
跳转到指定楼层
楼主
发表于 2015-1-19 16:12:11 | 显示全部楼层 回帖奖励 |倒序浏览 |阅读模式
您好,最近我在把创龙的基本startware的UPP移植到基于syslink下面,在进行UPP初始化时,新建HWI中断,但是当运行到Hwi_create()函数时,DSP那端总是跑飞了,Hwi创建程序片段如下:& k* l  V6 t! \9 J
void UPP_new(void)
/ h5 M. v4 j; U( }0 W{ 9 Q2 n* E2 \9 G4 [" S# y6 v
    PSCInit();
- Z6 r3 B  F; v4 ?/ j( g1 H( e! x
    UPPPinMuxSetup();& x2 o* q0 E3 n/ b- J/ m# `: G
& y. H' T% H& U1 Z; {
    UPPInit();5 L  q- G/ V6 x* t3 }0 A* e
" u4 |* m2 o/ B# K( y; ]
    UPPInterruptInit();
/ A8 r: S$ P# X# d  M  \" ~! a* @) K. J' p
    UPPEnable();
6 y2 Z6 `* Y" O0 p3 n
# s: ~0 {2 o: G- X/ ~, R" d    Hwi_Handle hwi; 3 c5 p! I# F9 ~, `4 E
    Hwi_Params hwiParams;     ! I# B$ E4 V- S% e
    Error_Block eb;' j5 T0 n6 D! y& V2 W* a2 e
! c$ u1 J3 w' w! A
    Error_init(&eb);
2 S9 N( E/ f* U  f5 R; T0 ~2 `2 W2 e: i" P/ _3 j
    Hwi_Params_init(&hwiParams);  
2 T" E5 j% Q" P, J    hwiParams.arg = 0;
: f, a6 r& i8 k& Z1 Z/ y4 |    hwiParams.maskSetting = Hwi_MaskingOption_SELF;$ g9 q5 K' ?  m) @
    hwiParams.enableInt = TRUE;
8 E% q5 M0 L% m' c) ~    hwiParams.eventId = SYS_INT_UPP_INT;: G6 v2 Y, o& p3 v3 R
    hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);& I6 j: ~- g+ C
* P3 T- \& G6 d; F( v1 y
    if (hwi == NULL)* s! Z* U$ m1 f7 I5 D5 V
            System_abort("Hwi create failed");- V  }$ z. o  }( C9 K
}/ V. K9 G' g8 F1 {5 m; B4 f

, J4 y6 I1 D; s; G. y每次运行到  hwi = Hwi_create(C674X_MASK_INT5, UPPIsr, &hwiParams, &eb);时程序就飞了,实在找不到原因了,刚接触BIOS的菜鸟求助各路大神们。。。7 i  P) ?4 n0 h) x  ~- h) p
1 ~; r$ \) r$ Z6 [
/ |1 t4 G) k8 W, M( h3 A
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖
回复

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
沙发
 楼主| 发表于 2015-1-19 22:34:46 | 显示全部楼层
希望缄默 发表于 2015-1-19 18:172 U* J  P! G2 j) c1 q7 y( Q1 V4 t
你是怎么判断跑飞的?
8 z8 C  r7 v9 {6 t3 e4 S
我是跑的双核,我用CCS单步进行,运行此步程序就不知道跑哪去了。。。. K3 W) B$ q9 x7 z% m5 |
回复 支持 反对

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
板凳
 楼主| 发表于 2015-1-19 22:35:17 | 显示全部楼层
希望缄默 发表于 2015-1-19 18:17& x8 D) `9 n$ {4 D1 O2 }8 H
你是怎么判断跑飞的?

, s% F: ]" a; I5 I4 b" U我是跑的双核,我用CCS单步进行,运行此步程序就不知道跑哪去了。。。* m4 g0 U: [3 T" l  C
回复 支持 反对

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
地板
 楼主| 发表于 2015-1-19 22:37:12 | 显示全部楼层
Lewis 发表于 2015-1-19 18:452 g  g4 v$ b1 p* k7 \
创建硬件中断前,先新建一个任务
' Y. J' {8 C; s2 \  r" f" s
DSP端syslink初始化的时候已经新了任务, 创建Hwi需要单独创建一个任务?
* C9 s- A: a% E3 A1 C) R
回复 支持 反对

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
5#
 楼主| 发表于 2015-1-19 22:37:58 | 显示全部楼层
Lewis 发表于 2015-1-19 18:455 F! h7 f. R! {6 X
创建硬件中断前,先新建一个任务
* @+ L; x$ Z' e: O/ x
我是在DSP接收到ARM端的消息命令后,开启UPP的9 I' Z/ k* Y* N, Y" j, n4 K
回复 支持 反对

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
6#
 楼主| 发表于 2015-1-20 10:55:01 | 显示全部楼层
希望缄默 发表于 2015-1-20 09:203 ^! V* s6 l; q2 q. X: `' _
程序跑飞后一般 PC 指针是位于 ROM 中的~
, S  S, O4 p4 Q0 K
我刚才又单步了一下,PC指针的值是0xC3076F44,还在DDR2中呢,说明没有跑飞吧。然后CCS5提示:Can't find a soure file at "/tmp/TI_MKLIB7PNesw/SRC/exit.c。  abort() at /tmp/TI_MKLIB7PNesw/SRC/exit.c:109 0xc3076f40.。。请问这是什么错误呢?4 [9 z8 T) f# _$ J4 x" e/ @
回复 支持 反对

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
7#
 楼主| 发表于 2015-1-20 10:59:36 | 显示全部楼层
希望缄默 发表于 2015-1-20 09:20
3 |& E+ b# L2 L" p7 C4 Z- F程序跑飞后一般 PC 指针是位于 ROM 中的~
! Z  J4 k/ q9 P( S) o4 l
这个找不到文件是库没弄好的原因吗,我是照着创龙AD那个例子改的,配置都是一样的,没动过
+ Q  Y* f6 D+ F: B9 B/ ?
回复 支持 反对

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
8#
 楼主| 发表于 2015-1-20 13:38:18 | 显示全部楼层
本帖最后由 378087736 于 2015-1-21 16:03 编辑
; I( L( r: N& Y7 ^, H
希望缄默 发表于 2015-1-20 11:32) G8 t) S: i- ^- d
出错了.....! i5 M" u: X( }5 T& i# i8 k

& @3 P* P1 b; j. u* F8 p+ q7 n! r+ V把相关代码贴上来 看下

  K' |2 p7 U! j; [' l你好,我把完整的工程代码上传了,里面有个程序说明
3 |% F% a& K" u6 G2 I/ \% k
+ k3 u/ n% a3 f# ~9 j: i1 O4 F3 c# u* W- h1 K* p# q

+ _0 ]% t; @! p9 [# e" O' b9 P" {
回复 支持 反对

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
9#
 楼主| 发表于 2015-1-21 08:50:27 | 显示全部楼层
希望缄默 发表于 2015-1-20 11:32
; d5 c# C( l( ?, s- f, n( c出错了.....4 K0 b3 `: e, i6 P: m

% i% G* Y# f8 c: ~' s. ~把相关代码贴上来 看下

& ]) U- ]% J% F能帮我看一下吗,我在DSP的运行的最开始处main完成任务创建后,使用hwi_create()创建中断也一样是这个问题。。。
  P8 r  S. U9 D" m4 ~% w
回复 支持 反对

使用道具 举报

13

主题

41

帖子

1181

积分

金牌会员

Rank: 6Rank: 6

积分
1181
QQ
10#
 楼主| 发表于 2015-1-21 09:59:44 | 显示全部楼层
希望缄默 发表于 2015-1-21 09:53
7 E9 `2 L2 m3 Q% n" t把错误提示截图也发上来吧
- H% k+ i) G/ I: A3 _8 y1 W9 i
错误提示就是这样的:运行到Hwi_create()函数时:Can't find a soure file at "/tmp/TI_MKLIB7PNesw/SRC/exit.c。  abort() at /tmp/TI_MKLIB7PNesw/SRC/exit.c:109 0xc3076f40.。然后程序就无法继续运行下一条程序了。我上面上传了源程序,你那能跑一下吗。
) \# J: v: ?  b# Z
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-9 00:16 , Processed in 0.046124 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2015 Comsenz Inc.

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