永发信息网

用单片机控制流水灯与喇叭,则流水灯亮喇叭响.流水灯灭喇叭静,以此循环

答案:4  悬赏:0  手机版
解决时间 2021-08-15 18:14
  • 提问者网友:练爱
  • 2021-08-15 02:47

#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit spk=P1^0;
uchar temp;
void delay(uint);
void main ()
{   uint i;
 temp=0xfe;
  P0=temp;
 while(1)
    {  
          temp=_crol_(temp,1);
    for(i=0;i<=200;i++)
            {
                delay(29);     
                spk=!spk;
            }
          P0=0xff;
       delay(6000);
       P0=temp;
 }   
}

void delay(uint z)
{
   uint n,y;
   for(n=0;n<z;n++)
    for(y=0;y<20;y++);
}
这个程序真好相反啊!流水灯亮喇叭静.流水灯灭喇叭响,为什么啊?????

最佳答案
  • 五星知识达人网友:不甚了了
  • 2021-08-15 04:04
看着挺对 左移的时候进行喇叭的IO切换 可你的IO切换到最后一定是喇叭灭吗 这个没看到 你也没初始
全部回答
  • 1楼网友:青灯有味
  • 2021-08-15 06:06
大量供应全彩流水灯。
  • 2楼网友:往事隔山水
  • 2021-08-15 05:30
很明显SPK没有初始化吗
  • 3楼网友:轻熟杀无赦
  • 2021-08-15 04:19

#include<reg52.h>
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
sbit spk=P1^0;
uchar temp;
void delay(uint);
void main ()
{   uint i;
 temp=0xfe;
  P0=temp;

  P1=0xFF;
 while(1)
    {  
    temp=_crol_(temp,1);
    for(i=0;i<=200;i++)
    {
    delay(29);    
    spk=!spk;
    }
    P0=0xff;
    delay(6000);
    P0=temp;
 }   
}

void delay(uint z)
{
   uint n,y;
   for(n=0;n<z;n++)
    for(y=0;y<20;y++);
}

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