打印
[ZLG-ARM]

请教周公FIQ问题

[复制链接]
1460|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
tiger84|  楼主 | 2008-4-18 19:24 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
用的是LPC2364,把I2C的中断设为FIQ,其他中断为IRQ,
I2C的读写放在主函数的循环里一切正常,但是把它放到定时器1中断里时就出现了问题。

还请周公指点一二。

相关帖子

沙发
tiger84|  楼主 | 2008-4-18 19:51 | 只看该作者

我在startup.s中定义FIQ堆栈不为0, 连启动都启动不了了,太奇怪了

使用特权

评论回复
板凳
lyl831015| | 2008-4-19 19:57 | 只看该作者

I2C使用中断了吗?


如果I2C的操作使用到了中断,单是ARM硬件是不支持中断嵌套的。

使用特权

评论回复
地板
tiger84|  楼主 | 2008-4-21 10:25 | 只看该作者

I2C使用中断了

我把堆栈长度改了下
;define the stack size
;定义堆栈的大小
SVC_STACK_LEGTH         EQU         0
FIQ_STACK_LEGTH         EQU         56
IRQ_STACK_LEGTH         EQU         200
ABT_STACK_LEGTH         EQU         0
UND_STACK_LEGTH         EQU         0
就可以了。
若这些堆栈长度相加大于256就不行。
这样的话,我的堆栈就很小了,可能会溢出。
不知道哪里可以改堆栈的大小啊。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

101

主题

862

帖子

0

粉丝