» elektronik » Arduino »Armbandsur på Attiny85 med Oled-skärm

Armbandsur på Attiny85 med en OLED-skärm

Armbandsur på Attiny85 med en OLED-skärm


God eftermiddag, idag vill jag dela instruktioner om hur man gör klockor baserade på Attiny 85 med en Oled-skärm. Funktionerna på min klocka är inte begränsade till min klocka. De kan också användas som skrivbord, och du kan också krossa en digital temperatursensor.

För att göra hemlagad vi kommer att behöva:

- Syntetisk rem (valfri färg)
- Kardborre för kläder
- Digispark Attiny85
- Oled display med en upplösning på 128x64, I2C
- ds18b20 - digital temperatursensor (tillval)
- Motstånd 4.7 Kom 0,25 W
- Arduino Digispark Attiny85 firmware board (ISP-programmerare)
- Ark av tunn plast
- Färgade ledningar
- Dupont 2,54 mm ”kvinnliga” kontakter
- Knappar 2 st.
- Liten kretskort eller en liten bit kretskort
- Lödkolv, löd, kolofonium
- Tråd, nål, sax
- kontoristkniv
- Het limpistol
- Hett lim
- Dubbelsidig tejp

Steg 1 Förbereda bältet.
Du kan köpa en rem i alla handarbutiker. Välj en 25 mm bred rem. Vilken färg som helst. Vi behöver en remsa på cirka 50 cm. Vik vår rem i hälften och sy längs kanterna. Sedan i mitten av remmen gör vi en lucka, men bara i en av delarna. Sy kardborreband från ändarna av remmen.

Sätt tråden med nålen åt sidan och ta lödkolven.

Steg 2 Förbered kortet och OLED-skärmen.
"Hjärnan" på vår klocka är Digispark Attiny85-kontrollenheten. De finns i flera versioner. Du bör köpa ett kort med en Micro USB-kontakt. Andra versioner av brädet passar inte i klockfodralet.

Om du köpte ett bräde med lödda kontakter bör du först lossa dem. Sedan tar vi ledningar i olika färger, vi behöver 9 olika färger. Klipp av cirka 15 cm från varje tråd, remsa den och löd till Attiny85. Omedelbart är det värt att skriva ner vilken tråd till vilken stift som är lödad för att inte bli förvirrad senare.

I mitt fall ser kablarna efter färger ut så här:

PB0 MOSI - Gul
PB1 MISO - Blå
PB2 CSK - Blå
PB3 - Lila
PB4 - vit
PB5 NRES - Grå
GND - svart
+5 - röd
Vin - Orange

Dina färger på ledningarna kan variera, det viktigaste är att skriva ner dem.

Låt oss gå vidare till skärmen. Vi kommer att använda en oled display. Skärmupplösning 128x64, fungerar på I2C-bussen. På försäljning finns skärmar i olika färger: vit, blå, blå med gul. Var försiktig! Ordet ”tvåfärgad” i beskrivningen och titeln på denna skärm indikerar förekomsten av en färgremsa som skiljer sig från den huvudsakliga högst upp på skärmen, och inte möjligheten att visa två färger med den här skärmen! Alla skärmar av denna typ visar bara en färg, eller upptill en remsa av en färg, längst ner i en annan. Jag gillade den blå skärmen, med en gul stapel upptill. Färg spelar inte en speciell roll, välj vilken du vill. Precis som med Attiny85, om du köpte en skärm med lödade kontakter bör du först lossa den.


På baksidan av skärmen bör du löd små trådar. Det är bättre att använda kablar i samma färger som med Attiny85, för att inte förvirra dem senare. I mitt fall lödar jag den gula tråden till SDA på skärmen, till SCL - blå, GND - svart, VCC - röd.


På en dubbelsidig tejp fäster vi Attiny85 på baksidan av Oled-skärmen. Attiny85 bör inte gå längre än Oled-skärmkortet.


Vi lodde Attiny85 och Oled tillsammans.

PB0 MOSI Attiny85 - Gul - SDA Oled
PB2 CSK Attiny85 - Blå - SCL Oled
GND Attiny85 - Svart - GND Oled
+5 Attiny85 - Röd - VCC Oled

Vi samlar alla ledningar i en rad, så att vi får en slinga. Vi lindar den med elektrisk tejp på flera ställen så att den inte faller isär.


