Vraag:
Arduino Bootloader
Hristos
2009-11-11 22:44:13 UTC
view on stackexchange narkive permalink

Als ik mijn arduino upgrade van de ATMega 168 naar ATMega 328, kan ik de ATMega 168 dan gebruiken als een standaardchip uit de fabriek of zal de bootloader dit verbieden? Met andere woorden, zal ik in staat zijn om de bootloader, met mijn usbtiny ISP-programmeur, op de 168 te overschrijven om als een Atmel-stockchip te gebruiken met Avrdude? Zijn er speciale stappen die ik zou moeten nemen, zoals het resetten van zekeringen?

Drie antwoorden:
Lou
2009-11-11 23:19:03 UTC
view on stackexchange narkive permalink

Ja, u kunt de chip opnieuw programmeren. Ik deed hetzelfde toen ik mijn Arduino twee weken geleden een upgrade gaf van een 168 naar een 328. De chip werkt prima in een andere applicatie.

Houd er natuurlijk rekening mee dat je zekeringen moet vervangen, afhankelijk van wat voor soort bord je had en naar wat voor soort bord je het verplaatst. Ik kan me voorstellen dat de meest voorkomende (en degenen die ik moest resetten) te maken hadden met het overschakelen naar de interne oscillator en het instellen van verdelers in plaats van een extern kristal te gebruiken. Er is echter geen uitgebreide lijst met wijzigingen in de zekeringen, omdat dit afhangt van het soort circuit waarnaar u de chip verplaatst. YMMV.

- Bewerken - Zoals JohnC zei, ja, het herprogrammeren van zekeringen moet worden gedaan VOORDAT je het uit de Arduino verwijdert. Omdat de Arduino is gefuseerd om een ​​externe oscillator te gebruiken, zal de chip niets doen als hij op een bord zonder oscillator wordt geplaatst.

JohnC
2009-11-11 23:48:52 UTC
view on stackexchange narkive permalink

Ik zou de zekeringen terugzetten naar de fabrieksinstellingen terwijl de 168 nog in het Arduino-bord zit. Als de zekeringen zijn geconfigureerd voor een externe oscillator (zoals in de Arduino) en er is er geen, dan kun je niet opnieuw programmeren zonder een hoogspanningsprogrammeur te gebruiken. Door de fabrieksinstellingen in te stellen, wordt de chip ingesteld om een ​​interne oscillator te gebruiken.

edebill
2009-11-15 21:21:56 UTC
view on stackexchange narkive permalink

Ik heb dit gedaan - heb de 168 uit een Arduino gehaald, geprogrammeerd met de USBtinyISP. Je hebt een soort doelbord nodig voor de USBtiny ISP. Ik gebruikte een van deze van Evil Mad Scientist Labs, samen met een ZIF-socket van Sparkfun. Het daadwerkelijke circuit dat nodig is om ze te programmeren, is eenvoudig genoeg om het zonder veel moeite op een protoboard te bouwen. EMSL heeft ook een handig artikel over wat dat circuit precies moet zijn, zodat je het zelf kunt maken.

Om een ​​doelbord te laten werken, moet het worden opgezet met ten minste een benadering van hoe de chip is al gefuseerd. Dat betekent dat je de juiste hoeveelheid stroom hebt (als het brownout-detectiecircuit is ingeschakeld) en een oscillator als de chip is ingesteld om een ​​externe te gebruiken (AFAIK de chip negeert een externe oscillator als hij niet is gefuseerd om hem te gebruiken). U moet eerst de zekeringen instellen om de interne oscillator te gebruiken voordat u deze uit de Arduino verwijdert, of u moet een oscillator op uw doelbord plaatsen. Ik denk niet dat de Arduino wordt geleverd met brownout-detectie ingeschakeld, dus je bent waarschijnlijk veilig op dat punt. Ik raad aan om gewoon de jumper op de USBtiny te gebruiken om het doelbord van stroom te voorzien, in plaats van je druk te maken over een externe voeding.

Ik kan het Arduino-bord niet als het programmeerdoel gebruiken, omdat het heeft een normale socket in plaats van een ZIF-socket. Ik merk dat ik veel minder kans heb om de pinnen op mijn MCU te vermorzelen wanneer ik een ZIF-socket gebruik. In en uit een breadboard gaan is al erg genoeg. Sparkfun lijkt de goedkoopste prijzen te hebben op ZIF-sockets, als je besluit die route te gaan.

Omdat je al een ISP-programmeur hebt, kun je een beetje geld besparen op je 328-chip en er een kopen zonder de Arduino bootloader. Gebruik gewoon de Arduino-software om de juiste bootloader erop te branden zodra je deze hebt geïnstalleerd.



Deze Q&A is automatisch vertaald vanuit de Engelse taal.De originele inhoud is beschikbaar op stackexchange, waarvoor we bedanken voor de cc by-sa 2.0-licentie waaronder het wordt gedistribueerd.
Loading...