Here's a sample Arduino code for a mobile octapad using 8 piezo sensors and a 1 mega ohm resistor:
cpp// Octapad Configuration
const int numSensors = 8; // Number of piezo sensors
const int sensorPin[numSensors] = {A0, A1, A2, A3, A4, A5, A6, A7}; // Analog input pins for piezo sensors
// Global Variables
int threshold = 50; // Adjust this value to set the sensitivity of the piezo sensors
int sensorValue[numSensors]; // Array to store sensor readings
void setup() {
// Initialize Serial Communication
Serial.begin(9600);
// Set the sensor pins as inputs
for (int i = 0; i < numSensors; i++) {
pinMode(sensorPin[i], INPUT);
}
}
void loop() {
// Read sensor values
for (int i = 0; i < numSensors; i++) {
sensorValue[i] = analogRead(sensorPin[i]);
// Check if a sensor is triggered
if (sensorValue[i] > threshold) {
// Map the sensor index to a specific note or action
switch (i) {
case 0:
Serial.println("Note C");
// Add your desired action or code here
break;
case 1:
Serial.println("Note D");
// Add your desired action or code here
break;
case 2:
Serial.println("Note E");
// Add your desired action or code here
break;
case 3:
Serial.println("Note F");
// Add your desired action or code here
break;
case 4:
Serial.println("Note G");
// Add your desired action or code here
break;
case 5:
Serial.println("Note A");
// Add your desired action or code here
break;
case 6:
Serial.println("Note B");
// Add your desired action or code here
break;
case 7:
Serial.println("Note C");
// Add your desired action or code here
break;
}
}
}
// Add a small delay to avoid excessive readings
delay(10);
}
Please note that this code assumes that the piezo sensors are connected to the analog pins A0 to A7 on the Arduino board. Adjust the sensorPin
array according to your specific wiring configuration.
Remember to customize the code by adding your desired actions or functions for each triggered note. The provided code only prints the note name to the serial monitor.
Feel free to modify and expand upon this code to suit your project's requirements and add additional functionality.
Good luck with your Mobile Octapad project!
0 Comments