Мазмұны:

Электроника біліктілігі Lvl 2: 5 қадам
Электроника біліктілігі Lvl 2: 5 қадам

Бейне: Электроника біліктілігі Lvl 2: 5 қадам

Бейне: Электроника біліктілігі Lvl 2: 5 қадам
Бейне: Грант Амато камера моделі үшін отбасын өлтірді 2024, Шілде
Anonim
Электроника біліктілігі Lvl 2
Электроника біліктілігі Lvl 2
Электроника біліктілігі Lvl 2
Электроника біліктілігі Lvl 2

Бұл сізге электрониканың 2 -ші деңгейін меңгеруге көмектесетін жылдам оқулық болады. Мұны дәл осылай жасаудың қажеті жоқ! Сіз бөліктерді/компоненттерді қалағаныңызша алмастыра аласыз, бірақ оны жұмыс істеу үшін кодты өзгертуге жауапты боласыз. Мен әр бөліктің не істейтінін түсіндіру үшін кодқа түсініктеме беремін.

Соңғы нәрсе - микрокомпьютер. Біз Arduino Nano қолданамыз. Оны Arduino Uno немесе кез келген басқа микроконтроллерге ауыстыруға болады. Әрекеттер әр түрлі болуы мүмкін және сіз басқа компьютердің жұмысына жауап бересіз.

Жарық диодты таспа MHD тартпасының жоғарғы жағындағы күміс сөмкеде. Микрофон светодиодтары бар сөмкенің ішінде де бар. Аяқтағаннан кейін оларды осында қайтарыңыз!

Жабдықтар

  1. Микрокомпьютер

    Ардуино Нано

  2. Сымдар

    1. 7x F2F кабельдері

      1. 2x Қара
      2. 2x Қызыл
      3. 3x түрлі түсті
  3. Жарықдиодты жолақ

    Тағы да бізде бір ғана. Ол микрофонмен болады

  4. Микрофон

    Бізде тек біреу ғана бар, оны соңында бекітіңіз! Ол қызметкерлер тартпасында болады

1 -қадам: микрокомпьютер

Микрокомпьютер
Микрокомпьютер

Бастау үшін біз Arduino Nano бөлшектерімен ыңғайлы болуымыз керек. Суретте көрсетілгендей, контроллердің екі негізгі жағы бар. Бізді алаңдататын жалғыз бөліктер:

  • +5В
  • GND
  • GND
  • 3V3 (бұл 3.3В ретінде көрінуі мүмкін, бірақ бір нәрсені білдіреді)
  • D2
  • D3
  • D4
  • Шағын USB (соңында күміс штепсель)

2 -қадам: жарық диодты жолақ

Жарықдиодты жолақ
Жарықдиодты жолақ
Жарықдиодты жолақ
Жарықдиодты жолақ
Жарықдиодты жолақ
Жарықдиодты жолақ
Жарықдиодты жолақ
Жарықдиодты жолақ

Жарықдиодты жолақтың соңын алуды бастаңыз. Бұл қара штепсель (оған 4 сым кіретін), содан кейін екі ағынсыз сым (1х сары, 1х қызыл) болуы керек. Біз тек қара штепсельге назар аударамыз. Оны солдан оңға қарай ретпен орналастырыңыз: қызыл, көк, жасыл, сары. Бұл түстер VCC, D0, C0, GND сәйкес келеді. Сымдардың әйел жағын пайдаланып, қара сымды GND -ге, қызылды VCC -ге, әр түрлі түстерді ортаңғы екеуіне итеріңіз.

** Сымдарды бекіту кезінде күміс ілгектің жоғары қарағанына көз жеткізіңіз! Бұл олардың түйреуіштерге ілінуіне көмектеседі. (Бірінші суретте көрсетілген)

