花样流水灯设计

2019-07-16 17:52发布

花样流水灯设计要  求:①编写一单片机程序实现8盏LED花样流水灯效果;②按下按键1实现LED1--->LED8依次点亮效果; ③按下按键2实现LED8--->LED1依次点亮效果;④按下按键3实现奇数的灯与偶数的灯交替闪烁的效果,并通过数码管显示闪烁的次数。⑤其他功能及创新。尽可能
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
14条回答
51mcuxuexi
2019-07-17 08:38
#include<reg52.h>
sbit key1=P3^0;
sbit key2=P3^1;
sbit key3=P3^2;
sbit key4=P3^3;           //用于跳出循环语句

/******延时函数自定义*******/

const int value=1000;        //延时时间
int Sum=0;                                //奇偶闪烁计数
void LedShine(void)
{
        char RedP3,i;
        RedP3=P3&0x0f;
        switch(RedP3)
        {
          case 0x0e:                                          //key1
                             while(1)
                           {
                                     P1=~(0x01<<i);
                                  delay(value);
                                  if(i++>8)
                                          i=0;
                                  if(!key4)
                                          break;
                           }
                           break;
          case 0x0d:
                           while(1)
                           {
                                     P1=~(0x80<<i);
                                  delay(value);
                                  if(i++>8)
                                          i=0;
                                  if(!key4)
                                          break;
                           }
                           break;
         case 0x0b:
                           P1=0XAA;
                           while(1)
                          {
                                          P1=~P1;
                                        delay(value);
                                        Sum++;
                                        if(!key4)
                                           break;
                          }
                          break;
         
        }
}

void main(void)
{
        P3|=0x0f;                          //将P3低四位拉高
        while(1)
        {
                LedShine();
        }         
}

一周热门 更多>