Lcd hitachi + AT89C51

R

ReyDemonio

Guest
Halo, Saya mencoba untuk menggunakan Tampilan LCD (LM016L) dengan prosesor Hitachi, mengendalikannya dengan AT89C5131 dan antarmuka 4 bit, tapi aku hanya mendapatkan empat persegi panjang hitam dan tidak ada yang lain dalam kit yang nyata dan tidak ada sama sekali dalam protheus simulasi. Dapatkah seseorang membantu saya dengan kode silahkan? Terima kasih
Code:
 # include Sbit EN = P3 ^ 6; Sbit RS = P3 ^ 4; Sbit RW = P3 ^ 5; unsigned char dato = 0; kode unsigned char tex1 [16] = {'', 'L', ' C ',' D ',' ',' d ',' e ',' ', '2', '', 'f', 'i', 'l', 'a', 's', '' }; unsigned char i = 0, j = 0, k = 0, z = 0; bit BU = 0; batal inisial (); batal trans (unsigned char i); kekosongan menunggu (unsigned char z), void main (void ) {inisial (), karena (; ;) {dato = 0x80; trans (0), karena (k = 0; k
 
LCD Anda menggunakan pada dasarnya adalah sebuah desain 20-tahun, berdasarkan pada perangkat yang disebut HD44780. Jika Anda google untuk perangkat tersebut, Anda akan menemukan ton dari contoh kode sumber untuk mengontrolnya, dan mungkin banyak contoh dengan mikrokontroler yang sama yang Anda gunakan juga. Saya menduga masalah Anda adalah bahwa Anda tidak punya penundaan, tapi sudah lama sejak saya mencoba ini kontroler LCD. Pokoknya, sebagai catatan, kode Anda sangat aneh bahwa Anda menggunakan variabel global untuk menyampaikan informasi yang biasanya hanya bisa parameter dalam pemanggilan fungsi.
 
Maaf untuk kode aneh, saya hanya dimulai dengan C51 dan semua barang-barang ini. Saya sudah mencoba untuk memperbaikinya seperti yang Anda katakan, tanpa menggunakan variabel global begitu banyak.
Code:
 # include Sbit EN = P3 ^ 6; Sbit RS = P3 ^ 4; Sbit RW = P3 ^ 5; kode unsigned char tex1 [16] = {'', 'L', 'C', 'D', '', 'd', 'e', ​​'', '2 ',' ',' f ',' i ',' l ',' a ',' s ',' '}; unsigned char i = 0 , j = 0, k = 0, z = 0; bit BU = 0; batal inisial (); batal trans (unsigned char i, dato unsigned char), batal menunggu (unsigned char z), void main (void) {Suami (), karena (; ;) {trans (0, 0x80), karena (k = 0; k
 
Bisa setidaknya memberi saya seseorang kode bekerja untuk 8051 mikro dan HD44780 a? Saya tidak dapat menemukan sesuatu yang berguna di google, hanya bagian dari kode atau kode yang tidak valid.
 
Saya tidak memeriksa kode Anda, pastikan bahwa Anda initilized LCD dengan benar. Jika Anda mendapatkan persegi panjang mungkin ada kesempatan masalah dengan konektivitas data dan PIN kontrol. Periksa Ini LCD interfacing Tutorial [/URL] [/B] yang menggunakan MikroC perpustakaan
 
Berikut ini adalah tutorial demoing LCD HD44780 kompatibel menggunakan 4-bit antarmuka dengan keluarga 8051 dan menyediakan kode sumber di kedua Majelis dan bahasa C: [URL = "http://www.8051projects.net/lcd-interfacing/introduction. php "menunjukkan] interfacing LCD dengan Microcontrollers tutorial [/URL] Biasanya, kotak hitam / persegi panjang masalah inisialisasi, penundaan mungkin benar, koneksi, dll BigDog
 

Welcome to EDABoard.com

Sponsor

Back
Top