求51单片机的P2口按键8个,P0口led8个,对应控制它的开或关,谢谢。要C语言?单片机编程设计要求如下:在的P0口接有发光二极管作为指示灯,P1.0~P1.3接有4个按键?

2024-04-19 21:21:35 文章来源 :网络 围观 : 评论

  求51单片机的P2口按键8个,P0口led8个,对应控制它的开或关,谢谢。要C语言?

  sbit P2^0 =key0;

  sbit P2^1 =key1;

  sbit P2^2 =key2;

  sbit P2^3 =key3;

  sbit P2^4 =key4;

  sbit P2^5 =key5;

  sbit P2^6 =key6;

  sbit P2^7 =key7;

  sbit P0^0 =led0;

  sbit P0^1 =led1;

  sbit P0^2 =led2;

  sbit P0^3 =led3;

  sbit P0^4 =led4;

  sbit P0^5 =led5;

  sbit P0^6 =led6;

  sbit P0^7 =led7;

  假设按键按下为低电平,点亮LED用高电平,则示意代码如下

  if(key0 == 0)

  led0 = 1;

  if(key1 == 0)

  led1 = 1;

  if(key2 == 0)

  led2 = 1;

  if(key3 == 0)

  led3 = 1;

  ...........

  ............

  if(key7 == 0)

  led7 = 1;

  单片机编程设计要求如下:在单片机的P0口接有8个发光二极管作为指示灯,P1.0~P1.3接有4个按键?

  #include<reg51.h>

  #define uchar unsigned char

  sbit key1=P1^0;

  sbit key2=P1^1;

  sbit key3=P1^2;

  sbit key4=P1^3;

  uchar LED=0xfe;

  void delay(uchar a)

  {

  uchar i,j;

  for(i=0;i<a;i++)

  for(j=0;j<120;j++);

  }

  main()

  {

  P0=0xff;

  while(1)

  {

  while(key1==0){P0=0x00;delay(200);P0=0xff;delay(200)}

  while(key2==0){P0=0xff;}

  while(key3==0){P0=LED;LED=(LED<<1)

  0x01;if(LED==0xff)LED=0xfe;delay(200);}

  while(key4==0){P0=LED;LED=(LED>>1)

  0x80;if(LED==0xff)LED=0x7f;delay(200);}

  }

  }

  

求51单片机的P2口按键8个,P0口led8个,对应控制它的开或关,谢谢。要C语言?单片机编程设计要求如下:在的P0口接有发光二极管作为指示灯,P1.0~P1.3接有4个按键?

  

求51单片机的P2口按键8个,P0口led8个,对应控制它的开或关,谢谢。要C语言?单片机编程设计要求如下:在的P0口接有发光二极管作为指示灯,P1.0~P1.3接有4个按键?

  

求51单片机的P2口按键8个,P0口led8个,对应控制它的开或关,谢谢。要C语言?单片机编程设计要求如下:在的P0口接有发光二极管作为指示灯,P1.0~P1.3接有4个按键?

相关文章

留言与评论(共有 0 条评论)
   
验证码:
推荐文章