P2 = ((P2&0x1f)|0x80); / 其中0x1f=0001 1111,P2与0x1f进行与运算,高三留出来,接着再或上0x80;容易发现0x80=1000 0000;或运算,与1或结果为1,与0或结果不变,所以或上0x80只需看P2的高三位,则高三位为100,对应3-8译码器的话,P2^7=1;P2^6=0;P2^5=0;所以...
首先我们先说一下P2,想想看,刚开始的P2的各个引脚都是高电平的,也就是说P2 ^ 0 到 P2 ^ 7 ,也就是高四位和低四位都是 1111 1111。 第二个就是0x1f -> 0001 1111 第三个是0x80 -> 1000 0000 2. 关于& 那&符号是表示与的意思,学过数电应该都知道,不知道的就可以先记住, &只有1&1的时候才是...
p2&0x1f,就是保留p2的低5位,将其他高位置0,然后与0x80进行或运算,或运算就是将两个值的每一位合并起来,0x80所占7位,所以就是保留之前运算结果的前提下将7位设置1。直接赋值80会导致p2的值被覆盖掉,这样除了7位为1外其他位就被清零了,就无法保留低5位了。你这个是单片机输出开关用的,...
蓝桥杯单片机的P2 = (P2 & 0x1f) | 0x80声明作者并不是一个老手,可能在某些专业词语描述上有错误,或者其他,如有错误,还请指正。背景自己之前在学习蓝桥杯单片机的时候 ...
我用的也是CT107D,这个是锁存器的问题,P2 |= 0xE0是将Y7选通,那么输出就等于输入,P2 &= 0x1F是关闭锁存器,保持输出不变。还有问题可以继续讨论哈
MCS-51系列单片机并行P2口也有两种功能,对于内部有程序存贮器的单片机(如定制的8051),P2口可以作为输入口或输出口使用,直接连接输入/输出设备;也可以作为系统扩展的地址总线口,输出高8位地址A8~A15。 2018-12-27 16:32:07 单片机的P2基础小知识讲解 蓝桥杯单片机的P2 = (P2 & 0x1f) | 0x80声明作者并不是...
蓝桥杯单片机的P2 = (P2 & 0x1f) | 0x80声明作者并不是一个老手,可能在某些专业词语描述上有错误,或者其他,如有错误,还请指正。背景自己之前在学习蓝桥杯单片机的时候,在学习锁存器控制IO口点亮流水灯led的时候,就看到了视频中的P2 = (P2 & 0x1f) | 0x80,但
蓝桥杯单片机的P2 = (P2 & 0x1f) | 0x80声明作者并不是一个老手,可能在某些专业词语描述上有错误,或者其他,如有错误,还请指正。背景自己之前在学习蓝桥杯单片机的时候,在学习锁存器控制IO口点亮流水灯led的时候,就看到了视频中的P2 = (P2 & 0x1f) | 0x80,但是当时视频的老师只是说你们自己理解一下,...
0x18-0x1F 0x18 Wrap 64-bit 4 data transfers [a] These are the bottom five bits of the address of the access that cause the linefill, that is, the address of the critical word. Cache line write-back (eviction) When a valid and dirty cache line is evicted from the data cache, a ...
void main(void){ while(1) { P2 = ((P2&0x1f)|0x80); P0 = 0xff; //LED熄灭 P2 &= 0x1f; delay(); P2 = ((P2&0x1f)|0x80); P0 = 0x00; //LED点亮 P2 &= 0x1f; delay(); 展开 来自匿名用户的提问 回答 最佳答案 p2的值与16进制常量0x1f进行与运算(and)然后再和常量0x80进行或...