51单片机的初了解

Posted zzz2333

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了51单片机的初了解相关的知识,希望对你有一定的参考价值。

C语言循环语句学习

1、while循环(条件初始化)

while(条件)

{

        //循环体,若干条代码

      //循环体中包含条件增量

}

 

2、for循环

for(循环初始化;循环条件;循环增量)

{

           //循环体

}

for(i=100;i>0;i--)

{

         for(j=100;j>0;j--)

    {

      ;

    }

}

 

3、do while循环

 

流水灯效果实现

流水灯本质:不同的亮的状态相互间隔一定时间。

0x80(10000000)

0x40(01000000)

0x20(00100000)

0x10(00010000)

0x08(00001000)

0x04(00000100)

0x02(00000010)

0x01(00000001)

延时时间越长流水灯流的越慢,越短就流水越快;

8个状态执行一次,完成后从头开始,即循环。

 

编程实现流水灯

while(1)               //1永远为真,死循环

{

}

缺陷:功能实现,写的太笨

改进思路:通过变量运算来得到合适的端口输出值

1)定义变量unsigned char a,初值等于0x80(10000000)

2)8个状态,即a依次右移0-7位

 

C语言移位运算

C语言移位运算符,>>可以右移,<<可以左移。(无符号数移位,空出的位用0补)

例:12345678

>>1     01234567                      <<1      23456780

>>2     00123456                      <<2      34567800

 

void main(void)

{

      unsigned   char  i=0;

   unsigned   char  d=0x80;

   while(1)

   {

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

      {

                  P0=(d>>i);              //d在正在操作中一直不变

         delay();

             }

      }

}

void main(void)

{

      unsigned   char  i=0;

   while(1)

   {

            unsigned   char  d=0x80;

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

      {

          d=d>>1;             //在每次循环时d会变化

                  P0=d;

         delay();

             }

       }

}

以上是关于51单片机的初了解的主要内容,如果未能解决你的问题,请参考以下文章

51单片机的初了解

51单片机的初了解

51单片机的初了解

51单片机的初了解(10)

51单片机的初了解(12)

单片机的初了解