Содан кейін біз екінші әйел жағын алып, оны наноға бекітеміз. Жарық диодты жолағынан GND сымын D2 жанындағы GND -ге бекітіңіз. Содан кейін VCC сымын алыңыз және оны +5V істігіне бекітіңіз. C0 және D0 түйреуішін светодиодтан нанодағы D2 және D3 түйреуішіне бекітіңіз. Қосылатын орындарды үшінші және төртінші суреттерден көруге болады.

3 -қадам: микрофонды қосыңыз

Микрофонды қосыңыз
Микрофонды қосыңыз
Микрофонды қосыңыз
Микрофонды қосыңыз
Микрофонды қосыңыз
Микрофонды қосыңыз

** ЕСКЕРТУ **

Суретке түсіру кезінде сымдар аз болды. Мүмкіндігінше нұсқауларды жақсырақ көрсету үшін мен бұл суретті жаңартамын. Міне суреттегі түстермен салыстырғанда бағыттағы сым түстері:

  • қызыл -> қоңыр
  • қара -> қара
  • түсті -> сұр

Микрофон жарық диодты жолақпен бірдей бекітіледі, бірақ екеуінің орнына тек 1 түйреуіші болады.

Бұл жолы бізге VCC түйреуішін микрофоннан нанодағы 3V3 түйреуішіне қызыл сым арқылы бекіту керек. Содан кейін микрофондағы GND түйрегіші қара сымды қолданып наноға GND -ге, соңында микрофондағы OUT түйреуіші түсті сыммен наноға D4 түйреуішіне бекітіледі.

4 -қадам: Arduino IDE

3D принтерлерге жақын компьютерлерді қолданып Arduino IDE ашыңыз. Бұл компьютерлерде жарықдиодты жолақты басқару үшін арнайы бағдарламалық қамтамасыз ету орнатылған. Содан кейін микро USB көмегімен наноды компьютерге қосыңыз.

  1. Жоғарғы жолақта Құралдар түймесін басыңыз
  2. Содан кейін Board астындағы Arduino Nano түймесін басыңыз
  3. Процессор астында ATmega328P (Ескі жүктеуші) түймесін басыңыз.

    Егер бұл жұмыс істемесе, ATmega328P таңдаңыз

  4. Соңында, Порт астында көрсетілген жалғыз опцияны басыңыз.

Барлығы таңдалғаннан кейін, осы кодты эскиз терезесіне көшіріп, қойыңыз (онда void setup () және void loop () жазылады). Содан кейін оңға бағытталған көрсеткіні нұқыңыз (оны өңдеу мәзірінің астынан табуға болады). Бұл кодты наноға жүктейді.

