Stap 1: 2-draads LCD voor een Attiny85
Als er een chip die profiteren zullen van de nood aan slechts 2 pinnen voor het LCD-scherm, is de 8-pin Attiny85/45/25. Met pinnen worden gereserveerd voor voeding en resetten, zijn er in feite slechts 5 pinnen links te gebruiken. en hoewel het is mogelijk om een I2C protocol in die chip, met behulp van een shift register is waarschijnlijk gemakkelijker.
In zijn meest fundamentele instelling moet de Attiny85 slechts één pull-up weerstand.
Om te kunnen gebruiken de Attiny met de Arduino IDE die u wilt installeren een attiny kern. Ik neem aan dat bekend is bij de meeste mensen werken met een attiny. Echter niet alle kernen zijn gelijk en sommige krijgt u foutberichten weergegeven bij het gebruik van specifieke bibliotheken of functies. Het opheffen van de 'print.h' is een bekende bij gebruik print verklaringen of of op de attiny. Hoewel dat is gemakkelijk te corrigeren in de bestanden print.h en print.cpp maar de kans is dan een vergissing zal knal opwaarts in een andere kern bestand als de hardwareserial.h.
het is gemakkelijker te gebruiken een kern die is bekend dat ze werken. De Attiny corefrom David Mellis werken in deze instelling.
Een programma zou er zo uitzien:
#include <LiquidCrystal_SR.h> LiquidCrystal_SR lcd(0,2,TWO_WIRE); // | | // | \-- Clock Pin // \---- Data/Enable Pin<br>void setup(){ lcd.begin(16,2); // initialize the lcd lcd.home (); // go home lcd.print("LCD with 2 wires"); lcd.setCursor ( 0, 1 ); // go to position lcd.print("on Attiny85"); }<br>void loop(){ }
Geenszins wil ik beweren mijn werk in dit oorspronkelijke: de kern is niet de mijne, de bibliotheek is niet de mijne en het idee van het gebruik van een 164 shift register is niet de mijne. Ik trekken gewoon samen hier in een praktisch werkend voorbeeld.
Gewoon een opmerking. Althoigh die ik heb de 'br' linebreak HTML-codes een dozijn keer uit het programma aanbieding verwijderd, ze blijven terugkomen. Dus als je deze programma zorg ervoor dat kopieert vervangen u eventuele br-codes (die tussen de 'vishaken') door een linebreak
OPMERKING
Ik heb gemerkt dat sommige problemen die optreden kunnen als u de I2C-poort op de Attiny85 via de TinyWireM-bibliotheek gebruikt als ik was niet in staat om te lezen een BMP180 sensor. Ik heb de oorzaak nog niet gelokaliseerd. Als u een I2C protocol op uw Attin85 implementeert, is er echter niet veel reden de SR rugzak voor uw LCD meer gebruiken. Beter dan gebruik I2C