社区
单片机/工控
帖子详情
void Uart(void) interrupt 4 using 2 { } 这个C51函数后面麻烦问一下什么意思
fengxiao100100
2011-04-26 07:47:46
void Uart(void) interrupt 4 using 2 { } 这个C51函数后面麻烦问一下什么意思
...全文
3499
8
打赏
收藏
void Uart(void) interrupt 4 using 2 { } 这个C51函数后面麻烦问一下什么意思
void Uart(void) interrupt 4 using 2 { } 这个C51函数后面麻烦问一下什么意思
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
sjmp
2012-08-11
打赏
举报
回复
using 2 可以不要
gocpplua
2012-08-11
打赏
举报
回复
还有一点我补充下 中断向量=8*中断号+3
longteng
2012-04-23
打赏
举报
回复
2
给你一个例子参照一下或许你会很快明白
1、返回值 函数名 interrupt n
其中n 对应中断源的编号,其值从0 开始,以80C51 单片机为例,编号从0~4,分别对应外中断0、定时器0 中断、外中断1、定时器1 中断和串行口中断。
2、在C51 中,寄存器组选择取决于特定的编译器指令,即使用using n 指定,其中n 的值是0~3,对应使用四组工作寄存器。
例如可以这样来写:
void timer0() interrupt 1 using 2
{…}
即表示在该中断程序中使用第2 组工作寄存器。
using ** 不要写,写了易出错,不写绝对不出错.
interrupt**是中断源.具体编号如下:
INT0 INTERRUPT 0
T0 1
INT1 2
T1 3
UART 4
T2 5
UART1 6
外部中断2 7
外部中断3 8
外部中断4 9
外部中断5 10
看门狗定时器 11
woshi_ziyu
2011-04-28
打赏
举报
回复
1
[Quote=引用 1 楼 peterpan_hai 的回复:]
这个是中断函数的格式,void 函数名() interrupt 中断号 using 工作组,中断号是指单片机中几个中断源的序号,"using 工作组"是指这个中断函数使用单片机内存中4组工作寄存器中的哪一组,C51编译器在编译程序时会自动分配工作组,所以最后这句话通常省略不写
[/Quote]
++
rayforeverster
2011-04-28
打赏
举报
回复
1
恩,楼上说的对。。
此外:51单片机通常有5个中断,当中断发生时,程序会跳到相应的中断服务程序去执行。为了区别不同的中断,引入了中断号,单片机的中断号对应的中断类型如下:
中断号 中断源 中断向量
0------------外部中断0-------------------------0003H
1-----------定时器中断0------------------------000BH
2------------外部中断1-------------------------0013H
3------------定时器中断1-----------------------001BH
4------------串口中断 ---------------------------0023H
5-----------定时器2--------------------------- 002BH (at89s52)
PeterPan
2011-04-26
打赏
举报
回复
这个是中断函数的格式,void 函数名() interrupt 中断号 using 工作组,中断号是指单片机中几个中断源的序号,"using 工作组"是指这个中断函数使用单片机内存中4组工作寄存器中的哪一组,C51编译器在编译程序时会自动分配工作组,所以最后这句话通常省略不写
单片机
C51
串口中断接收和发送测试例程(含通信协议的实现)
单片机
C51
串口中断接收和发送测试例程(含通信协议的实现)
单片机高级语言
c51
应用程序设计
单片机高级语言
c51
应用程序设计!!单片机高级语言
c51
应用程序设计!!
单片机与RS-232的串口通信+VB程序.pdf
。。。
单片机
C51
串口中断接收和发送测试例程(含通信协议的实现).pdf
单片机
C51
串口中断接收和发送测试例程(含通信协议的实现).pdf单片机
C51
串口中断接收和发送测试例程(含通信协议的实现).pdf
[详细完整版]单片机-大题.pdf
1 简答 1.MCS-51 单片机一共有几个中断源,分别是什么?
函数
名()
interrupt
0 {} //对应外部中断 0; INT0 中断
函数
名()
interrupt
1 {} //对应定时器/计数器 0 中断; 定时器/计数器 T0 中断
函数
名()
interrupt
2 {} //对应外部中断 1; INT1 中断
函数
名()
interrupt
3 {} //对应定时器/计数器 1 中断; 定时器/计数器 T1 中断
函数
名()
interrupt
4 {} //对应串口中断; 串口中断 一共 5 种中断,优先级自上向下 2.如果利用 MCS-51 单片机串口资源实现双机通信,波特率设定为 9600,晶振频率为 11.059200Hz,允许串口接收,请编写相应的串口资源初始化的程序。
void
Uart
_init(
void
) { TOMD = 0x20; TH1=TL1=256-11059200/9600/32/12; SCON=0X50; EA = 1; ES = 1; TR1=1; } 3.单片机系统扩展时,三总线都由哪些端口构成? 数据总线 DB: P0,8 位; 地址
单片机/工控
27,521
社区成员
28,799
社区内容
发帖
与我相关
我的任务
单片机/工控
硬件/嵌入开发 单片机/工控
复制链接
扫一扫
分享
社区描述
硬件/嵌入开发 单片机/工控
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章