下載驅動程式
https://drive.google.com/drive/folders/14D0rOGH9dPRZlPg00534giOeToXpGGex?fbclid=IwAR1BM8SbMUYng5yq6_EwVHZ3TFImTYs0_VN-qVnzHUI-vA4gGecCYRqryLw
上傳新的Arduino 蓋掉上禮拜的程式碼 (按鈕發聲音
void setup() {
pinMode(8,OUTPUT);
pinMode(2,INPUT_PULLUP);
}
void loop() {
if(digitalRead(2)==LOW) tone(8,520,1000);
else noTone(8);
}
加上Do Re Mi 使其可發出聲音
int Do=523;
int Re=587;
int Mi=659;
void setup() {
pinMode(8,OUTPUT);
pinMode(2,INPUT_PULLUP);
}
void loop() {
if(digitalRead(2)==LOW) tone(8,Mi,1000);
else noTone(8);
}
單鍵發出聲音
int Do=523;
int Re=587;
int Mi=659;
int Fa=698;
int So=784;
int song[]={So,Mi,Mi,Fa,Re,Re,Do,Re,Mi,Fa,So,So,So};
int now=0;
bool up=true;
void setup() {
pinMode(8,OUTPUT);
pinMode(2,INPUT_PULLUP);
}
void loop() {
if(up&&digitalRead(2)==LOW) {
tone(8,song[now],1000);
up=false;
now=(now+1)%13; //避免陣列超過範圍
}
else {
up=true;
}
delay(100);
}
接線輸出
void setup() {
for(int i=2;i<=13;i++){
pinMode(i,INPUT_PULLUP);
}
pinMode(8,OUTPUT);
}
void loop() {
if(digitalRead(2)==LOW) tone(8,523,200);
if(digitalRead(3)==LOW) tone(8,587,200);
if(digitalRead(4)==LOW) tone(8,659,200);
if(digitalRead(5)==LOW) tone(8,698,200);
if(digitalRead(6)==LOW) tone(8,784,200);
if(digitalRead(7)==LOW) tone(8,880,200);
//8要避開,因為他要OUTPUT 用Buzzer
if(digitalRead(9)==LOW) tone(8,988,200);
if(digitalRead(10)==LOW) tone(8,1047,200);
}
使用processing語言傳送網路資料
client端程式碼
import processing.net.*;
Client client;
void setup(){
size(200,200);
client=new Client(this, "127.0.0.1",7777);
}
void draw(){
}
void mousePressed(){
client.write("Hello");
}
server端程式碼
import processing.net.*;
Server server;
void setup(){
size(300,300);
server = new Server(this,7777);
}
void draw(){
Client thisClient=server.available();
while(thisClient !=null){
String now =thisClient.readString();
if(now!=null) println("Server received: "+now);
}
}


沒有留言:
張貼留言