2020年12月14日 星期一

:D~week14

第一步 先將搖桿接在MakerUno上(或麵包板上)












(小心會很吵!!!)

移動搖桿,往上推是高音,往下推是低音

void setup() {

  pinMode(13,OUTPUT);

  pinMode(8,OUTPUT);

}

void loop() {

  int now=analogRead(A0);

  tone(8,now);

}



移動搖桿控制燈發光的數量(粗糙版)

void setup() {

  for(int i=2;i<=13;i++)

  {

    pinMode(i,OUTPUT);

  }

  Serial.begin(9600);

}

void loop() {

  int now=analogRead(A0);

  int level=now/(1024/13);

  for(int i=2;i<=13;i++)

  {

    if(i<level)digitalWrite(i,HIGH);

    else digitalWrite(i,LOW);

  }

  Serial.write(('A'+level));

  delay(100);

}
















<processing>

import processing.serial.*;

Serial myPort;

void setup()

{

  size(700,100);

  myPort=new Serial(this,"COM4",9600);

}

int level=0;

void draw()

{

  background(255);

  fill(0,150,200);

  rect(0,0,level*50,100);

  if(myPort.available()>0)

  {

     int now=myPort.read();

     level=now-'A';

  }

}









移動搖桿控制燈發光的數量(順暢版)

void setup() {

  for(int i=2;i<=13;i++)

  {

    pinMode(i,OUTPUT);

  }

  Serial.begin(9600);

}

void loop() {

  int now=analogRead(A0);

  int level=now/4;

  for(int i=2;i<=13;i++)

  {

    if(i<level/14)digitalWrite(i,HIGH);

    else digitalWrite(i,LOW);

  }

  Serial.write(level);

  delay(20);

}



<processing>

import processing.serial.*;

Serial myPort;

void setup()

{

  size(765,100);

  myPort=new Serial(this,"COM4",9600);

}

int level=0;

void draw()

{

  background(255);

  fill(0,150,200);

  rect(0,0,level*3,100);

  if(myPort.available()>0)

  {

     int now=myPort.read();

     level=now;

  }

}



Arduino和Processing比較,板子上的燈和processing做出的結果同步















沒有留言:

張貼留言