找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索

单片机中断优先级后面的using2是必要的吗?

查看数: 1500 | 评论数: 7 | 收藏 0
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2024-9-10 22:33

正文摘要:

下面是一个数码管动态显示0-999数字的程序,在程序的第62行“interrupt 1”后面跟着个“using 2”,这个“using 2”是必要的吗,不写会怎样

回复

ID:401564 发表于 2024-9-11 18:29
不要写using,多少个中断都不要用
using是优化的,不是必需的,你不用没多大事,用了反而容易出错
ID:1109793 发表于 2024-9-11 14:27
不太懂,但是我试过,结果变的不稳定
ID:227818 发表于 2024-9-11 13:36
csmyldl 发表于 2024-9-11 08:55
你这理解错了,单片机把内存地址的00H至1FH的32个存储单元分为4组,称之为工作寄存器,每一组分别对应R0 ...

我也觉得您说的对,假设有4个以上的中断,就要好好考虑一下了。
ID:235200 发表于 2024-9-11 08:55
wpppmlah 发表于 2024-9-11 08:27
建议不要使用 using x;  让编译器自己去处理,所以这个 using  2 可以不用写,,(意思是指定此函数使用R0-R7通 ...

你这理解错了,单片机把内存地址的00H至1FH的32个存储单元分为4组,称之为工作寄存器,每一组分别对应R0至R7,用于中断时保护R0-R7的数据不被覆盖,若中断多了,就需要选择使用哪一组工作寄存器。
ID:68189 发表于 2024-9-11 08:27
建议不要使用 using x;  让编译器自己去处理,所以这个 using  2 可以不用写,,(意思是指定此函数使用R0-R7通用寄存器的 R2,我是这么理解的).
ID:235200 发表于 2024-9-11 08:27
如果只使用了一个中断,可以不要,但程序中使用了多个中断时,为了防止中断保护的寄存器R0 R1数据误覆盖,最好加上各中断的工作器选择,编程者如果能确认保护数据不会被覆盖,可省掉using
ID:526108 发表于 2024-9-11 07:20
没必要,默认using0

小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表