ATtiny programmeren met Arduino als ISP
Deze pagina beschrijft hoe je een ATtiny chip kan programmeren met de Aruduino als ISP (In System Programming) je moet wel een “board addon” installeren in de Arduino IDE, en wat instellingen opgeven, en je bent er klaar voor!
Wat heb je nodig?
1) ATtiny13/25/45/85 (hardware)
2) Arduino + breadboard & jumpwires (hardware)
3) Arduino IDE (software)
4) Arduino IDE ATtiny13 board addon (software)
1) De ATtiny aansluiten op de Arduino
ATtiny13/25/45/85 pinout:
Arduino ATtiny aansluitschema:
Pinout:
Arduino pin: | ATtiny pin: |
---|---|
D10 | Pin 1 |
D11 | Pin 5 |
D12 | Pin 6 |
D13 | Pin 7 |
GND | Pin 4 (GND) |
+5v | Pin 8 (+5v) |
2) De Arduino programmeren als ISP
Voordat je de ATtiny kan programmeren moet je eerst de Arduino programmeren als ISP voor de ATtiny, het script daarvan is bijgeleverd bij de Arduino IDE software en is te vinden onder “voorbeelden” > “ArduinoISP”
Schrijf deze code naar de Arduino, je Arduino is nu klaar voor gebruik om de ATtiny te programmeren.
3) Selecteer de juiste instellingen voor de ATtiny
Selecteer de ATtiny13:
Selecteer de programmer: “Arduino as ISP”
Let op: selecteer “uploaden met programmer”, anders wordt de sketch op de arduino UNO geladen!
Je code staat nu in de ATtiny en wordt uitgevoerd!
Voorbeeld output AVRdude van het blink script:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 |
avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "avrdude.conf" Using Port : COM6 Using Programmer : stk500v1 Overriding Baud Rate : 19200 AVR Part : ATtiny13 Chip Erase delay : 4000 us PAGEL : P00 BS2 : P00 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 5 4 0 no 64 4 0 4000 4000 0xff 0xff flash 65 6 32 0 yes 1024 32 32 4500 4500 0xff 0xff signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 2 0 0 0 0 0x00 0x00 lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 Programmer Type : STK500 Description : Atmel STK500 Version 1.x firmware Hardware Version: 2 Firmware Version: 1.18 Topcard : Unknown Vtarget : 0.0 V Varef : 0.0 V Oscillator : Off SCK period : 0.1 us avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.05s avrdude: Device signature = 0x1e9007 avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed To disable this feature, specify the -D option. avrdude: erasing chip avrdude: reading input file "Blink.cpp.hex" avrdude: writing flash (352 bytes): Writing | ################################################## | 100% 0.90s avrdude: 352 bytes of flash written avrdude: verifying flash memory against Blink.cpp.hex: avrdude: load data flash data from input file Blink.cpp.hex: avrdude: input file Blink.cpp.hex contains 352 bytes avrdude: reading on-chip flash data: Reading | ################################################## | 100% 0.54s avrdude: verifying ... avrdude: 352 bytes of flash verified avrdude done. Thank you. |