快捷搜索:

单片机中断c语言使用

单片机中断c语言使用

根据仪陇单片机TINYC使用手册翻译

中断c语言,关于中断的现场保护,由于英文手册还没有看懂,所以空来没有写出。

低级中断,中断保护程序

中断执行前对一些寄存器进行保护

Void intcall tcc_1(void) @ 0x03:low_int 0

中断服务程序

Void intcall tcc(void) @ int 0

中断向量数,是指MCU有几个中断向量,用标号将每种中断向量分开。

编译器根据中断向量数将中断保护程序和中断服务程序结合起来

全局中断向量IntVecIdx

先申明全局中断下向量IntVecIdx

Extern int IntVecIdx;// IntVecIdx将占用地址0x10,用户将不能再在0x10定义变量,否则将冲突全局中断向量出错,且编译器不会有错误提示

当硬件中断向量不止一个,根据中断向量跳转到相应的中断服务程序,用户可以屏蔽没有使用的中断向量。

Extern int IntVecIdx;//占用0x10

Void _intcall allint(void)@ int

{case 0x04:

;break;

Case——————

}

Void _intcall tcc_1(void) @0x03:low_int 0

{

}

硬件向量只有一个,用户不申明定义IntVecIdx,但程序里不能占用0x10。

Void intcall interrupt(void) @ int

{

}

Void int_call interrupt_1(void) @ 0x08 low_int 0

{

}

pic内核下的单片机,由于指令字节长度为13位,所以程序寻址范围为1K,所以大于1K时引入程序页的概念。

c语言相关文章:c语言教程

您可能还会对下面的文章感兴趣: