Bagaimana cara menggunakan paparan aksara LCD dengan hitam beaglebone?
Di dunia sistem tertanam, BeagleBone Black menonjol sebagai komputer papan tunggal yang kuat dan serba boleh. Apabila dipasangkan dengan paparan aksara LCD, ia boleh digunakan untuk pelbagai aplikasi, dari petunjuk status mudah ke sistem pemantauan data yang kompleks. Sebagai pembekal memaparkan watak LCD, saya teruja untuk berkongsi dengan anda bagaimana untuk mengintegrasikan paparan watak LCD dengan Black BeagleBone.


Memahami watak BeagleBone Black dan LCD
BeagleBone Black dilengkapi dengan pemproses ARM 1GHz - A8, 512MB RAM, dan pelbagai pin input/output. Pin ini membolehkannya berkomunikasi dengan pelbagai peranti luaran, termasuk paparan aksara LCD.
Memaparkan watak LCD digunakan secara meluas untuk memaparkan teks dan grafik mudah. Mereka datang dalam pelbagai saiz dan konfigurasi, sepertiModul LCD paparan lcd 20x2, ThePaparan LCD 0802, dan yangPaparan LCD 16x1. Memaparkan ini biasanya menggunakan pengawal Hitachi HD44780 atau yang serasi, yang mempunyai protokol komunikasi yang jelas.
Sambungan perkakasan
Sebelum kita memulakan pengaturcaraan, kita perlu menyambungkan paparan aksara LCD ke BeagleBone Black. Berikut adalah langkah umum:
- Bekalan kuasa: Sambungkan pin VSS (GND) LCD ke pin tanah pada BeagleBone Black. Sambungkan pin VDD (5V) LCD ke sumber kuasa 5V. Jika BeagleBone Black anda boleh memberikan kuasa 5V, anda boleh menggunakannya secara langsung. Jika tidak, anda mungkin memerlukan bekalan kuasa luaran. Sambungkan pin VO (penyesuaian kontras) ke potentiometer untuk menyesuaikan kontras paparan.
- Kawalan pin: Sambungkan pin RS (Daftar Pilih) LCD ke pin GPIO pada BeagleBone Black. PIN ini digunakan untuk memilih antara daftar arahan dan daftar data. Sambungkan pin RW (baca/tulis) ke tanah, kerana kami akan menulis data ke paparan. Sambungkan pin E (membolehkan) ke pin GPIO lain pada BeagleBone Black. Pin ini digunakan untuk mengunci data ke dalam paparan.
- Pin data: Anda boleh memilih untuk menyambungkan LCD dalam mod 4 - bit atau 8 - bit. Dalam mod 4 - bit, sambungkan pin D4 - D7 LCD ke empat pin GPIO pada BeagleBone Black. Dalam mod 8 - bit, sambungkan semua pin D0 - D7 hingga lapan pin GPIO. 4 - Mod bit lebih biasa kerana ia menggunakan pin GPIO yang lebih sedikit.
Persediaan Perisian
Sebaik sahaja perkakasan disambungkan, kita perlu menulis perisian untuk mengawal paparan LCD. Kita boleh menggunakan Python, yang mempunyai perpustakaan yang menjadikannya mudah untuk berinteraksi dengan pin GPIO pada BeagleBone Black.
Berikut adalah contoh kod python yang mudah untuk memaparkan mesej pada paparan LCD 16x2 dalam mod 4 - bit:
import adafruit_bbio.gpio sebagai masa import gpio # menentukan pin gpio untuk kawalan lcd rs = "p8_7" e = "p8_8" d4 = "p8_9" d5 = "p8_10" d6 = "p8_11" d7 = "p8_12" lcd_send_nibble (nibble): gpio.output (d4, (nibble & 0x01) == 0x01) gpio.output (d5, (nibble & 0x02) == 0x08) gpio.output (e, gpio.high) time.sleep (0.0001) gpio.output (e, gpio.low) # berfungsi untuk menghantar byte ke lcd def lcd_send_byte (byte, rs): gpio.output (rs) 0x0F lcd_send_nibble(high_nibble) lcd_send_nibble(low_nibble) time.sleep(0.0005) # Function to initialize the LCD def lcd_init(): GPIO.setup(RS, GPIO.OUT) GPIO.setup(E, GPIO.OUT) GPIO.setup(D4, GPIO.OUT) Gpio.setup (d5, gpio.out) gpio.setup (d6, gpio.out) gpio.setup (d7, gpio.out) # Inisialisasi LCD dalam masa mod 4 - bit (0.05) lcd_send_nibble (0x03) LCD_SEND_NIBBLBLBLE (0x28, gpio.low_sd_send_Byte (0. GPIO.LOW) # Kursor Kursor LCD_SEND_BYTE (0x01, gpio.low) # jernih masa paparan.sleep (0.002) # berfungsi untuk memaparkan rentetan pada lcd def lcd_display_string (string) "__main__": cuba: lcd_init () lcd_display_string ("Hello, beaglebone!") Walaupun benar: lulus kecuali keyboardInrupt: gpio.cleanup ()
Kod ini mula -mula memulakan pin GPIO pada BeagleBone Black. Kemudian ia memulakan paparan LCD dalam mod 4 - bit. Akhirnya, ia memaparkan mesej pada LCD.
Penggunaan lanjutan
Anda boleh melakukan lebih daripada sekadar memaparkan mesej mudah pada LCD. Sebagai contoh, anda boleh memaparkan data dinamik seperti pembacaan sensor. Anda juga boleh membuat paparan multi -line dan menggunakan aksara tersuai.
Untuk memaparkan data dinamik, anda boleh mengubah suailcd_display_stringFungsi untuk mengemas kini paparan dengan data baru secara berkala. Sebagai contoh, jika anda mempunyai sensor suhu yang disambungkan ke BeagleBone Black, anda boleh membaca nilai suhu dan memaparkannya pada LCD.
import adafruit_bbio.gpio sebagai import masa import GPIO Rawak # untuk mensimulasikan data sensor # menentukan pin GPIO untuk kawalan LCD rs = "p8_7" e = "p8_8" d4 = "p8_9" d5 = "p8_10 lcd_send_nibble (nibble): gpio.output (d4, (nibble & 0x01) == 0x01) gpio.output (d5, (nibble & 0x02) == 0x08) gpio.output (e, gpio.high) time.sleep (0.0001) gpio.output (e, gpio.low) # berfungsi untuk menghantar byte ke lcd def lcd_send_byte (byte, rs): gpio.output (rs) 0x0F lcd_send_nibble(high_nibble) lcd_send_nibble(low_nibble) time.sleep(0.0005) # Function to initialize the LCD def lcd_init(): GPIO.setup(RS, GPIO.OUT) GPIO.setup(E, GPIO.OUT) GPIO.setup(D4, GPIO.OUT) Gpio.setup (d5, gpio.out) gpio.setup (d6, gpio.out) gpio.setup (d7, gpio.out) # Inisialisasi LCD dalam masa mod 4 - bit (0.05) lcd_send_nibble (0x03) LCD_SEND_NIBBLBLBLE (0x28, gpio.low_sd_send_Byte (0. GPIO.LOW) # Kursor Kursor LCD_SEND_BYTE (0x01, gpio.low) # jernih masa paparan.sleep (0.002) # berfungsi untuk memaparkan rentetan pada lcd def lcd_display_string (string) "__main__": cuba: lcd_init () sementara benar: suhu = rawak Gpio.cleanup ()
Kesimpulan
Mengintegrasikan paparan aksara LCD dengan Black BeagleBone adalah proses yang mudah. Dengan sambungan perkakasan yang betul dan pengaturcaraan perisian, anda boleh membuat paparan yang berguna dan interaktif. Sebagai pembekal memaparkan watak LCD, kami menawarkan pelbagai produk yang sesuai untuk digunakan dengan BeagleBone Black. Jika anda berminat untuk membeli paparan watak LCD untuk projek anda, sila hubungi kami untuk maklumat lanjut dan memulakan rundingan perolehan. Kami komited untuk menyediakan produk berkualiti tinggi dan perkhidmatan pelanggan yang sangat baik.
Rujukan
- Dokumentasi Perpustakaan GPIO Adafruit
- Hitachi HD44780 LCD DataSheet Controller
