Come utilizzare un display di caratteri LCD con un nero beagle?

Jul 22, 2025Lasciate un messaggio

Come utilizzare un display di caratteri LCD con un nero beagle?

Nel mondo dei sistemi incorporati, il Beaglebone Black si distingue come un computer singolo potente e versatile. Se abbinato a una visualizzazione dei caratteri LCD, può essere utilizzato per una vasta gamma di applicazioni, da semplici indicatori di stato a sistemi di monitoraggio dei dati complessi. Come fornitore di display di personaggi LCD, sono entusiasta di condividere con te come integrare un display di personaggi LCD con un nero Beaglebone.

520x2 Lcd Display Lcd Module

Comprensione dei display di personaggi neri e LCD di Beaglebone

Il BAEGLEBONE BLACK è dotato di un processore A8 a 1 GHz - A8, 512 MB di RAM e pin di input/output multipli. Questi pin gli consentono di comunicare con vari dispositivi esterni, inclusi i display di carattere LCD.

I display dei caratteri LCD sono ampiamente utilizzati per la visualizzazione di testo e grafica semplice. Sono disponibili in diverse dimensioni e configurazioni, come ilMODULO LCD di visualizzazione LCD 20x2, IL0802 display LCDe ilDisplay LCD 16x1. Questi display in genere utilizzano il controller Hitachi HD44780 o uno compatibile, che ha un protocollo di comunicazione ben definito.

Connessione hardware

Prima di iniziare a programmare, dobbiamo collegare il display dei caratteri LCD al BAEGLEBONE BLACK. Ecco i passaggi generali:

  1. Alimentazione elettrica: Collegare il pin VSS (GND) del LCD sul perno di terra sul nero di Beagle. Collegare il pin VDD (5V) del LCD a una sorgente di alimentazione 5V. Se il tuo Basegone Black può fornire energia a 5 V, puoi usarla direttamente. Altrimenti, potrebbe essere necessario un alimentatore esterno. Collegare il pin VO (Regolazione del contrasto) a un potenziometro per regolare il contrasto del display.
  2. Pin di controllo: Collegare il pin RS (Register Select) del LCD a un pin GPIO sul nero di Beagle. Questo pin viene utilizzato per selezionare tra registro delle istruzioni e registro dei dati. Collegare a terra il pin RW (lettura/scrittura), poiché scriveremo principalmente i dati al display. Collegare il pin E (Abilita) a un altro perno GPIO sul nero di Beagle. Questo pin viene utilizzato per inserire i dati nel display.
  3. Pin di dati: Puoi scegliere di collegare il LCD in modalità 4 - bit o 8 - bit. In modalità 4 -bit, collegare i pin D7 D7 del LCD a quattro perni GPIO sul BEAGLEBONE BLACK. In modalità 8 - Collega tutti i pin D0 - D7 a otto pin GPIO. La modalità 4 - Bit è più comune in quanto utilizza meno pin GPIO.

Configurazione del software

Una volta collegato l'hardware, dobbiamo scrivere software per controllare il display LCD. Possiamo usare Python, che ha librerie che rendono facile interagire con i pin GPIO sul nero di Beagle.

Ecco un semplice esempio di codice Python per visualizzare un messaggio su un display LCD 16x2 in modalità 4 - bit:

import adafruit_bbio.gpiO come gpiio tempo di importazione # definisce pin gpiio per controllo lcd rs = "p8_7" e = "p8_8" d4 = "p8_9" d5 = "p8_10" d6 = "p8_11" d7 = "p8_12" # Funzione per inviare una 4 - bit nibble al lcd def lcd_send Gpiio.output (d4, (Nibble & 0x01) == 0x01) gpiio.output (d5, (Nibble & 0x02) == 0x02) gpiio.output (D6, (Nibble e 0x04) == 0x04) GPio.Output (D7, (Nabble & 0x08 == 0x08) Gpiio.high) time.sleep (0,0001) gpiio.output (e, gpiio.low) # Funzione per inviare un byte al lcd def lcd_send_byte (byte, rs): gpiio.output (rs, rs) high_nibli = (byte >> 4) e 0x0f low_nibli = byte & byte & 0x0f LCD_SEND_Nibble (High_Nibble) LCD_SEND_Nibble (Low_Nibble) time.sleep (0,0005) # Funzione per inizializzare LCD def lcd_init (): gpiio.setup (rs, gpiio.out) gpiio.setup (e, gpiio.out) gpiio.setup (d4, gpiio.setup (d5. Gpiio.out) gpiio.setup (d6, gpiio.out) gpiio.setup (d7, gpiio.out) # Inizializza LCD in 4 - bit time.sleep (0.05) LCD_SEND_Nibble (0x03) time.sleep (0.005) lcd_send_nibble (0x03) time.sleep (0,0005) LCD_SEND_NIBLE (0x03) LCD_SEND_Nibble (0x02) LCD_SEND_BYTE (0x28, GPIO.Low) # 4 - Bit Modalità, 2 righe, 5x8 Dots LCD_SEND_BYTE (0x0C, GPIO.LOW) # Display su, Cursor off # Cursore incremento LCD_SEND_BYTE (0x01, GPIO.Low) # Cancella Display Time.sleep (0.002) # Funzione per visualizzare una stringa su LCD def lcd_display_string (stringa): per char in string: lcd_send_byte (ord (char), gpiio.high) # main programma se __name__ lcd_init () lcd_display_string ("ciao, beaglebone!") mentre è vero: pass tranne la tastiera interrupt: gpiio.cleanup ()

