/* Getting serial port information in the form of characters G, A, B, or C, and playing that pitch on a piezo disk. */ int val = 0; int val1 = 0; int led = 13; int piezo1 = 3; int pulso = 0; // the setup routine runs once when you press reset: void setup() { // initialize serial communication at 9600 bits per second: Serial.begin(9600); pinMode(led, OUTPUT); pinMode(piezo1, OUTPUT); } void loop() { val = Serial.available(); if (val > 0) { //// read x value of abs val1 = Serial.read(); if (val1 == 'G') { pulso = 2551; //pulso == amount of time (microseconds) in half a Period of the waveform. } if (val1 == 'A') { pulso = 2272; } if (val1 == 'B') { pulso = 2024; } if (val1 == 'C') { pulso = 1915; } if (val1 == 'Z') { pulso = 0; } } digitalWrite(piezo1, HIGH); delayMicroseconds(pulso); digitalWrite(piezo1, LOW); delayMicroseconds(pulso); }