Daftar Isi:

Esp8266 Generator Jam dan Pulsa: 3 Langkah
Esp8266 Generator Jam dan Pulsa: 3 Langkah

Video: Esp8266 Generator Jam dan Pulsa: 3 Langkah

Video: Esp8266 Generator Jam dan Pulsa: 3 Langkah
Video: ALAT INI SERIUS BISA MENGETAHUI Password WI-FI ? BENERAN NGGA SIH ? 2024, November
Anonim
Esp8266 Generator Jam dan Pulsa
Esp8266 Generator Jam dan Pulsa

Instruksi ini untuk peralatan uji sederhana; generator jam dan pulsa.

Ia menggunakan antarmuka perangkat keras i2S pada esp8266 untuk menghasilkan jam uji atau urutan pulsa. Ini membuatnya mudah untuk disatukan karena tidak diperlukan perangkat keras khusus untuk sistem dasar.

  • Pembuatan jam dari 2Hz hingga 20MHz
  • Setiap frekuensi dapat digunakan
  • Mencari kecocokan terbaik dari pembagi jam dan panjang bit dari jam dasar 160MHz
  • Biasanya lebih baik dari 0,1% cocok untuk frekuensi <100KHz
  • Tandai pilihan rasio ruang
  • Toleransi pencocokan frekuensi dapat dilonggarkan untuk mendapatkan penanganan ruang tanda yang lebih baik
  • Pembuatan kereta pulsa berdasarkan definisi dalam file
  • GUI berbasis web memungkinkan kontrol dari PC, ponsel, tablet
  • Manajemen Wifi untuk memungkinkan pengaturan router awal yang mudah
  • Pembaruan perangkat lunak OTA
  • Menggunakan perpustakaan I2s khusus (i2sTXcircular) yang memberikan kontrol fleksibel

Langkah 1: Perangkat Keras

Perangkat keras
Perangkat keras
Perangkat keras
Perangkat keras

Saya membangun milik saya di selungkup cetak 3d yang memegang baterai 18650 dengan pengisi daya USB, sakelar hidup / mati, colokan header 3 pin untuk sinyal output.

Enklosur memiliki slot sempit untuk menyimpan barang elektronik di sebelah baterai.

Sinyal keluar dari pin GPIO3 (RX). Ini dapat digunakan secara langsung tetapi untuk kemampuan drive yang lebih tinggi, saya memilih untuk menyertakan sedikit buffer menggunakan 74LVC2G34. Saya memparalelkan dua buffer di perangkat ini untuk memberikan kemampuan drive yang lebih banyak lagi.

Semuanya dilakukan hanya dalam perangkat lunak di perangkat, dan kontrol dilakukan dengan menyediakan server web sehingga browser di PC, ponsel, atau tablet memberikan kontrol penuh.

Langkah 2: Perangkat Lunak

