2020年12月14日 星期一

week14

Week14


連接搖桿產生不同的頻率


 void setup() {
  pinMode(13, OUTPUT);
  pinMode(8, OUTPUT);
}

void loop() {
  int now = analogRead(A0);
  tone(8,now); 8
}

連接搖桿在不同位置有多少燈



 void setup() {
 for(int i=2; i<=13; i++){
  pinMode(i, OUTPUT);
 }
}

void loop() {
  int now = analogRead(A0);
  int level = now/(523/13);
  for(int i=2; i<=13; i++){
    if(i<level) digitalWrite(i,HIGH);
    else digitalWrite(i,LOW);
    }
}

連接搖桿產生字母





 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, "COM3", 9600);
}
int level = 0;
void draw(){
  background(225);
  fill(255,0,0);
  rect(0,0, level*50, 100);
  if(myPort.available()>0){
    int now = myPort.read();
    if(now=='A') level=0;
    if(now=='B') level=1;
    if(now=='C') level=2;
    if(now=='D') level=3;
    if(now=='E') level=4;
    if(now=='F') level=5;
    if(now=='G') level=6;
    if(now=='H') level=7;
    if(now=='I') level=8;
    if(now=='J') level=9;
  }



沒有留言:

張貼留言