2021年1月17日 星期日

week14

 用joysick控制血條

arduino:

void setup() {
  // put your setup code here, to run once:
  for(int i=2;i<=13;i++){
    pinMode(i,OUTPUT);
  }
  Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
  int now = analogRead(A0);
  int level = now/4;
  for(int i=2;i<=13;i++){
    if(i<level) digitalWrite(i,HIGH);
    else digitalWrite(i,LOW);
  }
  Serial.write(level);
  delay(20);
}
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,50,200);
  rect(0,0,level*3,100);
  if(myPort.available()>0){
    int now = myPort.read();
    level = now;
  }
}


隨著按鈕改變英文字顯示不同:
void setup() {
  // put your setup code here, to run once:
  for(int i=2;i<=13;i++){
    pinMode(i,OUTPUT);
  }
 Serial.begin(9600);
}

void loop() {
  // put your main code here, to run repeatedly:
  int now = analogRead(A0);
  int level = now/(512/13);
  for(int i=2;i<=13;i++){
    if(i<level) digitalWrite(i,HIGH);
    else digitalWrite(i,LOW);
  }
  Serial.write('A'+level);
  delay(100);
}



控制板子燈發光數量:

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);

}


沒有留言:

張貼留言