Questo codice inizializza innanzitutto i pin GPIO sul BEAGLEBONE BLACK. Quindi inizializza il display LCD in modalità 4 - bit. Infine, visualizza un messaggio sul LCD.

Uso avanzato

Puoi fare di più che visualizzare un semplice messaggio sul LCD. Ad esempio, è possibile visualizzare dati dinamici come le letture dei sensori. È inoltre possibile creare display multi -riga e utilizzare caratteri personalizzati.

Per visualizzare i dati dinamici, è possibile modificare illcd_display_stringfunzione per aggiornare il display con nuovi dati a intervalli regolari. Ad esempio, se si dispone di un sensore di temperatura collegato a Beaglebone Black, è possibile leggere il valore della temperatura e visualizzarlo sul LCD.

Importa Adafruit_Bbio.GPIO AS GPIO Import Time Import Random # per la simulazione dei dati del sensore # Definire i pin GPIO per il controllo LCD RS = "P8_7" E = "P8_8" D4 = "P8_9" D5 = "P8_10" D6 = "P8_11" D7 = "P8_12" # Funzione per inviare una funzione 4 - Bit per non LCD_SEND_Nibble (Nibble): GPio.Output (D4, (Nibble & 0x01) == 0x01) GPIO.Output (D5, (Nibble & 0x02) == 0x02) GPio.Output (D6, (Nibble & 0x04) == 0x04) GPIO.Output (D7, (Nibbli e Nibbli) Gpiio.output (e, gpiio.high) time.sleep (0,0001) gpiio.output (e, gpiio.low) # funzione per inviare un byte a lcd def lcd_send_byte (byte, rs): gpiio.output (rs, rs) high_nibble = (byte >> 4) & 0x0f = byte LCD_SEND_Nibble (High_Nibble) LCD_SEND_Nibble (Low_Nibble) time.sleep (0,0005) # Funzione per inizializzare LCD def lcd_init (): gpiio.setup (rs, gpiio.out) gpiio.setup (e, gpiio.out) gpiio.setup (d4, gpiio.setup (d5. Gpiio.out) gpiio.setup (d6, gpiio.out) gpiio.setup (d7, gpiio.out) # Inizializza LCD in 4 - bit time.sleep (0.05) LCD_SEND_Nibble (0x03) time.sleep (0.005) lcd_send_nibble (0x03) time.sleep (0,0005) LCD_SEND_NIBLE (0x03) LCD_SEND_Nibble (0x02) LCD_SEND_BYTE (0x28, GPIO.Low) # 4 - Bit Modalità, 2 righe, 5x8 Dots LCD_SEND_BYTE (0x0C, GPIO.LOW) # Display su, Cursor off # Cursore incremento LCD_SEND_BYTE (0x01, GPIO.Low) # Cancella Display Time.sleep (0.002) # Funzione per visualizzare una stringa su LCD def lcd_display_string (stringa): per char in string: lcd_send_byte (ord (char), gpiio.high) # main programma se __name__ lcd_init () while true: temperatura = casual.randint (20, 30) # simulazione del messaggio di lettura della temperatura = f "temp: {temperatura} c" lcd_send_byte (0x01, gpiio.low) # clear display time.sleep (0.002) lcd_display_string (message) time.sleep (2) tranne keyboard interruzione: gpio.

Conclusione

L'integrazione di un display di caratteri LCD con un nero Beaglebone è un processo semplice. Con la giusta connessione hardware e la programmazione software, è possibile creare display utili e interattivi. Come fornitore di display di caratteri LCD, offriamo una vasta gamma di prodotti adatti per l'uso con il BEAGLEBONE BLACK. Se sei interessato ad acquistare display di personaggi LCD per i tuoi progetti, ti preghiamo di contattarci per ulteriori informazioni e per iniziare una negoziazione sugli appalti. Ci impegniamo a fornire prodotti di alta qualità e un eccellente servizio clienti.

Riferimenti

  • Adafruit Beaglebone GPIO Library Documentation
  • Hitachi HD44780 LCD Controller Date foglio tecnico