Met behulp van een LCD-scherm op een kleine chip als een attiny85 niet echt zo hard en tot is recente ik niet eens het gerechtvaardigd een instructable, maar ik heb vragen over, dus ik kan ook ingaan op het proces.
Met de attiny gebaseerde slechts met een maximum van 6 pinnen beschikbaar, dat het spreekt vanzelf dat het direct kan geen controle over alle de pinnen van de standaard Hitachi LCD's
Een klein beetje meer dan een jaar geleden, ik heb beschreven hoe u een LCD toevoegt aan een Attiny of andere chip, met behulp van slechts 2 pins. Dat circuit gebruik gemaakt van een HC164 shift register, maar zoals I2C modules voor LCD's uiterst goedkoop en zelfs LCD's met een module reeds zijn zijn ook spotgoedkoop, men kan ook gebruik maken van I2C op de Attiny85.
I2C
De attiny85 kan simuleren I2C op PB2 (pin 7) (SCL) en PB0 (pin 5) (SDA). De 'Draad' bibliotheek die wordt gebruikt om te lezen en te schrijven bytes van en naar de I2C-haven op de arduino werkt niet op de attiny. Het moet de bibliotheek TinyWireM om op te treden als een I2C master
Bibliotheek
De standaard Arduino library kan niet worden gebruikt voor I2C op de Attiny omdat het doet een oproep tot 'Wire.h' en dat niet compatibel met de Attiny is.
De bibliotheek van de 'NewLCD' van Francisco Malpartida is mijn favoriete bibliotheek, maar ook dat men niet in het gebruik van I2C voor de Attiny, omdat daarin een oproep aan de draad bibliotheek. Een wijziging te laten werken met Attiny85 kan hier worden gevonden.
De bibliotheek 'Bro Hogan' Nochtans werkt. Het is eigenlijk dezelfde bibliotheek als de standaard arduino LCD-bibliotheek, maar het is gewijzigd om te herkennen van de Attiny85 en de Attiny2313 en vervolgens belt in bij 'TinyWireM' in plaats van 'Draad'.
Adafruit biedt ook een libray die werkt met de Attiny85 en die wordt beschreven in een ander instructable. Ik zal met behulp van de bibliotheek Bro Hogan hier.
Het vermijden van problemen
De meeste problemen die kunt u ondervinden zijn gerelateerd aan de IDE steeds verward over de bibliotheken. Als u de standaard Arduino LCD-bibliotheek gebruikt, het beste vervangen door de Bro Hogan-bibliotheek. Als u Malpartida de bibliotheek gebruikt en wilt houden die (aangezien het een grote bibliotheek), uit de weg te verplaatsen. Pak de hele map en verplaatst dit bericht uit uw omslag van het schetsboek/bibliotheken. Zorg ervoor dat u de TinyWireM bibliotheek geïnstalleerd en zorg ervoor dat uw bibliotheken zijn up to date.
Als om welke reden u niet kan of wil niet uit de weg gaan van de bibliotheek Malpartida, ofwel hernoemen van de LiquidCrystal_I2C.h en LiquidCrystal_I2C.cpp modules in die bibliotheek, of zet de BroHogan LiquidCrystal_I2C.h en LiquidCrystal_I2C.cpp bestanden in de directory van uw schets (en de oproep fishhook omzetten haakje).
Programmering de Attiny
Ik veronderstel dat je weet hoe dat te doen. Toch zal ik u door enkele valkuilen draaien:
Branden de bootloader!!! Ik ben waarschijnlijk dingen zeggen de meeste mensen al weten, maar je zou versteld staan hoe veel mensen niet weten.
Nu er is uiteraard geen bootloader voor de attiny85, maar het proces van het branden van de bootloader stelt de zekeringen van de attiny van fabrieksmodus, naar de modus die u wilt gebruiken in. Dus, vermoeden van u als ISP, de Arduino gebruiken:
het ISP-programma uploaden naar je Arduino,
Zet de attiny in uw programma schild
Ga naar 'Tools-Board' -> 'Attiny' kiezen
Ga naar 'Tools-Processor' -> Kies Attiny85
Ga naar 'Tools-Clock' -> Kies 8 Mhz (of 1 als u liever)
Ga naar 'Tools-Burn bootloader'
gedaan.
Vervolgens uploaden het programma (zie volgende stap) naar de IDE
Ga naar 'Schets-Upload met behulp van programmeur'
gedaan
"Hey, mijn IDE zegt dat er updates voor sommige bibliotheken"
De nieuwere versies van de IDE zal vertellen u wanneer er updates voor een aantal van uw bibliotheken en vaak, de LCD-bibliotheek wordt ook voorgesteld voor een update. Niet hebt u de bibliotheek Bro Hogan, hij zal worden vervangen door bijvoorbeeld de YW robot bibliotheek, terwijl de Malpartida bibliotheek zal waarschijnlijk volledig worden verwijderd.
Aansluiten van het LCD-scherm.
De I2C-module heeft 4 aansluitingen: Vcc, SCL, SDA, grond.
Zij verbinden als volgt met de Attiny:
Attiny85 <> - LCD
VCC (pin8) <> - Vcc
SCL (pin7) <> - SCL
SDA (pin5) <> - SDA
GND (pin4) <> - GND