| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3294 人关注过本帖
标题:P1^0=0xfe&0x80这样运算出来的结果是什么?
只看楼主 加入收藏
yoweber
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-5-12
结帖率:0
收藏
已结贴  问题点数:20 回复次数:3 
P1^0=0xfe&0x80这样运算出来的结果是什么?
P1^0=0xfe&0x80这样运算出来的结果是什么?
2016-05-12 10:50
grmmylbs
Rank: 14Rank: 14Rank: 14Rank: 14
等 级:贵宾
威 望:54
帖 子:1409
专家分:5845
注 册:2016-2-14
收藏
得分:20 
11111110
&10000000
——————
 10000000
不过P1^0好像只能置1或置0吧?
2016-05-12 11:03
yoweber
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-5-12
收藏
得分:0 
回复 2楼 grmmylbs
#include <reg52.h>   //包括一个标准的51头函数
#define uchar unsigned char    //预定义
#define uint  unsigned int    //预定义
#define ulong unsigned long    //预定义
sbit SDA_164=P0^0;    //74HC164端口定义
sbit SCLK_164=P0^1;
sbit DIG1=P1^0;     //数码管位选端口
sbit DIG2=P1^1;     //数码管位选端口
sbit DIG3=P1^2;     //数码管位选端口
sbit DIG4=P1^3;     //数码管位选端口
sbit DIG5=P1^4;     //数码管位选端口
sbit DIG6=P1^5;     //数码管位选端口
sbit DIG7=P1^6;     //数码管位选端口
sbit DIG8=P1^7;     //数码管位选端口
uchar code LedNumber[14]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x80,0x00,0x04,0x5c};
void delay(int i,int j)     //延时函数
{
 int m;
 for(;i>0;i--)
 {
  m=j;
  for(;m>0;m--);
 }
}
void wirteByte_74164 (uchar ch)  //往74164中写一个字节
{
 uchar i;
 SCLK_164 = 0;
 for (i=0;i<8;i++)
 {
  SDA_164 = ch&0x80;//这个地方为什么可以这么定义
  SCLK_164 = 1;
  ch = ch<<1;
  delay(3,2);
  SCLK_164 = 0;
 }
}

void led_display (uchar ch)      //一位数码管显示函数
{
 wirteByte_74164 (LedNumber[ch]);
 P1 = 0x00;
 delay(300,200);
 P1 = 0xff;
}
void main ()     //主函数
{
 uchar ch;
 while (1)    //死循环
 {
  led_display (ch);  //显示数字
  ch++;     //计数
  if (ch>9)
  {
   ch=0;
  }
 }
}
2016-05-12 13:29
yoweber
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2016-5-12
收藏
得分:0 
回复 2楼 grmmylbs
请看一下,下面的程序
2016-05-12 13:30
快速回复:P1^0=0xfe&0x80这样运算出来的结果是什么?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.033976 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved