Keil C的中断问题

ruiurijunxian   2008-11-10 12:38 楼主
最近弃暗投明,放弃asm转向C了,可写中断时不知道该怎样保存寄存器,像A,PSW啊的。
各位大仁教教我啊

回复评论 (6)

引用: 引用楼主 wangfan027 的帖子:
最近弃暗投明,放弃asm转向C了,可写中断时不知道该怎样保存寄存器,像A,PSW啊的。
各位大仁教教我啊


看来你是完全烙下汇编的脚印。
楼主,你根本不用管这些东西,在C中,你只要开中断,关中断就可以哦了。
你找个代码看看就明白C语言是怎么简单法了。
点赞  2008-11-10 15:43
在51单片机里面使用C,在中断函数里面并不要保存寄存器!
例:
VOID TASK(VOID) INTERRUPT X USING Y
{
}
上面的X是中断源的中断号,而Y是使用的寄存器组!
当有中断到来时,系统自动将被中断地址,程序状态寄存器及寄存器保存好了!
当中断退出时,又把这些寄存器给还原了!
点赞  2008-11-10 16:57
ASM不是暗

不会ASM,至少能看懂

的话,是写不出好的嵌入式代码的

呵呵
点赞  2008-11-10 23:35
这些东西,看你用的编译器帮助里,总之新手的话用不着管它。
点赞  2008-11-11 09:03
基本不用管寄存器的存储问题,编译器会替你解决的
点赞  2008-11-12 00:30
是的,不了解ASM 是写不出好的嵌入式C的
点赞  2008-11-12 22:31
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复