一株狗尾巴草吧 关注:33贴子:2,877

【一株狗尾巴草】#include<reg52.h>

只看楼主收藏回复

#include<reg52.h>
#define uint unsigned int
uint i,j;
sbit a=P1^0;
void main ()
{ while(1)
{ a=0; for(i=1000;i>0;i--)
for(j=110;j>0;j--);
a=1;
for(i=1000;i>0;i--)
for(j=110;j>0;j--);
}
}
数码管1间隔1s左右点亮一次


1楼2013-09-04 19:57回复
    #include<reg52.h>
    #define uint unsigned int
    uint i,j;
    void main ()
    { while(1)
    { P1=0xaa;
    for(i=1000;i>0;i--)
    for(j=110;j>0;j--);
    P1=0x55;
    for(i=1000;i>0;i--)
    for(j=110;j>0;j--);
    }
    }
    1、3、5、7数码管先亮一秒左右而后熄灭2、4、6、8点亮,循环。


    2楼2013-09-04 20:07
    收起回复
      2025-05-19 07:49:32
      广告
      #include<reg52.h>
      #define uint unsigned int
      sbit a=P1^0 ;
      void delaying();
      void main ()
      { while(1)
      { a=0;
      delaying();
      a=1;
      delaying();
      }
      }
      void delaying()
      { uint i,j;
      for(i=1000;i>0;i--)
      for(j=110;j>0;j--);
      }
      引入子函数体 让第一个二极管间隔500ms左右点亮一次


      3楼2013-09-04 20:19
      回复
        #include<reg52.h>
        #define uint unsigned int
        sbit a=P1^0 ;
        void delayingms(uint);
        void main ()
        { while(1)
        { a=0;
        delayingms(200);
        a=1;
        delayingms(800);
        }
        }
        void delayingms(uint xms)
        { uint i,j;
        for(i=1000;i>0;i--)
        for(j=110;j>0;j--);
        }
        第一个二极管亮200ms 灭800ms 循环!!!


        4楼2013-09-04 20:30
        回复
          #include<reg52.h>
          #define uint unsigned int
          sbit a=P1^0 ;
          sbit b=P1^1 ;
          sbit c=P1^2 ;
          sbit d=P1^3 ;
          sbit e=P1^4 ;
          sbit f=P1^5 ;
          sbit g=P1^6 ;
          sbit h=P1^7 ;
          uint i,j;
          void delay1();
          void main ()
          { while(1)
          { a=0;
          delay1();
          a=1;
          delay1();
          b=0;
          delay1();
          b=1;
          delay1();
          c=0;
          delay1();
          c=1;
          delay1();
          d=0;
          delay1();
          d=1;
          delay1();
          e=0;
          delay1();
          e=1;
          delay1();
          f=0;
          delay1();
          f=1;
          delay1();
          g=0;
          delay1();
          g=1;
          delay1();
          h=0;
          delay1();
          h=1;
          delay1();
          }
          }
          void delay1()
          { uint i,j;
          for(i=1000;i>0;i--)
          for(j=110;j>0;j--);
          }
          流水灯


          5楼2013-09-05 17:40
          回复
            #include<reg52.h>
            #define uchar unsigned char
            #define uint unsigned int
            sbit dula=P2^6;
            sbit wela=P2^7;
            uchar num;
            uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0
            x39,0x5e,0x79,0x71};
            void delay (uint x);
            void main()
            { wela=1;
            P0=0xfe;
            wela=0;
            while(1)
            {
            for(num=0;num<10;num++)
            { dula=1;
            P0=table[num];
            dula=0;
            delay(1000);
            }
            }
            }
            void delay(uint x)
            { uint i,j;
            for(i=x;i>0;i--)
            for(j=100;j>0;j--);
            }


            6楼2013-09-08 17:34
            收起回复
              #include<reg52.h>
              #include<intrins.h>
              #define uint unsigned int
              #define uchar unsigned char
              uchar a ,num;
              uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x79,0x5e,0x39,0x7c,0x77,0x6f,0x7f,0x07,0x7d,0x6d,0x66,0x4f,0x5b,0x06,0x3f};
              sbit beep=P2^3;
              sbit dula=P2^6;
              sbit wela=P2^7;
              void delay(uint z);
              void main()
              { wela=1;
              P0=0xfe;
              wela=0;
              for(num=0;num<31;num++)
              { dula=1;
              P0=table[num];
              dula=0;
              delay(1000);
              }
              a=0xfe;
              while(1)
              {P1=a;
              beep=0;
              delay(500);
              beep=1;
              P1=0xff;
              delay(500);
              a=_crol_(a,1);
              }
              }
              void delay(uint z)
              { uint x,y;
              for(x=z;x>0;x--)
              for(y=110;y>0;y--);
              }
              数码管显示0~F再由F~0,之后流水灯点亮,亮的同时启动蜂鸣器。I


              7楼2013-09-17 18:29
              回复
                #include<reg52.h>
                #define uint unsigned int
                #define uchar unsigned char
                sbit dula=P2^6;
                sbit wela=P2^7;
                uchar code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71};
                void delay(uint);
                void main()
                {dula=1;
                P0=table[6];
                dula=0;
                P0=0xff;
                wela=1;
                P0=0xfe;
                dula=0;
                delay(1) ;
                dula=1;
                P0=table[5];
                dula=0;
                P0=0xff;
                wela=1;
                P0=0xfd;
                dula=0;
                delay(1) ;
                dula=1;
                P0=table[4];
                dula=0;
                P0=0xff;
                wela=1;
                P0=0xfb;
                dula=0;
                delay(1) ;
                dula=1;
                P0=table[3];
                dula=0;
                P0=0xff;
                wela=1;
                P0=0xf7;
                dula=0;
                delay(1) ;
                dula=1;
                P0=table[2];
                dula=0;
                P0=0xff;
                wela=1;
                P0=0xef;
                dula=0;
                delay(1) ;
                dula=1;
                P0=table[1];
                dula=0;
                P0=0xff;
                wela=1;
                P0=0xdf;
                dula=0;
                delay(1) ;
                }
                void delay(uint z)
                {uint x,y;
                for(x=z;x>0;x--)
                for(y=110;y>0;y--);
                }
                数码管动态显示654321I


                8楼2013-09-17 23:14
                收起回复
                  2025-05-19 07:43:33
                  广告



                  9楼2013-09-25 23:49
                  回复



                    11楼2013-09-25 23:51
                    回复
                      #include<reg52.h>
                      #define uchar unsigned char
                      #define uint unsigned int
                      uchar num;
                      uint i,j;
                      sbit rs=P3^5;
                      sbit wr=P3^6;
                      sbit lcden=P3^4;
                      sbit dula=P2^6;
                      sbit wela=P2^7;
                      uchar code table1[]="I LOVE YOU";
                      uchar code table2[]="STEFANIE SUN";
                      void delay(uint x)
                      {for(i=x;i>0;i--)
                      {
                      for(j=120;j>0;j--);
                      }
                      }
                      void write_com(uchar com)
                      {rs=0;
                      wr=0;
                      lcden=0;
                      P0=com;
                      lcden=1;
                      delay(5);
                      lcden=0;
                      }
                      void write_data(uchar dat)
                      {rs=1;
                      wr=0;
                      lcden=0;
                      P0=dat;
                      lcden=1;
                      delay(5);
                      lcden=0;
                      }
                      void init()
                      {write_com(0x38);
                      write_com(0x0e);
                      write_com(0x06);
                      write_com(0x01);
                      write_com(0x80+0x10);
                      }
                      void main()
                      {P0=0;
                      dula=0;
                      wela=0;
                      init();
                      for(num=0;num<10;num++)
                      {
                      write_data(table1[num]);
                      delay(20);
                      }
                      write_com(0x80+0x53);
                      for(num=0;num<12;num++)
                      {
                      write_data(table2[num]);
                      delay(20);
                      }
                      for(num=0;num<16;num++)
                      {
                      write_com(0x18);
                      delay(200);
                      }
                      while(1);
                      }
                      从左至右流动显示“I LOVE YOU STEFANIE SUN”直至稳定。


                      12楼2013-09-26 16:15
                      回复
                        #include<reg52.h>
                        #define uchar unsigned char
                        #define uint unsigned int
                        uint t;
                        sbit lcd=P1^0;
                        void main()
                        { t=0; //赋初值t为0
                        ET0=1; //定时器0中断允许寄存器IE开关打开
                        TMOD=0x01; //定时器0工作方式为1
                        TH0=(65536-50000)/256; //赋定时器高八位初值
                        TL0=(65536-50000)%256; //赋定时器第八位初值
                        TR0=1; //启动定时器0
                        EA=1;
                        lcd=0;
                        while(1)
                        { if(t==20)
                        {
                        t=0;
                        lcd=~lcd;
                        }
                        }
                        }
                        void timer0() interrupt 1
                        { TH0=(65536-50000)/256;
                        TL0=(65536-50000)%256;
                        t++;
                        }


                        13楼2013-09-27 20:08
                        收起回复
                          #include<reg52.h>
                          #define uchar unsigned char
                          #define uint unsigned int
                          uint t;
                          uchar a;
                          void main()
                          { EA=1;
                          EX0=1;
                          IT0=1;
                          a=0xaa;
                          while(1)
                          {
                          P1=a;
                          }
                          }
                          void inter0() interrupt 0
                          {
                          a=0x55;
                          }


                          14楼2013-09-27 20:59
                          回复
                            ORG 0000H;
                            SJMP START;
                            ORG 0030H;
                            START: MOV SP,#60H;
                            MOV P1,#0FFH;
                            MAIN: CLR P1.0;
                            CALL DELAY;
                            SETB P1.0;
                            CALL DELAY;
                            SJMP MAIN;
                            DELAY: MOV R0, #250;
                            D2: MOV R1,#250;
                            D1: DJNZ R1,D1;
                            DJNZ R0,D2;
                            RET
                            END
                            点亮二极管 延时 熄灭 延时 点亮。。。。


                            15楼2013-09-28 20:53
                            回复
                              2025-05-19 07:37:33
                              广告


                              来自iPhone客户端17楼2013-10-07 18:06
                              回复