Mündəricat:
- Təchizat
- Addım 1: Mikrobilgisayar
- Addım 2: LED şeridi
- Addım 3: Mikrofonu bağlayın
- Addım 4: Arduino IDE
- Addım 5: Bitirdikdən sonra
Video: Elektronika bacarığı Lvl 2: 5 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:44
Bu, 2 -ci səviyyə elektronika bacarıqlarını tamamlamağa kömək edəcək sürətli bir dərs olacaq. Bunu olduğu kimi etmək lazım deyil! İstədiyiniz kimi hissələri/komponentləri əvəz edə bilərsiniz, ancaq işləməsi üçün kodu dəyişdirməkdən məsul olacaqsınız. Hər hissənin nə etdiyini izah etmək üçün koda şərhlər əlavə edəcəyəm.
Sonuncu şey mikrokompüterdir. Arduino Nano'dan istifadə edirik. Bu bir Arduino Uno və ya başqa bir mikro nəzarətçi ilə dəyişdirilə bilər. Əməliyyatlar fərqli ola bilər və digər kompüteri işə salmaq üçün məsuliyyət daşıyacaqsınız.
Led şeridi, MHD personalı çekmecesinin üstündəki gümüş çantada. Mikrofon da LED -ləri olan çantanın içərisindədir. Bitirdikdən sonra onları bura qaytarın!
Təchizat
-
Mikrokompüter
Arduino Nano
-
Tellər
-
7x F2F kabellər
- 2x Qara
- 2x Qırmızı
- 3x müxtəlif rənglər
-
-
LED şeridi
Yenə yalnız birimiz var. Mikrofonla olacaq
-
Mikrofon
Yalnız birimiz var, buna görə də sonunda əlavə edin! İşçilərin çekmecesinde olacaq
Addım 1: Mikrobilgisayar
Başlamaq üçün Arduino Nanonun hissələri ilə rahat olmalıyıq. Şəkildə göründüyü kimi, nəzarətçinin iki əsas tərəfi var. Narahat olduğumuz tək hissələr aşağıdakılardır:
- +5V
- GND
- GND
- 3V3 (bu da 3.3V kimi görünə bilər, amma eyni mənanı ifadə edir)
- D2
- D3
- D4
- Mini USB (sonunda gümüş fiş)
Addım 2: LED şeridi
Led şeridin ucunu alaraq başlayın. Bunun üçün qara fiş (içərisinə 4 tel daxil) və sonra iki boş tel (1x sarı, 1x qırmızı) olmalıdır. Yalnız qara fişlə maraqlanacağıq. Bu qaydada soldan sağa istiqamətləndirin: qırmızı, mavi, yaşıl, sarı. Bu rənglər VCC, D0, C0, GND ilə uyğun gəlir. Tellərin qadın tərəfini istifadə edərək, qara teli GND -ə, qırmızıyı VCC -yə, fərqli rəngləri ortanın ikisinə itələyin.
** Telləri bağlayarkən, gümüş çubuğun yuxarıya baxdığından əmin olun! Bu, sancaqlar üzərində sürüşməyə kömək edəcək. (İlk fotoda görüldü)
Daha sonra digər qadın tərəfi götürüb Nanoya bağlayacağıq. GND telini LED şeridindən D2 -nin yanındakı GND -ə bağlayın. Sonra VCC telini götürün və +5V pininə bağlayın. LEDdən C0 və D0 pinini Nano üzərindəki D2 və D3 pininə bağlayın. Fiş yerlərini üçüncü və dördüncü şəkillərdə görə bilərsiniz.
Addım 3: Mikrofonu bağlayın
** QEYD **
Şəkil çəkərkən tellər az idi. Təlimatları daha yaxşı əks etdirmək üçün mümkün olduqda bu şəkli yeniləyəcəyəm. Budur istiqamətlərdəki tel rəngləri və şəkillərdəki rənglər:
- qırmızı -> qəhvəyi
- qara -> qara
- rəngli -> boz
Mikrofon LED Şeridi ilə eyni şəkildə bağlanacaq, ancaq ikisi əvəzinə yalnız 1 məlumat pininə sahib olacaq.
Bu dəfə mikrofondan VCC pinini qırmızı tel istifadə edərək nanonun 3V3 pininə bağlamalıyıq. Sonra mikrofondakı GND pinini qara teldən istifadə edərək nanonun GND -yə və nəhayət mikrofonun Çıxış pinini rəngli telli nanonun D4 pininə bağlayın.
Addım 4: Arduino IDE
3D printerlərə ən yaxın olan kompüterlərdən istifadə edərək Arduino IDE -ni açın. Bu kompüterlərdə LED şeridimizi idarə etmək üçün xüsusi proqram quraşdırılmışdır. Sonra mikro USB istifadə edərək nanonu kompüterə bağlayın.
- Üst çubuğdakı Alətlər düyməsini basın
- Sonra Board altında Arduino Nano düyməsini basın
-
Prosessorun altında ATmega328P (Köhnə Bootloader) düyməsini basın.
Bu işləmirsə, ATmega328P seçin
- Nəhayət, Liman altında göstərilən yeganə seçimi vurun.
Hamısı seçildikdən sonra bu kodu kopyalayın və eskiz pəncərəsinə yapışdırın (burada void setup () və void loop () deyilir). Sonra sağa işarə edən oxu vurun (düzəliş menyu maddəsinin altında tapa bilərsiniz). Bu kodu nanoya yükləyəcək.
#include // Hansı D pinlərinin istifadə edildiyini təyin edin. const uint8_t clockPin = 2; const uint8_t dataPin = 3; const uint8_t micPin = 4; // LED şeridinə yazmaq üçün bir obyekt yaradın. APA102 ledStrip; // İdarə ediləcək LED sayını təyin edin. const uint16_t ledCount = 60; uint8_t ledlər; // Audio const int sampleWindow = 50; // mS (50 mS = 20Hz) işarəsiz int nümunəsində pəncərə genişliyi; // Rəngləri saxlamaq üçün bufer yaradın (hər rəng üçün 3 bayt). rgb_color colors [ledCount]; // LED -lərin parlaqlığını təyin edin (maksimum 31 -dir, lakin kor -koranə parlaq ola bilər). const int parlaqlıq = 12; void setup () {Serial.begin (9600); } boşluq döngəsi () {ekvilizator (); ledStrip.write (rənglər, ledCount, parlaqlıq); } boş boşlaşdırıcı () {işarəsiz uzun startMillis = millis (); // Nümunə pəncərəsinin başlanğıcı işarəsiz int peakToPeak = 0; // zirvədən zirvəyə işarəsiz int signalMax = 0; işarəsiz int signalMin = 1024; uint8_t zaman = milis () >> 4; // 50 mil ərzində məlumat toplamaq (millis () - startMillis <sampleWindow) {sample = analogRead (micPin); // saxta oxunuşları atın, əgər (nümunə signalMax) {signalMax = nümunə; // yalnız maksimum səviyyələri saxla} başqa halda (nümunə <signalMin) {signalMin = nümunə; // yalnız minimum səviyyələri saxla}}} peakToPeak = signalMax - signalMin; // max - min = pik -pik amplituda yaddaşı (rənglər, 0, sizeof (rənglər)); // rəngləri LED şeridindən təmizləyir leds = aralıqlar (peakToPeak); // uint32_t stripColor = peakToPeak/1000 + peakToPeak%1000 -i yandırmaq üçün neçə LED -in olduğunu görmək üçün zəng edin. for (uint16_t i = 0; i <= leds; i ++) {colors = hsvToRgb ((uint32_t) stripColor * 359/256, 255, 255); // yalnız lazım olan ledləri işıqlandırarkən rəngləri yenidən zolağa əlavə edir. }} rgb_color hsvToRgb (uint16_t h, uint8_t s, uint8_t v) {uint8_t f = (h % 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; keçid ((h / 60) % 6) {hal 0: r = v; g = t; b = p; fasilə; hal 1: r = q; g = v; b = p; fasilə; hal 2: r = p; g = v; b = t; fasilə; hal 3: r = p; g = q; b = v; fasilə; hal 4: r = t; g = p; b = v; fasilə; hal 5: r = v; g = p; b = q; fasilə; } rgb_color qaytar (r, g, b); } uint8_t aralıkları (uint8_t vol) {if (cild> 800) {qaytar 60; } else if (cild> 700) {qayıt 56; } else if (cild> 600) {qayıt 52; } else if (cild> 500) {qayıt 48; } else if (cild> 400) {qayıt 44; } else if (cild> 358) {qayıt 40; } else if (cild> 317) {qayıt 36; } else if (cild> 276) {qayıt 32; } else if (cild> 235) {qaytar 28; } else if (cild> 194) {qayıt 24; } else if (cild> 153) {qaytar 20; } else if (cild> 112) {qaytar 16; } else if (cild> 71) {qaytar 12; } else if (cild> 30) {qaytar 8; } başqa {qayıt 4; }}
Addım 5: Bitirdikdən sonra
Yaxşı iş! Bütün bunların işlədiyi bir şəkil çəkin. Led şeridi tamamilə yanmırsa, mikrofonun arxasındakı vida düzəldilmişdir. Bunu düzəltmək üçün kodu dəyişə bilərsiniz (istəsəniz kömək istəyin), amma lazım deyil. Layihəni davam etdirmək istəyirsinizsə, mikrofon və led şeridin bağlantıları aşağıda göstərilmişdir. Digər işçilərin də bunu bitirməsi üçün mərkəzdə qalmalarına ehtiyacımız var.
İndi hər şeyi sökmədən əvvəl nanonu kompüterə yenidən bağlayın və Arduino IDE -də bu addımları izləyin:
- Fayl vurun
- Nümunələr
- Əsas
- Göz qırp
- Bitirdikdən sonra yükləmə düyməsini basın
Bu, hər kəsin bütün prosesi etdiyini və yalnız telləri bağlamadığını təmin etməkdir. İndi hər şeyi sökün və tapdığınız yerə qoyun!
Əlaqələr:
Mikrofon
Linki əldə etdikdən sonra LEDlər əlavə olunacaq
Tövsiyə:
D-882 Transistorundan istifadə edən ən yaxşı 3 Elektronika Layihəsi: 9 addım
D-882 Transistorundan istifadə edən ən yaxşı 3 Elektronika Layihəsi: JLCPCB, Çinin ən böyük PCB prototip müəssisəsidir və 10 ildən çox PCB istehsal təcrübəsi olan sürətli PCB prototipi və kiçik partiyalı PCB istehsalında ixtisaslaşmış yüksək texnologiyalı bir istehsalçıdır. Ucuz bir həll təmin edə bilərlər
Bir elektronika satıcısının sizi aldatdığını və ya etmədiyini söyləyən bir robot: 6 addım
Bir Elektron Satıcısının Səni Aldatdığını Deyə bilən Bir Robot: Keçən il atamla birlikdə yaşadığımız yerə çox yaxın bir zamanda yeni açılan bir robot/elektronika mağazasına getdik. Oraya girəndə elektronika, serovlar, sensorlar, Moruq pis və Arduinosla dolu idi. Ertəsi gün eyni mağazaya getdik və aldıq
Alexa Bacarığı: Son Tweeti oxuyun (Bu halda, Tanrı): 6 addım
Alexa Bacarığı: Ən Son Tweeti Oxuyun (Bu halda, Tanrı): Alexa Bacarığı etdim, " Allahın Son Tweeti " - məzmun, yəni keçmiş Daily Show komediya müəllifi tərəfindən yaradılan 5 milyon+ abunəçi hesabı @TweetOfGod-dan. IFTTT (Əgər bu belədirsə), bir Google elektron cədvəli və
Bir Alexa Bacarığı necə yaradılır: 10 addım
Alexa Bacarıqlarını Necə Yaratmaq olar: Alexa bacarığı nədir? Alexa bacarıqları tətbiqlər kimidir. Alexa tətbiqini və ya veb brauzerini istifadə edərək bacarıqlarınızı ağıllı telefonunuza və ya planşetinizə quraşdırdığınız və sildiyiniz şəkildə aktivləşdirə və ya söndürə bilərsiniz. Bacarıqlar səslə idarə olunan Alexa qabiliyyətləridir
Gnuplot Görüntü Çıxışı və E -poçt Xəbərdarlığı Bacarığı ilə Raspberry Pi Nəzarət olunan Otaq İstiliyinin İzlənməsi: 7 Addım
Gnuplot Görüntü Çıxış və E -poçt Xəbərdarlığı Bacarığı ilə Raspberry Pi Nəzarətli Otaq İstiliyinin İzlənməsi: İşlədiyim yerdə çoxlu kompüterlərin yerləşdiyi çox vacib bir otaq var. Bu sistemlərin işini optimallaşdırmaq üçün bu otağın ətraf temperaturu çox sərin olmalıdır. Məndən bacarığı olan bir monitorinq sistemi hazırlamağımı istədilər