Difference between revisions of "AVR Programmer 09"
TimGremalm (talk | contribs) |
TimGremalm (talk | contribs) |
||
Line 3: | Line 3: | ||
[[File:Avrprogrammer finished.jpg]] | [[File:Avrprogrammer finished.jpg]] | ||
AVR Programmer är en ”adapter” som man kopplar mellan datorn och sin mikrokontroller för att kunna skicka över sin robotkod. Det har tidigare varit en del problem med denna bit eftersom man fått använda parallellporten eller COM-porten på datorn som inte finns på de flesta datorerna idag. Den nya versionen av programmerare använder därför USB-porten. AVR-programmer fungerar utmärkt att användas till i princip all programmering av AVR-kretsar så länge kretskortet är förberett för ISP-programmering. Vad detta innebär förklaras längre ner. Introbot06-Introbot09 är såklart anpassade för detta. | |||
AVR Programmer är precis som Introbot en byggsats som kommer i delar och som användaren själv löder ihop. Alla komponenter är hålmonterade vilket gör det lättare för nybörjare. | |||
Största delen av programmeraren har hämtats från ett Open Source-projekt som heter AVR-Doper ([http://www.obdev.at/products/vusb/avrdoper.html http://www.obdev.at/products/vusb/avrdoper.html]). Det vi har gjort på projektet är att göra en egen layout som passar i en inbyggnadslåda. Det finns även en hel del mer information hos elektronikföreningen på Linköpings universitet, Admittansen, då de har använt denna typ av programmerare i föreningen, ([http://wiki.admittansen.se/index.php?title=AVR-ISP-programmerare http://wiki.admittansen.se/index.php?title=AVR-ISP-programmerare]). | |||
Vill du köpa en programmerare? Kom till lokalen och kontakta någon i styrelsen eller skicka ett mail. Den kostar 100kr och kan endast köpas i samband med en Introbot09. Inbyggnadslådan ingår. Vid behov så kan en 0.6m A-miniB USB-kabel köpas för 10kr. | |||
=Förklaring= | |||
När man skriver sitt program till sin mikrokontroller används ofta språket C. Detta kompileras och blir till en maskinkod som finns i en fil med filändelsen .hex. Den innehåller en binär representation av hur man vill att minnet på mikrokontrollern ska se ut. Nästa steg är att överföra denna kod till mikrokontrollern och det görs av AVR-programmeraren. | |||
Programmeraren innehåller egentligen bara två kontakter. En USB-kontakt som ansluts till datorn och en 2×3-pinnars stiftlist. Den andra kontakten innehåller de pinnar som behövs för att kunna kommunicera med AVR-kretsen. | |||
=Förberedelse= | |||
Börja med att kolla så att alla komponenter har följt med. Nedan finns en bild på alla komponenter. | |||
[[Image:Avrprogrammer komponenter.jpg|400px]] | |||
Läs igenom hela byggbeskrivningen innan du börjar så att inga onödiga misstag görs! | |||
=Byggbeskrivning= | |||
I jämförelse med Introbot så finns det inte så många steg för att bygga ihop programmeraren. Eftersom i princip alla komponenter behövs för att kunna testa om något fungerar kan man montera alla komponenter och sedan får man hoppas att det fungerar. Denna metod rekommenderas inte för egna projekt eller Introbot eftersom det väldigt lätt blir något litet fel som kan vara mycket svårt att hitta i efterhand. | |||
==Saker man ska tänka på:== | |||
*Avvakta med lysdioderna tills du bestämt dig för hur de ska sitta i lådan. En variant är att borra två hål i lådan och sätta lysdioderna en liten bit upp från kortet som kan ses i bilderna nedan. | |||
*Vad gäller lysdioderna så har polmarkeringen tyvärr fallit bort. Lysdioderna ska sitta så att pluspolen sitter närmast processorn (alltså till vänster på bilden). | |||
*ISP-kontakten (2×3 vinklad stiftlist) bör monteras en liten bit från kretskortet så att hylskontakten får plats. | |||
==Komponenter== | |||
Nedan finns en tabell med vilken beteckning som hör till vilken komponent. Dessa ska sedan lödas på plats på mönsterkortet på respektive plats. | |||
{| class="wikitable" | |||
|- | |||
! Referens | |||
! Komponent | |||
! Typ | |||
! Antal | |||
|- | |||
| C1 | |||
| Elektrolytkondensator | |||
| 4,7uF | |||
| 1 | |||
|- | |||
| C3,C6 | |||
| Kondensator | |||
| 100nF | |||
| 2 | |||
|- | |||
| C4,C5 | |||
| Kondensator | |||
| 22pF | |||
| 2 | |||
|- | |||
| R1,R2 | |||
| Motstånd | |||
| 68O | |||
| 2 | |||
|- | |||
| R4-R6,R8,R13 | |||
| Motstånd | |||
| 330O | |||
| 5 | |||
|- | |||
| R16 | |||
| Motstånd | |||
| 750O | |||
| 1 | |||
|- | |||
| R7 | |||
| Motstånd | |||
| 2k2O | |||
| 1 | |||
|- | |||
| R3,R14,R15,R17 | |||
| Motstånd | |||
| 4k7O | |||
| 4 | |||
|- | |||
| R10,R11 | |||
| Motstånd | |||
| 10kO | |||
| 2 | |||
|- | |||
| R9 | |||
| Motstånd | |||
| 22kO | |||
| 1 | |||
|- | |||
| R12 | |||
| Motstånd | |||
| 33kO | |||
| 1 | |||
|- | |||
| USB | |||
| USB-kontakt | |||
| Mini-usb 5-pin, hål, typ B | |||
| 1 | |||
|- | |||
| PWRLED | |||
| LED | |||
| Grön, 3mm, 3V | |||
| 1 | |||
|- | |||
| DLED | |||
| LED | |||
| Röd, 3mm, 3V | |||
| 1 | |||
|- | |||
| T1-T2 | |||
| Transistor | |||
| NPN/BC548 | |||
| 2 | |||
|- | |||
| HID,SCK,VTarg | |||
| Stiftlist | |||
| 1×2 stiftlist, 2.54mm | |||
| 3 | |||
|- | |||
| HID,SCK,VTarg | |||
| Bygling | |||
| 1×2 bygling, 2.54mm | |||
| 2 | |||
|- | |||
| ISP | |||
| Vinklad stiftlist | |||
| 2×3 stiftlist, 2.54mm | |||
| 1 | |||
|- | |||
| Q1 | |||
| Kristall | |||
| 12Mhz HC49 Lågprofil | |||
| 1 | |||
|- | |||
| IC1 | |||
| IC-sockel | |||
| 28 hål, 0.3”/DIL28 | |||
| 1 | |||
|- | |||
| IC1 | |||
| Microcontroller | |||
| ATMega88 | |||
| 1 | |||
|- | |||
| D1,D2 | |||
| Zenerdiod | |||
| 3,6V Zenerdiod | |||
| 2 | |||
|- | |||
| - | |||
| Kabelhylsdon | |||
| 6-pol | |||
| 2 | |||
|- | |||
| - | |||
| Flatkabel | |||
| 6-pol, 20cm | |||
| 1 | |||
|- | |||
| - | |||
| Kretskort | |||
| CRF USB-programmer | |||
| 1 | |||
|- | |||
| - | |||
| Inbyggnadslåda | |||
| Svart plastlåda | |||
| 1 | |||
|} |
Revision as of 02:09, 12 October 2013
!OBS! ett av mostånden på programmeren är inte helt optimalt. R16 (med värdet 4k7) ska bytas ut mot något mycket lägre (mellan 600 och 1k). Värt att notera är också att denna programmerare kan ha problem med att sätta och verifiera fuse-bitarna i processorn. Detta är dock inget större problem i de flesta fall och inget att vara orolig för. !OBS!
AVR Programmer är en ”adapter” som man kopplar mellan datorn och sin mikrokontroller för att kunna skicka över sin robotkod. Det har tidigare varit en del problem med denna bit eftersom man fått använda parallellporten eller COM-porten på datorn som inte finns på de flesta datorerna idag. Den nya versionen av programmerare använder därför USB-porten. AVR-programmer fungerar utmärkt att användas till i princip all programmering av AVR-kretsar så länge kretskortet är förberett för ISP-programmering. Vad detta innebär förklaras längre ner. Introbot06-Introbot09 är såklart anpassade för detta.
AVR Programmer är precis som Introbot en byggsats som kommer i delar och som användaren själv löder ihop. Alla komponenter är hålmonterade vilket gör det lättare för nybörjare.
Största delen av programmeraren har hämtats från ett Open Source-projekt som heter AVR-Doper (http://www.obdev.at/products/vusb/avrdoper.html). Det vi har gjort på projektet är att göra en egen layout som passar i en inbyggnadslåda. Det finns även en hel del mer information hos elektronikföreningen på Linköpings universitet, Admittansen, då de har använt denna typ av programmerare i föreningen, (http://wiki.admittansen.se/index.php?title=AVR-ISP-programmerare).
Vill du köpa en programmerare? Kom till lokalen och kontakta någon i styrelsen eller skicka ett mail. Den kostar 100kr och kan endast köpas i samband med en Introbot09. Inbyggnadslådan ingår. Vid behov så kan en 0.6m A-miniB USB-kabel köpas för 10kr.
Förklaring
När man skriver sitt program till sin mikrokontroller används ofta språket C. Detta kompileras och blir till en maskinkod som finns i en fil med filändelsen .hex. Den innehåller en binär representation av hur man vill att minnet på mikrokontrollern ska se ut. Nästa steg är att överföra denna kod till mikrokontrollern och det görs av AVR-programmeraren.
Programmeraren innehåller egentligen bara två kontakter. En USB-kontakt som ansluts till datorn och en 2×3-pinnars stiftlist. Den andra kontakten innehåller de pinnar som behövs för att kunna kommunicera med AVR-kretsen.
Förberedelse
Börja med att kolla så att alla komponenter har följt med. Nedan finns en bild på alla komponenter.
Läs igenom hela byggbeskrivningen innan du börjar så att inga onödiga misstag görs!
Byggbeskrivning
I jämförelse med Introbot så finns det inte så många steg för att bygga ihop programmeraren. Eftersom i princip alla komponenter behövs för att kunna testa om något fungerar kan man montera alla komponenter och sedan får man hoppas att det fungerar. Denna metod rekommenderas inte för egna projekt eller Introbot eftersom det väldigt lätt blir något litet fel som kan vara mycket svårt att hitta i efterhand.
Saker man ska tänka på:
- Avvakta med lysdioderna tills du bestämt dig för hur de ska sitta i lådan. En variant är att borra två hål i lådan och sätta lysdioderna en liten bit upp från kortet som kan ses i bilderna nedan.
- Vad gäller lysdioderna så har polmarkeringen tyvärr fallit bort. Lysdioderna ska sitta så att pluspolen sitter närmast processorn (alltså till vänster på bilden).
- ISP-kontakten (2×3 vinklad stiftlist) bör monteras en liten bit från kretskortet så att hylskontakten får plats.
Komponenter
Nedan finns en tabell med vilken beteckning som hör till vilken komponent. Dessa ska sedan lödas på plats på mönsterkortet på respektive plats.
Referens | Komponent | Typ | Antal |
---|---|---|---|
C1 | Elektrolytkondensator | 4,7uF | 1 |
C3,C6 | Kondensator | 100nF | 2 |
C4,C5 | Kondensator | 22pF | 2 |
R1,R2 | Motstånd | 68O | 2 |
R4-R6,R8,R13 | Motstånd | 330O | 5 |
R16 | Motstånd | 750O | 1 |
R7 | Motstånd | 2k2O | 1 |
R3,R14,R15,R17 | Motstånd | 4k7O | 4 |
R10,R11 | Motstånd | 10kO | 2 |
R9 | Motstånd | 22kO | 1 |
R12 | Motstånd | 33kO | 1 |
USB | USB-kontakt | Mini-usb 5-pin, hål, typ B | 1 |
PWRLED | LED | Grön, 3mm, 3V | 1 |
DLED | LED | Röd, 3mm, 3V | 1 |
T1-T2 | Transistor | NPN/BC548 | 2 |
HID,SCK,VTarg | Stiftlist | 1×2 stiftlist, 2.54mm | 3 |
HID,SCK,VTarg | Bygling | 1×2 bygling, 2.54mm | 2 |
ISP | Vinklad stiftlist | 2×3 stiftlist, 2.54mm | 1 |
Q1 | Kristall | 12Mhz HC49 Lågprofil | 1 |
IC1 | IC-sockel | 28 hål, 0.3”/DIL28 | 1 |
IC1 | Microcontroller | ATMega88 | 1 |
D1,D2 | Zenerdiod | 3,6V Zenerdiod | 2 |
- | Kabelhylsdon | 6-pol | 2 |
- | Flatkabel | 6-pol, 20cm | 1 |
- | Kretskort | CRF USB-programmer | 1 |
- | Inbyggnadslåda | Svart plastlåda | 1 |