
Selamat siang, Habr!
Deskripsi proyek papan scaler yang dikembangkan pada chip Realtek - RTD2662, untuk matriks dua saluran. Siapa pun yang tertarik dengan topik ini, selamat datang di kucing.
Saya selalu tertarik dengan subjek output gambar ke matriks. Sebelumnya, saya mengembangkan papan scaler berdasarkan chip TSUMV59 (kompatibel dengan TSUMV29), sebuah contoh yang sangat menarik dari MStar. Saya pikir saya akan menulis artikel terpisah tentang topik ini. Tampaknya semuanya baik-baik saja dalam chip ini, tetapi ada sesuatu yang hilang, yaitu kemampuan untuk menulis perangkat lunak Anda sendiri untuk menampilkan menu di layar dan pemrosesan GPIO. Semua firmware didistribusikan dalam bentuk biner dan di-flash melalui USB, tetapi kode sumbernya tidak dapat ditemukan (jika seseorang mengetahui / mendengar sesuatu, silakan tulis, karena topiknya sangat menarik). Sampai waktu tertentu, ini sudah cukup untuk beberapa kebutuhannya. Ada saat-saat ketika itu tidak mungkin untuk memilih firmware untuk matriks tertentu, misalnya, dengan rasio aspek yang tidak biasa, tetapi ini semua adalah hal-hal sepele sampai muncul pesanan untuk mengembangkan perangkat di mana harus ada menu, logo, dan logika yang jelas dari operasi perangkat di utuh Kemudian kami mulai berpikir bagaimana menjadi dan ke mana harus pergi. Masalah utama adalah kurangnya waktu, itu perlu untuk mendapatkan batch pertama perangkat - 100 buah dalam waktu sesingkat mungkin. Yang kedua adalah kehadiran dua antarmuka DisplayPort di papan. Ketiga, sejumlah kecil perangkat, yang tidak memungkinkan dokumentasi kerja / penerima dan sampel dari produsen / distributor chip.
Saya akan membuat daftar masalah perangkat keras / perangkat lunak utama yang perlu didukung:
- DisplayPort - 2 pcs;
- Ethernet 10/100 - 1 pc;
- LVDS dua saluran untuk matriks 32 β- 1 pc;
- Dukungan untuk keyboard kapasitif 4 tombol - 1 pc;
- Sensor suhu di papan - 1 pc;
- WEB-antarmuka;
- OS Linux;
- Daya eksternal 24V.
Sekarang sedikit tentang segalanya dan teratur.
Displayport
Semuanya tampak relatif sederhana di sini, Anda perlu memilih chip dengan input HDMI, meletakkan sakelar dan konverter dari DisplayPort ke HDMI. Chip yang sama harus memiliki output LVDS dual-channel ke matriks dan mendukung FullHD. Juga, diinginkan bahwa ia memiliki RMII (Ethernet) dan kemampuan untuk menggambar menu di atas gambar. Dan kemudian masalah dimulai. Tidak mungkin menemukan yang serupa sehingga Anda dapat dengan cepat membeli, mengejek, dan meluncurkan batch.
Sebagai hobi, saya terlibat dalam perbaikan peralatan dan itu bukan masalah pendapatan, tetapi keterampilan yang diperoleh yang sangat berguna dalam mengembangkan proyek saya dan meraup ide dan teknologi. Mereka yang membongkar peralatan Sony dan Panasonic asli akan mengerti. Saya sangat tertarik dengan perangkat audio / video / mobil. Kualitas meletakkan tempat pembuangan sampah (bahkan di lapisan atas), tanah analog dan catu daya, posisi relatif dari pengumpan di papan, jejak RAM, HF ... kepalaku berputar di sekitar bagaimana indah dan serius semuanya dilakukan (tentu saja, ini tidak selalu terjadi).
Oke, apa yang saya bicarakan? Jadi, jika Anda ingat apa yang biasanya dimasukkan ke televisi anggaran, hal pertama yang terlintas dalam pikiran adalah TSUMV29 / TSUMV59, tetapi seperti yang kita ingat, mereka tidak cocok untuk kita. Apa lagi yang dilakukan TV dan monitor, tetapi apa yang bisa Anda beli dari barang tersebut? Seorang kolega menyarankan Realtek bahwa tampaknya bahkan ada sumber untuk itu, yang akan sangat menyederhanakan tugas. Ternyata benar-benar ada sumber untuk Keil, untuk chip RTD2662. Chip ini bukan yang terbaru, tetapi memiliki dua input HDMI dan dukungan untuk FullHD.
Fig. 1. RTD2662Skema inklusi seperti pada semua sasis TV. Chip ini ditenagai oleh dua tegangan - 3.3V dan 1.8V. Tidak mungkin menemukan lembar data lengkap, dan itu tidak perlu. Itu perlu untuk menambahkan hanya konverter dari DisplayPort. Setelah pencarian singkat, pemancar dari Texas Instruments terpilih - SN75DP139. Saya merekomendasikan dalam pengembangan, sebuah chip yang bagus. Microcircuits terletak di bagian bawah papan (saya harus melakukan ini untuk menghindari crosshair dari jalur data, mungkin saya akan mencoba untuk berkembang biak di satu sisi).
Fig. 2. Wiring Diagram SN75DP139Skema inklusi adalah sebagai berikut. Saya menghubungi DisplayPort untuk pertama kalinya dan menjadi wahyu bagi saya bahwa input dan output dari antarmuka ini memiliki pinout yang berbeda, yaitu satu di konektor PC dan yang lainnya di monitor. Meskipun ada beberapa logika dalam hal ini.
Firmware Realtek disimpan dalam SPIFlash terpisah.
Ethernet 10/100
Ethernet diperlukan untuk beberapa hal: pemantauan perangkat, konfigurasi dan pembaruan; oleh karena itu 10/100 fisika sudah cukup. Saya menginstal LAN8742AI dari Microchip, menggunakannya untuk pertama kali, dan memilihnya justru karena pelanggan membutuhkan fungsi "Wake on LAN" tertentu, sebelum itu tidak diperlukan. Singkatnya, dukungan WoL memungkinkan Anda untuk membangunkan perangkat melalui Ethernet.
Fig. 3. Ethernet 10/100Fisika hampir tidak membutuhkan ikatan dan mudah dilacak. Ia bekerja dengan stabil, tidak ada satu pun jaringan yang lepas.
LVDS
Diperlukan dua saluran untuk menghubungkan matriks AUO 32 ". Konektor dan pinout digunakan standar. Power supply 12V, dibuat pada DC / DC TPS54560DDAR - ini adalah feeder 5A yang sangat baik dari TI. Matriks backlight 24V, diambil dari tegangan input. Matriks ini memiliki driver lampu latar bawaan dengan kemampuan untuk menyesuaikan dan mematikan. Papan dibuat pada 4 lapisan, sehingga tidak ada masalah dengan pelacakan LVSD, HDMI dan DisplayPort.
Fig. 4. Jejak LVDSSeperti yang dapat Anda lihat di sini secara langsung, sedikit perbedaan panjang tidak mempengaruhi kualitas gambar sama sekali.
KUNCI
Tombol-tombol tersebut diimplementasikan pada chip SX8634 dari Semtech Corporation - ini adalah chip yang agak ambigu dalam pekerjaannya. Programmer harus menulis ulang seluruh driver untuk mendapatkan hasil yang diharapkan. Ternyata sesuatu seperti ini: ada 4 tombol untuk menavigasi menu, mereka peka sentuhan (kapasitif melalui kaca) dengan RGB backlighting dari dalam melalui lubang di papan. Hanya tombol bagian bawah yang terus menyala, itu juga masuk ke mode tidur dan sebaliknya (dengan perubahan dalam cahaya). Saat Anda memegang tangan 5 cm, tombol yang tersisa disorot dan menu muncul di seberangnya. Kami menghapus tangan, setelah 3s menu menghilang, tombol padam. Itu terlihat menarik.
Fig. 5. Sentuh Papan TombolBagian atas papan (atas) berdekatan dengan kaca, jadi tidak ada komponen di atasnya, semuanya terletak di bagian bawah. Kesulitan dalam pengaturan dan kalibrasi adalah karena lebar papan, hanya 12mm. Jika seseorang bosan hidup, mereka dapat menggunakan chip ini dalam proyek mereka.
Temp
Suhu di dalam kasing diukur menggunakan sensor suhu NXP LM75AD melalui bus I2C. Itu dikirim karena mudah dikirim dan terletak di gudang dalam volume besar.
WEB
Antarmuka web dan proyek itu sendiri dilaksanakan berdasarkan mesin muda yang lahir dari tim 11-bagian yang independen - ini adalah mitra kami untuk pengembangan perangkat lunak untuk sistem berbasis Linux.
Platform ini memiliki banyak blok, dilengkapi dengan dukungan teknis dan jaminan dengan kemungkinan peningkatan dan pembaruan.
Jika lebih sederhana, ini adalah proyek kerangka kerja dengan fungsionalitas canggih yang terus meningkatkan dan memperluas fungsionalitas. Dari blok utama, seseorang dapat mencatat manajer jaringan, antarmuka WEB yang dinamis, memperbarui dan pembangun proyek. Berdasarkan mesinnya, Anda dapat mengimplementasikan berbagai perangkat dari pemutar mp3 ke server SIP multi-port 10Gbit. dan inilah yang kami butuhkan dalam proyek ini.
Dari antarmuka berbasis web, Anda tidak hanya dapat mengontrol parameter panel, tetapi juga mengubah pengaturan, misalnya, kecerahan, kontras, kejernihan gambar, monitor ke port mana PC terhubung dan yang saat ini aktif, beralih di antara mereka.
Juga dalam proyek ini versi SNMP 1.2 dan 3 didukung dengan dukungan untuk SET, GET perintah dan mengirimkan jebakan dengan interval atau acara. Yaitu Informasi tentang parameter apa pun, misalnya, kecerahan / kontras, dapat ditransmisikan ke server melalui SNMP, dengan menekan tombol untuk mengubah parameter, atau, misalnya, setiap 10 detik sekali. Anda dapat mematikan tampilan atau mengubah parameter dari jarak jauh menggunakan perintah SNMP SET. SNMP juga merupakan bagian dari mesin.
iMX6ULL
Karena chip Realtek tidak memiliki Ethernet, pada proyek ini dipasang prosesor NXP iMX6ULL, yang menjalankan OS Linux dan logika kerja dasar. iMX dan Realtek saling terhubung melalui UART dan bertukar perintah di antara mereka. Untuk acara cepat ada beberapa GPIO.
Fig. 6. iMX6ULLSemua informasi disimpan di NAND, u-boot dimuat dari SPIFlash. Satu chip RAM dan tidak lebih. Kartu SD ditampilkan untuk memperbarui perangkat lunak (ini selain dapat melakukan ini dari web).
Kekuasaan
Catu daya sekunder 5V diimplementasikan pada DC / DC yang sama dengan catu daya matriks - TPS54560DDAR. Catu daya 1.8V dan 1.35V pada AP3418 dari Dioda, dan 3.3V pada ST1S10PHR dari ST.
Gbr. 7. DC / DCMicrocircuits DC / DC dipilih dengan margin besar, karena matriks memiliki arus puncak besar untuk daya dan penerangan, dan karena hanya ada satu iterasi, saya benar-benar tidak ingin mengambil risiko.
Semua catu daya dipisahkan oleh poligon dalam lapisan terpisah, dengan pengecualian daya matriks, karena saya benar-benar tidak ingin memotong daya utama dengan konduktor ini. Menelusuri tangkapan layar tidak berguna, kecuali seseorang akan tertarik dengan antarmuka apa pun. Saya juga ingin mencurahkan artikel terpisah tentang poligon makanan dan tanah, misalnya, dalam proyek ini ada total 27 poligon, dalam proyek baru saya di IMX7 akan ada sekitar 100, dan ini tidak akan cocok dalam kerangka artikel ini.
Jika Anda masuk lebih dalam ke logika papan. iMX bekerja dengan tombol Ethernet dan panel depan. Ini dikaitkan dengan Realtek, yang mengambil gambar dari DisplayPorta aktif dan mengeluarkannya ke matriks LVDS. Perintah dari tombol, SNMP dan web fly ke Realtek, yang pada gilirannya bereaksi terhadapnya dan mengubah parameter tampilan, menampilkan menu, dll.
Hasilnya adalah proyek yang agak menarik dalam waktu singkat. Mungkin, itu mengandung terlalu banyak modul, tetapi pada saat pengembangan, menurut saya, ini adalah solusi terbaik sesuai dengan syarat, biaya dan risiko.
Terima kasih atas perhatian anda!