Gå till kraften i våra klockor. För att göra detta, ta ett litet litiumbatteri. Löd trådarna till den.


Om det inte finns något batteri kan ett batteri av typ A27 eller A23 användas.


Vi lägger ackumulatorn eller batteriet i det längsta hörnet av fickan som bildas av remmen som är viks i hälften. Om du använder ett batteri ska du ha ett fack för att byta ut det.
I hålet som gjordes mitt i remmen fäster vi kabeln från trådarna.


Och vi sträcker dem till slutet av remmen, så att de sticker ut, och klockan är exakt ovanför spåret, så att spåret stängs i timmar.


Vi klippte bort överskottet och klämmer ihop alla ledningar på Dupont 2,54 mm “moder” -anslutningar. Vi sätter in den i plastfodral och lindar den med elektrisk tejp, så att vi får ett snyggt kontakt med alla Attiny85-kablar. Här är det också värt att skriva, eller ännu bättre skissa, alla kontakter i det resulterande kontakten. GND Attiny, GND Oled och batteriets minus kan omedelbart anslutas och krympas i en kontakt. För att ytterligare fylla i skissen och ansluta tillägg är det mest praktiskt att ordna kontakterna enligt följande:

PB0 | PB1 | PB2 | PB5 | +5 ATTINY | GND ATTINY

PB3 | PB4 | VCC OLED | GND OLED | Vin ATTINY | + BAT



Nu är det dags att gå vidare till skrovet.

Steg 3 Att göra saken.
För kroppen behöver du tunn plast. Det kan köpas i onlinebutiken. Eller så kan du köpa en mapp med ett tjockt plastkåpa i pappersaffären och göra en väska ur locket. På plasten markerar vi klockans svep. Massiva linjer är skärade linjer, streckade linjer - böj.


Klipp försiktigt ut fönstret i mitten med hjälp av en kontoristkniv. Vi böjer alla prickade linjer. Det borde vara så här:


Och på baksidan:


Vi lägger en lucka på vår skärm, böjer kanterna och monterar vår kropp med smältlim. Det är också värt att limma fodralet på remmen, helst inne, så att limet inte tappar ut.


Steg 4 Förbereda programmeringsmiljön.
För att arbeta med firmware (eller skiss) använder vi Arduino IDE. Ladda ner arkivet eller installationsprogrammet från den officiella webbplatsen Arduino IDE.

Dessutom måste vi lägga till Attiny-stöd till Arduino IDE. För att göra detta, kör Arduino IDE, sedan File - Settings - i fältet "Extra Boards Manager URLs", sätt in länken:

https://raw.githubusercontent.com/damellis/attiny/ide-1.6.x-boards-manager/package_damellis_attiny_index.json


Klicka på OK (du kan ange flera länkar separerade med komma i det här fältet). Gå sedan till Tools - Board - Boards Manager i filterfältet, ange Attiny och välj "attiny by David A. Mellis". Klicka på Installera och vänta tills nedladdningen är klar.

Du behöver också ett bibliotek för att arbeta med Oled-skärmen. Det finns många av dem, jag gillade det, och jag rekommenderar att du använder TinyOzOLED. Det är bekvämt, och viktigast av allt, passar i minnet:
tinyozoled-master.rar [15,99 Kb] (nedladdningar: 100)


I framtiden kan du utöka klockans funktionalitet genom att lägga till en temperatursensor. Lägg till ett bibliotek för den här sensorn omedelbart. OneWire-bibliotek.
onewire.rar [16,75 Kb] (nedladdningar: 71)


Installera dessa bibliotek. För att göra detta kan du direkt i Arduino IDE-programmeringsmiljön, utan att packa upp de nedladdade arkiven, välja Sketch - Connect Library-menyn. Högst upp i rullgardinslistan väljer du objektet "Lägg till. Zip-bibliotek". I dialogrutan som visas väljer du biblioteket som du vill lägga till, i detta fall två nedladdade. Öppna nu Sketch - Connect Library-menyn igen. Längst ner i listrutan bör du se nya bibliotek. Från och med nu kan bibliotek användas i program. Starta om Arduino IDE efter allt detta. Du kan också helt enkelt packa upp den i mappen ”bibliotek” som finns i mappen med Arduino IDE installerat.

Steg 5 Förbereda programmeraren.
Digispark Attiny85 kan programmeras via mikro-USB-kontakten på kortet med Arduino IDE. Du måste emellertid offra 2 kB med 8 kb Flash-minne för startlasteren.Klockskissen passar inte med bootloader, så du måste använda ISP-programmeraren och därmed radera bootloader. Om du inte har en ISP-programmerare till hands (som min) kan du istället använda Arduino-kortet. Jag kommer att använda Arduino Uno. Men du kan använda valfritt annat bräde. Så vi ansluter Arduino Uno till datorn. Starta Arduino IDE, öppen fil - Exempel - Arduino ISP. Välj i menyn Verktyg - Kort - Arduino Uno. Vi väljer den port som den är ansluten till, Arduino och klick nedladdning. Skissen börjar med ett tips om hur du ansluter Arduino till den programmerbara styrenheten.

// 10: slavåterställning
// 11: MOSI
// 12: MISO
// 13: SCK

Anslutningsschema till Digispark Attiny85:
Arduino UNO - Digispark Attiny85

D11 - P0
D12 - Pl
D13 - P2
D10 - P5


Steg 6 Förbered tråden för att ladda skissen.
Det finns flera alternativ för skissen, och bara för att underlätta nedladdningen kommer vi att tillverka en tråd som ansluter Arduino Uno (som en ISP-programmerare) och vår klocka. Här rekommenderar jag också att använda färgade ledningar som matchar färgen som vi redan har använt. Å ena sidan bör det finnas ett block:

PB0 Gul | PB1 Blå | PB2 Blue | PB5 Grå | +5 Röd | GND Svart

Detta block ansluts till klockan, längst upp på klockblocket.
Å andra sidan finns det två kuddar för anslutning till Arduino Uno:

Pin 10 Grey | Stift 11 gul | Stift 12 blå | Stift 13 blå

+5 Röd | GND Svart

Det ska se ut så här:


Steg 7 Firmware.
Så jag skrev några skissalternativ för våra klockor. Jag kommer att skriva senare vad som är skillnaderna och lägga ut allt. För att fylla skissen, kör Arduino IDE, välj Verktyg-menyn, ställ in följande parametrar:

Styrelse - Attiny 25/45/85
Processor - Attiny 85
Klocka - intern 16

Välj den seriella porten som ISP-programmeraren eller Arduino är ansluten till som programmerare. I Verktyg - Programmer-menyn väljer du också "Arduino som ISP". Välj nu Sketch - Download via programmeraren. Det återstår att vänta tills nedladdningen är klar.

Steg 8 Skisser.
Det första alternativet är en klocka med ett datum. För att ställa in tiden måste du ansluta knappar, något liknande:


För att stifta PB1, PB3, PB4.
attiny85_oled_spi.rar [1,9 Kb] (nedladdningar: 110)


Det andra alternativet är bara en klocka. För att ställa in tiden du behöver använda USB-TTL.
attiny85_oled_spi_softwareserial_nodata.rar [1,45 Kb] (nedladdningar: 89)


Och det tredje alternativet, en skrivklocka med ett datum och en termometer.
attiny85_oled_spi_term_2.rar [2,78 Kb] (nedladdningar: 101)


Steg 9 Lansering.
För att starta klockan, om du använder ett litiumbatteri, måste du installera en bygel i blocket mellan kontakterna BAT, +5 och VCC. Du kan använda en liten bit tunn tråd. Om du har ett batteri, behöver du två hoppare, lägg den första mellan BAT och Vin, den andra - + 5 och VCC.
8.8
8.9
7.3

Lägg till en kommentar

    • lelerxaxaOKdontknowyahoonea
      bossscratchluraJaja-jaaggressivhemlighet
      ledsendansdance2dance3benådningHjälpdrycker
      stoppvännerbragoodgoodvisselpipasvimningsanfalltunga
      rökklapparcraydeclarehånfulldon-t_mentionnedladdning
      hettaRASANDElaugh1mdamötemoskingnegativ
      not_ipopcornstraffalässkrämmalarmrapportersök
      hånthank_youdettato_clueumnikakutöverens
      illabeeeblack_eyeblum3rougeskrytaledan
      censureradepleasantrysecret2hotasegeryusun_bespectacled
      shokrespektlolprevedvälkommenkrutoyya_za
      ya_dobryihjälparene_huliganne_othodiFLUDförbudstänga

Vi rekommenderar att du läser:

Räcka den till smarttelefonen ...