Mündəricat:
Video: Esp8266 Saat və Nəbz generatoru: 3 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:43
Bu təlimat sadə bir sınaq avadanlığı üçündür; saat və nəbz generatoru.
Bir test saatı və ya nəbz ardıcıllığı yaratmaq üçün esp8266 -da i2S hardware interfeysindən istifadə edir. Əsas sistem üçün heç bir xüsusi aparata ehtiyac olmadığı üçün bir araya gəlməyi asanlaşdırır.
- 2Hz -dən 20MHz -ə qədər saat istehsalı
- İstənilən tezlik istifadə edilə bilər
- 160MHz əsas saatdan ən yaxşı saat bölücüləri və bit uzunluğunu axtarır
- Tipik olaraq, 100 kHz -dən az olan tezliklər üçün 0.1% -dən daha yaxşıdır
- Boşluq nisbəti seçimini işarələyin
- Məkanı daha yaxşı işlətmək üçün tezliyə uyğun gələn tolerantlıq rahatlaşdırıla bilər
- Fayllardakı təriflərə əsaslanan nəbz qatarı istehsalı
- PC, telefon, planşetdən idarə etməyə imkan verən veb əsaslı GUI
- Wi -Fi İdarəçiliyi, marşrutlaşdırıcının asan qurulmasına imkan verir
- OTA proqram yeniləməsi
- Çevik nəzarət verən xüsusi bir I2s kitabxanasından (i2sTXcircular) istifadə edir
Addım 1: Avadanlıq
Mina qurğusunu, USB şarj cihazı, açma/söndürmə açarı, çıxış siqnalı üçün 3 pinli başlıq fişli 18650 batareyası olan 3d çaplı bir korpusda qurdum.
Korpusda elektronikanı batareyanın yanında saxlamaq üçün dar bir yuva var.
Siqnal GPIO3 pinindən (RX) çıxır. Bu birbaşa istifadə edilə bilər, lakin daha yüksək sürücü qabiliyyəti üçün 74LVC2G34 istifadə edərək kiçik bir tampon daxil etməyi seçdim. Daha çox sürücü qabiliyyəti təmin etmək üçün bu cihazdakı iki tamponu paralel etdim.
Hər şey yalnız cihazdakı proqramda aparılır və nəzarət bir veb server təmin etməklə həyata keçirilir ki, kompüterdə, telefonda və ya tabletdə bir brauzer tam nəzarəti təmin etsin.
Addım 2: Proqram təminatı
Proqramı qurmaq və qurmaq üçün https://github.com/roberttidey/espI2sClockGen ünvanındakı kodu istifadə edin.
- İ2sTXcircular kitabxanasını quraşdırın (daxil edilir)
- BaseSupport kitabxanasını quraşdırın (https://github.com/roberttidey/BaseSupport)
- WifiManager kitabxanasını əlavə edin
- BaseConfig.h -də parolları redaktə edin
- Arduino mühitində tərtib edin və yükləyin
- AP -ə qoşularaq 192.168.4.1 -ə göz ataraq wifi şəbəkə idarəçiliyini qurun
- əsas qovluq fayllarını STA ip/upload istifadə edərək məlumat qovluğundan yükləyin
- sonrakı yükləmələr ip/edit istifadə edərək edilə bilər - normal interfeys ip/
Bu necə işləyir
İ2sTXcircular kitabxanası, DMA istifadə edərək esp8266 -da i2S aparatı tərəfindən avtomatik olaraq çıxarılan dairəvi bir tampon zənciri qurmağa imkan verir ki, gedəndən sonra heç bir proqram yükü istifadə olunmasın.
Cihazdakı əsas saat 160 MHz -dir və bir cüt bölücü ilə bölünür. Çıxış siqnalı, bölünmüş aşağı saat tərəfindən çıxarılan tamponlara hansı məlumatların qoyulduğu ilə müəyyən edilir. Hər bir nəbzi təmsil etmək üçün iki bölücünü seçərək və potensial olaraq birdən çox məlumat bitindən istifadə edərək, bir tezliyi olduqca yaxından yaxınlaşdırmaq olar. Həm də vəzifə dövrünün (saat impulslarının işarəsi/boşluq nisbəti) dəyişməsinə imkan verir.
Brauzer javascript kodu, seçilmiş hər hansı bir tezliyə yaxın uyğunluq vermək üçün parametr seçimini optimallaşdırmağa çalışır.
Əsas məqsəd saatlar yaratmaq olsa da, daha sonra yaradılacaq və dairəvi tamponda yerləşdiriləcək məlumatları idarə edən bir pulse faylına bir tərif qoyaraq daha mürəkkəb pulse qatarlarını istehsal etmək mümkündür. Təfərrüatlar nümunə nəbz sənədlərindədir.
Addım 3: Əməliyyat
Əməliyyat əsas görüntüdə göstərilən brauzer interfeysi ilə idarə olunur.
Normal saat istehsalı üçün yalnız hədəf saatı və boşluq % nisbətini seçin. Əldə edilən həqiqi saat və səhv göstərilir. Saat Yarat düyməsinə basıldıqda parametrlər cihaza göndərilir və bu parametrlərdən istifadə edərək saat istehsalı başlayır.
Ətraflı çubuğa basaraq daha çox məlumat görə bilərsiniz.
Bit saatı, istifadə olunan 160MHz alt çoxluğunu göstərir.
İşarə və boşluq bitləri işarələri və boşluqları təmsil etmək üçün neçə bitin istifadə edildiyini göstərir.
Div1 və Div2, ən yaxın bit saatını yaratmaq üçün seçilmiş iki bölücünü göstərir.
Adətən iki bölücü, seçilmiş tezliyə ən yaxın uyğunluğu vermək və istifadə olunan məlumat bitlərinin sayını artırmaq üçün seçilir ki, bu da müxtəlif vəzifə dövrlərinə icazə verməkdə daha çox rahatlıq təmin edir. Bununla birlikdə, bəzən ən yaxşı uyğunluq, iş dövrünün dəyişdirilməsi üçün çox az yer buraxaraq az miqdarda nəticələnir. Dözümlülük % dəyərini dəyişdirərək bölücülər bu tolerantlıq daxilində bir tezlik vermək üçün seçiləcək, lakin potensial olaraq daha çox məlumat biti istifadə ediləcək. Məsələn, tolerantlığı 0,5 və ya 1 olaraq təyin edin.
Parametr seçiminə nəzarət etmək üçün söz sayına bitləri də təyin edə bilərsiniz. 0 (standart) hər söz üçün hər hansı bir bit seçmək deməkdir. Tək bir rəqəm (məsələn, 24) yalnız buna uyğun olan parametrləri seçmək deməkdir. Bir sıra da qoya bilərsiniz (məsələn, 24, 31). Bu, yalnız 10 KHz -dən yuxarı olan Hz hədəfi üçün işləyir, bu ölçünün altında qüvvəyə minəcək ki, say çoxalsın.
Tampon ölçüsü, 32 bit sözlə istifadə olunan ümumi tamponu göstərir. Bu, saat nəbzinin tampona mükəmməl bir dairəvi uyğunlaşmasını təmin etmək üçün seçilmişdir. Daxili olaraq bu tampon, zəncirlənmiş DMA -nın işləməsinə icazə vermək üçün bir neçə kiçik rbufferə bölünür.
Nəbzlərin işləməsi üçün TAB nəbzini seçin. Bu, mövcud nəbz fayllarını və hər birinin yanındakı bir düyməni göstərir ki, onun tərifinə əsasən nəbz qatarı istehsal edəcək. Faylın məzmununu linkini tıklayaraq görə bilərsiniz. Daha çox nəbz faylları ip/redaktə fayl tarayıcısı istifadə edərək yüklənə bilər. Nəbz adı ilə başlamalıdırlar.
Tövsiyə:
Arduino istifadə edərək Led Strip ilə Analog Saat və Rəqəmsal Saat Necə Hazırlanır: 3 Addım
Arduino istifadə edərək Led Strip ilə Analog Saat və Rəqəmsal Saat Necə Hazırlanır: Bu gün biz Analog Clock & Led Strip və Arduino ilə MAX7219 Dot modulu olan rəqəmsal saat yerli vaxt qurşağı ilə saatı düzəldəcək. Analog saat daha uzun bir LED şeridi istifadə edə bilər, buna görə də sənətkar olmaq üçün divara asıla bilər
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: 10 addım (şəkillərlə)
Ağıllı Zəngli Saat: Raspberry Pi ilə Ağıllı Zəngli Saat: Heç ağıllı bir saat istəmisinizmi? Əgər belədirsə, bu sizin üçün bir həlldir! Ağıllı Zəngli Saat hazırladım, bu veb saytına görə zəngli saatını dəyişə biləcəyiniz bir saatdır. Siqnal çalınanda bir səs (zil) olacaq və 2 işıq yanacaq
C51 4 Bit Elektron Saat - Taxta Saat: 15 Addım (Şəkillərlə)
C51 4 Bit Elektron Saat - Taxta Saat: Bu həftə sonu bir az boş vaxtım oldu, buna görə də bir müddət əvvəl AliExpress -dən aldığım 2.40 dollarlıq 4 bitlik elektron elektron rəqəmsal saatı yığdım
M-Saat Miniatür Çox Modlu Saat: 11 addım
M-Clock Miniatür Çox Modlu Saat: Minimalist Saatı? Çox rejimli saat? Matrix Clock? Bu MSP430G2432-ə əsaslanan çox rejimli bir saat layihəsidir. Lehim olmadan və minimum alət istifadə etmədən yığıla bilər. Məhdud 8x8 piksel ekran qətnaməsi ilə bu 12 saatlıq saat göstərir
IOT Nəbz Monitoru (ESP8266 və Android Tətbiqi): 5 addım
IOT Heart Rate Monitor (ESP8266 və Android Tətbiqi): Sonuncu il layihəmin bir hissəsi olaraq, ürək dərəcənizi izləyəcək, məlumatlarınızı bir serverdə saxlayacaq və nəbziniz anormal olduqda bildirişlə sizə xəbər verəcək bir cihaz dizayn etmək istədim. Bu layihənin arxasındakı fikir bir bina qurmağa çalışdığım zaman gəldi