Arduino UNOElettronica digitaleLaboratorio

ATtiny85 + I2C + LCD

Pilotiamo un display LCD con un microcontrollore ATtiny85 attraverso il protocollo I2C

In questa guida mostreremo come gestire al meglio un display LCD sfruttando solamente due pin (SDA e SCL) di un microcontrollore ATtiny85.

Prima di procedere è importante:

Librerie necessarie: 

  • LiquidCrystal_ATtiny
  • TinyWireM (installabile da Sketch -> #inlcude libreria -> Gestione librerie…)

Materiale necessario:

      

Procedimento:

Per prima cosa apriamo l’IDE di Arduino e nella tendina “Strumenti” impostiamo correttamente il nostro microcontrollore ATtiny85. Tipicamente io utilizzo le seguenti impostazioni:

Una volta impostato il dispositivo scriviamo il Bootloader (sempre dalla tendina Strumenti). Una volta completata l’operazione procediamo con l’installazione, tramite archivio ZIP, della libreria. Arrivati a questo punto ci basterà scrivere lo sketch a nostro piacimento stando attenti a:

1. Includere la libreria nel progetto

#include <TinyWireM.h>
#include "LiquidCrystal_attiny.h"

2. Dichiarare il display e il relativo indirizzo per il protocollo I2C

LiquidCrystal_I2C lcd(0x27,20,4);

dove 0x27 è l’indirizzo (tipicamente fornito dal venditore nella descrizione dell’oggetto acquistato), 20 sono il numero di caratteri orizzontali e 4 i numero di righe del display. Ovviamente tali dati vanno modificati a seconda del display.

SKETCH ESEMPIO:

#include    
#include "LiquidCrystal_attiny.h"

LiquidCrystal_I2C lcd(0x27,20,4);

int i = 0;


void setup()
{
  
  lcd.init();
  lcd.backlight();
  lcd.clear ();                
  lcd.setCursor ( 0, 0 );
  lcd.print("RIGA 1");
  lcd.setCursor ( 0, 1 );
  lcd.print("RIGA 2");
  lcd.setCursor ( 0, 2 );
  lcd.print("RIGA 3");
}
void loop()
{
   lcd.setCursor ( 0, 3 );
   lcd.print(i);
   i=i+1;
   delay(1000);
}

SCHEMA ELETTRICO:

Come possiamo notare dal pinout i terminali interessati sono il 7 per la connessione SCL e il pin 5 per la connessione SDA. Come da pressi è necessario inserire tra SDA e VCC, e tra SCL e VCC una resistenza di pull-up dal valore di 470 ohm.

Tags

Mae89

Appassionato di elettronica digitale, elettrotecnica generale e programmazione di microcontrollori. Fondatore del progetto MST tutorial.

Related Articles

Close