‘壹’ 在51单片机中,若要设置某个中断源为最高优先级,分别怎么设置IP寄存器呢
他这里有设中断优先级的,那句ip=0;就是在设置中断优先级,但其实没什么用,单片机在复位时,ip是被清零的,所有中断优先级是按照硬件优先级来执行的,所以这句有和没有是一样的。至于为什么要用两个(ex0=1;ex1=1;)允许外部中断,他两个外部中断源都用到了,所以都要开了。而it0、it1是设置外部中断触发方式的,所以也要设置了
‘贰’ 简述89S51单片机特殊功能寄存器IP的各位组成,并说明各位的功能。
89S51特殊功能寄存器IP是中断优先级控制寄存器,各位功能说明如下:
符号 位置 位地址 说明(1=高优先级,0=低优先级)
- IP.7 BFH 未实现,备用
- IP.6 BEH 未实现,备用
PT2 IP.5 BDH 定时器2中断优先级(只有80×2)
PS IP.4 BCH 串行端口中断优先级
PT1 IP.3 BBH 定时器1中断优先级
PX1 IP.2 BAH 外部中断1优先级
PT0 IP.1 B9H 定时器0中断优先级
PX0 IP.0 B8H 外部中断0优先级
‘叁’ 单片机中的IP是什么意思
在 51 单片机中,IP是指interrupt priority,是中断优先级控制寄存器。其控制信息如下:
(IP.7:保留)
(IP.6:保留)
PT2(IP.5):若=1,定时器2中断设为高优先级(只适用于8052及其增强型)
PS(IP.4):若=1,串行中断设为高优先级
PT1(IP.3):若=1,定时器1中断设为高优先级
PX1(IP.2):若=1,外部中断1设为高优先级
PT0(IP.1):若=1,定时器0中断设为高优先级
PX0(IP.0):若=1,外部中断0设为高优先级
‘肆’ 哪些单片机有IPH这个寄存器
普通的51单片机中断系统中没有IPH这个寄存器,只有有IP中断优先级寄存器。
增强型的51单片机一般有这个IPH寄存器,是中断优先级寄存器的高八位。比如PHILIPS 的P89C5x 单片机、STC的增强型51单片机中,有IPH寄存器。
‘伍’ 51单片机具体如何设置IP值改变优先级
51单片机设置IP值改变优先级的方法:
【1】51有默认的中断优先级,在有中断标志时,MCU查询的顺序是:
1、外部中断0;
2、定时器中断0;
3、外部中断1;
4、定时器中断1;
5、串口中断。
这个不用设置几句可以实现你上述的功能的。当然,你要这样自行管理中断的优先级也是好事,是编程的好习惯。
51本来就能嵌套两级中断,可以通过设置中断优先级寄存器IP设置为最高或者最低优先级。
其实,只要了解了中断的原理,压实现中断嵌套式很简单的事情。多看看51的DataSheet,学东西就不要怕不厌其烦,一定要多看Datasheet。
【2】设置IP = 0x10,即设置串口中断为最高优先级,则串口中断可以打断任何其他的中断服务函数实现嵌套,且只有串口中断能打断其他中断的服务函数。若串口中断没有触发,则其他几个中断之间还是保持逻辑优先级,相互之间无法嵌套。
【3】T1中断会一直等待cpu执行完T0中断函数再执行T1中断函数。一直要等到T0中断函数执行完毕后才会处理T1中断。如果在执行T0中断的过程中T1第二次相应中断,也要等T0全部执行完之后再相应T1中断,这时候T1中断只会被执行一次。
‘陆’ IP的寄存器
单片机中的IP IP(Interrupt Priority)中断优先级控制寄存器
中断优先级控制寄存器IP是MCS-51的特殊功能寄存器之一,各位状态均可以由用户通过程序设定,以便对各个中断优先级进行控制.
MCS-51单片机中中断优先级控制寄存器IP是用户对中断优先级控制服务程序,直到程序结束,执行最后一条返回指令返回主程序,然后再执行另一条的基础。若IP中某位设为1,相应的中断就设置为高优先级,否则就设置为低优先级。中断优先级控制寄存器的格式如下表: IP D7 D6 D5[注] D4 D3 D2 D1 D0 / / / PS PT1 PX1 PT0 PX0 位地址 / / / BCH BBH BAH B9H B8H [注]有的单片机IP的D5是PT2,即为定时/计数器T2的中断优先级控制位.
IP有效控制位的含义:
PX0:外部中断0的中断优先级控制位,PX0=1,外部中断0被定义为高优先级中断;PX0=0,外部中断0定义为低优先级中断。
PT0:定时/计数器T0的中断优先级控制位,PT0=1,定时/计数器T0被定义为高优先级中断;PT0=0,定时/计数器T0定义为低优先级中断。
PX1:外部中断1的中断优先级控制位,PX1=1,外部中断1被定义为高优先级中断;PX1=0,外部中断1定义为低优先级中断。
PT1:定时/计数器T1的中断优先级控制位,PT1=1,定时/计数器T1被定义为高优先级中断;PT1=0,定时/计数器T1定义为低优先级中断。
PS:串行口中断优先级控制位,PS=1,串行口中断被定义为高优先级中断;PS=0,串行口中断定义为低优先级中断。 IP寄存器 Instruction Pointer 指令指针寄存器(即上文“概述”中所指)。用于指出当前正在执行的指令在CS指明的内存段中的偏移量。在32/64位的处理器中也被称为EIP/RIP。IP寄存器的值通常不能直接被访问,需要使用CALL,RET,RETF,IRET,JMP,J?? 等指令来改变。 指令指针寄存器 指令指针寄存器(IP为instruction pointer的缩写),在8088或8086中,IP指指令指针寄存器,是CPU内部的一个寄存器,用来存储将要执行的下一条指令的偏移量,可以通过JMP指令改变其值,如:JMP AX为用AX值改变IP,从而实现段间跳转。
‘柒’ 80c51系列单片机有21个特殊功能寄存器其中ip为什么tcon为什么,sp是什么psw
ip是中断优先级寄存器,负责几个中断源的中断优先级设置,每个中断源只能设置成高或低2种,tcon是中断源控制寄存器,负责定时器和外部中断的开启和标志查询,SP是堆栈指针,指示栈顶的地址psw是程序状态寄存器,主要指示工作寄存器区累加器运算结果如有无进位溢出辅助进位奇偶性等
‘捌’ 51单片机怎么通过IE,IP两个寄存器的来设置几个中断的优先级
所有中断源默认优先级为0级(加电或者复位后),但是仍然有优先次序,如图示;
当将对应的中断事件置1,即提升为最高优先级,如 PX0=1;
同样的,如果有几个中断源被设置为最高优先级,那么就是按同级的优先次序等待中断响应;
还不明白的可追问;
‘玖’ 单片机里面的寄存器的字节地址是用来干什么的,怎么用
首先,地址的作用只有一个,就是用来寻址。
其次,51单片机的的片内寄存器都是可以字节寻址的。
字节地址就是用来寻址一个字节的内容,和位地址相对应,位地址就只能寻址一个位(bit)。在单片机指令中寻址任何一个字节都需要字节地址,寻址任何一个位都需要位地址。所谓的ip、ie不过是我们给这个寄存器取了另外一个名字而已。如:mov
ip,#00h
和
mov
b8h,#00h
这两条语句是一样的效果。另外,从这些寄存器的使用上来说,ip、ie等特殊功能寄存器既可以字节寻址也可以位寻址,是同样的效果。比如:setb
px0;和
mov
ip,#01h;是一样的,都是将ip的第0位即px0置1。不同的是,字节寻址的时候是8位一起操作的,会对其它的位赋值,有时不想改变其它位的值,就用位寻址。
所以,字节地址是用来寻址字节的,位地址是用来寻址位的。就这样。另外,ip也好,ie也好,也都是寄存器,要访问它们也需要地址(访问字节用字节地址,访问位用位地址),不同的是它们用来对处理器进行配置,我们给它们取了一些特定的名字而已。
‘拾’ 89C51单片机中TCON和SCON以及IE、IP都是特殊功能寄存器吗
89C51单片机中TCON和SCON以及IE、IP都是特殊功能寄存器,分别用来控制定时器、串口、中断开关、中断优先级。