Penganalisis logika buatan sendiri. Peningkatan penganalisis logika dari Tiongkok. Proses pengambilan data dan perangkat lunak

Artikel ini menyajikan penganalisis logika sederhana yang bekerja dengan shell USBee v1.1.57 dan Logic v1.1.15. Dirakit pada sirkuit mikro umum CY7C68013A dari Cypress. Saya memiliki papan siap pakai dengan chip ini, dipesan dari situs Aliexpress. Ini dia penampakannya:

Saya ingin membuat port LPT di dalamnya, tetapi kemudian kebutuhan akan port tersebut hilang dan tidak diklaim. Saya membutuhkan penganalisa logika sederhana. Diputuskan untuk melakukannya di forum ini. Ada banyak sirkuit berdasarkan chip ini di Internet. Penting untuk menambahkan buffer untuk transfer data, memberikan perlindungan input dan kemampuan untuk memilih shell mana yang akan digunakan. Papan ekspansi ditempatkan di atas papan utama. Saya akan segera mengatakan bahwa diagram sirkuit, papan, firmware, dan semua yang diperlukan untuk bekerja dengan penganalisis logika ini ada di bagian bawah artikel. Chip 74LVC4245 digunakan sebagai buffer; Anda dapat menggunakan 74LVC8T245A; Fungsi pelindung pada input dilakukan oleh rakitan dioda BAV99. Maka lahirlah skema ini:


Gunakan jumper J1 untuk memilih arah transfer data. Dalam keadaan tertutup untuk penerimaan data, dalam keadaan terbuka untuk transmisi. Ada shell seperti USBee AX Test Pod. Ini berisi banyak utilitas pengujian yang dapat digunakan untuk menguji pengoperasian perangkat rakitan. Salah satu kemungkinannya adalah menghasilkan frekuensi berbeda pada pin XP3. Anda benar-benar tidak bisa menanyakannya sendiri. 8 frekuensi berbeda ditampilkan sekaligus. Anda juga dapat mengatur keluaran ke 0 atau 1 dan banyak pengujian lainnya. Gunakan jumper XP5 untuk memilih shell mana yang akan kita gunakan USBee v1.1.57 atau Logika v1.1.15. Firmware untuk shell yang berbeda masing-masing dimuat ke U2 dan U3. Jumper XP4 dilindungi dari penulisan. Ini akan diperlukan saat memulai Logic shell. Jumper J2 mengatur tegangan level input. Jika ditutup, maka level sinyal input harus 3,3 V. Level sinyal juga dapat diatur ke tegangan yang sama dengan tegangan yang disuplai ke perangkat yang didiagnosis, tetapi tidak lebih dari 5V. Untuk melakukan ini, buka J2 dan berikan tegangan suplai ke papan yang didiagnosis ke pin 10 XP3. Juga, jangan lupa untuk menghubungkan kabel umum penganalisis dengan papan yang sedang didiagnosis. Pertama, kita perlu memodifikasi papan utama, yaitu melepas chip memori 24C128.

Board saya juga tidak memiliki koneksi GND antara konektor USB dan GND CY7C68013A harus dihubungkan bersama.


Tidak ada perubahan lebih lanjut yang perlu dilakukan.

Sekarang kita membuat syal kita berukuran 41mm x 58mm. Hasilnya, kami mendapatkan hasil berikut:



Kami menghubungkan dua papan:



Untuk memulai, kita perlu mem-flash chip memori. Untuk melakukan ini, instal utilitas dari Cypress CySuiteUSB_3_4_7_B204. Kami menghapus jumper XP5 dari papan dan menghubungkan papan ke PC, perangkat yang tidak dikenal akan muncul di pengelola perangkat.


Instal driver dari file Driver_Cypress_win7 win8. Kami memberitahu petugas operator untuk mencari driver di folder ini. Sistem akan menginstal sendiri driver yang diperlukan. Perangkat baru akan muncul di pengontrol USB:


Luncurkan program yang diinstal Pusat Kontrol. Sebuah jendela akan terbuka di depan kita, di mana perangkat kita seharusnya berada di atas.

Pilih tab Opsi lalu Antarmuka EZ-USB:

Jendela berikut akan terbuka:


Kami tidak mengubah apa pun di sini. Kita hanya membutuhkan tombol S EEPROM. Gunakan jumper XP5 untuk memilih salah satu chip memori. Klik S EEPROM dan tunjukkan di mana firmware kami disimpan. Pilih firmware tergantung pada jenis memori dan klik "Buka". Angka-angka di akhir nama firmware menunjukkan jenis memori untuk firmware tersebut. Untuk 24C01 Anda harus memilih USBeeAX_01, dan untuk 24C02 USBeeAX_01.


Proses pengunggahan informasi akan dimulai. Jika firmware berhasil diinstal, seharusnya ada pesan seperti pada screenshot. Jumlah byte dapat bervariasi tergantung pada firmware yang dipilih.


Kami menekan tombol reset di papan dan melihat perangkat baru yang tidak dikenal di pengelola perangkat. Menginstal driver. Driver tidak akan diinstal dalam mode otomatis. Dalam mode manual, kami menunjukkan apa yang akan diinstal dari disk dan memilih driver dari folder Driver Cypress win7_win8. Ini berfungsi untuk saya di Windows 8.1 dengan driver EZ-USB FX1 No EEPROM (3.4.5.000).

15 Januari 2013 pukul 13:59

LogicDiscovery - penganalisis logika sederhana

  • DIY atau Lakukan Sendiri

Cukup sering, dalam kerajinan elektronik rumah tangga, ada kebutuhan untuk melihat sinyal ini atau itu, dan representasi digitalnya sudah cukup - apa yang ditransmisikan MK melalui I2C, apakah PWM dikonfigurasi dengan benar, dll. Jika Anda memiliki osiloskop yang bagus di tempat kerja, maka membeli osiloskop untuk rumah Anda terlalu mahal, terutama bila kebutuhannya hanya muncul sesekali.
Baru-baru ini, penganalisis logika yang murah (sekitar $50) telah muncul, tetapi satu pemikiran selalu menghentikan saya untuk membelinya: masalahnya sangat sederhana, mengapa tidak membuatnya sendiri dari bahan bekas?
Pada artikel ini saya akan memberi tahu Anda cara membuat penganalisis logika sederhana dengan biaya finansial minimal - yang Anda butuhkan hanyalah papan debugging Stm32F4Discovery.

Penganalisis logika (selanjutnya disebut LA)– perangkat yang dirancang untuk merekam, melihat dan menganalisis sinyal di sirkuit digital. Seperti osiloskop, LA dihubungkan dengan satu atau lebih probe ke rangkaian yang dianalisis, tetapi tidak seperti osiloskop, LA hanya mencatat dua status sinyal “0” dan “1”. Fungsi penting pesawat adalah kemampuannya untuk secara otomatis menguraikan sinyal yang direkam, misalnya untuk mengurai pertukaran data pada bus I2C atau SPI. Selain itu, LA dibedakan berdasarkan jumlah garis yang dianalisis lebih banyak dibandingkan dengan osiloskop: dari 8 pada penganalisis sederhana hingga ratusan pada sampel industri.
Proyek yang dijelaskan di sini - LogicDiscovery - adalah penganalisis logika yang kompatibel dengan SUMP, dibuat dalam format dekoder USB untuk PC. Ini memiliki karakteristik yang agak sederhana: 20MHz, 16 saluran, memori 24kB. Namun, ini cukup untuk berbagai tugas: analisis jalur UART, I2C, SPI (dalam beberapa megahertz), bus paralel, pengukuran karakteristik waktu sinyal, dll.

Mari kita mulai

Jadi, yang kita butuhkan hanyalah:
  • Papan pengembangan Stm32F4Discovery. Dari 500 rubel di ritel Moskow, atau mungkin sudah ada di tempat sampah Anda? Papan lain yang berbasis STM32F4 atau STM32F2 bisa digunakan, tetapi Anda harus memperbaiki sumbernya.
  • Beberapa kabel untuk dihubungkan ke rangkaian yang sedang dianalisis.
  • Firmware siap pakai tersedia di Google.Code. Sumbernya juga ada di sana.
  • Selain itu, Anda memerlukan klien untuk PC, saya merekomendasikan OLS.
Klien ditulis dalam Java, sehingga solusi yang dihasilkan tidak bergantung pada OS. Secara teoritis, Anda dapat menggunakan klien apa pun yang kompatibel dengan SUMP, tetapi di bawah ini saya akan menjelaskan cara bekerja dengan program khusus ini.
Stm32F4Discovery didukung oleh port mini-USB yang dapat digunakan untuk mem-flashnya. Untuk menggunakan fungsi pesawat, papan dihubungkan ke PC melalui port micro-USB. Untuk memberi daya pada papan dari port yang sama, sambungkan pin dengan jumper PA9 Dan 5V. PA9 terhubung langsung ke Vbus port micro-USB, dan 5V adalah input stabilizer yang menghasilkan daya untuk board. Untuk memeriksa pengoperasian, sambungkan port PA2 Dan PD0. Sinyal uji dihasilkan di PA2, dan PD0 adalah masukan pertama pesawat.

Papan dikenali oleh PC sebagai port COM; untuk Linux, drivernya standar dan harus sudah ada di kernel untuk Win, driver diunduh dari situs web ST. Setelah papan diidentifikasi, Anda dapat meluncurkan klien dan mulai bekerja.
Tapi pertama-tama, ada lalat di salep.

Pembatasan

Proyek ini menggunakan protokol SUMP terbuka. Protokol ini awalnya dikembangkan untuk pesawat berbasis FPGA, dan karena mikrokontroler masih kalah dengan mereka dalam hal merekam sinyal input dan menganalisis aliran data, tidak semua fungsi yang diterapkan di klien akan tersedia bagi kami:
  • Frekuensi perekaman maksimum – 20 MHz, aslinya hingga 200 MHz
  • Kompresi RLE dan penyaringan kebisingan tidak didukung.
  • Anda tidak dapat memilih grup saluran sembarangan, hanya grup saluran pertama (8 saluran), atau grup saluran pertama + kedua (16 saluran).
  • Pemicu bekerja bukan berdasarkan nilai, tetapi berdasarkan keunggulan (namun, menurut saya, ini sudah merupakan keuntungan).
  • Tidak ada dukungan untuk pemicu tingkat lanjut (Kompleks).
Pembatasan ini harus diingat ketika mengkonfigurasi klien. Dia tidak tahu apa-apa tentang batasan ini dan akan mengizinkan Anda memilih pengaturan apa pun. Hasil yang diperoleh dalam hal ini akan salah.

Kami menggunakan

Kami meluncurkan klien melalui file run.bat atau run.sh, tergantung pada OS yang digunakan. Anda dapat membaca tentang fungsi klien di halamannya; di sini saya akan menjelaskan proses mendapatkan sampel pertama dan pengaturan yang tunduk pada batasan.

Di menu "Menangkap", memilih item "Mulailah menangkap", buka jendela pengaturan perekaman. Di halaman pertama di lapangan ""Port penganalisis" kita pilih port tempat pesawat kita berada, tidak ada lagi yang perlu diubah. Tombol "Tampilkan metadata perangkat" Anda dapat memeriksa koneksi:

Di halaman kedua kami menunjukkan parameter penangkapan. Kami tidak menyentuh dua poin pertama,
"Tingkat pengambilan sampel" tidak lebih tinggi dari 20 MHz (jika Anda menentukan lebih banyak, papan masih menggunakan 20 MHz, tetapi klien akan berpikir bahwa nilai yang ditentukan digunakan, secara umum, itu tidak masuk akal).
"Grup saluran": 0 – kami menggunakan satu grup saluran, yaitu jalur PD0-PD7, atau 0 dan 1 – kami menggunakan dua grup saluran - jalur PD0-PD15.
"Ukuran rekaman": untuk satu grup saluran – nilai apa pun, untuk dua grup – tidak lebih dari 12kB (klien akan memperingatkan jika nilai yang salah dipilih di bidang ini).
Kami tidak menyentuh kotak centang di halaman ini, kotak tersebut tidak didukung:

Halaman "Pemicu"- hal yang paling menarik. Kami mencentang kotak pertama untuk mengaktifkan pemicu.
"Rasio Sebelum/Sesudah" memungkinkan Anda menentukan, dalam persentase, berapa banyak data yang akan disimpan sebelum buffer dipicu. Setelah mengklik "Menangkap" Pesawat segera mulai merekam data, menambahkannya ke buffer siklik, dan ketika pemicu diaktifkan, pesawat menghitung persentase waktu yang ditentukan di bidang Setelah dan mengirimkan data ke PC.
"Jenis"- Hanya "Sederhana", "Kompleks" - tidak didukung.
"Mode"- “Paralel” saja.
"Masker"- ini adalah garis di mana pemicu akan menunggu penurunan sinyal; letakkan bendera di posisi nol untuk memicu pada garis PD0
"Nilai"- tepi sinyal di mana pemicu akan terpicu. Bendera dicentang – ujung depan. Tidak dicentang – belakang:

Untuk memeriksa pengoperasian, sambungkan port PD0 dan PA2 (sinyal uji UART dikeluarkan pada port ini) dengan jumper.

Itu saja, klik "Menangkap" dan lihat sinyal yang diterima (Ctrl+F - skala ikhtisar):

Jika tidak ada yang terjadi, itu berarti Anda telah menyetel pemicu untuk menyala pada jalur yang salah, atau tidak ada sinyal sama sekali - periksa pengaturan dan koneksi papan. Pemicunya dapat diluncurkan secara manual dengan menekan tombol Pengguna (tombol biru).

Tindakan pencegahan keamanan

Ingat: Anda terhubung langsung ke port mikrokontroler! Tidak ada perlindungan selain dioda yang terpasang pada MK di papan. Oleh karena itu, pertama-tama pastikan bahwa sinyal yang dipelajari memiliki tegangan maksimum 3,3V, dalam kasus ekstrim 5V, tetapi disarankan untuk menambahkan resistor pelindung antara sumber sinyal dan pesawat.

Saat menghubungkan ke rangkaian yang sedang dianalisis, jangan lupa untuk menghubungkan ground terlebih dahulu, baru kemudian jalur sinyal. Terutama ketika rangkaian yang dianalisis ditenagai oleh catu dayanya sendiri, dan bukan dari PC yang sama yang terhubung dengan pesawat.

0

Vassilis Serasidis Penganalisis logika adalah alat yang memungkinkan Anda melihat dan menganalisis urutan logika 0 dan 1 dalam sinyal digital. Misalnya, Anda dapat mempelajari sinyal digital dari penerima demodulator IR TSOP-1736, sinyal keluaran dan masukan dari chip MAX232, serta bus I2C (jalur jam dan jalur data) di banyak perangkat elektronik. Pada artikel ini kita akan melihat desain miniatur penganalisis logika 4 saluran dengan layar LCD dari ponsel Nokia 5110/3110. Dasar dari desainnya adalah mikrokontroler Atmel ATmega8; selain itu, beberapa komponen terpisah juga digunakan. Karakteristik utama perangkat: penganalisis logika 4 saluran; kemampuan mempelajari sinyal dengan frekuensi hingga 400 kHz; tegangan masukan hingga +5 V; Layar LCD dengan resolusi 84×48 piksel; ditenagai oleh 4 baterai 1,2 V, tegangan suplai maksimum 4,8 V; memori: dari 3,7 ms untuk sinyal kecepatan tinggi hingga 36 detik untuk sinyal kecepatan rendah; tombol kontrol; desain sederhana. Diagram skema Gambar 1 menunjukkan diagram skema perangkat. Perlu segera dicatat bahwa perangkat ini ditenagai oleh 4 baterai dengan tegangan masing-masing 1,2 V.
Klik untuk memperbesar Perhatian!!! Catu daya dari 4 buah baterai dengan tegangan 1,5 V tidak dapat diterima untuk rangkaian perangkat ini, karena tegangan 6 V dapat merusak mikrokontroler dan layar LCD.
Saklar S1 dirancang untuk menyuplai daya. Resistor penarik R2-R5 dipasang untuk mencegah munculnya data palsu pada input digital perangkat karena pengaruh medan elektromagnetik atau ketika jari menyentuh probe sinyal. LED1 dirancang untuk menunjukkan keberadaan sinyal pada input digital perangkat dan, oleh karena itu, awal perekaman sinyal ke dalam memori. Rangkaian ini menggunakan indikator LCD dari handphone Nokia 3310/5510, dirancang untuk beroperasi dengan tegangan suplai 3,3 V - 5,0 V, namun tegangan maksimum untuk lampu latar layar adalah 3,3 V, sehingga rangkaian memiliki tiga 1N4007 dioda dihubungkan secara seri (D1-D3) melalui saluran listrik lampu latar layar. Berkat dioda, tegangan akan turun menjadi 2,7 V dan cukup untuk menyalakan lampu latar. Proses pengambilan data dan perangkat lunak Perlu diketahui bahwa penulis telah menyiapkan dua versi firmware mikrokontroler. Awalnya, untuk penganalisis logika versi 1.00, lingkungan pengembangan terintegrasi AVR Studio 4.18 digunakan, tetapi kemudian penulis mengkompilasi ulang kode sumber untuk AVR Studio 5 - versi 1.01. Setelah mengkompilasi ulang lingkungan pengembangan untuk versi 5 dan menguji perangkat lebih lanjut, terlihat adanya peningkatan dalam stabilitas sinyal yang ditangkap. Sinyal direkam ke dalam buffer memori RAM internal, yang dirancang untuk 290 sampel. Buffer data dibentuk sebesar 870 byte (untuk program mikrokontroler versi 1), dimana 2 byte digunakan untuk counter dan 1 byte untuk menginformasikan saluran input. Pada versi 1.01, buffer data dikurangi menjadi 256×3=768 Bytes untuk meningkatkan kecepatan pengambilan data, karena Variabel ukuran buffer adalah 8-bit, bukan 16-bit, yang digunakan pada perangkat lunak versi pertama. Setelah daya dialirkan, mikrokontroler masuk ke mode tunggu pulsa di salah satu dari 4 input perangkat. Ketika pulsa masukan terdeteksi, mikrokontroler mulai menghitung waktu hingga pulsa berikutnya tiba di salah satu dari 4 masukan. Durasi sampel disimpan dalam variabel “counter” 16-bit. Setelah variabel ini meluap, informasi tentang status 4 input dan nilai penghitung disimpan dalam buffer dan nilai alamatnya bertambah tiga (2 byte untuk penghitung dan 1 byte untuk informasi tentang jalur input). Proses ini diulangi hingga mikrokontroler mengisi seluruh buffer (870/3=290 sampel atau pulsa). Proses pencatatan sinyal ke dalam memori mikrokontroler ditunjukkan pada Gambar 2. Setelah buffer terisi, seluruh data yang terakumulasi ditampilkan pada layar LCD dalam bentuk osilogram. Pengguna dapat mengontrol bentuk gelombang - memindahkannya ke kiri (tombol S3) atau ke kanan (tombol S4) untuk melihat seluruh rangkaian pulsa yang disimpan. Jika sinyal kecepatan rendah direkam, pengguna dapat mengubah skala sebanyak 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096 atau 8192 dengan menekan tombol S2. Saat memprogram mikrokontroler, Anda harus mengatur bit Fuse sesuai dengan gambar. Jenis papan sirkuit tercetak dan lokasi komponen

Karakteristik utama perangkat:

  • hingga 32 saluran masukan;
  • memori 128 KB per saluran;
  • frekuensi pengambilan sampel hingga 100 MHz;
  • masukan jam eksternal;
  • semua input kompatibel dengan logika 3,3 V dan 5 V;
  • ukuran buffer prefetch/postfetch yang dapat dikonfigurasi adalah kelipatan 8 KB;
  • Generator jam internal 16-bit;
  • beberapa mode sinkronisasi internal;
  • penundaan sinkronisasi yang dapat diprogram;
  • penghitung acara sinkronisasi yang dapat diprogram;
  • masukan sinkronisasi eksternal;
  • komunikasi dengan PC melalui LPT (mode EPP) atau antarmuka USB;
  • Beberapa versi aplikasi PC untuk berbagai sistem operasi.

Elemen utama penganalisis logika adalah FPGA, diproduksi oleh perusahaan, yang menjalankan semua fungsi utama. Diagram skema perangkat ditunjukkan pada Gambar 1.

Osilator IC4 (IC6), yang dipinjam dari motherboard komputer lama, digunakan sebagai sumber jam untuk FPGA. Terlepas dari kenyataan bahwa osilator dirancang untuk beroperasi pada tegangan 5 V, tidak ada masalah yang teridentifikasi dalam pengoperasian perangkat ketika ditenagai oleh tegangan 3,3 V.

Chip RAM eksternal berkecepatan tinggi digunakan untuk menyimpan sampel.

Untuk memberi daya pada perangkat, digunakan sumber eksternal dengan tegangan keluaran hingga 15 V. FPGA dan RAM memiliki tegangan suplai 3,3 V, sehingga dipasang pengatur tegangan 3,3 V seri LD1117DT33.

Konektor port paralel K7 terletak di papan penganalisis logika dan terhubung langsung ke FPGA. Papan sirkuit penganalisis logika memiliki dua sisi, menggunakan komponen pemasangan permukaan dan komponen bertimbal konvensional. Tampilan papan sirkuit tercetak ditunjukkan pada Gambar 2.

Komentar. Alih-alih pin 40 (Vss) pada chip SRAM, pin 39 pada chip ini dihubungkan ke ground. Solusi: Hubungkan pin 39 dan 40 secara bersamaan pada PCB (pin 39 tidak digunakan pada chip SRAM).

Untuk terhubung ke komputer pribadi melalui USB, Anda harus menggunakan adaptor khusus, diagramnya ditunjukkan pada Gambar 3.

Adaptor antarmuka USB untuk penganalisis logika dipasang pada chip seri FT2232C yang diproduksi oleh FTDI. Chip ini menggabungkan fungsi dua chip terpisah FT232BM dan FT245BM. Ini memiliki dua saluran I/O yang dikonfigurasi secara terpisah. Poin utama konfigurasi FT2232C untuk digunakan sebagai bagian dari perangkat adalah catu daya dari antarmuka USB dan mode emulasi bus mikrokontroler (mode Emulasi Bus Host MCU). Mode ini diubah menjadi protokol EPP menggunakan multiplexer IC3 74HCT4053D. Karena decoding langsung sinyal /DST, /AST dan RD/WR dapat menyebabkan konflik waktu, sinyal tambahan A8 digunakan, yang digunakan sebagai sinyal RD/WR (baca/tulis) selama periode transmisi data melalui protokol EPP .

Konektor JTAG (CON2) digunakan untuk mengkonfigurasi FPGA - ini untuk pengembangan di masa depan, saat ini antarmuka ini tidak digunakan.

EEPROM (IC2) seri 93LC56 menyimpan data konfigurasi untuk FT2232C dan diperlukan agar antarmuka yang dapat diprogram berfungsi dengan baik. Untuk memprogram chip ini, digunakan utilitas FT_Prog (sebelumnya disebut MProg). Utilitas ini dan driver FT2232C tersedia untuk diunduh di situs web FTDI.

Papan sirkuit tercetak adaptor dirancang satu sisi, yang menyederhanakan pembuatannya.

Ada juga adaptor antarmuka USB versi B 1.0 (Gambar 5). Versi ini dibedakan dengan tidak adanya konektor JTAG dan papan sirkuit tercetak, yang dirancang untuk diintegrasikan ke dalam badan konektor CANNON 25. Tampilan adaptor rakitan ditunjukkan pada Gambar 6.

A) B)
Gambar 6. Penampilan adaptor antarmuka USB versi A 1.1 (a) dan versi B 1.0 (b)

Ada juga versi lain dari rangkaian penganalisis logika (Gambar 7), di mana antarmuka USB dan LPT sudah terintegrasi. Penulis opsi ini adalah Bob Grieb dan ketika mengembangkan sirkuit, lingkungan TinyCAD digunakan, papan sirkuit tercetak untuk itu dikembangkan di editor FreePCB.

Vassilis Serasidis

Penganalisis logika adalah alat yang memungkinkan Anda melihat dan menganalisis urutan logika 0 dan 1 dalam sinyal digital. Misalnya, Anda dapat mempelajari sinyal digital dari demodulator penerima IR tipe TSOP-1736, sinyal keluaran dan masukan dari sirkuit mikro, serta bus I2C (jalur jam dan jalur data) di banyak perangkat elektronik.

Pada artikel ini kita akan melihat desain miniatur penganalisis logika 4 saluran dengan layar LCD dari ponsel Nokia 5110/3110. Dasar dari desainnya adalah mikrokontroler; selain itu, beberapa komponen terpisah juga digunakan.

Karakteristik utama perangkat:

  • Penganalisis logika 4 saluran;
  • kemampuan mempelajari sinyal dengan frekuensi hingga 400 kHz;
  • tegangan masukan hingga +5 V;
  • Layar LCD dengan resolusi 84×48 piksel;
  • ditenagai oleh 4 baterai 1,2 V, tegangan suplai maksimum 4,8 V;
  • memori: dari 3,7 ms untuk sinyal kecepatan tinggi hingga 36 detik untuk sinyal kecepatan rendah;
  • tombol kontrol;
  • desain sederhana.

Diagram skematik

Gambar 1 menunjukkan diagram skema perangkat. Perlu segera dicatat bahwa perangkat ini ditenagai oleh 4 baterai dengan tegangan masing-masing 1,2 V.

Perhatian!!!

Catu daya dari 4 buah baterai dengan tegangan 1,5 V tidak dapat diterima untuk rangkaian perangkat ini, karena tegangan 6 V dapat merusak mikrokontroler dan layar LCD.

Saklar S1 dirancang untuk menyuplai daya. Resistor penarik R2-R5 dipasang untuk mencegah munculnya data palsu pada input digital perangkat karena pengaruh medan elektromagnetik atau ketika jari menyentuh probe sinyal. LED1 dirancang untuk menunjukkan keberadaan sinyal pada input digital perangkat dan, oleh karena itu, awal perekaman sinyal ke dalam memori.

Rangkaian ini menggunakan indikator LCD dari handphone Nokia 3310/5510, dirancang untuk beroperasi dengan tegangan suplai 3,3 V - 5,0 V, namun tegangan maksimum untuk lampu latar layar adalah 3,3 V, sehingga rangkaian memiliki tiga dioda dihubungkan secara seri (D1-D3) menampilkan saluran listrik lampu latar. Berkat dioda, tegangan akan turun menjadi 2,7 V dan cukup untuk menyalakan lampu latar.

Proses pengambilan data dan perangkat lunak

Perlu diketahui bahwa penulis telah menyiapkan dua versi firmware mikrokontroler. Awalnya, untuk penganalisis logika versi 1.00, lingkungan pengembangan terintegrasi AVR Studio 4.18 digunakan, tetapi kemudian penulis mengkompilasi ulang kode sumber untuk AVR Studio 5 - versi 1.01. Setelah mengkompilasi ulang lingkungan pengembangan untuk versi 5 dan menguji perangkat lebih lanjut, terlihat adanya peningkatan dalam stabilitas sinyal yang ditangkap.

Sinyal direkam ke dalam buffer memori RAM internal, yang dirancang untuk 290 sampel. Buffer data dibentuk sebesar 870 byte (untuk program mikrokontroler versi 1), dimana 2 byte digunakan untuk counter dan 1 byte untuk menginformasikan saluran input. Pada versi 1.01, buffer data dikurangi menjadi 256×3=768 Bytes untuk meningkatkan kecepatan pengambilan data, karena Variabel ukuran buffer adalah 8-bit, bukan 16-bit, yang digunakan pada perangkat lunak versi pertama.

Setelah daya dialirkan, mikrokontroler masuk ke mode tunggu pulsa di salah satu dari 4 input perangkat. Ketika pulsa masukan terdeteksi, mikrokontroler mulai menghitung waktu hingga pulsa berikutnya tiba di salah satu dari 4 masukan. Durasi sampel disimpan dalam variabel “counter” 16-bit. Setelah variabel ini meluap, informasi tentang status 4 input dan nilai penghitung disimpan dalam buffer dan nilai alamatnya bertambah tiga (2 byte untuk penghitung dan 1 byte untuk informasi tentang jalur input). Proses ini diulangi hingga mikrokontroler mengisi seluruh buffer (870/3=290 sampel atau pulsa). Proses perekaman sinyal ke dalam memori mikrokontroler ditunjukkan pada Gambar 2.

Setelah buffer terisi, seluruh data yang terakumulasi ditampilkan pada layar LCD dalam bentuk osilogram. Pengguna dapat mengontrol bentuk gelombang - memindahkannya ke kiri (tombol S3) atau ke kanan (tombol S4) untuk melihat seluruh rangkaian pulsa yang disimpan. Jika sinyal kecepatan rendah direkam, pengguna dapat mengubah skala sebanyak 2, 4, 8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096 atau 8192 dengan menekan tombol S2.

Saat memprogram mikrokontroler, Anda harus mengatur bit Fuse sesuai dengan gambar.

Jenis papan sirkuit tercetak dan lokasi komponen

Demonstrasi pengoperasian perangkat

Unduhan

Diagram skematik, gambar papan sirkuit tercetak, kode sumber dan file untuk firmware mikrokontroler (v1.0, AVR Studio 4.18) -

