Isi kandungan:
Video: Esp8266 Penjana Jam dan Nadi: 3 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:06
Instruksional ini adalah untuk peralatan ujian yang sederhana; penjana jam dan nadi.
Ia menggunakan antara muka perkakasan i2S pada esp8266 untuk menghasilkan jam ujian atau urutan nadi. Ini memudahkan untuk disatukan kerana tidak diperlukan perkakasan khas untuk sistem asas.
- Penjanaan jam dari 2Hz hingga 20MHz
- Sebarang frekuensi boleh digunakan
- Mencari padanan terbaik pembahagi jam dan panjang bit dari jam asas 160MHz
- Biasanya lebih baik daripada 0.1% padanan untuk frekuensi <100KHz
- Tandakan pemilihan nisbah ruang
- Toleransi pemadanan frekuensi boleh dilonggarkan untuk mendapatkan pengendalian ruang markah yang lebih baik
- Penjanaan kereta nadi berdasarkan definisi dalam fail
- GUI berasaskan web yang membolehkan kawalan dari PC, telefon, tablet
- Pengurusan Wifi untuk membolehkan penghala awal yang mudah disediakan
- Kemas kini perisian OTA
- Menggunakan perpustakaan I2s khas (i2sTXcircular) yang memberikan kawalan fleksibel
Langkah 1: Perkakasan
Saya membina lombong dalam kandang bercetak 3d yang memegang bateri 18650 dengan pengecas USB, suis hidup / mati, palam pengepala 3 pin untuk isyarat output.
Kandang mempunyai slot sempit untuk memegang elektronik di sebelah bateri.
Isyarat keluar dari pin GPIO3 (RX). Ini boleh digunakan secara langsung tetapi untuk keupayaan pemacu yang lebih tinggi, saya memilih untuk memasukkan sedikit penyangga menggunakan 74LVC2G34. Saya selari kedua-dua penyangga dalam peranti ini untuk memberikan keupayaan pemacu yang lebih banyak lagi.
Semuanya dilakukan hanya dalam perisian di peranti, dan kawalan dilakukan dengan menyediakan pelayan web sehingga penyemak imbas di PC, telefon atau tablet memberikan kontrol penuh.
Langkah 2: Perisian
Untuk membina dan menyediakan perisian, gunakan kod di
- Pasang perpustakaan i2sTXcircular (termasuk)
- Pasang pustaka BaseSupport (https://github.com/roberttidey/BaseSupport)
- Tambahkan perpustakaan WifiManager
- Edit kata laluan di BaseConfig.h
- Susun dan muat naik di persekitaran Arduino
- Sediakan pengurusan rangkaian wifi dengan menyambung ke AP dan melayari ke 192.168.4.1
- memuat naik set fail asas dari folder data menggunakan STA ip / upload
- muat naik selanjutnya boleh dilakukan menggunakan ip / edit - antara muka biasa ada di ip /
Bagaimana ia berfungsi
Perpustakaan melingkar i2sTX membolehkan membina rantai penyangga bulat yang kemudian dikeluarkan secara automatik oleh perkakasan i2S pada esp8266 menggunakan DMA sehingga tidak ada overhead perisian yang digunakan begitu ia akan berjalan.
Jam asas pada peranti adalah 160MHz yang dibahagi oleh sepasang pembahagi. Isyarat output kemudian ditentukan oleh data apa yang dimasukkan ke dalam penyangga yang dihasilkan oleh jam terbahagi. Dengan memilih dua pembahagi dan dengan menggunakan beberapa bit data yang berpotensi untuk mewakili setiap nadi maka frekuensi dapat didekati dengan cukup dekat. Ini juga membolehkan kitaran tugas (nisbah tanda / ruang denyutan jam) berubah-ubah.
Kod javascript penyemak imbas cuba mengoptimumkan pilihan parameter untuk memberi padanan dengan frekuensi yang dipilih.
Walaupun tujuan utamanya adalah untuk menghasilkan jam, adalah mungkin untuk menghasilkan kereta nadi yang lebih kompleks dengan memasukkan definisi ke dalam fail nadi yang kemudian mengawal data yang akan dihasilkan dan dimasukkan ke dalam penyangga bulat. Perincian terdapat dalam contoh fail nadi yang disertakan.
Langkah 3: Operasi
Operasi dikendalikan oleh antara muka penyemak imbas yang ditunjukkan dalam gambar utama.
Untuk penjanaan jam biasa anda hanya memilih jam sasaran dan nisbah ruang tanda tanda. Jam sebenar dicapai dan kesalahannya dipaparkan. Apabila butang Hasilkan Jam ditekan maka parameter dihantar ke peranti dan penjanaan jam menggunakan parameter ini akan dimulakan.
Dengan mengklik pada bar Advanced lebih banyak perincian dapat dilihat.
Jam bit menunjukkan sub-gandaan 160MHz yang sedang digunakan.
Mark dan bit ruang menunjukkan berapa banyak bit yang digunakan untuk mewakili tanda dan ruang.
Div1 dan Div2 menunjukkan dua pembahagi yang telah dipilih untuk menghasilkan jam bit terdekat.
Biasanya kedua-dua pembahagi dipilih untuk memberikan padanan terdekat dengan frekuensi yang dipilih dan untuk memaksimumkan jumlah bit data yang digunakan yang membantu memberikan lebih banyak fleksibilitas dalam memungkinkan putaran tugas yang berlainan. Namun, kadangkala perlawanan terbaik menghasilkan jumlah bit yang rendah sehingga tidak banyak ruang untuk mengubah kitaran tugas. Dengan mengubah nilai toleransi%, pembahagi akan dipilih untuk memberikan frekuensi dalam toleransi ini tetapi dengan bit data yang berpotensi lebih banyak digunakan. Cuba contohnya menetapkan toleransi ke 0,5 atau 1.
Anda juga boleh menetapkan Bits per kata bilangan untuk mengawal pilihan parameter. 0 (lalai) bermaksud memilih bit setiap perkataan. Nombor tunggal (mis. 24) bermaksud hanya memilih parameter yang sepadan dengan ini. Anda juga boleh memasukkan julat (mis. 24, 31). Ini hanya berfungsi untuk sasaran Hz melebihi 10KHz, di bawah penskalaan ini akan berlaku sehingga jumlahnya bertambah.
Ukuran buffer menunjukkan jarak keseluruhan buffer yang digunakan dalam 32 bit perkataan. Ini dipilih untuk memastikan denyut jam membentuk lingkaran yang sempurna sesuai dengan penyangga. Secara dalaman penyangga ini dibahagikan kepada sebilangan kecil rbuffer untuk membolehkan DMA yang dirantai berfungsi.
Untuk operasi denyut nadi pilih TAB denyutan. Ini menunjukkan fail nadi yang tersedia dan butang di sebelah masing-masing yang akan menghasilkan kereta nadi berdasarkan definisinya. Anda dapat melihat kandungan fail dengan mengklik pautan itu. Lebih banyak fail nadi boleh dimuat naik menggunakan penyemak imbas fail ip / edit. Mereka harus bermula dengan nadi nama.
Disyorkan:
Jam Kata Empat Huruf Dengan Penjana Kata Akafugu dan Frasa Inspirasi: 3 Langkah
Jam Kata Empat Huruf Dengan Penjana Kata Akafugu dan Frasa Inspirasi: Ini adalah versi Jam Kata Empat Surat saya, idea yang berasal dari tahun 1970-an. Jam memaparkan rangkaian kata empat huruf yang dihasilkan dari algoritma penjana kata rawak atau dari pangkalan data empat huruf yang berkaitan
Mikrokontroler AVR. Modulasi Lebar Nadi. Pengawal Motor DC dan Intensiti Lampu LED .: 6 Langkah
Mikrokontroler AVR. Modulasi Lebar Nadi. С Pengawal Motor DC dan Intensiti Cahaya LED: Halo semua! Modulasi Lebar Nadi (PWM) adalah teknik yang sangat biasa dalam telekomunikasi dan kawalan kuasa. biasanya digunakan untuk mengendalikan daya yang diberikan ke alat elektrik, baik itu motor, LED, pembesar suara, dan lain-lain. Pada dasarnya ini adalah modu
Penjana Nadi Gelombang Persegi Cepat Edge: 4 Langkah
Generator Pulse Gelombang Segera Pinggir Cepat: Penjana Pulse Edge Cepat - Penjana Pulse Gelombang Segera Segera Litar sederhana ini, menggunakan 74HC14N (enam penyongsang TTL dengan kadar slew rendah) ia mampu menghasilkan isyarat gelombang persegi hingga 10MHZ. Sesuai untuk beberapa ujian elektronik. Dengan reput
Jam Nadi Arduino DCF77: 13 Langkah (dengan Gambar)
Arduino DCF77 Pulse Clock: IntroductionIn This Instructable menunjukkan kepada anda cara membuat jam denyut digital dan menambahkannya ke 12 yang lama " (300mm) casing jam atau dail & bezel. Saya telah menggunakan Jam Dial Bahasa Inggeris lama dengan 12 " dail tetapi sebarang jam dengan casing yang cukup besar boleh digunakan
Modulasi Lebar Nadi Sederhana (dan Kotor) (PWM) Dengan Pemasa 555: 3 Langkah
Modulasi Lebar Nadi Sederhana (dan Kotor) (PWM) Dengan Pemasa 555: Litar sederhana untuk kawalan kelajuan Motor DC (kawalan kelajuan kipas, peredupan cahaya / LED dan lain-lain) menggunakan pemasa 555. Juga titik permulaan yang baik untuk pemula yang ingin mendapatkannya tangan kotor dengan IC pemasa 555. Ada yang berpendapat bahawa ini bukan yang paling