Mail.ruПочтаМой МирОдноклассникиВКонтактеИгрыЗнакомстваНовостиКалендарьОблакоЗаметкиВсе проекты

Код на Arduino

Данила Пилипенко Ученик (158), закрыт 2 месяца назад
Ребят, кто хорошо шарит за C# в Ардуино, можете написать код, который включает звук когда выключаю свет в комнате. Хочу типа кабинки фнаф сделать
Лучший ответ
Михаил Траур Мастер (1718) 2 месяца назад
Сам тоже начинающий в этой теме, но вот что у меня получилось. Тебе потребуется:
  • Фоторезистор - 1 шт.
  • Пищалка (в моем случае пассивная) - 1 шт.
  • Резистор на 1 кОм - 1 шт.

Мой код:
 #define PASSIVE_BUZZER_PIN 3                      // D3 
#define PHOTORESISTOR_PIN A0 // AO

#define SONG_COUNT_NOTES 98
#define NO_LIGHT_VALUE 250

static const uint16_t g_SongTones[SONG_COUNT_NOTES] = {
523, 587, 523, 440, 440, 440, 392, 440, 466, 440, 466, 392,
523, 440, 349, 294, 392, 262, 392, 587, 523, 466, 440, 392,
440, 466, 440, 330, 440, 440, 415, 494, 659, 587, 554, 587,
392, 440, 466, 440, 349, 587, 523, 349, 262, 466, 440, 392,
349, 523, 587, 523, 440, 440, 440, 392, 440, 466, 440, 466,
392, 523, 440, 349, 294, 392, 262, 392, 587, 523, 466, 440,
392, 440, 466, 440, 330, 440, 440, 415, 494, 659, 587, 554,
587, 392, 440, 466, 440, 349, 587, 523, 349, 262, 466, 440,
392, 349
};

static const uint16_t g_SongToneDur[SONG_COUNT_NOTES] = {
489, 364, 119, 489, 489, 364, 119, 364, 119, 983, 489, 364,
119, 983, 489, 364, 119, 983, 1335, 244, 244, 244, 244, 244,
244, 244, 983, 489, 489, 489, 364, 119, 2074, 244, 244, 244,
244, 244, 489, 244, 244, 244, 983, 244, 244, 244, 489, 489,
983, 489, 364, 119, 489, 489, 364, 119, 364, 119, 983, 489,
364, 119, 983, 489, 364, 119, 983, 1335, 244, 244, 244, 244,
244, 244, 244, 983, 489, 489, 489, 364, 119, 2074, 244, 244,
244, 244, 244, 489, 244, 244, 244, 983, 244, 244, 244, 489,
489, 983
};

static uint16_t g_CurNoteIndex = 0;

void setup()
{
pinMode(PASSIVE_BUZZER_PIN, OUTPUT);
}

void loop()
{
int pValue = analogRead(PHOTORESISTOR_PIN);

if (pValue <= NO_LIGHT_VALUE) {
tone(PASSIVE_BUZZER_PIN, g_SongTones[g_CurNoteIndex]);
delay(g_SongToneDur[g_CurNoteIndex]);
noTone(PASSIVE_BUZZER_PIN);

g_CurNoteIndex++;
}
else
g_CurNoteIndex = 0;

if (g_CurNoteIndex == SONG_COUNT_NOTES)
g_CurNoteIndex = 0;
}
Остальные ответы
Δεῖμος Просветленный (23956) 2 месяца назад
ардуино? а может лучше малина пи ай?
Похожие вопросы