Czy możesz sobie wyobrazić, że mógłbyś nawet grać na pianinie na owocu? Seeeduino XIAO może ci pomóc! Proste kroki, proste materiały, każdy może to zrobić. Odtwarzaj muzykę za pomocą Seeeduino Xiao Teraz! Idź i zbuduj z nami ten projekt i zostań muzycznym królem wśród swoich przyjaciół!

Zasada działania

Wbudowana funkcja Q-Touch włączona Seeeduino XIAO umożliwia wykrywanie drobnych zmian pojemności z GPIO i można przypisać każde GPIO jako klawisz i odtwarzać określony ton, a następnie włączasz GPIO Seeeduino XIAO jak klawiatura instrumentu muzycznego i możesz grać w swoje ulubione piosenki!

Co musisz przygotować:

Połączenie sprzętowe

Notacja muzyczna

Kod

#include "Adafruit_FreeTouch.h"
#define SPEAKER 2
Adafruit_FreeTouch qt_1 = Adafruit_FreeTouch(A0, OVERSAMPLE_4, RESISTOR_50K, FREQ_MODE_NONE);
Adafruit_FreeTouch qt_2 = Adafruit_FreeTouch(A1, OVERSAMPLE_4, RESISTOR_50K, FREQ_MODE_NONE);
Adafruit_FreeTouch qt_3 = Adafruit_FreeTouch(A6, OVERSAMPLE_4, RESISTOR_50K, FREQ_MODE_NONE);
Adafruit_FreeTouch qt_4 = Adafruit_FreeTouch(A7, OVERSAMPLE_4, RESISTOR_50K, FREQ_MODE_NONE);
Adafruit_FreeTouch qt_5 = Adafruit_FreeTouch(A8, OVERSAMPLE_4, RESISTOR_50K, FREQ_MODE_NONE);
Adafruit_FreeTouch qt_6 = Adafruit_FreeTouch(A9, OVERSAMPLE_4, RESISTOR_50K, FREQ_MODE_NONE);
Adafruit_FreeTouch qt_7 = Adafruit_FreeTouch(A10, OVERSAMPLE_4, RESISTOR_50K, FREQ_MODE_NONE);
int BassTab[] = {1911, 1702, 1516, 1431, 1275, 1136, 1012}; //bass 1~7

void setup() {
  Serial.begin(115200);
  pinMode(SPEAKER, OUTPUT);
  digitalWrite(SPEAKER, LOW);
  //  while (!Serial);
  Serial.println("FreeTouch test");
  // initialize digital pin LED_BUILTIN as an output.
  pinMode(LED_BUILTIN, OUTPUT);

  if (! qt_1.begin())
    Serial.println("Failed to begin qt");
  if (! qt_2.begin())
    Serial.println("Failed to begin qt");
  if (! qt_3.begin())
    Serial.println("Failed to begin qt");
  if (! qt_4.begin())
    Serial.println("Failed to begin qt");
  if (! qt_5.begin())
    Serial.println("Failed to begin qt");
  if (! qt_6.begin())
    Serial.println("Failed to begin qt");
  if (! qt_7.begin())
    Serial.println("Failed to begin qt");
}

int qt_Threshold = 850;

void loop() {
  int qt1 = 0;
  int qt2 = 0;
  int qt3 = 0;
  int qt4 = 0;
  int qt5 = 0;
  int qt6 = 0;
  int qt7 = 0;

  qt1 = qt_1.measure();
  Serial.print(qt1);
  Serial.print(",");

  qt2 = qt_2.measure();
  Serial.print(qt2);
  Serial.print(",");

  qt3 = qt_3.measure();
  Serial.print(qt3);
  Serial.print(",");

  qt4 = qt_4.measure();
  Serial.print(qt4);
  Serial.print(",");

  qt5 = qt_5.measure();
  Serial.print(qt5);
  Serial.println();

  qt6 = qt_6.measure();
  Serial.print(qt6);
  Serial.println();

  qt7 = qt_7.measure();
  Serial.print(qt7);
  Serial.println();

  if (qt1 >= qt_Threshold) {
    sound(1);
  }
  if (qt2 >= qt_Threshold) {
    sound(2);
  }
  if (qt3 >= qt_Threshold) {
    sound(3);
  }
  if (qt4 >= qt_Threshold) {
    sound(4);
  }
  if (qt5 >= qt_Threshold) {
    sound(5);
  }
  if (qt6 >= qt_Threshold) {
    sound(6);
  }
  if (qt7 >= qt_Threshold) {
    sound(7);
  }
}
void sound(uint8_t note_index)
{
  for (int i = 0; i < 50; i++)
  {
    digitalWrite(SPEAKER, HIGH);
    delayMicroseconds(BassTab[note_index]);
    digitalWrite(SPEAKER, LOW);
    delayMicroseconds(BassTab[note_index]);
  }
}

Seeeduino XIAO

Seeeduino XIAO jest najmniejszym członkiem rodziny Seeeduino. Zawiera potężny ATSAMD21G18A-MU, który jest mikrokontrolerem o małej mocy. Ta mała płytka ma dobrą wydajność przetwarzania i ma niski pobór mocy. Jego niewielki rozmiar sprawia, że ​​idealnie nadaje się do budowania projektów do noszenia.

Tarcza Gaju dla Seeeduino XIAO

Plug-and-play Gaj Rozszerzenie dla Seeeduino XIAO . Działa jako pomost dla Seeeduino XIAO oraz Gaj system. Dzięki wbudowanemu układowi zarządzania baterią i podkładce do łączenia baterii możesz z łatwością zasilać swój Seeeduino XIAO z baterią litową i naładuj ją.

Gaj – Głośnik Plus

The Gaj Speaker Plus zawiera potężną płytkę sterowniczą wzmacniacza i fantazyjny głośnik. Możesz wymienić głośnik na inne głośniki, które lubisz, ponieważ przyjmuje osobną i wymienną konstrukcję głośnika. a za pomocą wbudowanego potencjometru można łatwo regulować głośność wyjściową.

W tym artykule zbadaliśmy, jak zrobić owocowe pianino w funkcji Q-Touch Seeeduino XIAO. Jeśli masz jakieś pytania, nie wahaj się zapytać faqdesk.net w sekcji komentarzy poniżej.