微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 嵌入式设计讨论 > MCU和单片机设计讨论 > 12个LED的流水灯

12个LED的流水灯

时间:10-02 整理:3721RD 点击:
用P0和P1各控制6个LED灯,这个是向中间位移亮的程序,P0向左亮同时P1向右亮,请问错在哪里了?
#include <reg52.h>
#define uchar unsigned char
sbit P0_0=P0^0;
sbit P0_1=P0^1;
sbit P0_2=P0^2;
sbit P0_3=P0^3;
sbit P0_4=P0^4;
sbit P0_5=P0^5;
sbit P1_0=P1^0;
sbit P1_1=P1^1;
sbit P1_2=P1^2;
sbit P1_3=P1^3;
sbit P1_4=P1^4;
sbit P1_5=P1^5;
void delay1s()
{
uchar i;
for(i=0;i<20;i++)
{
   TH0=(65536-50000)/256;
   TL0=(65536-50000)%256;
   TR0=1;
   while(!TF0);
   TF0=0;
}
}
void delayxs(uchar xt)
{
  uchar t;
  for(t=0;t<xt;t++)
  delay1s();
}
void main()
{
  TMOD=0x01;
  while(1)
{       
uchar i,j,a,b;
        a=0xfe;
        b=0xdf;
for(j=0;j<3;j++)
{
  for(i=0;i<6;i++)
  {
   P0=a;
   P1=b;
   a<<=1;
   b>>=1;
  delayxs(1);
   if(a==0xdf)
   P0=0xfe;
   if(b==0xfe)
   P1=0xdf;
  }
}  
}
}
#include <reg52.h>
#define uchar unsigned char
sbit P0_0=P0^0;
sbit P0_1=P0^1;
sbit P0_2=P0^2;
sbit P0_3=P0^3;
sbit P0_4=P0^4;
sbit P0_5=P0^5;
sbit P1_0=P1^0;
sbit P1_1=P1^1;
sbit P1_2=P1^2;
sbit P1_3=P1^3;
sbit P1_4=P1^4;
sbit P1_5=P1^5;
void delay1s()
{
uchar i;
for(i=0;i<20;i++)
{
   TH0=(65536-50000)/256;
   TL0=(65536-50000)%256;
   TR0=1;
   while(!TF0);
   TF0=0;
}
}
void delayxs(uchar xt)
{
  uchar t;
  for(t=0;t<xt;t++)
  delay1s();
}
void main()
{
  TMOD=0x01;
  while(1)
{       
uchar i,j,a,b;
        a=0xfe;
        b=0xdf;
for(j=0;j<3;j++)
{
  for(i=0;i<6;i++)
  {
   P0=a;
   P1=b;
   a<<=1;
   b>>=1;
  delayxs(1);
   if(a==0xdf)
   P0=0xfe;
   if(b==0xfe)
   P1=0xdf;
  }
}  
}
}



kkkkkkkkkkkkkkkkkkkkkkkkkkkkkk

                                #include <reg52.h>
                                #define uchar unsigned char
                                sbit P0_0=P0^0;
                                sbit P0_1=P0^1;
                                sbit P0_2=P0^2;
                                sbit P0_3=P0^3;
                                sbit P0_4=P0^4;
                                sbit P0_5=P0^5;
                                sbit P1_0=P1^0;
                                sbit P1_1=P1^1;
                                sbit P1_2=P1^2;
                                sbit P1_3=P1^3;
                                sbit P1_4=P1^4;
                                sbit P1_5=P1^5;
                                void delay1s()
                                {
                                 uchar i;
                                 for(i=0;i<20;i++)
                                 {
                                   TH0=(65536-50000)/256;
                                   TL0=(65536-50000)%256;
                                   TR0=1;
                                   while(!TF0);
                                   TF0=0;
                                 }
                                }
                                void delayxs(uchar xt)
                                {
                                  uchar t;
                                  for(t=0;t<xt;t++)
                                  delay1s();
                                }
                                void main()
                                {
                                  TMOD=0x01;
                                 
                                  while(1)
                                {       
                                 uchar i,j,a,b;
                                        a=0xfe;
                                        b=0xdf;
                                for(j=0;j<3;j++)
                                {
                                  for(i=0;i<6;i++)
                                  {
                                   P0=a;
                                   P1=b;
                                   a<<=1;
                                   b>>=1;
                                  delayxs(1);
                                   if(a==0xdf)
                                   P0=0xfe;
                                   if(b==0xfe)
                                   P1=0xdf;
                                  }
                                }  
                               
                                }
                                }
                               
                               
                               

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top