Kode sumber dan file untuk firmware mikrokontroler (v1.01, AVR Studio 5) -

  • Sejauh yang saya pahami, layar Anda memiliki karet gelang dan dipasang pada syal buatan sendiri, mis. karet gelang konduktif menyentuh bekas yang Anda potong pada syal. Jika demikian, maka perlu diingat - ini adalah titik terlemah dari desain... Sudahkah Anda memeriksa (membaca) bit Fuse? Apakah sudah terpasang dengan benar? Saya tidak mengecualikan masalah pada tampilan itu sendiri. Saya akan melihat kode sumbernya, mungkin ada sesuatu yang dapat dikonfigurasi/diubah terkait tampilan...
  • Vadzz, ya, saya mengerti itu, tempat yang paling rentan.. Saya menemukan semacam ponsel dengan jarak kontak yang mirip dengan layar saya. Ketika saya punya waktu, saya akan mencoba melakukannya.. Pertanyaannya adalah apakah layarnya berfungsi, apakah saya membakar pengontrolnya (jika memungkinkan). Sementara itu, saya akan meninggalkan ide ini. Sangat sulit untuk mendapatkan layar siap pakai ini dan biayanya lebih mahal daripada yang dibutuhkan perangkat ini.. Saya lebih suka membuat perangkat yang sama, hanya mengeluarkan data ke komputer melalui USB. (menurut buku teks http://eldigi.ru/site/comp/18.php). Saya masih bekerja di komputer dan melakukan semuanya melalui USB. Atau seorang teman sedang mengerjakan tesis tentang miniatur osiloskop usb. Sirkuit berdasarkan elemen AtTiny tunggal dan kuarsa. +mengoutput data ke dalam suatu program di komputer dalam bentuk diagram waktu/garis.. Saya ambil dari dia.. Saya akan membuat softwarenya.. Saya mulai membuat benda ini karena terlihat sangat indah dan megah dari bagian luar;) Dan itu terutama berhasil.. yah, tidak apa-apa, saya akan mulai bekerja dengan pemancar Cina, saya harus melakukannya.. Di sana Anda sudah perlu melihat impuls dan menganalisisnya.. Dan terima kasih untuk membantu)
  • Teman-teman, coba lihat) Tetap saja, saya tidak bisa menahan diri... Saya masih berpikir untuk menyelesaikan panel depan.
  • Saya senang semuanya berjalan dan berfungsi, terlihat normal. Cukup beri tahu kami lebih detail apa masalahnya (mungkin tampilannya tidak berfungsi sama sekali), informasi Anda akan berguna bagi banyak orang (jika bukan rahasia, tentu saja). Terima kasih.
  • Masalahnya ada di layar. Lalu saya membeli bukan merah, tapi biru, jadi kontaknya masih tidak cocok lokasinya, dan namanya sedikit berbeda. Koneksi (pada diagram\tampilan biru): Vcc-Vcc GND-GND Rst-Rst SCE-CE D\C-DC DN-Din SKLK-CLK LED-BL Jika ada keinginan, saya akan mencoba memasukkan\start my tampilan lama. Saya akan lihat apakah sudah terbakar... kalau tidak, saya akan mendapat banyak masalah dengannya.
  • Tes kecil pada perangkat, beberapa bug. 1) Saat memutar ulang, kita bergerak maju untuk waktu yang lama, lalu mundur, dan pada titik tertentu ia menolak untuk mundur dan terjebak pada nilai tertentu. Anda dapat menggulir maju dan mundur lagi dan setelah itu macet pada nilai yang berbeda.. Ini fotonya, meskipun tidak ada yang terlihat di sini http://s017.radikal.ru/i433/1306/57/cf1dfbd2f106.jpg 2) Saat memutar ulang, diagram sementara http://s60.radikal.ru/i169/1306/33/1c23e0d9815c.jpg http://i066.radikal.ru/1306/9f/c894839ca1fd.jpg 3) Saat mengubah zoom, memutar ulang direset ke posisi ke-0 (tetapi tidak selalu). Kita perlu memperbaiki sesuatu... Saya rasa kita dapat menambahkan beberapa hal menarik ke proyek ini: Tombol sentuh (diimplementasikan dengan cara yang sederhana, hanya tiga resistor MOM) Voltmeter (GND selalu terhubung, jadi alangkah baiknya jika melakukan sesuatu pada ADC, karena menghubungkan multimeter setiap saat tidak sama, tetapi yang ini akan membantu. Ini mengukur hingga 5V, hanya untuk kamera digital).
  • Osiloskop (Saya tidak tahu caranya, tapi itu akan sangat bagus. Saya pikir masalah utamanya ada pada tampilan).
  • Koneksi melalui USB ke PC. Menampilkan diagram waktu dalam suatu program adalah hal yang sakral. Jika Anda membuat osiloskop, maka akan lebih mudah untuk menampilkan semua yang ada di program.. Akan terlihat seperti ini (program saya) http://s48.radikal.ru/i119/1306/eb/9c25ff0d3d7b.png Anda bisa juga mengubah sesuatu dalam pengaturan dengan perangkat program..
  • Omong-omong, hal ini disimulasikan dengan cukup baik di Proteus.
  • Saya merakit perangkat. Menyala dan menunjukkan. Jika ada resistor 33k (dan tidak ada sumber sinyal), maka ketika Anda menyalakannya Anda dapat melihat segala macam sisir. Dengan resistor dan sumber (TSOP IR dan perangkat spi) - semua saluran genap. Tidak ada reaksi sama sekali. Dimana kita harus menggali?
  • Inputnya disingkat menjadi + dan bukan ke ground sehingga terlihat. Saya harus membalikkan keluaran TSOP.
  • Firmware dengan kesalahan yang diperbaiki dan dengan tambahan (UART, Pengukur frekuensi, Editor celah sebelum pengukuran, serta program lain untuk komputer. Deskripsi Analizator.exe: Analizator_PC V2.1 Analizator.exe Penganalisis logika 4 saluran. Deskripsi DSN: Analizator_proteus http :// www.fayloobmennik.net/4274643 Analizator.hex Deskripsi: Analizator_Atmega8 http://www.fayloobmennik.net/4291611 Penganalisis logika 4 saluran Deskripsi: Analizator_shema http://www.fayloobmennik.net/4285824 opsi ke-2 http: //radikal.ru /fp/SOURCES UNTUK ANALIZER YANG TERTARIK. AnalizatorKSA.zip Jangan ragu semuanya berfungsi sebagaimana mestinya! Anda sekarang memiliki kesempatan untuk memeriksanya di simulator, serta mempelajari kode sumbernya .Saya akan menyelamatkan Anda dari pekerjaan rutin. Jangan menilai saya karena komentar saya di sana. Itu adalah draf mereka sendiri. Selain itu, ini adalah draf, bukan produk komersial. Tujuan saya tercapai, jadi drafnya tetaplah draf apapun yang ada pada mereka, bahkan merobek hati mereka. Dan hanya ada satu tujuan - menjadikannya nyaman, lebih akurat, dan dapat diandalkan. Anda dapat membaca semua yang telah saya lakukan di 2 program saya untuk PC di bagian “Bantuan”. Untuk menganalisis dan membandingkan hasil yang diperoleh, saya memposting teks sumber dari program pengukuran utama Vasilisa Serasidisa. Lihat dan bandingkan berapa banyak siklus jam yang dihabiskan untuk pengukuran untuk saya dan dia. Dan pastikan programmer terbaiknya adalah orang RUSIA!!! Saya akan menambahkan: Sejak saya merancang 2 versi penganalisis, saya telah memecahkan banyak masalah terkait pertukaran digital melalui bus CAN dan konsol I2C, dll. Versi ATmega48 bahkan lebih disukai dengan protokol berkecepatan tinggi. Misalnya, CAN 140 Kbit dianalisis dengan mudah! berbeda dengan alat analisa Digan yang terkenal. Dan dia sendiri seukuran flash drive. Semoga beruntung semuanya! Izmerenie.txt SAYA MEMPOSTING VERSI BARU (versi ke-3) DARI ANALIZER YANG LEBIH KUAT, SERTA VERSI SEBELUMNYA DENGAN TAMBAHAN DAN LINK FILE PROTEUS KE ARSIP http://www.fayloobmennik.net/5569369
  • 1. Siapa yang mengulangi versi aslinya - dari Serads, apakah ada bug serius yang membuat perangkat tidak dapat diterapkan sama sekali - seperti byte pertama selalu dilewati, dll? Di atas mereka menulis tentang "menampilkan diagram", tetapi saya ingin diagram tersebut dapat diandalkan :). 2. Sergey7 tidak memposting kode sumber, sehingga tidak memungkinkan kami mengevaluasi fungsinya sepenuhnya. Jika Anda membuat yang asli terlebih dahulu, apakah perubahan perangkat keras diperlukan untuk pengembangan perangkat lebih lanjut guna menyelesaikan Sergei7?
  • Saya mengirimi Anda pesan dan tidak ada tanggapan. Apakah sudah tiba?
  • mungkin tidak. ... :(Terima kasih atas sumbernya! Saya akan melihatnya sebentar lagi.....
  • Senang bisa membantu! :D
  • Firmware dengan tambahan (UART, Pengukur frekuensi, Gap editor sebelum pengukuran tidak ada di AnalizatorKSA.zip
  • Mungkin seseorang memiliki stempel awam?
  • Lihatlah versi baru yang saya posting. Dan yang sebelumnya, dimodifikasi juga (dengan firmware, file proteus dan program tambahan).
  • Apa yang mereka tulis dan bisakah saya mendapatkan diagram lengkapnya? Saya masih tidak mengerti apa yang harus dikumpulkan dan berapa persen lagi yang ditulisnya untuk transmisi melalui UART
  • Sergei Savenkov

    semacam ulasan "pendek"... seolah-olah mereka sedang terburu-buru di suatu tempat