#include // Қандай D түйрегінің қолданылғанын анықтаңыз. const uint8_t clockPin = 2; const uint8_t dataPin = 3; const uint8_t micPin = 4; // Жарық диодты жолаққа жазу үшін объект жасаңыз. APA102 ledStrip; // Басқарылатын жарық диодтарының санын орнатыңыз. const uint16_t ledCount = 60; uint8_t жарықдиодты; // Audio const int sampleWindow = 50; // Терезенің ені mS (50 mS = 20Гц) белгісіз int үлгісінде; // Түстерді сақтау үшін буфер құрыңыз (әр түс үшін 3 байт). rgb_color түстері [ledCount]; // Жарық диодтарының жарықтығын орнатыңыз (максимум 31, бірақ көзге көрінбейтін түрде жарқын болуы мүмкін). const int жарықтығы = 12; void setup () {Serial.begin (9600); } бос цикл () {эквалайзер (); ledStrip.write (түстер, ledCount, жарықтық); } бос эквалайзер () {белгісіз ұзақ startMillis = millis (); // Үлгі терезесінің басы белгісіз int peakToPeak = 0; // шыңнан деңгейге дейін белгісіз int signalMax = 0; белгісіз int signalMin = 1024; uint8_t уақыт = миллис () >> 4; // 50 mS үшін деректерді жинау кезінде (millis () - startMillis <sampleWindow) {sample = analogRead (micPin); // жалған көрсеткіштерді шығарыңыз, егер (үлгі signalMax) {signalMax = үлгі; // тек максималды деңгейлерді сақтаңыз} else if (sample <signalMin) {signalMin = sample; // минималды деңгейлерді сақтау}}} peakToPeak = signalMax - signalMin; // max - min = амплитудасының шыңы -шыңы (түстер, 0, sizeof (түстер)); // түстерді жарық диодты жолақтан тазалайды leds = диапазондар (peakToPeak); // қоңырау диапазондары қанша жарықдиодты жарықтандыру керек uint32_t stripColor = peakToPeak/1000 + peakToPeak%1000; for (uint16_t i = 0; i <= leds; i ++) {colours = hsvToRgb ((uint32_t) stripColor * 359/256, 255, 255); // түстерді жолаққа қайта қосады, сонымен қатар қажетті жарықдиодты ғана жарықтандырады. }} rgb_color hsvToRgb (uint16_t с, uint8_t s, uint8_t v) {uint8_t f = (с % 60) * 255/60; uint8_t p = (255 - s) * (uint16_t) v / 255; uint8_t q = (255 - f * (uint16_t) s / 255) * (uint16_t) v / 255; uint8_t t = (255 - (255 - f) * (uint16_t) s / 255) * (uint16_t) v / 255; uint8_t r = 0, g = 0, b = 0; қосқыш ((с / 60) % 6) {0 жағдай: r = v; g = t; b = p; үзіліс; 1 -жағдай: r = q; g = v; b = p; үзіліс; 2 -жағдай: r = p; g = v; b = t; үзіліс; 3 жағдай: r = p; g = q; b = v; үзіліс; 4 жағдай: r = t; g = p; b = v; үзіліс; 5 -жағдай: r = v; g = p; b = q; үзіліс; } rgb_color қайтару (r, g, b); } uint8_t ауқымдары (uint8_t vol) {if (vol> 800) {return 60; } else if (том> 700) {қайтару 56; } else if (vol> 600) {қайтару 52; } else if (vol> 500) {қайтару 48; } else if (vol> 400) {44 қайтару; } else if (vol> 358) {return 40; } else if (vol> 317) {return 36; } else if (том> 276) {қайтару 32; } else if (том> 235) {қайтару 28; } else if (том> 194) {қайтару 24; } else if (том> 153) {қайтару 20; } else if (том> 112) {қайтару 16; } else if (том> 71) {қайтару 12; } else if (том> 30) {қайтару 8; } else {қайтару 4; }}

5 -қадам: Аяқтағаннан кейін

Жақсы жұмыс! Барлығын жұмыс істеп тұрғанын суретке түсіріңіз. Егер жарықдиодты жолақ толық жанбайтын болса, онда микрофонның артындағы бұранда реттелген. Сіз бұл мәселені шешу үшін кодты өзгерте аласыз (қажет болса, көмек сұраңыз), бірақ қажет емес. Егер сіз жобаны сақтағыңыз келсе, микрофон мен жарық диодты жолақтың сілтемелері төменде көрсетілген. Бізге басқа қызметкерлер оны аяқтау үшін хабта қалуы керек.

Енді бәрін бөлшектемес бұрын наноды компьютерге қайта бекітіп, Arduino IDE бағдарламасындағы мына қадамдарды орындаңыз:

  • Файл түймешігін басыңыз
  • Мысалдар
  • Негізгі
  • Жыпылықтау
  • Аяқтағаннан кейін жүктеу түймесін басыңыз

Бұл әркім сымдарды бекітіп қана қоймай, бүкіл процесті жүргізетініне көз жеткізу үшін. Енді бәрін бөлшектеп, тапқан жеріңізге қойыңыз!

Сілтемелер:

Микрофон

Менде сілтеме болған кезде жарық диодтары қосылады

Ұсынылған: