2020年11月30日 星期一

wendy_week12

 互動技術概論

week12



(一)環境布置&介紹

(二)Arduino與Processing進行連結


(一)環境布置&介紹

*安裝驅動程式

*確定USB連上



(二)Arduino與Processing進行連結

Processing程式設定:

🔅import模組:

import processing.serial.*; 

🔅設定連接COM5型號的USB接口:

void setup(){
  size(200,200);
  myPort = new Serial(this, "COM5",9600);

}

🔅按鍵與滑鼠設定:

void draw(){

}
void keyPressed(){
  if(key=='1') myPort.write("1");
  if(key=='2') myPort.write("2");
  if(key=='3') myPort.write("3");
  if(key=='4') myPort.write("4");
  if(key=='5') myPort.write("5");
  if(key=='6') myPort.write("6");
  if(key=='7') myPort.write("7");
}
void keyReleased(){
  if(key=='0') myPort.write("0");
}
void mousePressed(){
  myPort.write("1");
}

Arduino程式設定:

🔅音階設定:

#define Do 523
#define Re 587
#define Mi 659
#define Fa 698
#define So 784
#define La 880
#define Si 988

🔅主機板按鈕&蜂鳴器設定

void setup() {
  Serial.begin(9600);
  pinMode(2, INPUT_PULLUP);
  pinMode(8, OUTPUT);
}

🔅主機板按鈕&蜂鳴器設定

void setup() {
  Serial.begin(9600);
  pinMode(2, INPUT_PULLUP);
  pinMode(8, OUTPUT);
  /*tone(8, Do);//不給長度,一直發音
  delay(100);//等待1秒
  tone(8, Mi);//換聲音
  delay(100);
  tone(8, So);
  delay(100);
  noTone(8);//靜音*/
}

void loop() {
  // put your main code here, to run repeatedly:
  while(Serial.available() > 0){
    int now = Serial.read();
    if( now=='1' )tone(8, Do ,100);
    if( now=='2' )tone(8, Re ,100);
    if( now=='3' )tone(8, Mi ,100);
    if( now=='4' )tone(8, Fa ,100);
    if( now=='5' )tone(8, So ,100);
    if( now=='6' )tone(8, La ,100);
    if( now=='7' )tone(8, Si ,100);
    if( now=='0' )noTone(8);
  }
}









沒有留言:

張貼留言