Med en I2C LCD på Attiny85



Med en LCD-skärm på ett litet chip som en attiny85 inte är riktigt så hårt och tills nyligen jag inte ens tänka det motiverat en instructable, men jag har fått frågor om det, så jag kan också utveckla processen.

Med attiny baserat att endast ha ett max på 6 pins tillgänglig, det är självklart att det direkt inte kan kontrollera alla stiften av standard Hitachi LCD
Lite över ett år sedan, jag beskrivs hur du lägger till en LCD-skärm till en Attiny eller andra chip, med endast 2 stift. Denna krets har använt en HC164 SKIFT register, men som I2C moduler för LCD är extremt billigt och även LCD med en modul redan på plats också är smuts billigt, man kan också använda I2C på Attiny85.

I2C
Attiny85 kan simulera I2C på PB2 (stift 7) (SCL) och PB0 (pin 5) (SDA). "Tråd" biblioteket som används för att läsa och skriva byte från och till I2C-porten på arduino fungerar inte på attiny. Den behöver TinyWireM biblioteket att agera som en ledar-I2C

Bibliotek
Standardbiblioteket för Arduino kan inte användas för I2C på Attiny eftersom det ett samtal till "Wire.h" och att man är inte kompatibel med Attiny.
'NewLCD' biblioteket från Francisco Malpartida är min favorit bibliotek, men också att man misslyckas med I2C för Attiny eftersom det gör ett anrop till Wire biblioteket. En ändring till göra den arbeta med Attiny85 kan hittas här.
"Bro Hogan" biblioteket men fungerar. Det är i grunden samma bibliotek som standard arduino LCD biblioteket, men det är modifierad för att känna igen Attiny85 och Attiny2313 och sedan gör ett anrop till "TinyWireM" istället för "Tråd".
Adafruit ger också en libray som fungerar med Attiny85 och som beskrivs i en annan instructable. Jag kommer att använda Bro Hogan biblioteket här.

Att undvika problem
De flesta problem som kan uppstå är relaterade till IDE att bli förvirrade när det gäller bibliotek. Om du använder Arduino LCD-standardbiblioteket, ersätta bästa den genom Bro Hogan biblioteket. Om du använder Malpartidas biblioteket och vill hålla det (som det är ett bra bibliotek), flytta den ur vägen. Ta hela mappen och flytta det mappen sketchbook/bibliotek. Kontrollera att du har TinyWireM biblioteket installerat och se till att dina bibliotek är uppdaterade.
Om av någon anledning du inte kan eller vill inte flytta det Malpartida biblioteket ur vägen, antingen byta namn på LiquidCrystal_I2C.h och LiquidCrystal_I2C.cpp modulerna i biblioteket, eller lägga BroHogan LiquidCrystal_I2C.h och LiquidCrystal_I2C.cpp filer i katalogen skiss (och ändra anropet fraktfartygens i parentes).

Programmering av Attiny
Jag antar att du vet hur man gör. Ändå kör jag du genom några fallgropar:
Bränna bootloader!!! Jag är nog säga saker de flesta redan vet men du skulle bli förvånad hur många som inte vet.
Nu uppenbarligen finns det ingen bootloader för attiny85, men processen att bränna bootloader anger säkringarna av den attiny från fabriksläget, till det läge du vill använda den i. Så, förutsätta att du använder Arduino som ISP:
Ladda upp programmet ISP till din Arduino,
sätta attiny i din program sköld
Gå till "Verktyg-Board" -> Välj "Attiny"
Gå till "Verktyg-Processor" -> Välj Attiny85
Gå till "Verktyg-klocka" -> Välj 8 Mhz (eller 1 om du föredrar)
Gå till "Verktyg-Burn bootloader"
gjort.

Sedan ladda upp programmet (se nästa steg) till IDE
Gå till 'Skiss-Upload använder programmerare'
gjort

"Hej, min IDE säger det finns uppdateringar för några bibliotek"
Nyare versioner av IDE kommer berätta för dig när det finns uppdateringar för några av dina bibliotek och ofta, flytande kristaller biblioteket föreslås också för en uppdatering. Inte om du har Bro Hogan biblioteket, det kommer att ersättas av exempelvis YW robot biblioteket, medan Malpartida biblioteket kommer förmodligen att helt tas bort.

Ansluta LCD.
I2C-modul har 4 anslutningar: Vcc, SCL, SDA, marken.
de ansluter följande till Attiny:
Attiny85 <> - LCD

VCC (pin8) <> - Vcc
SCL (pin7) <> - SCL
SDA (pin5) <> - SDA
GND (pin4) <> - GND

Se Steg
Relaterade Ämnen

DIY I2C LCD-Display med ingångar

Den typiska parallella LCD används med en Arduino (16 x 2 eller 20 x 4) har 16 stift. Endast 6 I/O pins krävs på Arduino, men tänk om du kunde få det ner till två I/O stift, och har fortfarande de stift som är tillgänglig för andra enheter?I2C gränss...

Göra Seedstudio's I2C LCD övervakar arbetet med en gammal Arduino

