Inhoudsopgave:

Breadboard Arduino op de juiste manier - Ajarnpa
Breadboard Arduino op de juiste manier - Ajarnpa

Video: Breadboard Arduino op de juiste manier - Ajarnpa

Video: Breadboard Arduino op de juiste manier - Ajarnpa
Video: How Arduino is open-sourcing imagination | Massimo Banzi 2024, November
Anonim
Breadboard Arduino op de juiste manier
Breadboard Arduino op de juiste manier

Er zijn letterlijk honderden Breadboard Arduino's, dus wat is er anders aan deze? Welnu, er zijn verschillende dingen die de meeste van hen en zelfs de Arduino zelf niet goed doen. Allereerst is het analoge aanbod gekoppeld aan het digitale aanbod. Er is een reden waarom Atmel ze op afzonderlijke pinnen uitbracht. Het digitale gedeelte genereert ruis die analoge conversies kan verstoren. Atmel beveelt een inductor van 10 µH en een aparte condensator voor AVCC aan om deze ruis te filteren. Ik heb deze spoel of de ferrietkraal die wordt aanbevolen voor VCC niet gebruikt, maar als je veel analoge dingen gaat doen, is het waarschijnlijk een goed idee. De verdwaalde inductanties van het breadboard en jumpers helpen sommigen.

Een andere verbetering betreft de RESET-lijn. Om de HVPP-modus mogelijk te maken, hebben AVR's geen ESD-beveiliging op de RESET-pin. Dus als u geen hoogspanning programmeert, wordt het aanbevolen om een diode te gebruiken om te helpen beschermen tegen ESD. Dit alles wordt behandeld in AVR042: Overwegingen bij het ontwerpen van AVR-hardware. Blijkbaar zijn weinig mensen op de hoogte van dit document.

Een andere veel voorkomende praktijk is om een condensator direct over de schakelaar op de RESET-lijn te plaatsen. Dit kan volgens AVR042 hoge spanningspieken veroorzaken. Dit wordt niet zo vaak gedaan met AVR's (waarschijnlijk omdat het ze regelrecht doodt), maar wordt vaak gezien bij veel andere micro's en zelfs op ontwikkelborden van fabrikanten. Op deze manier vertrouwen op de ESD-bescherming is naar mijn mening gewoon een slecht ontwerp.

Stap 1: Verzamel materialen

Stuklijst voor dit project:

  • (1) soldeerloze breadboard met 630 (830) gaten
  • (1) Diverse breadboard jumperdraden kit of 24AWG solid core draad zilver of tin gecoat
  • (1) USBtinyISP, Arduino ISP, enz.
  • (1) 6-pins ISP-doorbraak of mannelijke naar mannelijke DuPont-draden
  • (1) Atmel ATmega328P-PU AVR-microcontroller (28-pins DIP)
  • (1) Groene 3-5 mm LED-indicator
  • (1) 1N914/1N4148 snelle diode
  • (1) Tastbare drukknopschakelaar met een as van 9 mm
  • (1) 16MHz kwartskristaloscillator, 15-20pF
  • (1) Ferrietkraal (optioneel)
  • (1) 10µH spoel (optioneel)
  • (1) 10µF meerlaags keramiek
  • (4) 100nF monolithisch keramiek
  • (2) 22pF keramische schijf
  • (1) 4.7k 1/4W weerstand
  • (1) 680Ω 1/4W weerstand
  • (1) 330Ω 1/4W weerstand

Betaal voor de overstap een beetje extra en krijg iets fatsoenlijks. De algemeen verkrijgbare vierkante zijn onbetrouwbaar afval.

Stap 2: Begin met de assemblages

Begin de assemblages
Begin de assemblages
Begin de assemblages
Begin de assemblages

Monteer eerst alle lage componenten en jumpers. Snijd de componentleidingen na het buigen tot 8 mm onder het laagste punt op het componentlichaam. KNIP NIET de draden op de 3 componenten die in de volgende stap worden gebruikt. Knip ze alleen gelijk maar laat ze op de maximale lengte. Wees extra voorzichtig met de schijfcondensatoren. De dompelcoating aan de onderkant is kwetsbaar en breekt af waar deze de draden bedekt als ze worden gebogen.

Pin 1 van de ATmega moet in rij 11 gaan om het gemakkelijker te maken om pinnen te vinden. Pin 5 is rij 15, pin 10 is rij 20, enz.

Een 100nF condensator gaat van A11 naar GND, het is moeilijk te zien op de foto's. De weerstand van 330 zit in de gaten D10 en D11. Het Fritzing-diagram maakt het gemakkelijker om te zien wat waar hoort.

De andere 100nF-caps gaan in D17, D18, een andere in G17, G19 en een andere in H17, H18.

De jumper die naar AVCC gaat, kan optioneel worden vervangen door een inductor van 10 µH. Als uw analoge metingen dit vereisen, helpt het met ruis.

De optionele ferrietkraal gaat naar VCC. Gebruik het als er ruisgenererende componenten zijn, bijvoorbeeld logische chips uit de 7400-serie. Verwijder de VCC-jumper en vervang deze door de ferrietkraal.

Vergeet niet de jumpers die + en - over de hele linie verbinden.

Stap 3: ISP en de hoge dingen

ISP en de hoge dingen
ISP en de hoge dingen
ISP en de hoge dingen
ISP en de hoge dingen
ISP en de hoge dingen
ISP en de hoge dingen

De hogere componenten komen daarna. Dit zijn de diode, de weerstand van 4,7 k en het kwartskristal. Let op de polariteit op de diode. De kathodeband gaat aan de + kant. Ja, het zou omgekeerd moeten zijn.

Als alles is zoals afgebeeld en je zeker weet dat er niets kortsluiting is, is het tijd voor de ISP squid wires. Pins 17, 18 en 19 op de ATmega zijn respectievelijk MOSI MISO en SCK. RESET kan met dit type schakelaar naar J10 gaan. VCC en GND zijn natuurlijk + en -.

Stap 4: De optionele bootloader

De optionele bootloader
De optionele bootloader

Het is noodzakelijk om een bootloader in de ATmega te flashen om schetsen van Arduino IDE te "uploaden". Anders wordt het alleen via ISP geüpload. Serieel is veel sneller, maar de bootloader neemt een klein beetje van de flash-geheugenruimte in beslag die anders naar je schets zou gaan en vertraagt het opstartproces. Optiboot wordt aanbevolen als je deze route gaat en is erg klein. Persoonlijk zie ik af van de bootloader en gebruik ik gewoon ISP.

Een andere overweging is het weer om ISP van stroom te voorzien. De USBtinyISP heeft bijvoorbeeld een jumper aan de binnenkant om het doelwit van stroom te voorzien. Oude telefoonopladers zijn ook een uitstekende stroombron. Er zijn USB-breakoutboards beschikbaar of knip de connector gewoon af en strip en vertin de draden als je dapper bent. Ik had een Android-oplader die aan mijn been bleef hangen en kapot ging, dus het was geen probleem. Bij squid-draden laat je de VTG/VCC-pin op de ISP weg als je hem extern van stroom voorziet of laat je hem aangesloten en verwijder je de jumper.

Stap 5: Conclusie

Conclusie
Conclusie

Je bent nu helemaal klaar. Upload de knipperschets voor een test en de LED zou moeten beginnen te knipperen. Ik heb ergens een interrupt-gedreven knipperschets. Kijk of je het kunt vinden.

Aanbevolen: