极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12899|回复: 4

新手求助,不太懂代码顺序

[复制链接]
发表于 2014-10-9 22:41:41 | 显示全部楼层 |阅读模式
原是想要达到用touch sensor控制音乐速度,同时呼吸灯自己闪烁,但是很运行的很不好,根本无法控制


int tune[] =
{
  NOTE_D3,NOTE_D3,NOTE_D4,NOTE_D5,NOTE_D5,NOTE_D4,NOTE_D3,NOTE_D2,
  };

float duration[]=
{
  1,1,1,1,1,1,1,1,1,1,1,1,2,0.5,1
};
int length;
int tonePin=11;
int touchPin=4;
int currentState=0;
int lastState=0;
int Melanie=400;

void setup()
{
  pinMode(tonePin,OUTPUT);
  pinMode(3,OUTPUT);
  pinMode(5,OUTPUT);
  pinMode(6,OUTPUT);
  pinMode(touchPin,INPUT);
  
  length = sizeof(tune)/sizeof(tune[0]);
}

void loop()
{
  
    for (int a=0; a<=255;a++)            
  {
    analogWrite(6,a);
    analogWrite(3,a);
    analogWrite(5,a);
    delay(5);                                    
  }
    for (int a=255; a>=0;a--)         
  {
    analogWrite(6,a);
    analogWrite(3,a);
    analogWrite(5,a);
    delay(5);                        
  }     
currentState=digitalRead(touchPin);
if(currentState==1&&currentState!=lastState)
{
if(Melanie>0) Melanie-=100;
else Melanie=400;
}
for(int x=0;x<length;x++){
    tone(tonePin,tune[x]);
    delay(Melanie*duration[x]);
    noTone(tonePin);
  
  } lastState=currentState ;
   

  麻烦了,谢谢

  delay(5000);
  
}
回复

使用道具 举报

 楼主| 发表于 2014-10-9 22:42:32 | 显示全部楼层
拜托各位了
回复 支持 反对

使用道具 举报

发表于 2014-10-10 08:36:48 | 显示全部楼层
熟悉C语言+程序架构=成功!加油,努力吧!
回复 支持 反对

使用道具 举报

发表于 2014-10-10 16:04:42 | 显示全部楼层
这段干什么用的?
for (int a=0; a<=255;a++)            
   {
     analogWrite(6,a);
     analogWrite(3,a);
     analogWrite(5,a);
     delay(5);                                    
   }
     for (int a=255; a>=0;a--)         
   {
     analogWrite(6,a);
     analogWrite(3,a);
     analogWrite(5,a);
     delay(5);                        
   }  
和 delay(5000);
会降低触摸的感觉的,是否可以用其他方法,或可以提出原来这么做的理由.
回复 支持 反对

使用道具 举报

发表于 2014-10-10 18:42:12 | 显示全部楼层
還沒仔細看,不過先抓到一堆delay,要注意在delay的時間內是不會有動作的
學一下中斷跟執行緒
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|联系我们|极客工坊

GMT+8, 2026-6-15 15:20 , Processed in 0.058533 second(s), 21 queries .

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表