Mundarija:
Video: Esp8266 soat va puls generatori: 3 qadam
2024 Muallif: John Day | [email protected]. Oxirgi o'zgartirilgan: 2024-01-30 13:22
Bu ko'rsatma oddiy sinov uskunasi uchun; soat va puls generatori.
U test soatini yoki impulslar ketma -ketligini yaratish uchun esp8266 -dagi i2S apparat interfeysidan foydalanadi. Bu birlashtirishni osonlashtiradi, chunki asosiy tizim uchun maxsus uskunalar talab qilinmaydi.
- 2 Gts dan 20 MGts gacha soat ishlab chiqarish
- Har qanday chastotadan foydalanish mumkin
- 160 MGts chastotali asosiy soat taqsimlagichlari va bit uzunligining eng yaxshi mosligini qidiradi
- Odatda 100 kHz dan past chastotalar uchun 0,1% dan yaxshiroq
- Bo'shliq nisbati tanlovini belgilang
- Belgilar oralig'ini yaxshiroq boshqarish uchun chastotaga mos keladigan bardoshlik bo'shashishi mumkin
- Fayllardagi ta'riflarga asoslangan pulsli poezdlarni yaratish
- Kompyuter, telefon, planshet orqali boshqarishga imkon beruvchi Internetga asoslangan GUI
- Wi -Fi boshqaruvi yo'riqchini oson sozlash imkonini beradi
- OTA dasturiy ta'minotini yangilash
- I2s maxsus kutubxonasidan (i2sTXcircular) foydalanadi, bu esa moslashuvchan boshqaruvni ta'minlaydi
1 -qadam: Uskuna
Men o'zimning USB -zaryadlagichi, yoqish/o'chirish tugmasi, chiqish signali uchun 3 pinli boshli vilkasi bo'lgan 18650 batareyali 3 o'lchamli bosma korpusda qurdim.
Korpusda batareyani yonida elektronikani ushlab turish uchun tor uyasi bor.
Signal GPIO3 pinidan (RX) chiqadi. Bu to'g'ridan -to'g'ri ishlatilishi mumkin, lekin yuqori haydovchi qobiliyati uchun 74LVC2G34 yordamida kichik buferni qo'shishni tanladim. Men haydash qobiliyatini oshirish uchun ushbu qurilmadagi ikkita buferni parallel qildim.
Hamma narsa faqat qurilmadagi dasturiy ta'minotda amalga oshiriladi va nazorat veb -server orqali amalga oshiriladi, shunda kompyuter, telefon yoki planshetdagi brauzer to'liq boshqaruvni ta'minlaydi.
2 -qadam: dasturiy ta'minot
Dasturiy ta'minotni o'rnatish va sozlash uchun https://github.com/roberttidey/espI2sClockGen manzilidagi koddan foydalaning.
- I2sTXcircular kutubxonasini o'rnating (shu jumladan)
- BaseSupport kutubxonasini o'rnating (https://github.com/roberttidey/BaseSupport)
- WifiManager kutubxonasini qo'shing
- BaseConfig.h da parollarni tahrirlash
- Arduino muhitida kompilyatsiya qiling va yuklang
- Wi -Fi tarmog'ini boshqarishni AP ga ulanish va 192.168.4.1 ga o'tish orqali sozlash
- STA ip/upload yordamida ma'lumotlar papkasidan asosiy fayllar to'plamini yuklash
- keyingi yuklamalar ip/tahrir yordamida amalga oshirilishi mumkin - oddiy interfeys ip/da
U qanday ishlaydi
I2sTXcircular kutubxonasi buferli buferlar zanjirini yaratishga imkon beradi, ular avtomatik ravishda esp8266 -dagi i2S uskuna tomonidan DMA yordamida chiqariladi, shunda hech qanday dasturiy ta'minot sarflanmaydi.
Qurilmaning asosiy soati 160 MGts bo'lib, u bir nechta bo'laklarga bo'linadi. Chiqish signali buferlarga qanday ma'lumotlar joylashtirilganligi bilan aniqlanadi, ular bo'linadigan soat tomonidan chiqariladi. Ikkita bo'linuvchini tanlab va har bir pulsni ifodalash uchun potentsial bir nechta ma'lumotlar bitlarini ishlatib, chastotani juda yaqin taxmin qilish mumkin. Bu, shuningdek, ish tsiklini (soat impulslarining belgisi/bo'shliq nisbati) o'zgarishiga imkon beradi.
Brauzer javascript kodi har qanday tanlangan chastotaga mos keladigan parametrlarni tanlashni optimallashtirishga harakat qiladi.
Garchi asosiy maqsad soat ishlab chiqarish bo'lsa -da, impulsli faylga ta'rifni qo'yish orqali yanada murakkab impulsli poezdlarni ishlab chiqarish mumkin, u keyinchalik hosil bo'ladigan va dumaloq buferga qo'yiladigan ma'lumotlarni boshqaradi. Tafsilotlar puls fayllari misolida keltirilgan.
3 -qadam: operatsiya
Operatsiya asosiy rasmda ko'rsatilgan brauzer interfeysi orqali boshqariladi.
Oddiy soat ishlab chiqarish uchun siz maqsadli soatni va bo'sh joy % nisbatini tanlaysiz. Haqiqiy erishilgan soat va uning xatosi ko'rsatiladi. Soat yaratish tugmasi bosilganda parametrlar qurilmaga yuboriladi va shu parametrlar yordamida soat ishlab chiqarish boshlanadi.
Kengaytirilgan satrni bosish orqali batafsil ma'lumotni ko'rish mumkin.
Bit-soat 160 MGts chastotali sub-ko'paytmani ko'rsatadi.
Belgilar va bo'shliqlar belgilar va bo'shliqlarni ifodalash uchun qancha bit ishlatilishini ko'rsatadi.
Div1 va Div2 eng yaqin bit soatini yaratish uchun tanlangan ikkita ajratgichni ko'rsatadi.
Odatda ikkita bo'linuvchi tanlangan chastotaga eng yaqin moslikni berish va ma'lumotlar bitlarining sonini ko'paytirish uchun tanlanadi, bu esa har xil ish tsikllarini bajarishga ko'proq moslashuvchanlikni ta'minlaydi. Biroq, ba'zida eng yaxshi o'yin natijasi, ish sonini o'zgartirishga oz joy qoldiradi. Tolerantlik % qiymatini o'zgartirib, bo'linuvchilar bu bardoshlik ichida chastota berish uchun tanlanadi, lekin potentsial ko'proq ma'lumotlar bitlari ishlatiladi. Masalan, tolerantlikni 0,5 yoki 1 ga sozlang.
Bundan tashqari, parametrlarni tanlashni nazorat qilish uchun bitlar sonini sozlashingiz mumkin. 0 (standart) har bir so'z uchun har qanday bitni tanlashni anglatadi. Bitta raqam (masalan, 24) faqat bunga mos keladigan parametrlarni tanlashni bildiradi. Siz qatorni qo'yishingiz mumkin (masalan, 24, 31). Bu faqat 10 gigagertsdan yuqori bo'lgan Hz uchun ishlaydi, pastda bu o'lchov kuchga kiradi, shunda ularning soni ko'payadi.
Bufer o'lchami 32 bitli so'zlarda ishlatilgan umumiy buferni ko'rsatadi. Bu soat impulsining buferga mukammal dumaloq joylashishini ta'minlash uchun tanlangan. Ichkarida, bufer zanjirli DMA ishlashiga ruxsat berish uchun bir nechta kichik rufferlarga bo'lingan.
Pulslar ishlashi uchun TAB impulslarini tanlang. Bu mavjud pulsli fayllarni va har birining yonidagi tugmachani ko'rsatadi, bu uning ta'rifiga asosan impulsli poezd ishlab chiqaradi. Siz havolani bosish orqali fayl tarkibini ko'rishingiz mumkin. Boshqa pulsli fayllarni ip/tahrirlash fayl brauzeri yordamida yuklash mumkin. Ular puls nomidan boshlanishi kerak.
Tavsiya:
Visuino LEDning yorqinligini o'zgartirish uchun puls kengligi modulyatsiyasini (PWM) qanday ishlatish kerak: 7 qadam
Visuino LEDning yorqinligini o'zgartirish uchun puls kengligi modulyatsiyasini (PWM) qanday ishlatish kerak: Ushbu qo'llanmada biz pulmon kengligi modulyatsiyasi (PWM) yordamida uning yorqinligini o'zgartirish uchun Arduino UNO va Visuino -ga ulangan LEDni ishlatamiz
Ob -havoga asoslangan musiqa generatori (ESP8266 asosidagi Midi generatori): 4 qadam (rasmlar bilan)
Ob -havoga asoslangan musiqa generatori (ESP8266 asosidagi Midi generatori): Salom, bugun men qanday qilib o'zingizning ob -havoga asoslangan kichik musiqa generatorini yasashni tushuntirib beraman. Bu ESP8266 ga asoslangan, u xuddi Arduinoga o'xshaydi va u harorat, yomg'irga javob beradi. va yorug'lik intensivligi. Bu butun qo'shiq yoki akkord dasturini yaratishini kutmang
C51 4 bitli elektron soat - yog'och soat: 15 qadam (rasmlar bilan)
C51 4 bitli elektron soat - yog'ochdan yasalgan soat: dam olish kunlari bo'sh vaqtim bor edi, shuning uchun men ilgari AliExpress -dan sotib olgan 2,40 dollarlik 4 bitli DIY elektron raqamli soatni yig'dim
Tez qirrali kvadrat to'lqinli puls generatori: 4 qadam
Tez qirrali to'lqinli puls generatori: tez qirrali puls generatori - Ultra tez kvadrat to'lqinli impuls generatori 74HC14N (past aylanish tezligi bilan oltita TTL inverteri) yordamida 10 MGts gacha bo'lgan to'lqinli signallarni ishlab chiqarishga qodir. Ba'zi elektronika sinovlari uchun ideal. Chirish bilan
M-soat miniatyurali multimodli soat: 11 qadam
M-soat miniatyurali multimodli soat: Minimalistlar soati? Ko'p rejimli soat? Matrix Clock? Bu MSP430G2432 ga asoslangan ko'p rejimli soat loyihasi. U lehimsiz va asboblarni minimal ishlatmasdan yig'ilishi mumkin. Cheklangan 8x8 pikselli displey o'lchamlari bilan, bu 12 soatlik soat vaqtni ko'rsatadi