From: Peter Henn Date: Sat, 29 Mar 2014 19:47:54 +0000 (+0100) Subject: USBasp 2011.05.28. for Atmega328p 12 MHz X-Git-Url: http://git.linex4red.de/pub/USBasp.git/commitdiff_plain/a3f4cc327477c46d2dadce91a492e26413243001 USBasp 2011.05.28. for Atmega328p 12 MHz - add Makefile328 for Atmega328p - add Atmega328p section with fuse description in Makefile - add precompiled atmega328 hex file for 12 MHz quartz --- diff --git a/bin/firmware/Makefile328 b/bin/firmware/Makefile328 new file mode 100644 index 000000000..8957fb37d --- /dev/null +++ b/bin/firmware/Makefile328 @@ -0,0 +1,10 @@ +MCU_TARGET = atmega328p +FLASHER = avrdude -c usbasp -p $(MCU_TARGET) + +usbasp: fuses + $(FLASHER) -B 1 -U flash:w:usbasp.atmega328-12MHz.2011-05-28.hex + +fuses: + $(FLASHER) -B 300 -U lfuse:w:0xef:m -U hfuse:w:0xd9:m -U efuse:w:0x05:m +shell: + $(FLASHER) -B 200 -t diff --git a/bin/firmware/usbasp.atmega328-12MHz.2011-05-28.hex b/bin/firmware/usbasp.atmega328-12MHz.2011-05-28.hex new file mode 100644 index 000000000..103932dbe --- /dev/null +++ b/bin/firmware/usbasp.atmega328-12MHz.2011-05-28.hex @@ -0,0 +1,288 @@ +:100000000C945D000C94CA010C947A000C947A0054 +:100010000C947A000C947A000C947A000C947A0078 +:100020000C947A000C947A000C947A000C947A0068 +:100030000C947A000C947A000C947A000C947A0058 +:100040000C947A000C947A000C947A000C947A0048 +:100050000C947A000C947A000C947A000C947A0038 +:100060000C947A000C947A000902120001010080BD +:100070001909040000000000000012011001FF0037 +:100080000008C016DC050401010200010E03550042 +:10009000530042006100730070001C03770077007A +:1000A00077002E00660069007300630068006C0032 +:1000B0002E00640065000403090411241FBECFEF65 +:1000C000D8E0DEBFCDBF11E0A0E0B1E0E8EDF1E1A6 +:1000D00002C005900D92A230B107D9F711E0A2E05D +:1000E000B1E001C01D92AA34B107E1F70E94D8081F +:1000F0000C94EA080C940000CF93DF9360912801E0 +:10010000635067FD13C080912501CCE0D0E0C81B8F +:10011000D109C45DDE4F809124018D3209F458C0AD +:100120008091020187FD9DC01092280180910001FD +:1001300084FF41C0609101016F3F09F43CC0693008 +:1001400008F470C06850609301018091180198E82C +:1001500089278093180168E08091020187FD1DC006 +:10016000409126015091270186FF72C0FA01862F27 +:10017000A9E1B1E094919D9331968150D9F7262F52 +:10018000215030E02F5F3F4F240F351F3093270160 +:1001900020932601C62FCC5F50C089E191E00E94D8 +:1001A0009807682F893008F4A4C08FEF809301016D +:1001B000CEE1C093000194E183B1837031F491509A +:1001C000D9F71092290110922301DF91CF91089560 +:1001D000683009F0A9CF83EC809318018AE58093F9 +:1001E0000001109202018881807609F045C09A8151 +:1001F00010922101898181114AC01092220121E2CD +:1002000031E082E030932701209326018F3FC1F136 +:100210009F81911104C09E81981708F4892F8093C3 +:10022000010182CF109201018091180198E889277D +:1002300080931801611190CFC4E089E191E00E94A0 +:10024000C601CC3009F4B5CF8FEF80930101B1CF57 +:10025000DA01862FE9E1F1E09D9191938150E1F778 +:100260008ECFCE010E9408088F3FF9F0882309F451 +:100270005BCF1092010158CFCE010E94E405C6CF9A +:10028000988197FD16C090E890930201C8CF853001 +:1002900091F0863001F18830D1F0893091F021E27F +:1002A00031E08A3021F180E0ADCF8EE18093000112 +:1002B0003BCF8E81E8CF9093290121E231E080E0AD +:1002C000A1CF90932B0121E231E080E09BCF2BE284 +:1002D00031E081E097CF8B81813001F18230B1F044 +:1002E000833051F080E090E4909302018FCF81E061 +:1002F00089CFC82FCC5FA1CF911118C086EB90E0B9 +:10030000909327018093260184E0EDCF88E690E06A +:10031000909327018093260182E1E5CF8AE790E060 +:10032000909327018093260182E1DDCF913051F037 +:100330009230C1F68CE890E09093270180932601DB +:100340008EE0D1CF8AE990E0909327018093260137 +:100350008CE1C9CFE9E6F0E0808183608083E89A90 +:100360000895A82FB92F80E090E041E050EA609511 +:1003700030E009C02D9182279795879510F084274A +:100380009527305EC8F36F5FA8F30895EADF8D9379 +:100390009D930895CF93CFB7CF93C395189BE9F75B +:1003A000189B09C0189B07C0189B05C0189B03C069 +:1003B000189B01C0A1C0DF93C0912501DD27C45D5A +:1003C000DE4F189B02C0DF91EBCF2F930F931F934B +:1003D00003B12FEF00FB20F94F933F9313B14FEF81 +:1003E000012700FB21F93BE031C04E7F012F13B103 +:1003F000216028C0102F4D7F2260000003B129C06A +:100400004B7F2460012F000013B12BC013B1477F35 +:1004100028602AC04F7E03B120612CC04F7D13B1EC +:1004200020622FC04F7B03B1206432C0422703B14A +:1004300049934FEF0000102710FB20F913B1137000 +:10044000C9F1297F91F2012700FB21F903B1237F34 +:1004500089F2315058F1102710FB22F913B1277E91 +:1004600079F2012700FB23F92F7C81F203B11027D9 +:1004700010FB24F92F7971F200C013B1012700FBA2 +:1004800025F92F7359F200C003B1102710FB26F98C +:10049000223040F200C013B1012700FB27F92430BD +:1004A00028F64F77206813B10000F9CF11E01CBB8C +:1004B000002717C03B503195C31BD04011E01CBB37 +:1004C0000881033CE9F00B34D9F020912301198114 +:1004D000110F1213EDCF093641F10D3211F0013E2B +:1004E00039F700932A013F914F911F910F912F915E +:1004F000DF91CCB3C0FD51CFCF91CFBFCF91189535 +:1005000020912A01222379F310912801112311F55A +:10051000343012F1309328012093240110912501E9 +:100520003BE0311B3093250117C0009128010130B9 +:100530008CF40AE53091000134FD10C000930001F5 +:10054000C8E1D1E00FC02795A8F45150A9F4220FBB +:100550000000F9CF4AE503C042ED01C0432FC4E1DA +:10056000D0E032E014B11360289A14B905B120E448 +:1005700013E05F93012756E005B9279520F4515009 +:1005800021F4220FF9CF012756E000003B5A05B9AC +:10059000D0F2279528F4515029F4220F0000F9CF0A +:1005A000012756E0279505B920F4515021F4220F78 +:1005B000F9CF012756E02991332305B921F60C7FA5 +:1005C00010912901110FC651D04005B911F01093B7 +:1005D000230111E01CBB016014B11C7F402F4C7F34 +:1005E0005F9100C000C005B914B945B97CCF582F40 +:1005F00048E080E02091470157FD14C02B98550F2B +:10060000880F1C998F5F2D9A36B596B5931B92175C +:10061000E0F32D9836B596B5931B9217E0F3415051 +:1006200059F708952B9AEBCF8EBD0DB407FEFDCF81 +:100630008EB5089521E196958795779567952A95CA +:10064000D1F7209146012617D9F060934601E09139 +:100650004301F09144018DE40995E0914301F0914B +:10066000440180E00995E0914301F09144018091BB +:1006700046010995E0914301F091440180E009941D +:100680000895809145018CBD809142018DBD0895F2 +:100690008823A1F08830D0F527EF32E03093440171 +:1006A00020934301843011F1C8F0863021F030F1FD +:1006B000873001F180EC80934701089584E193E055 +:1006C000909344018093430181E08093470182E548 +:1006D0008093450181E0809342010895823091F03A +:1006E000833041F780E380934701089588E1809348 +:1006F0004701089583E08093470108958CE080933B +:100700004701089580E680934701089524E133E08E +:1007100030934401209343011092420191E0909361 +:100720004701893039F050F4883089F683E58093A9 +:100730004501089582E58093450108958B3021F0AD +:100740008C3029F69093420181E58093450108950C +:1007500026B59091470186B5821B8917E0F308956D +:1007600084B18C6284B92A982D9826B5909147015E +:1007700086B5821B8917E0F32A9A26B586B5821BB7 +:100780008917E0F32A9880914301909144018451A4 +:10079000934019F0109246010895809145018CBD57 +:1007A000809142018DBD10924601089584B1837DF0 +:1007B00084B985B1837D85B91CBC0895CF93DF933F +:1007C000C0E2E0914301F09144018CEA0995E09187 +:1007D0004301F091440183E50995E0914301F091D3 +:1007E000440180E00995D82FE0914301F091440144 +:1007F00080E00995D33549F11CBC26B5909147019D +:1008000086B5821B8917E0F32A9A26B586B5821B26 +:100810008917E0F32A9826B586B5821B8917E0F37D +:10082000E0914301F091440183E0E431F80731F0B5 +:10083000C15059F681E0DF91CF9108958091450133 +:100840008CBD809142018DBDF3CF80E0DF91CF91CF +:100850000895CF92DF92EF92FF926B017C010E948C +:100860001A03D701C60181709927AA27BB27880FD1 +:10087000880F880FE0914301F0914401806209954F +:10088000D701C60139E0B695A795979587953A9512 +:10089000D1F7E0914301F09144010995D701C601D8 +:1008A000B695A79597958795E0914301F0914401FE +:1008B0000995E0914301F091440180E0FF90EF90B1 +:1008C000DF90CF900994CF92DF92EF92FF920F9337 +:1008D0001F93CF93DF936B017C01C42FD22F0E9413 +:1008E0001A03970186010170112722273327802FD1 +:1008F000880F880F880FE0914301F09144018064D4 +:100900000995D701C60159E0B695A79597958795A2 +:100910005A95D1F7E0914301F09144010995D7012F +:10092000C601B695A79597958795E0914301F091FB +:1009300044010995E0914301F09144018C2F099500 +:10094000DD23B9F0CF3791F0D6B5CEE1C701B601BE +:100950000E9429048F3769F486B58D1B8D3310F002 +:10096000D6B5C150C111F2CF81E004C08FE00E9422 +:100970006F0580E0DF91CF911F910F91FF90EF9075 +:10098000DF90CF900895CF92DF92EF92FF920F9376 +:100990001F93CF93DF931F92CDB7DEB76B017C011E +:1009A00049830E941A03E0914301F09144018CE4D1 +:1009B0000995D701C60179E0B695A79597958795D2 +:1009C0007A95D1F7E0914301F09144010995D7015F +:1009D000C601B695A79597958795E0914301F0914B +:1009E00044010995E0914301F091440180E00995AB +:1009F00049814F3FE9F006B51EE1C701B6010E94EB +:100A000029048F3F99F486B5801B8D3310F006B50D +:100A100011501111F2CF81E00F90DF91CF911F9112 +:100A20000F91FF90EF90DF90CF90089580E0F4CF8A +:100A30008FE00E946F0580E0EFCF1F93CF93DF938D +:100A40001F92CDB7DEB7182FE0914301F09144011A +:100A500080EA99830995E0914301F09144019981DD +:100A6000892F0995E0914301F0914401812F099567 +:100A7000E0914301F091440180E00F90DF91CF912C +:100A80001F9109941F93CF93DF9300D0CDB7DEB7AA +:100A9000182FE0914301F091440180EC6A8399831F +:100AA0000995E0914301F09144019981892F0995BD +:100AB000E0914301F0914401812F0995E0914301B8 +:100AC000F09144016A81862F09958EE10E946F059D +:100AD00080E00F900F90DF91CF911F9108958823B0 +:100AE00049F030E026B596B5921B9C33E0F33F5FAA +:100AF0003813F8CF0895259A23982B9A50E217D0EF +:100B00005A95E9F70895AC0188E605D0842F03D003 +:100B100089E601D0852F0FD028E030E0382780FB10 +:100B2000869506D02A95D1F730FB02D000D0689484 +:100B300023982B9A16F02B98239AE0914801F09174 +:100B400049013197F0F72D9AE3B1E3FBE0914801B9 +:100B5000F09149013197F0F72D98089520ECE7DFE7 +:100B600046F42A95E1F780E02AE1E5DF2A95E9F7E6 +:100B7000DECF28E030E0DBDF869587F938272A953D +:100B8000D1F7D5DF27F9322772F3D1DFD0CFDB01E0 +:100B9000742FB9DF84E2BFDFE1DF8D937A95D1F75F +:100BA0000895DB01742FAFDF83EFB5DF8DE1B3DF95 +:100BB00084E6B1DF8D91AFDF82E7ADDFCFDF8078F4 +:100BC000D9F77A9589F70895CF93DF93EC0189815E +:100BD000813089F1823009F4ABC0833009F461C0FF +:100BE0008430B1F1873009F482C0853009F402C144 +:100BF000863009F4A2C0883009F4D5C0893009F4E0 +:100C0000FFC08A3009F42AC18B3009F456C18C30F8 +:100C100009F469C18D3009F480C18E3009F483C1B3 +:100C20008F3009F4FEC0803109F41FC18F3709F4F9 +:100C300039C180E02DC0329B56C0809103010E94D3 +:100C400048031092040141980E94B00380E020C044 +:100C500080910401811110C05B8140E08A81482BA2 +:100C6000662757FD6095762F40930D0150930E0136 +:100C700060930F01709310019F8180E02E81822B81 +:100C8000909312018093110182E0809313018FEF02 +:100C900025E031E03093270120932601DF91CF91A9 +:100CA0000895E0914301F09144018A810995809370 +:100CB0000501E0914301F09144018B8109958093F6 +:100CC0000601E0914301F09144018C8109958093E4 +:100CD0000701E0914301F09144018D8109958093D2 +:100CE000080184E0D5CF85E00E944803AACF809117 +:100CF0000401811110C05B8140E08A81482B662786 +:100D000057FD6095762F40930D0150930E0160932F +:100D10000F01709310019F8180E02E81822B9093B0 +:100D200012018093110183E0809313018FEFB0CF04 +:100D30000E94D603419A80E0ABCF809104018111DB +:100D400010C09B8180E02A81822BAA2797FDA09565 +:100D5000BA2F80930D0190930E01A0930F01B093D1 +:100D600010013C812D81822F8F7080931601822F7C +:100D7000807F40E1849FC0011124830F911D9093D7 +:100D800015018093140120FD809317019F8180E05D +:100D90002E81822B909312018093110181E0809328 +:100DA00013018FEF75CF80910401811110C09B81D9 +:100DB00080E02A81822BAA2797FDA095BA2F8093E5 +:100DC0000D0190930E01A0930F01B09310011092AA +:100DD000150110921401109216019F8180E02E815E +:100DE000822B909312018093110184E08093130170 +:100DF0008FEF4ECF0E94DE038093050181E048CF44 +:100E000081E0809304018A819B81AC81BD818093C4 +:100E10000D0190930E01A0930F01B093100180E09B +:100E200037CF9B8180E02A81822BAA2797FDA0954E +:100E3000BA2F80930D0190930E01A0930F01B093F0 +:100E400010019F8180E02E81822B9093120180936C +:100E5000110185E0809313018FEF1ACF8A8180936F +:100E600003011092050181E013CF9B8180E02A816C +:100E7000822BAA2797FDA095BA2F80930D019093FE +:100E80000E01A0930F01B09310019F8180E02E818D +:100E9000822B909312018093110186E080931301BD +:100EA0008FEFF6CE81E0809305011092060110923B +:100EB00007011092080184E0EBCE9B8180E02A813B +:100EC000822B90934901809348012A9A229A83E0C9 +:100ED0000E946F052A98419880E10E946F050E9448 +:100EE0007B0580E0D5CE80EC0E948B0580E00E94DF +:100EF0008B058AE00E946F052A9A85E00E946F05A3 +:100F00002A9885E00E946F0584B1837D84B985B1FC +:100F1000837D85B9419A80E0BBCE0E94AE05809367 +:100F2000050181E0B5CE8A810E948B0580E0B0CEBC +:100F30000F931F93CF93DF93582F792F062F209174 +:100F40001301322F3250323050F0253009F443C0B3 +:100F50000FEF802FDF91CF911F910F91089566239E +:100F600091F180910D0190910E01A0910F01B0912E +:100F70001001C52FD72F10E01CC00E941D058883CB +:100F800080910D0190910E01A0910F01B09110017F +:100F90000196A11DB11D80930D0190930E01A093A8 +:100FA0000F01B09310011F5F2196101751F020918F +:100FB0001301223011F7BC01CD010E94290488835E +:100FC000DFCF083030F610921301802FDF91CF91E0 +:100FD0001F910F910895462F682F80910D019091D8 +:100FE0000E010E94C70580910D0190910E01A09104 +:100FF0000F01B0911001800F911DA11DB11D8093B3 +:101000000D0190930E01A0930F01B0931001A1CF99 +:10101000FF920F931F93CF93DF93382F792F162FC3 +:1010200020911301213071F0243061F0263009F451 +:1010300090C0FF24FA948F2DDF91CF911F910F91D3 +:10104000FF900895112309F4B1C080910D01909192 +:101050000E01A0910F01B0911001C32FD72F00E016 +:10106000F12C50C02091140130911501232B09F06F +:1010700053C021E04881BC01CD010E94630420914E +:101080001101309112012150310930931201209346 +:101090001101232BE9F4109213018091160181FFB5 +:1010A00038C02091170130E0809114019091150112 +:1010B0002817390771F160910D0170910E0180912F +:1010C0000F019091100148810E94C304FF24F39402 +:1010D00080910D0190910E01A0910F01B09110012E +:1010E0000196A11DB11D80930D0190930E01A09357 +:1010F0000F01B09310010F5F2196011709F49BCFE8 +:1011000020911301213009F4ADCF68810E9442057E +:10111000B6CFFF24F394DCCF20E04881BC01CD01A1 +:101120000E946304809117018150809317018111FF +:10113000A6CF60910D0170910E0180910F019091E9 +:10114000100148810E94C30480911401809317010B +:1011500096CF462F682F80910D0190910E010E942D +:10116000D10580910D0190910E01A0910F01B091D8 +:101170001001810F911DA11DB11D80930D01909350 +:101180000E01A0930F01B093100180911101909175 +:101190001201811B91099093120180931101892BF7 +:1011A00029F410921301FF24F39445CFF12C43CF7F +:1011B0001BB815B88BEF8AB98FEF84B914B883E0E8 +:1011C00087B99EEF98B985BD0E94AA0178940E94C4 +:0811D0007C00FDCFF894FFCF75 +:0211D8005AFFBC +:00000001FF diff --git a/firmware/Makefile b/firmware/Makefile old mode 100644 new mode 100755 index 9047ef38e..e57be2f75 --- a/firmware/Makefile +++ b/firmware/Makefile @@ -2,15 +2,17 @@ # Makefile for usbasp # 20061119 Thomas Fischl original # 20061120 Hanns-Konrad Unger help: and TARGET=atmega48 added +# 20140308 Peter Henn TARGET=atmega328 added # # TARGET=atmega8 HFUSE=0xc9 LFUSE=0xef # TARGET=atmega48 HFUSE=0xdd LFUSE=0xff +# TARGET=atmega328 HFUSE=0xd9 LFUSE=0xef EFUSE=0x05 # TARGET=at90s2313 -TARGET=atmega8 -HFUSE=0xc9 +TARGET=atmega328p +HFUSE=0xd9 LFUSE=0xef - +EFUSE=0x05 # ISP=bsd PORT=/dev/parport0 # ISP=ponyser PORT=/dev/ttyS1 @@ -33,6 +35,9 @@ help: @echo " TARGET=${TARGET}" @echo " LFUSE=${LFUSE}" @echo " HFUSE=${HFUSE}" +ifdef EFUSE + @echo " EFUSE=${EFUSE}" +endif @echo " CLOCK=12000000" @echo " ISP=${ISP}" @echo " PORT=${PORT}" @@ -79,11 +84,18 @@ flash: avrdude -c ${ISP} -p ${TARGET} -P ${PORT} -U flash:w:main.hex fuses: +ifdef EFUSE + avrdude -c ${ISP} -p ${TARGET} -P ${PORT} -u -U hfuse:w:$(HFUSE):m -U lfuse:w:$(LFUSE):m -U efuse:w:$(EFUSE):m +else avrdude -c ${ISP} -p ${TARGET} -P ${PORT} -u -U hfuse:w:$(HFUSE):m -U lfuse:w:$(LFUSE):m +endif avrdude: avrdude -c ${ISP} -p ${TARGET} -P ${PORT} -v + +# Fuse setting, see http://www.engbedded.com/fusecalc +# # Fuse atmega8 high byte HFUSE: # 0xc9 = 1 1 0 0 1 0 0 1 <-- BOOTRST (boot reset vector at 0x0000) # ^ ^ ^ ^ ^ ^ ^------ BOOTSZ0 @@ -121,7 +133,33 @@ avrdude: # 0xdc = divide/1,no clock output,fast raising power,low Pw Oszil. 3..8 Mhz # 0xe0 = divide/1,no clock output,fast raising power,external Oszil. # 0xff = divide/1,no clock output,slow raising power,low Pw Oszil 8.. Mhz - +# +# Fuse atmega328p high byte hfuse: +# 0xd9 = 1 1 0 1 1 0 0 1 <-- BOOTRST (boot reset vector at 0x0000) +# ^ ^ ^ ^ ^ ^ ^------ BOOTSZ0 +# | | | | | +-------- BOOTSZ1 +# | | | | + --------- EESAVE (don't preserve EEPROM over chip erase) +# | | | +-------------- WDTON (WDT not always on) +# | | +---------------- SPIEN (allow serial programming) +# | +------------------ DWEN (debug wire is disabled) +# +-------------------- RSTDISBL (reset pin is enabled) +# 0xd9 = ext.reset, no DW, SPI, no watchdog, no save eeprom, reset vector 0x0000 +# Fuse atmega328p low byte lfuse: +# 0x6d = 0 1 1 0 0 0 1 0 factory setting +# ^ ^ \ / \--+--/ +# | | | +------- CKSEL 3..0 (internal 8Mhz Oszillator) +# | | +--------------- SUT 1..0 (start-up time) +# | +------------------ CKOUT (no clock output) +# +-------------------- CKDIV8 (divide clock by 8) +# 0xef = divide/1,no clock output,fast raising power,low Pw Oszil 8.. Mhz +# Fuse atmega328p extended byte efuse: +# 0xff = 1 1 1 1 1 1 1 1 factory setting +# \-+-+-+---/ \-+-/ +# | +------ BODLEVEL (Brown out disabled) +# +-------------- not used +# 0xfd = BOD 2,7V +# Note: avrdude masks not used fuse bits to zero. Therefore use only +# the lower three bits to define the BOD level, here 0x05 SERIAL = `echo /dev/tty.USA19QI*` UISP = uisp -dprog=$S -dserial=$(SERIAL) -dpart=auto