约翰开普勒林茨大学:关于凌阳单片机的问题

来源:百度文库 编辑:高校问答 时间:2024/04/29 15:46:28
中断程序是不是不能用C写啊?
大家看看我写的这个时期中断,怎么不行啊!
我用C写的中断程序,没有一个能成功的!
void IRQ4(void)
{
asm("push r1,r5 to [sp]");
if(0x0010&*p_int_ctrl)
{
checkkeypad();
*p_ioa_dir=0x01ff;
*p_ioa_attrib=0x01ff;
*p_ioa_data=0x0100;
*p_int_clear=0x0010;
}
else if(0x0020&*p_int_ctrl)
{
*p_int_clear=0x0020;
}
else
{
*p_int_clear=0x0040;
}
asm("pop r1,r5 from [sp]");
return;
}

看不懂,汇编语言编单片机感觉比c清晰明了
个人偏见