大哥帮我教下,单片机C语言怎么能对P2口的1,2,3,4,5位进行清零或者置一,而不影响其他位的数字??
如果单独对单片机的P2^1赋值,会导致程序出错吗?我对几个数码管编程,其中片选信号和位选信号都是单独对位赋值的,结果放在硬件上实施起来的话,有几个数码管不能正常显示,后来听别人说要直接对口操作,也就是直接对P2赋值。只对1,2,3,4,5位进行操作,其他位的数字不能动,应该怎么写程序?大哥帮我教下,单片机C语言怎么能对P2口的1,2,3,4,5位进行清零或者置一,而不影响其他位的数字??
如果单独对单片机的P2^1赋值,会导致程序出错吗?我对几个数码管编程,其中片选信号和位选信号都是单独对位赋值的,结果放在硬件上实施起来的话,有几个数码管不能正常显示,后来听别人说要直接对口操作,也就是直接对P2赋值。只对1,2,3,4,5位进行操作,其他位的数字不能动,应该怎么写程序?2024-09-06 07:41:21
这种方法貌似很简便,是什么原理啊?我菜鸟没太看明白??求解释?谢谢
这个其实一点都不难的,原理就是:在二进制位中任何位与1相或,都是1;任何位与0相或都是不变的(因为0和0相或还是0,1和0相或还是1)所以要对某一位置1 的话,只要把那一位与1相或就行了,而其他不想改变的位与0相或就可以保持不变。其他的以此类推.
这个其实一点都不难的,原理就是:在二进制位中任何位与1相或,都是1;任何位与0相或都是不变的(因为0和0相或还是0,1和0相或还是1)所以要对某一位置1 的话,只要把那一位与1相或就行了,而其他不想改变的位与0相或就可以保持不变。其他的以此类推.
2024-09-06 06:52:13
2024-09-06 06:50:42
2024-09-06 15:04:50