Har jag en Grove började kit av Seedstudio, och jag hade problem med dess LCD uppvisning med en gammal Arduino modell (jag använder en Freediuno. IDE det som en "Duomilanove w / ATmega328", men jag tror många gamla styrelser skulle ha ett liknan...

Magic 8 Ball med hjälp Esp8266 och I2c LCD-skärm

Jag trodde det skulle vara lite roligt att göra en Magic 8 Ball med en Arduino och en i2c LCD-skärm, så här är några instruktioner på hur man gör detta.Steg 1: Saker du behöver Arduino av någon typ (jag använder en esp8266 men det finns ingen anledni...

Klocka med termometer med Arduino, i2c 16 x 2 lcd, DS1307 RTC och DHT11 sensor.

Hello! Det var ett tag jag har inte postat något på Instructables, men nu gjorde jag ett enkelt projekt som jag sett på internet i olika former. Jag lyckades bygga en kod med hjälp av andra koder som jag har hittat på internet och jag måste säga det...

Raspberry Pi: Använda 1 ryggsäckar $ I2C LCD för 1602 skärmar & knappar!

Hej! Jag är Arsenijs, jag gillar att bygga saker med Raspberry Pi och nyligen jag har jobbat med karaktär visar, liksom deras I2C ryggsäckar, så jag har samlat några Hack som jag kan visa dig. Idag, ska jag berätta hur man sparar en hel del stift på...

Arduino Temp/fukt Sensor använder DHT11 och I2C LCD-en dag projekt

Jag har köpt en Arduino Mega 2560 uppsättning som kom med några sensorer och naturligtvis och Arduino Mega.I detta instructable, jag kommer att dela med dig stegen jag tog för att göra en Arduino baserade temperatur och luftfuktighet visas.Element, s...

Nodemcu devkit (esp8266) display temperatur på en i2c LCD-skärm

I detta Instructable jag visar hur jag in en esp8266 för att styra en i2c 20 x 4 LCD-skärmen för att visa data från flera källor som samlas in av andra esp8266 enheter runt mitt hem.Jag började med att få LCD-skärmen att arbeta med esp8266 utan att a...

Arduino-torget med färg LCD

B-rutor är en modulär elektronik plattform som möjliggör för användare att skapa, anpassa och kontinuerligt uppdatera egna elektronik applikationer.I denna B-torg App kommer vi att täcka hur du sätter samman en enkel färg-LCD program som använder Ard...

I2C LCD-Controller del II

nu när vi har installera och montera registeransvarige här är ett litet projekt. Vi ska bygga en termometer.Reservdelslista1. Arduino1. I2C LCD1. DHT11 Temp Sensor1. 1 k Resistor7. hoppare ledningarSteg 1: Det är mycket enkelt att ansluta LCDLCD-Ardu...

Hemautomation med arduino, knappar, LCD, EEPROM och smarttelefon

Nu kan vi styra skrovet med smart telefon hemSteg 1: Hårdvara krävs för hemautomation kan du lägga till olika saker jag väljer omkoppling eller reläI detta projekt du styr kopplat av mobila .if mobil finns inte du kan också använda knappsatsenJag ock...

Arduino ultraljud avståndsmätare med I²C lcd uppvisning!

Heji detta projekt vill jag Visa och förklara du en rad sensor med ultraljud och en 20 x 04 LCD-skärm. Jag skrev koden för detta projekt själv och lade till massor av kommentarer, så att alla kan förstå det och använda det för andra projekt (kanske e...

Bänk PSU strömförsörjning från gamla ATX med Arduino och LCD-skärm

Hej alla och Välkommen till min första Instructable.Jag har alltid velat en bänk PSU för enkel åtkomst till en strömkälla, och något som jag kan lita på när du arbetar med olika projekt. Jag ville ha ett NÄTAGG som:• ger 12v och 5v 3.3V utgångar• ger...

Arduino I2C LCD-chaufför bibliotek och PackMan

Detta projekt är en omfattande Arduino port av en tidigare Instructable som finns här;Som hette snappily..."Microchip PIC bibliotek att styra en 20 av 4 LCD över I2C"Det är min första gå på att skriva en C++-bibliotek för Arduino så ber om ursäk...

Ljud spektrumanalysator med Freescale GT60 LCD 8 Bit

detta är en utveckling som omfattar en analog och en digital del.I grunden är makten att representera ljudsignalen skilda frekvenser, för detta måste vi prova signalen enligt Samplingsteoremet Nyquist Samplingsteoremet, Shannon . En audio signal "aku...

Raspberry Pi aktiesymbol med överskott butik LCD

i detta Instructable jag skapa en rullning börsinformation med Raspberry Pi.Jag hittade en LCD i överskott store som inte har mycket information, men efter något forskande och spela runt, såg att den var baserad på den populära HD44780U. Detta är en...

Night Vision med 12 volt LCD-skärm

Just uppgraderat min säkerhetskameror och har de äldre att leka med.Ha även 2 nya ännu att placeras. Ville göra en bättre IRkameran ställer in, hade en bil säkerhetskopiering kameran inställd men det slutade fungera. Dettaenheten är tillfälliga, komm...

I2C LCD-Controller (det enkla sättet)

jag arbetar på ett larm/weather station projekt och jag ville använda en LCD men dint vill ha en massa sladdar så jag beställer en controller. Detta är bara en mycket grundläggande handledning om hur man kan koppla in, den för nybörjare som mig själv...

Thermohygrometer med klocka och LCD-display på Arduino UNO

Dessa 7 steg kommer att driva dig genom den "konstruktionen" av en termo-hygrometer med klocka på Arduino UNO.Data och tid, luftfuktighet och temperatur visas på en LCD display 16 x 2. Om du har köpt en LCD-display och vill veta hur man korrekt...

Räkna med IR och LCD-

Hej alla!Idag har jag ska presentera en min gamla projekt, mellan januari och februari för 2015. Det är en enkel räknare, baserat på Atmega328p och IR-sensor vassa 2Y0A21.Arbeta med små automatiska maskiner, i ett skede av tester, behövde jag räkna b...