[ZLG-MCU] ZLG213X启动代码的问题

[复制链接]
2694|6
 楼主| liuweifeng168 发表于 2009-8-3 16:52 | 显示全部楼层 |阅读模式
在ZLG213x中有如下的语句:
;定义堆栈的大小
SVC_STACK_LEGTH         EQU         0
FIQ_STACK_LEGTH         EQU         0
IRQ_STACK_LEGTH         EQU         256
ABT_STACK_LEGTH         EQU         0
UND_STACK_LEGTH         EQU         0
为什么把FIQ中断的堆栈设置为0呢?而且FIQ堆栈的sp指针和IRQ指针的地址是一样的,在发生FIQ中断的时候确实也用了压栈和出栈,这样不会出错吗?

还有个问题,如下:
StackSvc           DCD     SvcStackSpace + (SVC_STACK_LEGTH - 1)* 4
StackIrq           DCD     IrqStackSpace + (IRQ_STACK_LEGTH - 1)* 4
StackFiq           DCD     FiqStackSpace + (FIQ_STACK_LEGTH - 1)* 4
StackAbt           DCD     AbtStackSpace + (ABT_STACK_LEGTH - 1)* 4
StackUnd           DCD     UndtStackSpace + (UND_STACK_LEGTH - 1)* 4
其中,这应该是得到相应堆栈的最高地址,但是SVC_STACK_LEGTH=0的情况下,这样可以达到正确地址吗?我觉得不应该减1啊,什么原因呢?
linhai1986 发表于 2009-8-8 17:27 | 显示全部楼层
xiaoxin1986 发表于 2009-8-8 17:52 | 显示全部楼层
 楼主| liuweifeng168 发表于 2009-8-19 09:37 | 显示全部楼层
ZLG的人就不能出来给解释下吗?难道你们也不懂?
pk.kong 发表于 2009-8-19 14:49 | 显示全部楼层
去zlgmcu那里去问问试试。
linhai1986 发表于 2009-8-19 19:00 | 显示全部楼层
恩,可以去ZLG论坛问一下
 楼主| liuweifeng168 发表于 2009-8-21 11:56 | 显示全部楼层
这就是ZLG的论坛,一涉及到关键问题,老周的人就不敢回答了哈!哎!!!!!!!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

8

主题

26

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部