标题: 关于单片机中断优先级的问题 [打印本页]

作者: zlqzlq123    时间: 2020-3-26 21:33
标题: 关于单片机中断优先级的问题
优先级:
外部中断1 >  定时器2 >  定时器1  >  定时器0
*****************************************/
bit IsCarRunning=0;//车是否在跑
void main()
{
uchar i;
PT0=1; //提升外部中断1高于定时器0
IPH|=0x22;//提升定时器2优先级仅次于外部中断1
这里  PT0代表的不是定时器0吗?为什么将他置1会是外部中断1高于定时器0啊??

3.png (13.66 KB, 下载次数: 25)

3.png

作者: zlqzlq123    时间: 2020-3-26 21:38
有人不 ?求解答 我的理解不应该是哪一位置1哪一位优先级就高吗
作者: csmyldl    时间: 2020-3-27 01:04
请问你这是什么单片机?一般同级中断里  外部中断0 定时中断0 外部中断1 定时中断1的优先级依次降低
作者: wulin    时间: 2020-3-27 06:23
zlqzlq123 发表于 2020-3-26 21:38
有人不 ?求解答 我的理解不应该是哪一位置1哪一位优先级就高吗

中断分优先级,同级分优先顺序。如果没有特殊需求,特别是同级中断最好按默认优先顺序使用中断。随意使用再靠分级会造成超过分级数无法操作。
不同MCU中断分级数也可能不同。按楼主需求:外部中断1 >  定时器2 >  定时器1  >  定时器0
以STC89C52RC为例设置 IPH=0x24; IP=0x0c;
作者: yzwzfyz    时间: 2020-3-27 06:57
51系统中有一个中断优先级选择开关,用于选择哪个可以优先中断(当然是二选一),这个选择开关就叫IP,但IP有8位,所以理论上它可以对应8个开关。即对16种中断选择其中的8个,优于另8个。
你的PT0只是这8个开关当中的一个而矣。
作者: zlqzlq123    时间: 2020-3-28 12:29
wulin 发表于 2020-3-27 06:23
中断分优先级,同级分优先顺序。如果没有特殊需求,特别是同级中断最好按默认优先顺序使用中断。随意使用 ...

按你这样说的话,我那个程序上写的ip余iph是不是有错误啊




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1