Untuk membangun dan mengatur perangkat lunak, gunakan kode di

  • Instal perpustakaan i2sTXcircular (termasuk)
  • Instal perpustakaan BaseSupport (https://github.com/roberttidey/BaseSupport)
  • Tambahkan perpustakaan WifiManager
  • Edit kata sandi di BaseConfig.h
  • Kompilasi dan unggah di lingkungan Arduino
  • Siapkan manajemen jaringan wifi dengan menghubungkan ke AP dan menjelajah ke 192.168.4.1
  • unggah kumpulan file dasar dari folder data menggunakan STA ip/upload
  • unggahan lebih lanjut kemudian dapat dilakukan menggunakan ip/edit - antarmuka normal ada di ip/

Bagaimana itu bekerja

Pustaka i2sTXcircular memungkinkan pembuatan rantai buffer melingkar yang kemudian dikeluarkan secara otomatis oleh perangkat keras i2S pada esp8266 menggunakan DMA sehingga tidak ada overhead perangkat lunak yang digunakan setelah berjalan.

Jam dasar pada perangkat adalah 160MHz yang dibagi oleh sepasang pembagi. Sinyal output kemudian ditentukan oleh data apa yang dimasukkan ke dalam buffer yang dikeluarkan oleh down clock yang dibagi. Dengan memilih dua pembagi dan dengan menggunakan beberapa bit data yang berpotensi untuk mewakili setiap pulsa maka frekuensi dapat diperkirakan cukup dekat. Ini juga memungkinkan siklus kerja (rasio tanda/ruang dari pulsa jam) bervariasi.

Kode javascript browser mencoba mengoptimalkan pilihan parameter untuk memberikan kecocokan yang dekat dengan frekuensi yang dipilih.

Meskipun tujuan utamanya adalah untuk menghasilkan jam, juga dimungkinkan untuk menghasilkan rangkaian pulsa yang lebih kompleks dengan memasukkan definisi ke dalam file pulsa yang kemudian mengontrol data yang akan dihasilkan dan dimasukkan ke dalam buffer melingkar. Detailnya ada dalam contoh file pulsa yang disertakan.

Langkah 3: Operasi

Operasi dikendalikan oleh antarmuka browser yang ditunjukkan pada gambar utama.

Untuk pembuatan jam normal, Anda cukup memilih jam target dan rasio % ruang tanda. Jam aktual tercapai dan kesalahannya ditampilkan. Ketika tombol Hasilkan Jam ditekan maka parameter dikirim ke perangkat dan pembuatan jam menggunakan parameter ini dimulai.

Dengan mengklik bilah Lanjutan, detail lebih lanjut dapat dilihat.

Jam bit menunjukkan sub-kelipatan 160MHz yang sedang digunakan.

Bit tanda dan spasi menunjukkan berapa banyak bit yang digunakan untuk mewakili tanda dan spasi.

Div1 dan Div2 menunjukkan dua pembagi yang telah dipilih untuk menghasilkan bit clock terdekat.

Biasanya dua pembagi dipilih untuk memberikan kecocokan terdekat dengan frekuensi yang dipilih dan untuk memaksimalkan jumlah bit data yang digunakan yang membantu memberikan lebih banyak fleksibilitas dalam memungkinkan siklus tugas yang berbeda. Namun, terkadang hasil kecocokan terbaik dalam jumlah bit yang rendah menyisakan sedikit ruang untuk mengubah siklus kerja. Dengan mengubah nilai % toleransi, pembagi akan dipilih untuk memberikan frekuensi dalam toleransi ini tetapi dengan potensi lebih banyak bit data yang digunakan. Coba misalnya mengatur toleransi ke 0,5 atau 1.

Anda juga dapat mengatur jumlah Bit per kata untuk mengontrol pilihan parameter. 0 (default) berarti memilih bit per kata. Angka tunggal (misalnya 24) berarti hanya memilih parameter yang cocok dengan ini. Anda juga dapat memasukkan rentang (mis. 24, 31). Ini hanya berfungsi untuk target Hz di atas 10KHz, penskalaan di bawah ini akan berlaku sehingga jumlahnya menjadi berlipat ganda.

Ukuran buffer menunjukkan total buffer spasi yang digunakan dalam kata-kata 32 bit. Ini dipilih untuk memastikan pulsa clock membentuk kecocokan melingkar yang sempurna ke dalam buffer. Secara internal buffer ini dibagi menjadi beberapa rbuffer yang lebih kecil untuk memungkinkan DMA yang dirantai berfungsi.

Untuk operasi pulsa pilih pulsa TAB. Ini menunjukkan file pulsa yang tersedia dan tombol di sebelah masing-masing yang akan menghasilkan rangkaian pulsa berdasarkan definisinya. Anda dapat melihat isi file dengan mengklik tautannya. Lebih banyak file pulsa dapat diunggah menggunakan browser file ip/edit. Mereka harus mulai dengan nama pulsa.

Direkomendasikan: