AVR microcontroller tutorial

Gepost door Bastiaan Steenbergen op maandag 28 juli 2003

Het flashen van een AVR controller

Als het programma is geschreven en om is gezet via een assembler/compiler dan rolt hier een file uit die machinecode’s bevat. Dit is de taal die de microcontroller spreekt en deze bestaat alleen uit hexadecimale getallen. Zo’n file heeft daarom ook vrijwel altijd de extensie .hex
Deze file moet nu in de controller worden geladen zodat deze de taken kan gaan verrichten die we van hem verlangen. Om dit te kunnen doen hebben we een hardwarematige interface nodig. Hier kun je het benodigde schema vinden. De software om deze hardware aan te sturen heet Ponyprog en is hier te downloaden. Ponyprog is een programma wat de microcontroller kan wissen, uitlezen en programmeren. Hieronder word uitgelegd hoe dit in zijn werk gaat.

Open Ponyprog en kies voor ‘Setup’ -> ‘Interface Setup…’. Kies in het scherm dat volgt voor, ‘Parallel’ en ‘AVR ISP I/O’ Selecteer dan de LPT poort waaraan de programmer hardware is aangesloten. Sluit dit scherm daarna door op OK te klikken.

interface setupinterface setup

Stel nu Ponyprog in op de controller die je wilt flashen. Dit gebeurt bovenin bij de drop-down buttons. Kies bij de linker voor AVR micro. De zojuist gemaakte instellingen hoeven maar eenmalig te geschieden en worden onthouden door Ponyprog voor volgende keren.

Nu gaan we ons richten op het flashen van onze specifieke file. Kies bij de rechter drop-down button het juiste AVR type dat word geflashed. Laad vervolgens de machinecode door te kiezen voor: ‘file’ -> ‘Open Program(FLASH) File …’ Zet bestandstypen op .hex want anders zie je je eigen machinecode file niet omdat Ponyprog standaard op .e2p staat. Open nu de .hex file die je in de controller wilt flashen. Eenmaal geopend zie je alle hexgetallen in het grote veld verschijnen.

de juiste AVR instellende juiste AVR instellen

Nu kan het flashen beginnen. Zorg ervoor dat de AVR in zijn voetje zit, en dat de programmerinterface aan de juiste parallele poort is aangesloten. Controleer ook of er +5v aanwezig is op de print, want deze is nodig om de interface zijn werk te laten doen. Je kunt nu op twee manieren het flashen starten, door middel van de sneltoetsen CTRL+W, en door te kiezen voor ‘Command’ -> ‘Write All’. Zodra er om een bevestiging wordt gevraagt kun je gewoon voor OK kiezen. Het verloop van het flashen wordt nu getoond. Eenmaal klaar geeft Ponyprog een melding van het succesvol programmeren.

Geeft Ponyprog een fout aan dan kan men het beste alle aansluitingen nagaan. Controleer of er wel +5v aanwezig is en of de AVR juist is geplaatst. Hierna kan meestal wel een succesvolle tweede poging worden ondernomen.