欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2106|回復: 1
打印 上一主題 下一主題
收起左側

關于51單片機節日彩燈設計的問題

[復制鏈接]
跳轉到指定樓層
樓主
       做了1個關于節日彩燈設計的仿真,能夠實現手動和自動的模式切換,但是在彩燈的頻率上不知道如何改變,要求是彩燈的頻率可以在1HZ-10HZ之間連續可調,我的代碼和電路圖如下,希望大家可以指導一下。(頻率那部分沒有,不知道該如何寫)
    圖片在附件里(粘貼不上去)
#include<reg52.h>
sbit K1=P3^2;
sbit K2=P3^3;
typedef unsigned int ui;
typedef unsigned char uc ;
ui i=0;
ui j=0;
void delay(ui i)
{
while(i--);
}
void init()
{
P1=0X00;
P2=0X00;
P3=0X0c;
EX0=1;
EX1=1;
IT0=1;
IT1=1;
EA=1;
ET0=1;
TR0=1;
TMOD=0X01;
TH0=0X3C;
TL0=0XB0;
}
void fun0()
{
while(1)
{
  P1=0XFF;
  P2=0XFF;
  P3=0XFF;
  delay(50000);
  if(i!=0)
  break;
}
}
void fun1()
{
while(1)
{
  P1=0XFF;P2=0XFF;P3=0XFF;delay(20000);if(i!=1) break;
  P1=0X00;P2=0X00;P3=0X0c;delay(20000);if(i!=1) break;
  P1=0XFF;P2=0XFF;P3=0XFF;delay(20000);if(i!=1) break;
  P1=0X00;P2=0X00;P3=0X0c;delay(20000);if(i!=1) break;
  P1=0XFF;P2=0XFF;P3=0XFF;delay(20000);if(i!=1) break;
  P1=0X00;P2=0X00;P3=0X0c;delay(20000);if(i!=1) break;
}
}
void fun2()
{
while(1)
{
  P1=0X21;P2=0XF0;P3=0X8D;delay(35000);if(i!=2) break;
  P1=0Xd2;P2=0X05;P3=0X4e;delay(35000);if(i!=2) break;
  P1=0X0c;P2=0X0a;P3=0X3c;delay(35000);if(i!=2) break;
}
}
void fun3()
{
while(1)
{
  P1=0X01;P2=0X30;P3=0X8c;delay(35000);if(i!=3) break;
  P1=0Xc2;P2=0X00;P3=0X4c;delay(35000);if(i!=3) break;
  P1=0X04;P2=0X0a;P3=0X2c;delay(35000);if(i!=3) break;
  P1=0X08;P2=0X05;P3=0X1c;delay(35000);if(i!=3) break;
  P1=0X10;P2=0Xc0;P3=0X0e;delay(35000);if(i!=3) break;
  P1=0Xe0;P2=0Xff;P3=0X0d;delay(35000);if(i!=3) break;
}
}
void fun4()
{
while(1)
{
  P1=0X20;P2=0Xc0;P3=0X0d;delay(35000);if(i!=4) break;
  P1=0X10;P2=0X05;P3=0X0e;delay(35000);if(i!=4) break;
  P1=0X08;P2=0X0a;P3=0X1c;delay(35000);if(i!=4) break;
  P1=0Xc4;P2=0X00;P3=0X2c;delay(35000);if(i!=4) break;
  P1=0X02;P2=0X30;P3=0X4c;delay(35000);if(i!=4) break;
  P1=0Xc1;P2=0Xff;P3=0X8c;delay(35000);if(i!=4) break;
}
}
void fun5()
{
while(1)
{
  P1=0X47;P2=0X03;P3=0X0c;delay(35000);if(i!=5) break;
  P1=0X0e;P2=0X83;P3=0X0c;delay(35000);if(i!=5) break;
  P1=0X1c;P2=0Xc1;P3=0X0c;delay(35000);if(i!=5) break;
  P1=0X38;P2=0Xc4;P3=0X0c;delay(35000);if(i!=5) break;
  P1=0X30;P2=0X4c;P3=0X0d;delay(35000);if(i!=5) break;
  P1=0Xa0;P2=0X0c;P3=0X0f;delay(35000);if(i!=5) break;
  P1=0X80;P2=0X18;P3=0X1f;delay(35000);if(i!=5) break;
  P1=0X80;P2=0X30;P3=0X3e;delay(35000);if(i!=5) break;
  P1=0X40;P2=0X30;P3=0X7c;delay(35000);if(i!=5) break;
  P1=0X40;P2=0X22;P3=0Xec;delay(35000);if(i!=5) break;
  P1=0Xc1;P2=0X3a;P3=0Xcc;delay(35000);if(i!=5) break;
  P1=0X03;P2=0Xcf;P3=0X8c;delay(35000);if(i!=5) break;
}
}
void main()
{
init();
while(1)
{
  switch(i)
  {
   case(0):
   fun0();
   break;
   case(1):
   fun1();
   break;
   case(2):
   fun2();
   break;
   case(3):
   fun3();
   break;
   case(4):
   fun4();
   break;
   case(5):
   fun5();
   break;
  }
  delay(50000);
  if(i==6)
   i=0;
}
}
void init0() interrupt 0
{
delay(1000);
if(K1==0)
{
  TR0=0;
  i++;
  if(i>=6)
   i=0;
}
TH0=0X3C;
TL0=0XB0;
TR0=1;
j=0;
}
void init1() interrupt 1
{
TMOD=0X01;
TH0=0X3C;
TL0=0XB0;
j++;
if(j==100)
{
  i++;
  j=0;
}
if(i>=6)
{
  i=0;
}
}



51hei圖片20200629093347.jpg (169.35 KB, 下載次數: 64)

51hei圖片20200629093347.jpg
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:332444 發表于 2020-6-29 12:56 | 只看該作者
調節延時量就調節了速度 delay(50000);
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表