Працюємо з 09:00 до 20:00 без вихідних.
Київ лівий берег біля ТЦ Квадрат

Пасивный звуковий сигналізатор для підключення до дискретного виходу контролера

Мініатюрний розмір

Опір 16 Ом

Приклад програми для Arduino, що програє мелодію "twinkle twinkle little star"

/* 
 * Дана програма подає прямокутний сигнал певної частоти, генеруючи
 * відповідний тон.
 *
 * Тон розраховується за допомогою наступної формули:
 *
 *       timeHigh = period / 2 = 1 / (2 * toneFrequency)
 *
 * відповідність нотам вказана у наступній таблиці:
 *
 * нота   частота період timeHigh
 * c        261 Hz        3830 1915
 * d        294 Hz        3400 1700
 * e        329 Hz        3038 1519
 * f        349 Hz        2864 1432
 * g        392 Hz        2550 1275
 * a        440 Hz        2272 1136
 * b        493 Hz        2028 1014
 * C        523 Hz        1912 956
 */
  
int speakerPin = 4;
int length = 15; //кількість нот в мелодії
//twinkle twinkle little star
char notes[] = "ccggaag ffeeddc ggffeed ggffeed ccggaag ffeeddc "; // пробіл позначає тишу
int beats[] = { 1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 2, 4 };
int tempo = 300;
void playTone(int tone, int duration) {
  for (long i = 0; i < duration * 1000L; i += tone * 2) {
    digitalWrite(speakerPin, HIGH);
    delayMicroseconds(tone);
    digitalWrite(speakerPin, LOW);
    delayMicroseconds(tone);
  }
}
void playNote(char note, int duration) {
  char names[] = { 'c', 'd', 'e', 'f', 'g', 'a', 'b', 'C' };
  int tones[] = { 1915, 1700, 1519, 1432, 1275, 1136, 1014, 956 };
  
  //відтворити тон, відповідно до назви ноти
  for (int i = 0; i < 8; i++) {
    if (names[i] == note) {
      playTone(tones[i], duration);
    }
  }
}
void setup() {
  pinMode(speakerPin, OUTPUT);
}
void loop() {
  for (int i = 0; i < length; i++) {
    if (notes[i] == ' ') {
      delay(beats[i] * tempo); // rest
    } else {
      playNote(notes[i], beats[i] * tempo);
    }
    
    // pause between notes
    delay(tempo / 2); 
  }
}

Написати відгук

Примітка: HTML размітка не підтримується! Використовуйте звичайтий текст.
    Погано           Добре

Звуковий сигналізатор 16 Ом

  • Модель Passive Buzzer
  • Наявність Є в наявності
  • 8.50грн.