Stap 7: Het toevoegen van een opname knop
U moet:
- Knop
- 2 * male - Male jumperpinnen
Wij willen in plaats van record voor elke individuele microfoon module, een knop om een lijst van alle.
De knop is ingedrukt en vervolgens een specifieke lade wordt geraakt. Dit met start de opname voor die specifieke lade. Wanneer u klaar bent loslaat u de knop. De volgende keer dat je dat lade aanraken hoort u uw nieuw opgenomen bericht.
- Bevestig de opname pinnen op Arduino pinnen A0, A1, A2. Dit kan digitaal door het benoemen van hen pinnen 14,15 en 16.
- Zet de knop in het breadboard
- Een van de benen te koppelen op grond
- Het andere been van de knop koppelen aan op pin 2
Zorg ervoor dat de opname en spelen beide overeenkomen met dezelfde dezelfde opname boord voor elke lade.
#include <CapacitiveSensor.h> int button = 2; int play1 = 12; int rec1 = 14; int play2 = 11; int rec2 = 15; int play3 = 10; int rec3 = 16; CapacitiveSensor sensor1 = CapacitiveSensor(7,6); CapacitiveSensor sensor2 = CapacitiveSensor(7,5); CapacitiveSensor sensor3 = CapacitiveSensor(7,4); int touch = 75; void setup() { pinMode(play1, OUTPUT); pinMode(play2, OUTPUT); pinMode(play3, OUTPUT); pinMode(rec1, OUTPUT); pinMode(rec2, OUTPUT); pinMode(rec3, OUTPUT); pinMode(button, INPUT); // enable the internal pull up resistor digitalWrite(button, HIGH); Serial.begin(9600); } void loop() { long total1 = sensor1.capacitiveSensorRaw(3); long total2 = sensor2.capacitiveSensorRaw(3); long total3 = sensor3.capacitiveSensorRaw(3); int buttonReading = digitalRead(button); if(buttonReading == 1){ if(total1 > touch) { playMessage(play1); } else if(total2 > touch) { playMessage(play2); } else if(total3 > touch) { playMessage(play3); } }else { if(total1 > touch) { recordMessage(rec1); } else if(total2 > touch) { recordMessage(rec2); } else if(total3 > touch) { recordMessage(rec3); } } } void playMessage(int play){ digitalWrite(play, 1); digitalWrite(play, 0); } void recordMessage(int number){ int buttonNumber = digitalRead(button); while(buttonNumber == 0) { buttonNumber = digitalRead(button); digitalWrite(number, 1); } digitalWrite(number , 0); }