Programmeerbaar pompoenlicht - Ajarnpa
Programmeerbaar pompoenlicht - Ajarnpa
Anonim
Programmeerbaar pompoenlicht
Programmeerbaar pompoenlicht
Programmeerbaar pompoenlicht
Programmeerbaar pompoenlicht
Programmeerbaar pompoenlicht
Programmeerbaar pompoenlicht
Programmeerbaar pompoenlicht
Programmeerbaar pompoenlicht

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:

  1. Begrijpen wat een invoer is en wat een uitvoer is voor een microcontroller.
  2. Begrijpen hoe een microcontroller-uitgang een LED kan besturen.
  3. Begrijpen hoe een knopinvoer kan worden gelezen door de microntroller.

Benodigde onderdelen:

  1. 1 Mini Broodplank
  2. 1 ATTiny85
  3. 1 3V knoopcelbatterij
  4. 1 knoopcelbatterijhouder
  5. 1 330 Ohm weerstanden (oranje, oranje, rood)
  6. 1 weerstand van 10 k Ohm
  7. 1 RGB-led
  8. 1 schuifschakelaar
  9. 1 drukknop
  10. 8 draden
  11. 1 Piezzo-zoemer

Gereedschap nodig:

  1. Een computer met de Arduino-software
  2. 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)
  3. 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)
  4. 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

Zet de drukknop op je breadboard
Zet de drukknop op je breadboard

Steek de drukknop in de rood omcirkelde vakken op je breadboard

Stap 3: Plaats de RGB-LED op uw breadboar

Zet de RGB-LED op je Breadboar
Zet de RGB-LED op je 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

Zet de ATTINY85 op je breadboard
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

Sluit de blauwe LED aan op pin 0 van de ATtiny85
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

Sluit de groene LED aan op pin 1 van de ATtiny85
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

Sluit de rode LED aan op pin 2 van de ATtiny85
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

Bedraad de voedingszijde van de knop
Bedraad de voedingszijde van de knop

Voeg de langere (0.75in) zwarte draad toe zoals weergegeven in de afbeelding

Stap 9: Bedraad de grondpoot van de RGB-LED

Bedraad de grondpoot van de RGB-LED
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

Draadstroom op ATTiny
Draadstroom op ATTiny

Stap 11: voeg de schuifschakelaar toe aan de breadboard

Voeg de schuifschakelaar toe aan de broodplank
Voeg de schuifschakelaar toe aan de broodplank

Voeg de schuifschakelaar toe zoals op de foto.

Stap 12: Plaats de 3V knoopcelbatterij in de batterijhouder

Plaats de 3V knoopcelbatterij in de batterijhouder
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 het knoopcelbeslag toe aan de broodplank
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

Sluit de schuifschakelaar aan op +3V
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

Verbind de (-) pin van de ATTiny met aarde
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)

Sluit de knopuitgang aan op uw ATTINY85 (pin 3)
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 10K-weerstand toe tussen de knop en de aarde
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 de broodplank
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

  1. Download de code
  2. 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

Het bord van Dr. Azzy toevoegen
Het bord van Dr. Azzy toevoegen
Het bord van Dr. Azzy toevoegen
Het bord van Dr. Azzy toevoegen
Het bord van Dr. Azzy toevoegen
Het bord van Dr. Azzy toevoegen
Het bord van Dr. Azzy toevoegen
Het bord van Dr. Azzy toevoegen

Voeg Dr. Azzy's Board toe aan je Arduino IDE:

  1. Ga onder Bestanden naar voorkeuren
  2. voorkeuren>Instellingen onder extra bestuursmanagers verleden in deze link:
  3. Ga onder Tools naar Boards Manager
  4. Installeer ATtiny Core van Spence Konde

Stap 21: Rttl-bibliotheek toevoegen aan uw Arduino-bibliotheek

Voeg Rttl-bibliotheek toe aan uw Arduino-bibliotheken
Voeg Rttl-bibliotheek toe aan uw Arduino-bibliotheken

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

Configureer de Arduino IDE om de ATTiny te programmeren
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

Programmeer de ATtiny en sluit uw breadboard aan op de AVR-programmeur
Programmeer de ATtiny en sluit uw breadboard aan op de AVR-programmeur
Programmeer de ATtiny en sluit uw breadboard aan op de AVR-programmeur
Programmeer de ATtiny en sluit uw breadboard aan op de AVR-programmeur
Programmeer de ATtiny en sluit uw breadboard aan op de AVR-programmeur
Programmeer de ATtiny en sluit uw breadboard aan op de AVR-programmeur
  1. 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.
  2. Neem 3 draden en verbind pinnen 2, 1, 0 op de programmer met de corresponderende pinnen op je breadboard. Zie foto's voor details.
  3. Neem één draaddraad en verbind de pinnen (-) op de programmer met de overeenkomstige aarde op uw breadboard. Zie foto's voor details.
  4. 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

GEDAAN!
GEDAAN!
GEDAAN!
GEDAAN!
GEDAAN!
GEDAAN!

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

Schakelschema
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