Inhoudsopgave:
- Stap 1: De componenten op uw breadboard plaatsen
- Stap 2: plaats de drukknop op uw breadboard
- Stap 3: Plaats de RGB-LED op uw breadboar
- Stap 4: Zet de ATTINY85 op je breadboard
- Stap 5: Sluit de blauwe LED aan op pin 0 van de ATTiny85
- Stap 6: Sluit de groene LED aan op pin 1 van de ATTiny85
- Stap 7: Sluit de rode LED aan op pin 2 van de ATTiny85
- Stap 8: Sluit de voedingszijde van de knop aan
- Stap 9: Bedraad de grondpoot van de RGB-LED
- Stap 10: Schakel ATtiny in
- Stap 11: voeg de schuifschakelaar toe aan de breadboard
- Stap 12: Plaats de 3V knoopcelbatterij in de batterijhouder
- Stap 13: Voeg het knoopcelbeslag toe aan de broodplank
- Stap 14: Sluit de schuifschakelaar aan op +3V
- Stap 15: Verbind de (-) pin van de ATTiny met aarde
- Stap 16: Sluit de knopuitgang aan op uw ATTINY85 (pin 3)
- Stap 17: Voeg een 10K-weerstand toe tussen de knop en de aarde
- Stap 18: voeg de zoemer toe aan de broodplank
- Stap 19: Ontwikkel uw CODE
- Stap 20: Dr. Azzy's Board toevoegen
- Stap 21: Rttl-bibliotheek toevoegen aan uw Arduino-bibliotheek
- Stap 22: Configureer de Arduino IDE om de ATTiny te programmeren
- Stap 23: Programmeer de ATtiny en sluit uw breadboard aan op de AVR-programmer
- Stap 24: KLAAR
- Stap 25: Schakelschema
2025 Auteur: John Day | [email protected]. Laatst gewijzigd: 2025-01-13 06:57
Deze Instructable is voor het maken van een programmeerbaar Pumpkin-licht met een ATTiny-microcontroller. Dit is ontworpen als een leerzame demo om iedereen (vanaf 8 jaar) kennis te laten maken met elektronica en het programmeren van microcontrollers met behulp van de Arduino IDE.
Scheve doelstellingen:
- Begrijpen wat een invoer is en wat een uitvoer is voor een microcontroller.
- Begrijpen hoe een microcontroller-uitgang een LED kan besturen.
- Begrijpen hoe een knopinvoer kan worden gelezen door de microntroller.
Benodigde onderdelen:
- 1 Mini Broodplank
- 1 ATTiny85
- 1 3V knoopcelbatterij
- 1 knoopcelbatterijhouder
- 1 330 Ohm weerstanden (oranje, oranje, rood)
- 1 weerstand van 10 k Ohm
- 1 RGB-led
- 1 schuifschakelaar
- 1 drukknop
- 8 draden
- 1 Piezzo-zoemer
Gereedschap nodig:
- Een computer met de Arduino-software
- Een AVR-programmeur (we gebruikten Sparkfuns Tiny AVR Prorgrammer, maar als je al een Arduino hebt, kun je deze instructies volgen om de ATTiny85 met je arduino te programmeren)
- Om deze code te laten werken, moet u het ATTiny-bord van Dr. Azzy gebruiken dat hier te vinden is: https://drazzy.com/package_drazzy.com_index.json (Instructies voor het installeren vindt u in stap 20)
- De RTTL-bibliotheek die hier te vinden is: https://github.com/cefn/non-blocking-rtttl-arduino/blob/master/README.md (Instructies voor het installeren vindt u in stap 21)
Stap 1: De componenten op uw breadboard plaatsen
De volgende paar stappen zullen u leren hoe u uw breadboard kunt aansluiten. Het is BELANGRIJK dat je je bord precies aansluit zoals op de foto's wordt getoond, anders werkt je pompoenlicht mogelijk niet. Vraag om hulp van een vrijwilliger als je iets niet zeker weet.
opmerking: de rijen broodplanken aan weerszijden van de middellijn zijn verbonden
Stap 2: plaats de drukknop op uw breadboard
Steek de drukknop in de rood omcirkelde vakken op je breadboard
Stap 3: Plaats de RGB-LED op uw breadboar
Plaats de RGB-LED in de omcirkelde ruimtes op je breadboard. Het is belangrijk om ze precies zoals hier in het bord te plaatsen. Het lange been moet in het 5e gat van boven gaan.
Stap 4: Zet de ATTINY85 op je breadboard
Plaats je ATTINY 85 in het midden van rij 8 tot rij 11. Zorg ervoor dat het stipje linksboven staat.
*Zorg ervoor dat u de poten van uw ATTINY85-microcontroller niet breekt. Je duwt de microcontroller niet helemaal naar binnen, omdat we hem zullen verwijderen om hem later te programmeren.
Stap 5: Sluit de blauwe LED aan op pin 0 van de ATTiny85
Voeg de draad toe die de blauwe LED-poot verbindt met pin 0 van de ATTiny zoals weergegeven in de afbeelding
Opmerking* De kleur van de draad maakt niet uit, maar het is handig om verschillende kleuren te gebruiken om het gemakkelijker te maken om te zien wat er is aangesloten.
Stap 6: Sluit de groene LED aan op pin 1 van de ATTiny85
Bedraad de pin zoals weergegeven in de afbeelding:
Stap 7: Sluit de rode LED aan op pin 2 van de ATTiny85
Steek een draad in de gaten die op de foto worden getoond.
Opmerking* De kleur van de draad maakt niet uit, maar het is handig om verschillende kleuren te gebruiken om het gemakkelijker te maken om te zien wat er is aangesloten.
Stap 8: Sluit de voedingszijde van de knop aan
Voeg de langere (0.75in) zwarte draad toe zoals weergegeven in de afbeelding
Stap 9: Bedraad de grondpoot van de RGB-LED
Voeg de weerstand van 330 ohm toe (oranje-oranje-bruin-goud) zoals weergegeven in het diagram.
Stap 10: Schakel ATtiny in
Stap 11: voeg de schuifschakelaar toe aan de breadboard
Voeg de schuifschakelaar toe zoals op de foto.
Stap 12: Plaats de 3V knoopcelbatterij in de batterijhouder
Doe dit voordat u de houder van de knoopcelbatterij in het breadboard plaatst.
Stap 13: Voeg het knoopcelbeslag toe aan de broodplank
Voeg dit toe in de exacte gaten zoals weergegeven. Zorg ervoor dat de positieve pool zich aan de rechterkant bevindt.
Stap 14: Sluit de schuifschakelaar aan op +3V
Dit gaat makkelijker als je eerst de gele draad doormidden buigt zoals op de afbeelding links.
Stap 15: Verbind de (-) pin van de ATTiny met aarde
Zoals op de foto hierboven te zien is
Stap 16: Sluit de knopuitgang aan op uw ATTINY85 (pin 3)
Hierdoor kan uw ATTINY85 detecteren wanneer u op uw knop drukt. Voeg de draad precies toe zoals afgebeeld.
Stap 17: Voeg een 10K-weerstand toe tussen de knop en de aarde
Voeg een weerstand van 10 K ohm (bruin, zwart, oranje, goud) toe tussen de grond en de knop. Dit is een pull-down weerstand. Als de knop wordt ingedrukt, geeft de ATTINY85 een HIGH (+3V) aan, als deze niet wordt ingedrukt, geeft de ATTINY85 een LOW (0 V) aan
Stap 18: voeg de zoemer toe aan de broodplank
Voeg de zoemer toe aan je broodplank. Zorg ervoor dat u het precies toevoegt zoals weergegeven met de (+) bovenaan.
Stap 19: Ontwikkel uw CODE
- Download de code
- Bewerk de code
Dit is een STATE-gestuurde code. Dit betekent dat de STATE (die in CAPS wordt getypt in de code, bijvoorbeeld RED_STATE).
Om een staat toe te voegen, moet u deze bovenaan de code aangeven en het aantal staten bijwerken.
Vervolgens kunt u de Switch-case wijzigen om uw nieuwe STATE op te nemen.
Stap 20: Dr. Azzy's Board toevoegen
Voeg Dr. Azzy's Board toe aan je Arduino IDE:
- Ga onder Bestanden naar voorkeuren
- voorkeuren>Instellingen onder extra bestuursmanagers verleden in deze link:
- Ga onder Tools naar Boards Manager
- Installeer ATtiny Core van Spence Konde
Stap 21: Rttl-bibliotheek toevoegen aan uw Arduino-bibliotheek
Om de zoemer te laten werken, voegt u de bibliotheek hier toe aan uw Arduino-bibliotheek:
github.com/cefn/non-blocking-rtttl-arduino
Stap 22: Configureer de Arduino IDE om de ATTiny te programmeren
Klik op het menu Extra en zorg ervoor dat het bord, de klok en de chip correct zijn
Stap 23: Programmeer de ATtiny en sluit uw breadboard aan op de AVR-programmer
- Haal de ATTiny van je breadboard en plaats hem in de AVR Programmer. Je moet hem in het bord steken met de kleine stip in de linkerbovenhoek, zoals weergegeven in de eerste afbeelding.
- Neem 3 draden en verbind pinnen 2, 1, 0 op de programmer met de corresponderende pinnen op je breadboard. Zie foto's voor details.
- Neem één draaddraad en verbind de pinnen (-) op de programmer met de overeenkomstige aarde op uw breadboard. Zie foto's voor details.
- laad de Arduino-code op de ATTiny door de uploadpijl in je Arduino IDE te selecteren (als je een foutmelding krijgt dat bij het uploaden van de code de vorige stap)
Stap 24: KLAAR
Als uw code ook werkt zoals u wilt. Verwijder de flexibele draden van je breadboar en plaats de ATTiny programmer in je breadboard.
VOORDAT u uw Pumpkin aansteekt, plaatst u het circuit in een plastic zak om het te beschermen tegen kortsluiting als er pompoenresten op vallen.
Stap 25: Schakelschema
Een beter schakelschema ontwikkeld door Kyle Neil wordt hier getoond en zou een transistor gebruiken om de zoemer te regelen. Te implementeren in toekomstige versies