
Pada artikel ini saya akan berbicara tentang bagaimana liquid crystal display (LCD) bekerja dalam hal sinyal, cara memecahkan kode dan menggunakan sinyal-sinyal ini untuk keperluan mereka sendiri.
Terkadang timbul pertanyaan tentang pengoperasian LCD. Misalnya, layar perangkat telah mengalir, tetapi tidak ada yang menggantikannya dengan:

Atau layar LCD sangat kecil, tidak terlihat dalam gelap, dan tugasnya adalah mengubah output, bukan LCD ke LED atau tampilan lainnya.
Saya juga menemui masalah seperti itu: ada AC, dan untuk meningkatkan karakteristik operasionalnya perlu menyalakan kipas tambahan ketika simbol "kepingan salju" muncul di layar.

Saya pikir Anda dapat menemukan banyak masalah seperti itu, dan tugas umumnya adalah mempelajari cara memecahkan kode informasi yang ditampilkan pada LCD dan menggunakannya untuk tujuan yang dimaksud.
Indikator kristal cair, karena karakteristik fisiknya, memerlukan pemenuhan dua persyaratan utama:
- Tegangan antara elektroda harus setidaknya tiga volt.
- Hal ini diperlukan untuk menerapkan tegangan bolak-balik ke elektroda tanpa komponen DC.
Jika Anda tidak memenuhi persyaratan pertama dan menerapkan tegangan kurang dari 3 volt antara elektroda biasa dan elektroda segmen, maka segmen tersebut tidak akan terlihat.
Jika persyaratan kedua tidak terpenuhi, maka indikator dapat menurun dengan sangat cepat (kristal cair akan memburuk). Indikator masalah pertama sangat menderita terutama dari kegagalan untuk memenuhi persyaratan kedua, dan mungkin ada situasi di mana pengguna selalu memiliki waktu pada indikator ketika baterai habis dalam waktu.

LCD menggunakan elektroda umum dan segmen. Segmen elektroda terletak di satu sisi LCD, umum - di sebaliknya. Di antara mereka adalah kristal cair. Jika tegangan bolak-balik diterapkan, kristal cair akan mengubah bidang polarisasi dan, dengan mempertimbangkan filter polarisasi di sisi indikator, tidak akan melewati cahaya melalui diri mereka sendiri, dan segmen akan ditampilkan dalam warna hitam.

Ini adalah foto indikator kalkulator di mana elektroda terlihat.

Seperti yang saya katakan, tegangan bolak-balik harus diterapkan antara segmen dan elektroda umum. Frekuensinya harus lebih dari 30 hertz. Alih-alih sinusoid, sinyal baik dari bentuk khusus atau berliku-liku diberikan (berliku-liku adalah sinyal periodik dari bentuk persegi panjang di mana durasi dan jeda pulsa sama), yang juga dapat dianggap, dengan beberapa asumsi, sinusoid disederhanakan.
LCD paling sederhana memiliki satu elektroda bersama. Jumlah kesimpulan dalam indikator sama dengan jumlah segmen plus total output.
Berliku dimasukkan ke kesimpulan umum. Tetapi pada yang tersegmentasi - juga berliku-liku. Perbedaannya adalah bahwa jika segmen akan ditampilkan, maka pulsa dan interval (fase, relatif terhadap sinyal elektroda umum) dipertukarkan. Jika segmen tidak ditampilkan, maka fase bertepatan.

Dari sudut pandang indikator, ketika fase bertepatan, tegangan antara elektroda selalu 0 volt. Dan jika fase tidak bersamaan, maka antara elektroda tegangan selalu bergantian dan sama dengan 3 volt.
Output ke indikator dengan satu elektroda umum cukup sederhana, tetapi jika jumlah segmen besar, maka biaya kabel indikator dan reservasi jumlah port output yang sesuai pada pengontrol akan meningkat.
Untuk mengurangi jumlah segmen, digunakan dua atau lebih elektroda umum. Di satu sisi, ini secara signifikan mengurangi jumlah output segmen, tetapi di sisi lain, ini mempersulit output dalam hal pembangkitan sinyal. Gagasan dalam multiplexing sinyal adalah bahwa satu output segmen bertanggung jawab untuk menampilkan dua atau lebih segmen.
Jika dalam suatu indikator dengan satu sinyal umum satu segmen secara konstan dikontrol, maka selama multiplexing jumlah interval waktu ketika satu segmen dikontrol dibagi dengan jumlah sinyal umum. Artinya, segmen dengan sinyal umum COM1 pertama-tama dikontrol (ditampilkan atau padam), pada segmen interval waktu berikutnya yang terhubung dengan sinyal umum COM2, dll., Dikontrol oleh jumlah sinyal umum.
Karena interval waktu ketika satu segmen dikontrol berkurang, waktu tampilan berkurang, dan semakin banyak sinyal umum, semakin rendah kontras gambar secara keseluruhan.
Alih-alih berliku-liku sederhana dengan beberapa sinyal umum, perlu untuk menerapkan sinyal dari bentuk khusus dengan tegangan menengah. Tegangan menengah diperlukan untuk memenuhi dua persyaratan yang saya jelaskan di atas.
Saya merekam video pendek di mana Anda dapat melihat pada osiloskop osiloskop dari jam nyata dengan satu elektroda umum dan kalkulator dengan tiga yang umum.

Ini adalah bagian dari sirkuit kalkulator MK-62 Electronics. Indikator menggunakan tiga elektroda umum. Diagram menunjukkan kabel dari elektroda umum dan segmen.
Skema lengkap tersedia di
sini .

Untuk kenyamanan, saya telah mengembangkan bidang tanggung jawab elektroda bersama. Dalam diagram, elektroda umum ditetapkan sebagai O1, O2 dan O3.
Saya juga mewarnai segmennya, sehingga nyaman untuk melihat segmen mana yang bertanggung jawab atas kesimpulan segmen.

Diagram bentuk pulsa dari sinyal yang diterapkan pada segmen dan kesimpulan umum tampak menyeramkan pada pandangan pertama. Tetapi jika Anda melihat, Anda dapat memahami bagaimana ini bekerja:

Tiga plot pertama berhubungan dengan elektroda biasa. Saya mengembangkannya sesuai dengan angka indikator dalam diagram.

Kami hanya akan tertarik pada "rak" berwarna dari sinyal yang levelnya berada di puncak gelombang. Ini adalah saat-saat ketika keluaran tersegmentasi dikendalikan (ditampilkan atau dimatikan).
Dalam diagram ini terlihat bahwa pertama, di bagian bawah, "O2" bekerja, lalu O1, lalu O3. Setelah ini, rak-rak dengan cara yang sama (hanya di atas), pertama di O2, lalu di O1 dan kemudian O3. Jadi mereka bergantian, mengamati kondisi tegangan bolak-balik.

Sekarang diagram dari sinyal umum “diuraikan”, Anda dapat melihat diagram dari sinyal segmen, yang juga saya lukis. Plot-plot ini berasal dari tampilan aktual pada indikator angka 0. (dengan sebuah titik) dalam keakraban pertama.
Bentuk pulsa segmen dan sinyal umum dipilih dengan perhitungan pemenuhan persyaratan pertama - tegangan antara elektroda harus sama dengan tiga volt. Kristal cair dan filter polarisasi dirancang untuk ditampilkan hanya pada tiga volt, dan jika tegangannya lebih rendah, segmen tidak akan terlihat.
Anda dapat menentukan segmen mana yang akan ditampilkan atau keluar secara independen ketika sinyal umum yang sesuai tiba.
Sekarang - setelah kami menemukan prinsip memetakan segmen, Anda dapat membuat decoder yang cukup sederhana.
Ketika saya menulis bahwa tegangan bolak-balik harus diterapkan antara elektroda, ini benar dan benar, tetapi hanya dari sudut pandang elektroda. Kami mengambil keuntungan dari penemuan Einstein besar, yang mengatakan: "semuanya relatif," dan menempelkan diri kita pada salah satu kutub sinyal (negatif). Semua level lainnya akan secara otomatis menjadi positif.
Dalam diagram di atas, para pengembang telah pindah dari tegangan multi-kutub dan membuat sinyal dengan level 0 dan -3 volt.
Karena logika perangkat kita positif, kita akan mengasumsikan bahwa tegangan yang ditampilkan dalam rangkaian sebagai -3 volt di sirkuit kita akan nol, dan tegangan 0 volt ditambah tiga volt.
Dalam skema kami, ketika rak paling bawah tiba, itu akan menjadi 0 volt (sinyal GND di-ground). Ketika rak paling atas datang, itu +3 volt. Dan voltase yang tersisa dibuat untuk membentuk sinusoid, dan kita akan mengabaikannya.

Kita perlu menerapkan dua pembanding. Komparator berfungsi sederhana: ia memiliki dua input (positif dan negatif) dan satu output. Ketika tegangan pada input positif lebih besar dari pada negatif, satu muncul pada output, dan sebaliknya - ketika tegangan pada output positif kurang dari negatif, maka output adalah nol.
Komparator pertama (garis hijau) akan melacak kedatangan rak paling atas dari keseluruhan sinyal. Komparator kedua (garis merah) akan melacak kedatangan sinyal segmen. Level garis hijau diumpankan ke input negatif dari komparator pertama, dan level garis merah diumpankan ke input negatif dari komparator kedua. Pada input positif dari komparator, masing-masing, sinyal umum dan sinyal segmen disediakan. Level sinyal umum dipilih di bagian atas, dan level segmen di bagian bawah - untuk “menangkap” momen ketika segmen ditampilkan (3 volt yang sama). Dalam kasus lain, itu tidak ditampilkan. Perhatikan diagram terendah dalam skema kalkulator - saat-saat ketika segmen lainnya tidak menyala - di sana sinyal tidak mencapai level atas atau bawah.
Akibatnya, pada saat garis vertikal kuning pada output dari pembanding, kita akan menangkap tiga volt perbedaan antara sinyal ketika segmen aktif dan 0 volt ketika tidak aktif.
Jadi, kami menangkap momen ketika segmen yang diinginkan ditampilkan (atau padam). Sekarang momen ini perlu diperbaiki. Untuk memperbaiki momen ini, kami akan menggunakan register dengan latch type 74HC374. Untuk input register, kami memberikan sinyal dari pembanding No. 2, di mana sinyal segmen dilacak, dan untuk input jam kait, output dari pembanding No. 1, di mana unit logis akan mulai pada saat kedatangan sinyal umum yang kita butuhkan.
Setelah register mengklik lompatan positif dari input CLK, sinyal tidak akan berubah pada outputnya sampai kedatangan baru dari rak positif dari sinyal umum yang kita butuhkan.
Untuk melacak satu segmen (biarkan menjadi simbol kepingan salju), diagram akan terlihat seperti ini:

Di sini, dalam diagram, pembanding U1 memonitor rak yang lebih rendah dari sinyal segmen, yang levelnya akan lebih rendah dari yang ditetapkan pada resistor variabel RP1, dan menetapkan nol pada outputnya. Komparator kedua memonitor kedatangan rak atas sinyal umum dan mengunci register dengan tepi positif.
Kapasitor C1 diperlukan untuk menunda deteksi tingkat umum sedikit dan menggeser momen fiksasi tidak pada awal tingkat umum (saat ini, segmen satu mungkin terlambat atau akan ada beberapa transien), tetapi sedikit kemudian (pada gambar ada garis kuning di tengah rak). Output dari register akan menjadi nol logis ketika segmen ditampilkan, dan unit logis ketika segmen tidak ditampilkan.
Skema seperti itu diperlukan untuk mendeteksi setiap segmen. Kompleksitas utama dari skema semacam itu adalah bahwa pembanding yang terpisah diperlukan untuk setiap segmen dan sinyal yang sama, dan jumlah output register sama dengan jumlah segmen. Tetapi di sisi lain, semua pembanding dan register ini sekarang bernilai satu sen.
Untuk menyederhanakan pekerjaan dan memeriksa operabilitas semua yang saya tulis, saya membuat syal kecil di mana saya menyebarkan beberapa pembanding dan register.


Skema:
habrastorage.org/webt/wk/1i/kg/wk1ikgqdavyjnxcqsqlr2174jke.jpegDeskripsi sirkuit sama dengan untuk satu segmen, hanya dikalikan 16 segmen dan satu atau dua sinyal umum (nomor dipilih oleh jumper).
Papan menyediakan input dan output transit level daya dan komparator untuk menghemat detail dan konfigurasi.
Berikut adalah video lain yang menjelaskan operasi papan ini dan menunjukkan cara kerja pendeteksian:
Mendeteksi kalkulator menarik hanya untuk tujuan akademis, dan untuk diri saya sendiri, berdasarkan papan ini saya membuat perangkat nyata - jam LED berdasarkan jam Soviet Electronics 55.



Ada cukup banyak segmen di arloji, dan saya harus menggunakan empat papan.
Papan ini juga memungkinkan multiplexing output register. Artinya, output dari setiap register dapat digabungkan menjadi satu bus 8-bit. Papan menyediakan untuk menonaktifkan output (leg 1 di setiap register). Untuk menonaktifkan, unit logis disediakan untuk setiap register (misalnya, dari chip multiplexer tipe 74HC137), dan ke register tempat data harus dihapus - nol logis. Kemudian, secara bergantian memilih register yang diinginkan, Anda dapat membaca data dari bus LCD, misalnya, dengan mikrokontroler lain, dan kemudian memprosesnya atas kebijakan Anda sendiri. Selain itu, pemilihan dapat dilakukan secara tidak sinkron dari rangkaian dekode pada kecepatan berapa pun.
Ini adalah bagaimana Anda dapat membaca informasi dari LCD dan menggunakannya untuk keperluan Anda sendiri. Terima kasih atas perhatian anda