[51单片机] 关于模块中断函数的问题

[复制链接]
1785|3
 楼主| Ztudou2012 发表于 2013-9-12 10:00 | 显示全部楼层 |阅读模式

为了程序更好的移植。
我现在把各种硬件功能模块化,遇到一个问题模块中的中断问题。
我简单描述一下。

假如我现在要模块话51单片机串口功能。
uart.h中放置外部接口函数声明和硬件相关参数
uart.c中有这几项功能
uart发送字符函数 uart_send_char(char char_data);
uart发送字符串函数uart_send_str(char *str_data);
uart接收字符函数char uart_receive_char();
uart接收字符串函数char uart_receive_str(char *temp_receive_data,char receive_num);
其中uart工作在方式1,并使用到了串口中断函数(主要是接收部分的处理)void timer1(void) interrupt 4.

我现在在主函数中测试接口功能,请问这中断函数void timer1(void) interrupt 4是否要在uart.h中声明,加入需要,主函数中怎么引用中断函数。里面还有其他的初始化函数,功能函数,非接口函数,不写出来了
 楼主| Ztudou2012 发表于 2013-9-12 10:00 | 显示全部楼层
自己先顶一下
ayb_ice 发表于 2013-9-12 10:35 | 显示全部楼层
中断函数不需要声明的,

禁止直接调用或间接调用中断函数,因为这是硬件行为,这是基本常识来的
opal11 发表于 2013-9-12 22:41 | 显示全部楼层
3楼说的很对。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

16

帖子

0

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