20131104-184551
This commit is contained in:
@@ -0,0 +1,43 @@
|
||||
Mainboard.d Mainboard.o: .././Mainboard.c \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay_basic.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/math.h
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay_basic.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/math.h:
|
||||
@@ -0,0 +1 @@
|
||||
:00000001FF
|
||||
Binary file not shown.
@@ -0,0 +1,226 @@
|
||||
:100000000C9469000C9486000C9486000C94860075
|
||||
:100010000C9486000C9486000C9486000C94860048
|
||||
:100020000C9486000C9486000C9486000C948F022D
|
||||
:100030000C94B7020C9486000C9486000C948600F5
|
||||
:100040000C9486000C9486000C9486000C94860018
|
||||
:100050000C9486000C9486000C9486000C94860008
|
||||
:100060000C9486000C9486000C9486000C948600F8
|
||||
:100070000C94860012010002FF000010ADDEEEBEFF
|
||||
:1000800000010102030104030904140342006C008F
|
||||
:10009000750062006200460069007300680000009D
|
||||
:1000A00020034800610063006B00650072002D00B2
|
||||
:1000B0004A0065006F007000610072006400790002
|
||||
:1000C00000000E03300030003000300030003100FE
|
||||
:1000D000000011241FBECFEFD4E0DEBFCDBF11E082
|
||||
:1000E000A0E0B1E0E4ECFDE002C005900D92AE337B
|
||||
:1000F000B107D9F721E0AEE3B1E001C01D92A4340D
|
||||
:10010000B207E1F70E949E000C94E0060C940000F8
|
||||
:100110008EBD0DB407FC10C090E485B1892785B968
|
||||
:100120002FEF31EE84E0215030408040E1F700C0F5
|
||||
:1001300000000DB407FEF1CF8EB5089586ED84B9A9
|
||||
:1001400080E185B91DBC83E58CBD8FE39CE90197F7
|
||||
:10015000F1F700C000002C9880EC0E9488008FE925
|
||||
:100160009FE00197F1F700C000002C9A2C9880ECDA
|
||||
:100170000E9488008FE99FE00197F1F700C000001E
|
||||
:100180002C9A2F9AFFCFCF93C82F8A3019F48DE085
|
||||
:100190000E94C300E8ECF0E0908195FFFDCFC09392
|
||||
:1001A000CE0080E090E0CF910895CF93DF93CDB75C
|
||||
:1001B000DEB760970FB6F894DEBF0FBECDBF2CE060
|
||||
:1001C000E5E1F1E0DE01119601900D922A95E1F74B
|
||||
:1001D0001D861E861F86188AFC012081233C51F44F
|
||||
:1001E0008181813049F460E1CE0101960E943D0297
|
||||
:1001F00081E003C080E001C080E060960FB6F89413
|
||||
:10020000DEBF0FBECDBFDF91CF910895CF93DF93B7
|
||||
:10021000CDB7DEB7A0970FB6F894DEBF0FBECDBF47
|
||||
:100220008130A1F440E2BE016F5F7F4F0E9418024F
|
||||
:10023000882361F018A2CE0101960E94BB0640E21D
|
||||
:10024000BE016F5F7F4F82E80E946002A0960FB6EA
|
||||
:10025000F894DEBF0FBECDBFDF91CF9108952F92EE
|
||||
:100260003F924F925F927F928F929F92AF92CF92E6
|
||||
:10027000DF92EF92FF920F931F93CF93DF93282F7C
|
||||
:1002800090E06CE070E00E947105FC01EB5DFE4FB8
|
||||
:10029000822F90E06CE070E00E947105895D9E4FB6
|
||||
:1002A00041E00F2EF9EECF2ED12CF02D0F2EFBEECC
|
||||
:1002B000EF2EF12CF02DAA24A3940CEE10E06DEE9D
|
||||
:1002C00070E00F2EF0EF4F2E512CF02D68949924F2
|
||||
:1002D00092F8812C6894772474F8DF0120812F3FF5
|
||||
:1002E00059F1E6014883E701A8822081E8012883CB
|
||||
:1002F0001C019C0121503109E9012881203841F07D
|
||||
:10030000203441F0203241F0203141F4372D07C034
|
||||
:1003100030E405C030E303C030E201C0382DE10114
|
||||
:100320002881232BEB0128832C9120FF03C0D201CD
|
||||
:100330001C9202C0E20198824F5F339603964530CB
|
||||
:1003400061F6EAEEF0E08EE180831082DF91CF91DA
|
||||
:100350001F910F91FF90EF90DF90CF90AF909F9003
|
||||
:100360008F907F905F904F903F902F900895E8EE90
|
||||
:10037000F0E080818570E9F30895AF92BF92CF924B
|
||||
:10038000DF92EF92FF920F931F93CF93DF93D82EBC
|
||||
:10039000D62FC72FE42FF0E02E173F0710F4C22E00
|
||||
:1003A00001C0C42E0E94B7010D2F1C2F6894AA24EF
|
||||
:1003B000A4F80F2EF8EEEF2EF12CF02D0F2EFEEFFD
|
||||
:1003C000BF2EF02DC1EFD0E02C2D80E18C1508F46C
|
||||
:1003D0002A2D2223D9F0F801922FDD2011F08081FF
|
||||
:1003E00001C084918883915031969111F6CF622F8C
|
||||
:1003F000615070E06F5F7F4F060F171FC21AF70141
|
||||
:10040000B082C11007C0203129F007C0F701B082C7
|
||||
:10041000CC2019F00E94B701D7CFDF91CF911F9167
|
||||
:100420000F91FF90EF90DF90CF90BF90AF90089525
|
||||
:100430008093E9009091F200941708F4492F442327
|
||||
:10044000D1F0362FE62FF72FA1EFB0E09C919193DA
|
||||
:100450009E2F931B9417D0F39091F20091110BC033
|
||||
:1004600021E030E002C0220F331F8A95E2F7EAEE66
|
||||
:10047000F0E020831082842F08956623E9F0109223
|
||||
:10048000E900E8EEF0E0208120FFFDCF2091F200AE
|
||||
:10049000211114C0282FE82FF92FA1EFB0E081918E
|
||||
:1004A0008C938E2F821B8617D0F3E8EEF0E08081CC
|
||||
:1004B0008E7F808381E0089580E0089580E0089534
|
||||
:1004C000CF93DF93442329F18093E900E8EEF0E035
|
||||
:1004D000808180FFFDCF8091F20081111CC0962F9A
|
||||
:1004E000E62FF72FA8EEB0E0C1EFD0E08C9185FFAA
|
||||
:1004F00002C08081888331968E2F891B8417B0F3C8
|
||||
:10050000E8EEF0E080818E7F80838FE7808381E05A
|
||||
:1005100003C080E001C080E0DF91CF9108951F9279
|
||||
:100520000F920FB60F9211248F93EF93FF93E1EE8A
|
||||
:10053000F0E08081108283FF12C01092E90081E018
|
||||
:100540008093EB001092EC0082E18093ED0088E054
|
||||
:100550008093F00010923E018FEF80930E01FF9187
|
||||
:10056000EF918F910F900FBE0F901F9018951F92D3
|
||||
:100570000F920FB60F9211243F924F925F926F929B
|
||||
:100580007F928F929F92AF92BF92CF92DF92EF9223
|
||||
:10059000FF920F931F932F933F934F935F936F930C
|
||||
:1005A0007F938F939F93AF93BF93EF93FF93CF93DB
|
||||
:1005B000DF93CDB7DEB72A97DEBFCDBF8091F400C1
|
||||
:1005C00080FF58C21092E9008091E80083FF1FC2AB
|
||||
:1005D000E1EFF0E08081898380818A83208130E0AF
|
||||
:1005E0003C832B834081942F80E0822B932B9C8330
|
||||
:1005F0008B83208130E03E832D834081942F80E0E7
|
||||
:10060000822B932B9E838D83208130E038872F832C
|
||||
:100610004081942F80E0822B932B98878F8382EFE9
|
||||
:100620008093E8008A81863009F030C18B819C81FB
|
||||
:10063000811523E0920709F4FDC048F4811551E0CB
|
||||
:10064000950789F08115924009F01CC126C08230BF
|
||||
:10065000B3E09B0709F402C108F4F6C0833093406D
|
||||
:1006600009F010C105C1E4E7F0E044912F8138851D
|
||||
:10067000BF0180E00E94BD010CC29A2F50815F3FF4
|
||||
:1006800009F49B2F490F815033968111F6CF2F5FCC
|
||||
:100690003F4F2230310539F410C020E030E040E017
|
||||
:1006A00014E0A1E0B0E0C9016CE070E00E947105C7
|
||||
:1006B000FC01EB5DFE4F812FE0CF842F880F880F68
|
||||
:1006C000880F841B0F2EFBE1EF2EF02DE80E8E2DF0
|
||||
:1006D00090E00E948305082F192F89E0D8018C93A0
|
||||
:1006E00082E011968C9311971296EC9212971396C2
|
||||
:1006F0001C92139714968C93149781E015968C9303
|
||||
:10070000159716961C92169780EC17968C93179750
|
||||
:100710008AEF18968C93F80139961A86198644E068
|
||||
:10072000A12C88248394F82C9A2C0F2EF9E07F2E8C
|
||||
:10073000F02DBB24BA940F2EF7E0CF2EF02D0F2E04
|
||||
:10074000F5E0DF2EF02D6894662461F80F2EF3E0BB
|
||||
:100750005F2EF02D56C07F2DDC012C912F3F09F428
|
||||
:10076000792D670F515003965111F5CF7082418357
|
||||
:10077000428213826483B5821682B78210863996CC
|
||||
:100780006623C1F1832F932D6CE070E00E94710508
|
||||
:100790009C012A5D3E4F482CC901B9016150710985
|
||||
:1007A000DB015C915F3F01F1C082D182652F6795CB
|
||||
:1007B0006627679564296283513441F0503441F0D3
|
||||
:1007C000513841F0503841F4562D07C05F2D05C017
|
||||
:1007D0005F2D03C0562D01C0552D5383DC018C9134
|
||||
:1007E000848315821682379643942D5F3F4FB5E080
|
||||
:1007F0004B12D2CFA985BA851196BA87A9871297CD
|
||||
:1008000071F04984342D3A84842D932D6CE070E08E
|
||||
:100810000E9471058B5D9E4F542F6A2D9CCF2F81B6
|
||||
:1008200038854E2DB80181E00E94BD01C8010E94AB
|
||||
:100830001E062FC1E6E8F0E044912F813885BF0104
|
||||
:1008400080E00E94BD0125C1EAE8F0E044912F81DB
|
||||
:100850003885BF0180E00E94BD011BC1E0EAF0E0E5
|
||||
:1008600044912F813885BF0180E00E94BD0111C1F4
|
||||
:10087000E2ECF0E044912F813885BF0180E00E94D6
|
||||
:10088000BD0107C181E28093EB0003C1853071F4A3
|
||||
:100890008EEF8093E800E8EEF0E0808180FFFDCFEE
|
||||
:1008A0008B819C8180688093E300F3C08930C1F420
|
||||
:1008B0009981911160C08B819C81019769F481E0DD
|
||||
:1008C00080933E018EEF8093E80010920E0180919C
|
||||
:1008D0000E010E942F01DDC081E28093EB00D9C0A0
|
||||
:1008E000883089F49981903809F057C0E8EEF0E03B
|
||||
:1008F000808180FFFDCF80913E018093F1008EEFDB
|
||||
:100900008093E800C6C081111CC0E8EEF0E0808151
|
||||
:1009100080FFFDCF8981823859F48D81E9EEF0E0C6
|
||||
:1009200080838091EB0085FB882780F9108201C0CD
|
||||
:1009300080E0E1EFF0E0808310828EEF8093E800AA
|
||||
:10094000A8C08B30C1F48981803211F0811155C06B
|
||||
:100950008D819E818230910550F480930E018EEF3F
|
||||
:100960008093E80080910E010E942F0192C081E2E5
|
||||
:100970008093EB008EC08A3081F489818038E9F55C
|
||||
:10098000E8EEF0E0808180FFFDCF80910E01809342
|
||||
:10099000F1008EEF8093E8007CC0813011F083304D
|
||||
:1009A00061F58981823049F58B819C81892B29F5FC
|
||||
:1009B0008D819E818F779927382F31503430E8F41C
|
||||
:1009C0003EEF3093E8008093E9002A81233021F440
|
||||
:1009D00081E28093EB005DC099E19093EB0021E010
|
||||
:1009E00030E0F90102C0EE0FFF1F8A95E2F7CF0158
|
||||
:1009F000EAEEF0E0808310824CC0CE0101960E94A6
|
||||
:100A0000D500811146C081E28093EB0042C081E2B3
|
||||
:100A10008093EB002FC0F22E408150E0022E02C0E6
|
||||
:100A2000559547950A94E2F740FF1BC0DB012C93D4
|
||||
:100A3000D6018C9182FF13C08091F200882341F08F
|
||||
:100A40006091F20070E0822F0E940601F092E900AE
|
||||
:100A5000E8EEF0E089EF80838FE780831AC0D80149
|
||||
:100A60009C932F5F3F4F25303105A9F681E280939B
|
||||
:100A7000EB000FC021E030E0E4EFF0E069EE70E061
|
||||
:100A80000F2EF8EECF2ED12CF02D0BEE10E091E2D0
|
||||
:100A9000C2CF2A960FB6F894DEBF0FBECDBFDF914E
|
||||
:100AA000CF91FF91EF91BF91AF919F918F917F91E6
|
||||
:100AB0006F915F914F913F912F911F910F91FF90F7
|
||||
:100AC000EF90DF90CF90BF90AF909F908F907F90EE
|
||||
:100AD0006F905F904F903F900F900FBE0F901F90C0
|
||||
:100AE00018955527002480FF02C0060E571F660F79
|
||||
:100AF000771F6115710521F096958795009799F7F5
|
||||
:100B0000952F802D08950F931F93CF93DF938230FD
|
||||
:100B1000910510F482E090E0E0914201F0914301F0
|
||||
:100B200020E030E0C0E0D0E023C040815181481790
|
||||
:100B30005907A8F04817590761F4828193812097DB
|
||||
:100B400019F09B838A832EC09093430180934201C6
|
||||
:100B500029C02115310529F04217530710F0A901CA
|
||||
:100B600002C0BE01DF0102811381EF019A01F80189
|
||||
:100B70003097D9F62115310509F1281B390B24309E
|
||||
:100B8000310590F412968D919C9113976115710522
|
||||
:100B900021F0FB019383828304C0909343018093EF
|
||||
:100BA0004201FD01329644C0FD01E20FF31F819323
|
||||
:100BB0009193225031092D933C933AC020914001EA
|
||||
:100BC00030914101232B41F4209111013091120108
|
||||
:100BD000309341012093400120910F013091100189
|
||||
:100BE0002115310541F42DB73EB7409113015091C5
|
||||
:100BF0001401241B350BE0914001F0914101E217F3
|
||||
:100C0000F307A0F42E1B3F0B2817390778F0AC012F
|
||||
:100C10004E5F5F4F2417350748F04E0F5F1F50930C
|
||||
:100C20004101409340018193919302C0E0E0F0E0E4
|
||||
:100C3000CF01DF91CF911F910F910895EF92FF9215
|
||||
:100C40000F931F93CF93DF93009709F48FC0DC01BC
|
||||
:100C5000129713961C921E921297E0904201F09008
|
||||
:100C60004301E114F10489F42D913C911197280F6F
|
||||
:100C7000391F80914001909141018217930789F5B6
|
||||
:100C8000B0934101A093400171C0E70120E030E042
|
||||
:100C900001C0EA01CA17DB0738F44A815B819E0173
|
||||
:100CA00041155105B1F722C0BC0162507109FB0129
|
||||
:100CB000D383C28300811181AC01400F511F4C17B7
|
||||
:100CC0005D0761F448815981400F511F4E5F5F4FAE
|
||||
:100CD000518340834A815B815383428321153105CF
|
||||
:100CE00029F4B0934301A093420140C0F901B383BA
|
||||
:100CF000A283E90169917991C60FD71FAC17BD078F
|
||||
:100D000079F4DC015E914E91460F571F4E5F5F4FA5
|
||||
:100D10005183408312968D919C9113979383828384
|
||||
:100D2000A0E0B0E002C0D7017C01F701828193818D
|
||||
:100D30000097C9F7C701029620813181820F931F66
|
||||
:100D400020914001309141012817390779F410971B
|
||||
:100D500029F4109243011092420104C013961C9290
|
||||
:100D60001E921297F0924101E0924001CDB7DEB79A
|
||||
:100D7000E6E00C94D106DC016C9161566A3108F012
|
||||
:100D8000605E6F5B6D93C1F708952A883988488843
|
||||
:100D90005F846E847D848C849B84AA84B984C88497
|
||||
:100DA000DF80EE80FD800C811B81AA81B981CE0F8E
|
||||
:100DB000D11D0FB6F894DEBF0FBECDBFED01089573
|
||||
:040DC000F894FFCFD5
|
||||
:100DC4000000000200000000C30000000000FF005B
|
||||
:100DD400004401200056657273696F6E20312E3015
|
||||
:100DE4000000000000802002812002FF2002FF207A
|
||||
:0E0DF40002C12002FF2002FF2002FF200200A9
|
||||
:00000001FF
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,753 @@
|
||||
Archive member included because of file (symbol)
|
||||
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
usb_user.o (__mulhi3)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o (exit)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
rs232.o (__do_copy_data)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
usb_user.o (__do_clear_bss)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
usb_user.o (malloc)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strupr.o)
|
||||
usb.o (strupr)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
rs232.o (fprintf)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
rs232.o (__iob)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o) (vfprintf)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen_P.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o) (strnlen_P)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o) (strnlen)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o) (fputc)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(ultoa_invert.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o) (__ultoa_invert)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o) (__mulqi3)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o) (__prologue_saves__)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o) (__epilogue_restores__)
|
||||
|
||||
Allocating common symbols
|
||||
Common symbol size file
|
||||
|
||||
__brkval 0x2 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
__flp 0x2 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
__iob 0x6 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
|
||||
Discarded input sections
|
||||
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
.text 0x00000000 0x0 led.o
|
||||
.bss 0x00000000 0x0 led.o
|
||||
.text.led 0x00000000 0x14 led.o
|
||||
.text.init_led
|
||||
0x00000000 0x8 led.o
|
||||
.text.fade 0x00000000 0xbe led.o
|
||||
.text.led_rainbow
|
||||
0x00000000 0x74 led.o
|
||||
.text 0x00000000 0x0 Mainboard.o
|
||||
.bss 0x00000000 0x0 Mainboard.o
|
||||
.text 0x00000000 0x0 rs232.o
|
||||
.bss 0x00000000 0x0 rs232.o
|
||||
.text.init_rs232
|
||||
0x00000000 0x24 rs232.o
|
||||
.text.rs232_send
|
||||
0x00000000 0x1a rs232.o
|
||||
.text 0x00000000 0x0 usb.o
|
||||
.bss 0x00000000 0x0 usb.o
|
||||
.text.init_usb
|
||||
0x00000000 0x6 usb.o
|
||||
.text.usb_send
|
||||
0x00000000 0x20 usb.o
|
||||
.text.usb_getstatus
|
||||
0x00000000 0x6 usb.o
|
||||
.text.usb_ready
|
||||
0x00000000 0x6 usb.o
|
||||
.text 0x00000000 0x0 usb_user.o
|
||||
.text.usb_init
|
||||
0x00000000 0x2e usb_user.o
|
||||
.text.usb_status
|
||||
0x00000000 0x1c usb_user.o
|
||||
.text.usb_configuration
|
||||
0x00000000 0x6 usb_user.o
|
||||
.text.usb_interface
|
||||
0x00000000 0x6 usb_user.o
|
||||
.text.usb_is_ready
|
||||
0x00000000 0x8 usb_user.o
|
||||
.text.usb_freebuffer
|
||||
0x00000000 0x1e usb_user.o
|
||||
.text.usb_rxavail
|
||||
0x00000000 0xa usb_user.o
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
.text.libgcc.div
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
.text.libgcc 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
.text.libgcc.prologue
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
.text.libgcc.builtins
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
.text.libgcc.fmul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.text.libgcc.mul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.text.libgcc.div
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.text.libgcc 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.text.libgcc.prologue
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.text.libgcc.builtins
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.text.libgcc.fmul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.text.libgcc.mul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.text.libgcc.div
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.text.libgcc 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.text.libgcc.prologue
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.text.libgcc.builtins
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.text.libgcc.fmul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.text.libgcc.mul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.text.libgcc.div
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.text.libgcc 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.text.libgcc.prologue
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.text.libgcc.builtins
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.text.libgcc.fmul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strupr.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strupr.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.text.avr-libc
|
||||
0x00000000 0x24 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
COMMON 0x00000000 0x6 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.text.avr-libc
|
||||
0x00000000 0x3bc c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen_P.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen_P.o)
|
||||
.text.avr-libc
|
||||
0x00000000 0x16 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen_P.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen.o)
|
||||
.text.avr-libc
|
||||
0x00000000 0x16 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
.text.avr-libc
|
||||
0x00000000 0x58 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(ultoa_invert.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(ultoa_invert.o)
|
||||
.text.avr-libc
|
||||
0x00000000 0xc0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(ultoa_invert.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.text.libgcc.mul
|
||||
0x00000000 0x12 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.text.libgcc.div
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.text.libgcc 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.text.libgcc.prologue
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.text.libgcc.builtins
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.text.libgcc.fmul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.text.libgcc.mul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.text.libgcc.div
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.text.libgcc 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.text.libgcc.prologue
|
||||
0x00000000 0x38 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.text.libgcc.builtins
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.text.libgcc.fmul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.text 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
.bss 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
.text.libgcc.mul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
.text.libgcc.div
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
.text.libgcc 0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
.text.libgcc.builtins
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
.text.libgcc.fmul
|
||||
0x00000000 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
|
||||
Memory Configuration
|
||||
|
||||
Name Origin Length Attributes
|
||||
text 0x00000000 0x00010000 xr
|
||||
data 0x00800060 0x0000ffa0 rw !x
|
||||
eeprom 0x00810000 0x00010000 rw !x
|
||||
fuse 0x00820000 0x00000400 rw !x
|
||||
lock 0x00830000 0x00000400 rw !x
|
||||
signature 0x00840000 0x00000400 rw !x
|
||||
user_signatures 0x00850000 0x00000400 rw !x
|
||||
*default* 0x00000000 0xffffffff
|
||||
|
||||
Linker script and memory map
|
||||
|
||||
Address of section .data set to 0x800100
|
||||
LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
LOAD led.o
|
||||
LOAD Mainboard.o
|
||||
LOAD rs232.o
|
||||
LOAD usb.o
|
||||
LOAD usb_user.o
|
||||
START GROUP
|
||||
LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libm.a
|
||||
END GROUP
|
||||
LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a
|
||||
LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a
|
||||
LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a
|
||||
|
||||
.hash
|
||||
*(.hash)
|
||||
|
||||
.dynsym
|
||||
*(.dynsym)
|
||||
|
||||
.dynstr
|
||||
*(.dynstr)
|
||||
|
||||
.gnu.version
|
||||
*(.gnu.version)
|
||||
|
||||
.gnu.version_d
|
||||
*(.gnu.version_d)
|
||||
|
||||
.gnu.version_r
|
||||
*(.gnu.version_r)
|
||||
|
||||
.rel.init
|
||||
*(.rel.init)
|
||||
|
||||
.rela.init
|
||||
*(.rela.init)
|
||||
|
||||
.rel.text
|
||||
*(.rel.text)
|
||||
*(.rel.text.*)
|
||||
*(.rel.gnu.linkonce.t*)
|
||||
|
||||
.rela.text
|
||||
*(.rela.text)
|
||||
*(.rela.text.*)
|
||||
*(.rela.gnu.linkonce.t*)
|
||||
|
||||
.rel.fini
|
||||
*(.rel.fini)
|
||||
|
||||
.rela.fini
|
||||
*(.rela.fini)
|
||||
|
||||
.rel.rodata
|
||||
*(.rel.rodata)
|
||||
*(.rel.rodata.*)
|
||||
*(.rel.gnu.linkonce.r*)
|
||||
|
||||
.rela.rodata
|
||||
*(.rela.rodata)
|
||||
*(.rela.rodata.*)
|
||||
*(.rela.gnu.linkonce.r*)
|
||||
|
||||
.rel.data
|
||||
*(.rel.data)
|
||||
*(.rel.data.*)
|
||||
*(.rel.gnu.linkonce.d*)
|
||||
|
||||
.rela.data
|
||||
*(.rela.data)
|
||||
*(.rela.data.*)
|
||||
*(.rela.gnu.linkonce.d*)
|
||||
|
||||
.rel.ctors
|
||||
*(.rel.ctors)
|
||||
|
||||
.rela.ctors
|
||||
*(.rela.ctors)
|
||||
|
||||
.rel.dtors
|
||||
*(.rel.dtors)
|
||||
|
||||
.rela.dtors
|
||||
*(.rela.dtors)
|
||||
|
||||
.rel.got
|
||||
*(.rel.got)
|
||||
|
||||
.rela.got
|
||||
*(.rela.got)
|
||||
|
||||
.rel.bss
|
||||
*(.rel.bss)
|
||||
|
||||
.rela.bss
|
||||
*(.rela.bss)
|
||||
|
||||
.rel.plt
|
||||
*(.rel.plt)
|
||||
|
||||
.rela.plt
|
||||
*(.rela.plt)
|
||||
|
||||
.text 0x00000000 0xdc4
|
||||
*(.vectors)
|
||||
.vectors 0x00000000 0x74 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
0x00000000 __vector_default
|
||||
0x00000000 __vectors
|
||||
*(.vectors)
|
||||
*(.progmem.gcc*)
|
||||
*(.progmem*)
|
||||
.progmem.data 0x00000074 0x5e usb_user.o
|
||||
0x000000d2 . = ALIGN (0x2)
|
||||
0x000000d2 __trampolines_start = .
|
||||
*(.trampolines)
|
||||
.trampolines 0x000000d2 0x0 linker stubs
|
||||
*(.trampolines*)
|
||||
0x000000d2 __trampolines_end = .
|
||||
*(.jumptables)
|
||||
*(.jumptables*)
|
||||
*(.lowtext)
|
||||
*(.lowtext*)
|
||||
0x000000d2 __ctors_start = .
|
||||
*(.ctors)
|
||||
0x000000d2 __ctors_end = .
|
||||
0x000000d2 __dtors_start = .
|
||||
*(.dtors)
|
||||
0x000000d2 __dtors_end = .
|
||||
SORT(*)(.ctors)
|
||||
SORT(*)(.dtors)
|
||||
*(.init0)
|
||||
.init0 0x000000d2 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
0x000000d2 __init
|
||||
*(.init0)
|
||||
*(.init1)
|
||||
*(.init1)
|
||||
*(.init2)
|
||||
.init2 0x000000d2 0xc c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
*(.init2)
|
||||
*(.init3)
|
||||
*(.init3)
|
||||
*(.init4)
|
||||
.init4 0x000000de 0x16 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
0x000000de __do_copy_data
|
||||
.init4 0x000000f4 0x10 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
0x000000f4 __do_clear_bss
|
||||
*(.init4)
|
||||
*(.init5)
|
||||
*(.init5)
|
||||
*(.init6)
|
||||
*(.init6)
|
||||
*(.init7)
|
||||
*(.init7)
|
||||
*(.init8)
|
||||
*(.init8)
|
||||
*(.init9)
|
||||
.init9 0x00000104 0x8 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
*(.init9)
|
||||
*(.text)
|
||||
.text 0x0000010c 0x4 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
0x0000010c __vector_22
|
||||
0x0000010c __vector_28
|
||||
0x0000010c __vector_1
|
||||
0x0000010c __vector_24
|
||||
0x0000010c __bad_interrupt
|
||||
0x0000010c __vector_6
|
||||
0x0000010c __vector_3
|
||||
0x0000010c __vector_23
|
||||
0x0000010c __vector_25
|
||||
0x0000010c __vector_13
|
||||
0x0000010c __vector_17
|
||||
0x0000010c __vector_19
|
||||
0x0000010c __vector_7
|
||||
0x0000010c __vector_27
|
||||
0x0000010c __vector_5
|
||||
0x0000010c __vector_4
|
||||
0x0000010c __vector_9
|
||||
0x0000010c __vector_2
|
||||
0x0000010c __vector_21
|
||||
0x0000010c __vector_15
|
||||
0x0000010c __vector_8
|
||||
0x0000010c __vector_26
|
||||
0x0000010c __vector_14
|
||||
0x0000010c __vector_10
|
||||
0x0000010c __vector_16
|
||||
0x0000010c __vector_18
|
||||
0x0000010c __vector_20
|
||||
0x00000110 . = ALIGN (0x2)
|
||||
*(.text.*)
|
||||
.text.spi_putc
|
||||
0x00000110 0x2c Mainboard.o
|
||||
0x00000110 spi_putc
|
||||
.text.main 0x0000013c 0x4a Mainboard.o
|
||||
0x0000013c main
|
||||
.text.uart_putchar
|
||||
0x00000186 0x24 rs232.o
|
||||
0x00000186 uart_putchar
|
||||
.text.usb_controlrequest
|
||||
0x000001aa 0x62 usb.o
|
||||
0x000001aa usb_controlrequest
|
||||
.text.usb_ep 0x0000020c 0x52 usb.o
|
||||
0x0000020c usb_ep
|
||||
.text.usb_endpoints
|
||||
0x0000025e 0x110 usb_user.o
|
||||
0x0000025e usb_endpoints
|
||||
.text.usb_wait_in
|
||||
0x0000036e 0xc usb_user.o
|
||||
0x0000036e usb_wait_in
|
||||
.text.usb_desc_out
|
||||
0x0000037a 0xb6 usb_user.o
|
||||
0x0000037a usb_desc_out
|
||||
.text.usb_rxdata
|
||||
0x00000430 0x4a usb_user.o
|
||||
0x00000430 usb_rxdata
|
||||
.text.usb_txdata_control
|
||||
0x0000047a 0x46 usb_user.o
|
||||
0x0000047a usb_txdata_control
|
||||
.text.usb_txdata
|
||||
0x000004c0 0x5e usb_user.o
|
||||
0x000004c0 usb_txdata
|
||||
.text.__vector_11
|
||||
0x0000051e 0x50 usb_user.o
|
||||
0x0000051e __vector_11
|
||||
.text.__vector_12
|
||||
0x0000056e 0x574 usb_user.o
|
||||
0x0000056e __vector_12
|
||||
.text.libgcc.mul
|
||||
0x00000ae2 0x24 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
0x00000ae2 __mulhi3
|
||||
.text.avr-libc
|
||||
0x00000b06 0x270 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
0x00000b06 malloc
|
||||
0x00000c3c free
|
||||
.text.avr-libc
|
||||
0x00000d76 0x14 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strupr.o)
|
||||
0x00000d76 strupr
|
||||
.text.libgcc.prologue
|
||||
0x00000d8a 0x36 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
0x00000d8a __epilogue_restores__
|
||||
0x00000dc0 . = ALIGN (0x2)
|
||||
*(.fini9)
|
||||
.fini9 0x00000dc0 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
0x00000dc0 _exit
|
||||
0x00000dc0 exit
|
||||
*(.fini9)
|
||||
*(.fini8)
|
||||
*(.fini8)
|
||||
*(.fini7)
|
||||
*(.fini7)
|
||||
*(.fini6)
|
||||
*(.fini6)
|
||||
*(.fini5)
|
||||
*(.fini5)
|
||||
*(.fini4)
|
||||
*(.fini4)
|
||||
*(.fini3)
|
||||
*(.fini3)
|
||||
*(.fini2)
|
||||
*(.fini2)
|
||||
*(.fini1)
|
||||
*(.fini1)
|
||||
*(.fini0)
|
||||
.fini0 0x00000dc0 0x4 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
*(.fini0)
|
||||
0x00000dc4 _etext = .
|
||||
|
||||
.data 0x00800100 0x3e load address 0x00000dc4
|
||||
0x00800100 PROVIDE (__data_start, .)
|
||||
*(.data)
|
||||
.data 0x00800100 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
.data 0x00800100 0x0 led.o
|
||||
.data 0x00800100 0x0 Mainboard.o
|
||||
.data 0x00800100 0xe rs232.o
|
||||
.data 0x0080010e 0x0 usb.o
|
||||
.data 0x0080010e 0x1 usb_user.o
|
||||
.data 0x0080010f 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulhi3.o)
|
||||
.data 0x0080010f 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_exit.o)
|
||||
.data 0x0080010f 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_copy_data.o)
|
||||
.data 0x0080010f 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_clear_bss.o)
|
||||
.data 0x0080010f 0x6 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
0x0080010f __malloc_heap_end
|
||||
0x00800111 __malloc_heap_start
|
||||
0x00800113 __malloc_margin
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strupr.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen_P.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(ultoa_invert.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_mulqi3.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_prologue.o)
|
||||
.data 0x00800115 0x0 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr35\libgcc.a(_epilogue.o)
|
||||
*(.data*)
|
||||
*(.rodata)
|
||||
.rodata 0x00800115 0x10 usb.o
|
||||
.rodata 0x00800125 0x18 usb_user.o
|
||||
*(.rodata*)
|
||||
*(.gnu.linkonce.d*)
|
||||
0x0080013e . = ALIGN (0x2)
|
||||
*fill* 0x0080013d 0x1
|
||||
0x0080013e _edata = .
|
||||
0x0080013e PROVIDE (__data_end, .)
|
||||
|
||||
.bss 0x0080013e 0x6
|
||||
0x0080013e PROVIDE (__bss_start, .)
|
||||
*(.bss)
|
||||
.bss 0x0080013e 0x2 usb_user.o
|
||||
*(.bss*)
|
||||
*(COMMON)
|
||||
COMMON 0x00800140 0x4 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
0x00800140 __brkval
|
||||
0x00800142 __flp
|
||||
0x00800144 PROVIDE (__bss_end, .)
|
||||
0x00000dc4 __data_load_start = LOADADDR (.data)
|
||||
0x00000e02 __data_load_end = (__data_load_start + SIZEOF (.data))
|
||||
|
||||
.noinit 0x00800144 0x0
|
||||
0x00800144 PROVIDE (__noinit_start, .)
|
||||
*(.noinit*)
|
||||
0x00800144 PROVIDE (__noinit_end, .)
|
||||
0x00800144 _end = .
|
||||
0x00800144 PROVIDE (__heap_start, .)
|
||||
|
||||
.eeprom 0x00810000 0x0
|
||||
*(.eeprom*)
|
||||
0x00810000 __eeprom_end = .
|
||||
|
||||
.fuse
|
||||
*(.fuse)
|
||||
*(.lfuse)
|
||||
*(.hfuse)
|
||||
*(.efuse)
|
||||
|
||||
.lock
|
||||
*(.lock*)
|
||||
|
||||
.signature
|
||||
*(.signature*)
|
||||
|
||||
.user_signatures
|
||||
*(.user_signatures*)
|
||||
|
||||
.stab 0x00000000 0xd2c
|
||||
*(.stab)
|
||||
.stab 0x00000000 0x6cc c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
.stab 0x000006cc 0x90 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strupr.o)
|
||||
0x9c (size before relaxing)
|
||||
.stab 0x0000075c 0x9c c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen_P.o)
|
||||
0xa8 (size before relaxing)
|
||||
.stab 0x000007f8 0x9c c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(strnlen.o)
|
||||
0xa8 (size before relaxing)
|
||||
.stab 0x00000894 0x498 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(ultoa_invert.o)
|
||||
0x4a4 (size before relaxing)
|
||||
|
||||
.stabstr 0x00000000 0x209
|
||||
*(.stabstr)
|
||||
.stabstr 0x00000000 0x209 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35/crtm32u2.o
|
||||
|
||||
.stab.excl
|
||||
*(.stab.excl)
|
||||
|
||||
.stab.exclstr
|
||||
*(.stab.exclstr)
|
||||
|
||||
.stab.index
|
||||
*(.stab.index)
|
||||
|
||||
.stab.indexstr
|
||||
*(.stab.indexstr)
|
||||
|
||||
.comment 0x00000000 0x2f
|
||||
*(.comment)
|
||||
.comment 0x00000000 0x2f led.o
|
||||
0x30 (size before relaxing)
|
||||
.comment 0x00000000 0x30 Mainboard.o
|
||||
.comment 0x00000000 0x30 rs232.o
|
||||
.comment 0x00000000 0x30 usb.o
|
||||
.comment 0x00000000 0x30 usb_user.o
|
||||
.comment 0x00000000 0x30 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.comment 0x00000000 0x30 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.comment 0x00000000 0x30 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
.comment 0x00000000 0x30 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.comment 0x00000000 0x30 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
|
||||
.debug
|
||||
*(.debug)
|
||||
|
||||
.line
|
||||
*(.line)
|
||||
|
||||
.debug_srcinfo
|
||||
*(.debug_srcinfo)
|
||||
|
||||
.debug_sfnames
|
||||
*(.debug_sfnames)
|
||||
|
||||
.debug_aranges 0x00000000 0x208
|
||||
*(.debug_aranges)
|
||||
.debug_aranges
|
||||
0x00000000 0x38 led.o
|
||||
.debug_aranges
|
||||
0x00000038 0x28 Mainboard.o
|
||||
.debug_aranges
|
||||
0x00000060 0x30 rs232.o
|
||||
.debug_aranges
|
||||
0x00000090 0x48 usb.o
|
||||
.debug_aranges
|
||||
0x000000d8 0x90 usb_user.o
|
||||
.debug_aranges
|
||||
0x00000168 0x28 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.debug_aranges
|
||||
0x00000190 0x20 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.debug_aranges
|
||||
0x000001b0 0x18 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
.debug_aranges
|
||||
0x000001c8 0x20 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.debug_aranges
|
||||
0x000001e8 0x20 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
|
||||
.debug_pubnames
|
||||
*(.debug_pubnames)
|
||||
|
||||
.debug_info 0x00000000 0x226a
|
||||
*(.debug_info)
|
||||
.debug_info 0x00000000 0x294 led.o
|
||||
.debug_info 0x00000294 0x237 Mainboard.o
|
||||
.debug_info 0x000004cb 0x232 rs232.o
|
||||
.debug_info 0x000006fd 0x481 usb.o
|
||||
.debug_info 0x00000b7e 0xaa8 usb_user.o
|
||||
.debug_info 0x00001626 0x23d c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.debug_info 0x00001863 0x1fc c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.debug_info 0x00001a5f 0x14e c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
.debug_info 0x00001bad 0x549 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.debug_info 0x000020f6 0x174 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
*(.gnu.linkonce.wi.*)
|
||||
|
||||
.debug_abbrev 0x00000000 0xe59
|
||||
*(.debug_abbrev)
|
||||
.debug_abbrev 0x00000000 0x112 led.o
|
||||
.debug_abbrev 0x00000112 0x14b Mainboard.o
|
||||
.debug_abbrev 0x0000025d 0x181 rs232.o
|
||||
.debug_abbrev 0x000003de 0x1fb usb.o
|
||||
.debug_abbrev 0x000005d9 0x2c6 usb_user.o
|
||||
.debug_abbrev 0x0000089f 0xf9 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.debug_abbrev 0x00000998 0x139 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.debug_abbrev 0x00000ad1 0xc1 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
.debug_abbrev 0x00000b92 0x1d6 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.debug_abbrev 0x00000d68 0xf1 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
|
||||
.debug_line 0x00000000 0x11b9
|
||||
*(.debug_line)
|
||||
.debug_line 0x00000000 0x150 led.o
|
||||
.debug_line 0x00000150 0x1ba Mainboard.o
|
||||
.debug_line 0x0000030a 0x107 rs232.o
|
||||
.debug_line 0x00000411 0x164 usb.o
|
||||
.debug_line 0x00000575 0x499 usb_user.o
|
||||
.debug_line 0x00000a0e 0x1c8 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.debug_line 0x00000bd6 0x14a c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.debug_line 0x00000d20 0xc1 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
.debug_line 0x00000de1 0x2fe c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.debug_line 0x000010df 0xda c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
|
||||
.debug_frame 0x00000000 0x540
|
||||
*(.debug_frame)
|
||||
.debug_frame 0x00000000 0xb0 led.o
|
||||
.debug_frame 0x000000b0 0x34 Mainboard.o
|
||||
.debug_frame 0x000000e4 0x5c rs232.o
|
||||
.debug_frame 0x00000140 0x94 usb.o
|
||||
.debug_frame 0x000001d4 0x254 usb_user.o
|
||||
.debug_frame 0x00000428 0x68 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.debug_frame 0x00000490 0x2c c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.debug_frame 0x000004bc 0x4c c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.debug_frame 0x00000508 0x38 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
|
||||
.debug_str 0x00000000 0x7d4
|
||||
*(.debug_str)
|
||||
.debug_str 0x00000000 0xb5 led.o
|
||||
0xe9 (size before relaxing)
|
||||
.debug_str 0x000000b5 0x7b Mainboard.o
|
||||
0x13a (size before relaxing)
|
||||
.debug_str 0x00000130 0x5b rs232.o
|
||||
0x136 (size before relaxing)
|
||||
.debug_str 0x0000018b 0x1a2 usb.o
|
||||
0x280 (size before relaxing)
|
||||
.debug_str 0x0000032d 0x218 usb_user.o
|
||||
0x450 (size before relaxing)
|
||||
.debug_str 0x00000545 0xcd c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
0x167 (size before relaxing)
|
||||
.debug_str 0x00000612 0x79 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
0x12e (size before relaxing)
|
||||
.debug_str 0x0000068b 0x4b c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(iob.o)
|
||||
0xf8 (size before relaxing)
|
||||
.debug_str 0x000006d6 0xb1 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
0x198 (size before relaxing)
|
||||
.debug_str 0x00000787 0x4d c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
0xf8 (size before relaxing)
|
||||
|
||||
.debug_loc 0x00000000 0x19f5
|
||||
*(.debug_loc)
|
||||
.debug_loc 0x00000000 0x2a5 led.o
|
||||
.debug_loc 0x000002a5 0x67 Mainboard.o
|
||||
.debug_loc 0x0000030c 0xee rs232.o
|
||||
.debug_loc 0x000003fa 0x1a9 usb.o
|
||||
.debug_loc 0x000005a3 0x92b usb_user.o
|
||||
.debug_loc 0x00000ece 0x4f8 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.debug_loc 0x000013c6 0x21 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.debug_loc 0x000013e7 0x51b c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.debug_loc 0x00001902 0xf3 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
|
||||
.debug_macinfo
|
||||
*(.debug_macinfo)
|
||||
|
||||
.debug_pubtypes
|
||||
*(.debug_pubtypes)
|
||||
|
||||
.debug_ranges 0x00000000 0x1a8
|
||||
*(.debug_ranges)
|
||||
.debug_ranges 0x00000000 0x70 led.o
|
||||
.debug_ranges 0x00000070 0x18 Mainboard.o
|
||||
.debug_ranges 0x00000088 0x20 rs232.o
|
||||
.debug_ranges 0x000000a8 0x38 usb.o
|
||||
.debug_ranges 0x000000e0 0x80 usb_user.o
|
||||
.debug_ranges 0x00000160 0x18 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(malloc.o)
|
||||
.debug_ranges 0x00000178 0x10 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fprintf.o)
|
||||
.debug_ranges 0x00000188 0x10 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(vfprintf_std.o)
|
||||
.debug_ranges 0x00000198 0x10 c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/../../../../avr/lib/avr35\libc.a(fputc.o)
|
||||
|
||||
.debug_macro
|
||||
*(.debug_macro)
|
||||
OUTPUT(Mainboard.elf elf32-avr)
|
||||
LOAD linker stubs
|
||||
@@ -0,0 +1,227 @@
|
||||
S01100004D61696E626F6172642E7372656386
|
||||
S11300000C9469000C9486000C9486000C94860071
|
||||
S11300100C9486000C9486000C9486000C94860044
|
||||
S11300200C9486000C9486000C9486000C948F0229
|
||||
S11300300C94B7020C9486000C9486000C948600F1
|
||||
S11300400C9486000C9486000C9486000C94860014
|
||||
S11300500C9486000C9486000C9486000C94860004
|
||||
S11300600C9486000C9486000C9486000C948600F4
|
||||
S11300700C94860012010002FF000010ADDEEEBEFB
|
||||
S113008000010102030104030904140342006C008B
|
||||
S11300907500620062004600690073006800000099
|
||||
S11300A020034800610063006B00650072002D00AE
|
||||
S11300B04A0065006F0070006100720064007900FE
|
||||
S11300C000000E03300030003000300030003100FA
|
||||
S11300D0000011241FBECFEFD4E0DEBFCDBF11E07E
|
||||
S11300E0A0E0B1E0E4ECFDE002C005900D92AE3377
|
||||
S11300F0B107D9F721E0AEE3B1E001C01D92A43409
|
||||
S1130100B207E1F70E949E000C94E0060C940000F4
|
||||
S11301108EBD0DB407FC10C090E485B1892785B964
|
||||
S11301202FEF31EE84E0215030408040E1F700C0F1
|
||||
S113013000000DB407FEF1CF8EB5089586ED84B9A5
|
||||
S113014080E185B91DBC83E58CBD8FE39CE90197F3
|
||||
S1130150F1F700C000002C9880EC0E9488008FE921
|
||||
S11301609FE00197F1F700C000002C9A2C9880ECD6
|
||||
S11301700E9488008FE99FE00197F1F700C000001A
|
||||
S11301802C9A2F9AFFCFCF93C82F8A3019F48DE081
|
||||
S11301900E94C300E8ECF0E0908195FFFDCFC0938E
|
||||
S11301A0CE0080E090E0CF910895CF93DF93CDB758
|
||||
S11301B0DEB760970FB6F894DEBF0FBECDBF2CE05C
|
||||
S11301C0E5E1F1E0DE01119601900D922A95E1F747
|
||||
S11301D01D861E861F86188AFC012081233C51F44B
|
||||
S11301E08181813049F460E1CE0101960E943D0293
|
||||
S11301F081E003C080E001C080E060960FB6F8940F
|
||||
S1130200DEBF0FBECDBFDF91CF910895CF93DF93B3
|
||||
S1130210CDB7DEB7A0970FB6F894DEBF0FBECDBF43
|
||||
S11302208130A1F440E2BE016F5F7F4F0E9418024B
|
||||
S1130230882361F018A2CE0101960E94BB0640E219
|
||||
S1130240BE016F5F7F4F82E80E946002A0960FB6E6
|
||||
S1130250F894DEBF0FBECDBFDF91CF9108952F92EA
|
||||
S11302603F924F925F927F928F929F92AF92CF92E2
|
||||
S1130270DF92EF92FF920F931F93CF93DF93282F78
|
||||
S113028090E06CE070E00E947105FC01EB5DFE4FB4
|
||||
S1130290822F90E06CE070E00E947105895D9E4FB2
|
||||
S11302A041E00F2EF9EECF2ED12CF02D0F2EFBEEC8
|
||||
S11302B0EF2EF12CF02DAA24A3940CEE10E06DEE99
|
||||
S11302C070E00F2EF0EF4F2E512CF02D68949924EE
|
||||
S11302D092F8812C6894772474F8DF0120812F3FF1
|
||||
S11302E059F1E6014883E701A8822081E8012883C7
|
||||
S11302F01C019C0121503109E9012881203841F079
|
||||
S1130300203441F0203241F0203141F4372D07C030
|
||||
S113031030E405C030E303C030E201C0382DE10110
|
||||
S11303202881232BEB0128832C9120FF03C0D201C9
|
||||
S11303301C9202C0E20198824F5F339603964530C7
|
||||
S113034061F6EAEEF0E08EE180831082DF91CF91D6
|
||||
S11303501F910F91FF90EF90DF90CF90AF909F90FF
|
||||
S11303608F907F905F904F903F902F900895E8EE8C
|
||||
S1130370F0E080818570E9F30895AF92BF92CF9247
|
||||
S1130380DF92EF92FF920F931F93CF93DF93D82EB8
|
||||
S1130390D62FC72FE42FF0E02E173F0710F4C22EFC
|
||||
S11303A001C0C42E0E94B7010D2F1C2F6894AA24EB
|
||||
S11303B0A4F80F2EF8EEEF2EF12CF02D0F2EFEEFF9
|
||||
S11303C0BF2EF02DC1EFD0E02C2D80E18C1508F468
|
||||
S11303D02A2D2223D9F0F801922FDD2011F08081FB
|
||||
S11303E001C084918883915031969111F6CF622F88
|
||||
S11303F0615070E06F5F7F4F060F171FC21AF7013D
|
||||
S1130400B082C11007C0203129F007C0F701B082C3
|
||||
S1130410CC2019F00E94B701D7CFDF91CF911F9163
|
||||
S11304200F91FF90EF90DF90CF90BF90AF90089521
|
||||
S11304308093E9009091F200941708F4492F442323
|
||||
S1130440D1F0362FE62FF72FA1EFB0E09C919193D6
|
||||
S11304509E2F931B9417D0F39091F20091110BC02F
|
||||
S113046021E030E002C0220F331F8A95E2F7EAEE62
|
||||
S1130470F0E020831082842F08956623E9F010921F
|
||||
S1130480E900E8EEF0E0208120FFFDCF2091F200AA
|
||||
S1130490211114C0282FE82FF92FA1EFB0E081918A
|
||||
S11304A08C938E2F821B8617D0F3E8EEF0E08081C8
|
||||
S11304B08E7F808381E0089580E0089580E0089530
|
||||
S11304C0CF93DF93442329F18093E900E8EEF0E031
|
||||
S11304D0808180FFFDCF8091F20081111CC0962F96
|
||||
S11304E0E62FF72FA8EEB0E0C1EFD0E08C9185FFA6
|
||||
S11304F002C08081888331968E2F891B8417B0F3C4
|
||||
S1130500E8EEF0E080818E7F80838FE7808381E056
|
||||
S113051003C080E001C080E0DF91CF9108951F9275
|
||||
S11305200F920FB60F9211248F93EF93FF93E1EE86
|
||||
S1130530F0E08081108283FF12C01092E90081E014
|
||||
S11305408093EB001092EC0082E18093ED0088E050
|
||||
S11305508093F00010923E018FEF80930E01FF9183
|
||||
S1130560EF918F910F900FBE0F901F9018951F92CF
|
||||
S11305700F920FB60F9211243F924F925F926F9297
|
||||
S11305807F928F929F92AF92BF92CF92DF92EF921F
|
||||
S1130590FF920F931F932F933F934F935F936F9308
|
||||
S11305A07F938F939F93AF93BF93EF93FF93CF93D7
|
||||
S11305B0DF93CDB7DEB72A97DEBFCDBF8091F400BD
|
||||
S11305C080FF58C21092E9008091E80083FF1FC2A7
|
||||
S11305D0E1EFF0E08081898380818A83208130E0AB
|
||||
S11305E03C832B834081942F80E0822B932B9C832C
|
||||
S11305F08B83208130E03E832D834081942F80E0E3
|
||||
S1130600822B932B9E838D83208130E038872F8328
|
||||
S11306104081942F80E0822B932B98878F8382EFE5
|
||||
S11306208093E8008A81863009F030C18B819C81F7
|
||||
S1130630811523E0920709F4FDC048F4811551E0C7
|
||||
S1130640950789F08115924009F01CC126C08230BB
|
||||
S1130650B3E09B0709F402C108F4F6C08330934069
|
||||
S113066009F010C105C1E4E7F0E044912F81388519
|
||||
S1130670BF0180E00E94BD010CC29A2F50815F3FF0
|
||||
S113068009F49B2F490F815033968111F6CF2F5FC8
|
||||
S11306903F4F2230310539F410C020E030E040E013
|
||||
S11306A014E0A1E0B0E0C9016CE070E00E947105C3
|
||||
S11306B0FC01EB5DFE4F812FE0CF842F880F880F64
|
||||
S11306C0880F841B0F2EFBE1EF2EF02DE80E8E2DEC
|
||||
S11306D090E00E948305082F192F89E0D8018C939C
|
||||
S11306E082E011968C9311971296EC9212971396BE
|
||||
S11306F01C92139714968C93149781E015968C93FF
|
||||
S1130700159716961C92169780EC17968C9317974C
|
||||
S11307108AEF18968C93F80139961A86198644E064
|
||||
S1130720A12C88248394F82C9A2C0F2EF9E07F2E88
|
||||
S1130730F02DBB24BA940F2EF7E0CF2EF02D0F2E00
|
||||
S1130740F5E0DF2EF02D6894662461F80F2EF3E0B7
|
||||
S11307505F2EF02D56C07F2DDC012C912F3F09F424
|
||||
S1130760792D670F515003965111F5CF7082418353
|
||||
S1130770428213826483B5821682B78210863996C8
|
||||
S11307806623C1F1832F932D6CE070E00E94710504
|
||||
S11307909C012A5D3E4F482CC901B9016150710981
|
||||
S11307A0DB015C915F3F01F1C082D182652F6795C7
|
||||
S11307B06627679564296283513441F0503441F0CF
|
||||
S11307C0513841F0503841F4562D07C05F2D05C013
|
||||
S11307D05F2D03C0562D01C0552D5383DC018C9130
|
||||
S11307E0848315821682379643942D5F3F4FB5E07C
|
||||
S11307F04B12D2CFA985BA851196BA87A9871297C9
|
||||
S113080071F04984342D3A84842D932D6CE070E08A
|
||||
S11308100E9471058B5D9E4F542F6A2D9CCF2F81B2
|
||||
S113082038854E2DB80181E00E94BD01C8010E94A7
|
||||
S11308301E062FC1E6E8F0E044912F813885BF0100
|
||||
S113084080E00E94BD0125C1EAE8F0E044912F81D7
|
||||
S11308503885BF0180E00E94BD011BC1E0EAF0E0E1
|
||||
S113086044912F813885BF0180E00E94BD0111C1F0
|
||||
S1130870E2ECF0E044912F813885BF0180E00E94D2
|
||||
S1130880BD0107C181E28093EB0003C1853071F49F
|
||||
S11308908EEF8093E800E8EEF0E0808180FFFDCFEA
|
||||
S11308A08B819C8180688093E300F3C08930C1F41C
|
||||
S11308B09981911160C08B819C81019769F481E0D9
|
||||
S11308C080933E018EEF8093E80010920E01809198
|
||||
S11308D00E010E942F01DDC081E28093EB00D9C09C
|
||||
S11308E0883089F49981903809F057C0E8EEF0E037
|
||||
S11308F0808180FFFDCF80913E018093F1008EEFD7
|
||||
S11309008093E800C6C081111CC0E8EEF0E080814D
|
||||
S113091080FFFDCF8981823859F48D81E9EEF0E0C2
|
||||
S113092080838091EB0085FB882780F9108201C0C9
|
||||
S113093080E0E1EFF0E0808310828EEF8093E800A6
|
||||
S1130940A8C08B30C1F48981803211F0811155C067
|
||||
S11309508D819E818230910550F480930E018EEF3B
|
||||
S11309608093E80080910E010E942F0192C081E2E1
|
||||
S11309708093EB008EC08A3081F489818038E9F558
|
||||
S1130980E8EEF0E0808180FFFDCF80910E0180933E
|
||||
S1130990F1008EEF8093E8007CC0813011F0833049
|
||||
S11309A061F58981823049F58B819C81892B29F5F8
|
||||
S11309B08D819E818F779927382F31503430E8F418
|
||||
S11309C03EEF3093E8008093E9002A81233021F43C
|
||||
S11309D081E28093EB005DC099E19093EB0021E00C
|
||||
S11309E030E0F90102C0EE0FFF1F8A95E2F7CF0154
|
||||
S11309F0EAEEF0E0808310824CC0CE0101960E94A2
|
||||
S1130A00D500811146C081E28093EB0042C081E2AF
|
||||
S1130A108093EB002FC0F22E408150E0022E02C0E2
|
||||
S1130A20559547950A94E2F740FF1BC0DB012C93D0
|
||||
S1130A30D6018C9182FF13C08091F200882341F08B
|
||||
S1130A406091F20070E0822F0E940601F092E900AA
|
||||
S1130A50E8EEF0E089EF80838FE780831AC0D80145
|
||||
S1130A609C932F5F3F4F25303105A9F681E2809397
|
||||
S1130A70EB000FC021E030E0E4EFF0E069EE70E05D
|
||||
S1130A800F2EF8EECF2ED12CF02D0BEE10E091E2CC
|
||||
S1130A90C2CF2A960FB6F894DEBF0FBECDBFDF914A
|
||||
S1130AA0CF91FF91EF91BF91AF919F918F917F91E2
|
||||
S1130AB06F915F914F913F912F911F910F91FF90F3
|
||||
S1130AC0EF90DF90CF90BF90AF909F908F907F90EA
|
||||
S1130AD06F905F904F903F900F900FBE0F901F90BC
|
||||
S1130AE018955527002480FF02C0060E571F660F75
|
||||
S1130AF0771F6115710521F096958795009799F7F1
|
||||
S1130B00952F802D08950F931F93CF93DF938230F9
|
||||
S1130B10910510F482E090E0E0914201F0914301EC
|
||||
S1130B2020E030E0C0E0D0E023C04081518148178C
|
||||
S1130B305907A8F04817590761F4828193812097D7
|
||||
S1130B4019F09B838A832EC09093430180934201C2
|
||||
S1130B5029C02115310529F04217530710F0A901C6
|
||||
S1130B6002C0BE01DF0102811381EF019A01F80185
|
||||
S1130B703097D9F62115310509F1281B390B24309A
|
||||
S1130B80310590F412968D919C911397611571051E
|
||||
S1130B9021F0FB019383828304C0909343018093EB
|
||||
S1130BA04201FD01329644C0FD01E20FF31F81931F
|
||||
S1130BB09193225031092D933C933AC020914001E6
|
||||
S1130BC030914101232B41F4209111013091120104
|
||||
S1130BD0309341012093400120910F013091100185
|
||||
S1130BE02115310541F42DB73EB7409113015091C1
|
||||
S1130BF01401241B350BE0914001F0914101E217EF
|
||||
S1130C00F307A0F42E1B3F0B2817390778F0AC012B
|
||||
S1130C104E5F5F4F2417350748F04E0F5F1F509308
|
||||
S1130C204101409340018193919302C0E0E0F0E0E0
|
||||
S1130C30CF01DF91CF911F910F910895EF92FF9211
|
||||
S1130C400F931F93CF93DF93009709F48FC0DC01B8
|
||||
S1130C50129713961C921E921297E0904201F09004
|
||||
S1130C604301E114F10489F42D913C911197280F6B
|
||||
S1130C70391F80914001909141018217930789F5B2
|
||||
S1130C80B0934101A093400171C0E70120E030E03E
|
||||
S1130C9001C0EA01CA17DB0738F44A815B819E016F
|
||||
S1130CA041155105B1F722C0BC0162507109FB0125
|
||||
S1130CB0D383C28300811181AC01400F511F4C17B3
|
||||
S1130CC05D0761F448815981400F511F4E5F5F4FAA
|
||||
S1130CD0518340834A815B815383428321153105CB
|
||||
S1130CE029F4B0934301A093420140C0F901B383B6
|
||||
S1130CF0A283E90169917991C60FD71FAC17BD078B
|
||||
S1130D0079F4DC015E914E91460F571F4E5F5F4FA1
|
||||
S1130D105183408312968D919C9113979383828380
|
||||
S1130D20A0E0B0E002C0D7017C01F7018281938189
|
||||
S1130D300097C9F7C701029620813181820F931F62
|
||||
S1130D4020914001309141012817390779F4109717
|
||||
S1130D5029F4109243011092420104C013961C928C
|
||||
S1130D601E921297F0924101E0924001CDB7DEB796
|
||||
S1130D70E6E00C94D106DC016C9161566A3108F00E
|
||||
S1130D80605E6F5B6D93C1F708952A88398848883F
|
||||
S1130D905F846E847D848C849B84AA84B984C88493
|
||||
S1130DA0DF80EE80FD800C811B81AA81B981CE0F8A
|
||||
S1130DB0D11D0FB6F894DEBF0FBECDBFED0108956F
|
||||
S1070DC0F894FFCFD1
|
||||
S1130DC40000000200000000C30000000000FF0057
|
||||
S1130DD4004401200056657273696F6E20312E3011
|
||||
S1130DE40000000000802002812002FF2002FF2076
|
||||
S1110DF402C12002FF2002FF2002FF200200A5
|
||||
S9030000FC
|
||||
@@ -0,0 +1,154 @@
|
||||
################################################################################
|
||||
# Automatically-generated file. Do not edit!
|
||||
################################################################################
|
||||
|
||||
SHELL := cmd.exe
|
||||
RM := rm -rf
|
||||
|
||||
USER_OBJS :=
|
||||
|
||||
LIBS :=
|
||||
PROJ :=
|
||||
|
||||
O_SRCS :=
|
||||
C_SRCS :=
|
||||
S_SRCS :=
|
||||
S_UPPER_SRCS :=
|
||||
OBJ_SRCS :=
|
||||
ASM_SRCS :=
|
||||
PREPROCESSING_SRCS :=
|
||||
OBJS :=
|
||||
OBJS_AS_ARGS :=
|
||||
C_DEPS :=
|
||||
C_DEPS_AS_ARGS :=
|
||||
EXECUTABLES :=
|
||||
OUTPUT_FILE_PATH :=
|
||||
OUTPUT_FILE_PATH_AS_ARGS :=
|
||||
AVR_APP_PATH :=$$$AVR_APP_PATH$$$
|
||||
QUOTE := "
|
||||
ADDITIONAL_DEPENDENCIES:=
|
||||
OUTPUT_FILE_DEP:=
|
||||
LIB_DEP:=
|
||||
|
||||
# Every subdirectory with source files must be described here
|
||||
SUBDIRS :=
|
||||
|
||||
|
||||
# Add inputs and outputs from these tool invocations to the build variables
|
||||
C_SRCS += \
|
||||
../led.c \
|
||||
../Mainboard.c \
|
||||
../rs232.c \
|
||||
../usb.c \
|
||||
../usb_user.c
|
||||
|
||||
|
||||
PREPROCESSING_SRCS +=
|
||||
|
||||
|
||||
ASM_SRCS +=
|
||||
|
||||
|
||||
OBJS += \
|
||||
led.o \
|
||||
Mainboard.o \
|
||||
rs232.o \
|
||||
usb.o \
|
||||
usb_user.o
|
||||
|
||||
|
||||
OBJS_AS_ARGS += \
|
||||
led.o \
|
||||
Mainboard.o \
|
||||
rs232.o \
|
||||
usb.o \
|
||||
usb_user.o
|
||||
|
||||
|
||||
C_DEPS += \
|
||||
led.d \
|
||||
Mainboard.d \
|
||||
rs232.d \
|
||||
usb.d \
|
||||
usb_user.d
|
||||
|
||||
|
||||
C_DEPS_AS_ARGS += \
|
||||
led.d \
|
||||
Mainboard.d \
|
||||
rs232.d \
|
||||
usb.d \
|
||||
usb_user.d
|
||||
|
||||
|
||||
OUTPUT_FILE_PATH +=Mainboard.elf
|
||||
|
||||
OUTPUT_FILE_PATH_AS_ARGS +=Mainboard.elf
|
||||
|
||||
ADDITIONAL_DEPENDENCIES:=
|
||||
|
||||
OUTPUT_FILE_DEP:= ./makedep.mk
|
||||
|
||||
LIB_DEP+=
|
||||
|
||||
# AVR32/GNU C Compiler
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
./%.o: .././%.c
|
||||
@echo Building file: $<
|
||||
@echo Invoking: AVR/GNU C Compiler :
|
||||
$(QUOTE)C:\Program Files (x86)\Atmel\Atmel Toolchain\AVR8 GCC\Native\3.4.2.876\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -funsigned-char -funsigned-bitfields -DDEBUG -O1 -ffunction-sections -fpack-struct -fshort-enums -g2 -Wall -mmcu=atmega32u2 -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o"$@" "$<"
|
||||
@echo Finished building: $<
|
||||
|
||||
|
||||
|
||||
# AVR32/GNU Preprocessing Assembler
|
||||
|
||||
|
||||
|
||||
# AVR32/GNU Assembler
|
||||
|
||||
|
||||
|
||||
|
||||
ifneq ($(MAKECMDGOALS),clean)
|
||||
ifneq ($(strip $(C_DEPS)),)
|
||||
-include $(C_DEPS)
|
||||
endif
|
||||
endif
|
||||
|
||||
# Add inputs and outputs from these tool invocations to the build variables
|
||||
|
||||
# All Target
|
||||
all: $(OUTPUT_FILE_PATH) $(ADDITIONAL_DEPENDENCIES)
|
||||
|
||||
$(OUTPUT_FILE_PATH): $(OBJS) $(USER_OBJS) $(OUTPUT_FILE_DEP) $(LIB_DEP)
|
||||
@echo Building target: $@
|
||||
@echo Invoking: AVR/GNU Linker :
|
||||
$(QUOTE)C:\Program Files (x86)\Atmel\Atmel Toolchain\AVR8 GCC\Native\3.4.2.876\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="Mainboard.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mmcu=atmega32u2
|
||||
@echo Finished building target: $@
|
||||
"C:\Program Files (x86)\Atmel\Atmel Toolchain\AVR8 GCC\Native\3.4.2.876\avr8-gnu-toolchain\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature "Mainboard.elf" "Mainboard.hex"
|
||||
"C:\Program Files (x86)\Atmel\Atmel Toolchain\AVR8 GCC\Native\3.4.2.876\avr8-gnu-toolchain\bin\avr-objcopy.exe" -j .eeprom --set-section-flags=.eeprom=alloc,load --change-section-lma .eeprom=0 --no-change-warnings -O ihex "Mainboard.elf" "Mainboard.eep" || exit 0
|
||||
"C:\Program Files (x86)\Atmel\Atmel Toolchain\AVR8 GCC\Native\3.4.2.876\avr8-gnu-toolchain\bin\avr-objdump.exe" -h -S "Mainboard.elf" > "Mainboard.lss"
|
||||
"C:\Program Files (x86)\Atmel\Atmel Toolchain\AVR8 GCC\Native\3.4.2.876\avr8-gnu-toolchain\bin\avr-objcopy.exe" -O srec -R .eeprom -R .fuse -R .lock -R .signature "Mainboard.elf" "Mainboard.srec"
|
||||
"C:\Program Files (x86)\Atmel\Atmel Toolchain\AVR8 GCC\Native\3.4.2.876\avr8-gnu-toolchain\bin\avr-size.exe" "Mainboard.elf"
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
# Other Targets
|
||||
clean:
|
||||
-$(RM) $(OBJS_AS_ARGS)$(C_DEPS_AS_ARGS) $(EXECUTABLES)
|
||||
rm -rf "Mainboard.elf" "Mainboard.a" "Mainboard.hex" "Mainboard.lss" "Mainboard.eep" "Mainboard.map" "Mainboard.srec"
|
||||
|
||||
@@ -0,0 +1,37 @@
|
||||
led.d led.o: .././led.c \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h \
|
||||
.././led.h
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h:
|
||||
|
||||
.././led.h:
|
||||
@@ -0,0 +1,14 @@
|
||||
################################################################################
|
||||
# Automatically-generated file. Do not edit or delete the file
|
||||
################################################################################
|
||||
|
||||
led.c
|
||||
|
||||
Mainboard.c
|
||||
|
||||
rs232.c
|
||||
|
||||
usb.c
|
||||
|
||||
usb_user.c
|
||||
|
||||
@@ -0,0 +1,66 @@
|
||||
rs232.d rs232.o: .././rs232.c .././config.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay_basic.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/math.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdbool.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/interrupt.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/string.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stddef.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdio.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdarg.h \
|
||||
.././rs232.h
|
||||
|
||||
.././config.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay_basic.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/math.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdbool.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/interrupt.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/string.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stddef.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdio.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdarg.h:
|
||||
|
||||
.././rs232.h:
|
||||
@@ -0,0 +1,74 @@
|
||||
usb.d usb.o: .././usb.c .././config.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay_basic.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/math.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdbool.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/interrupt.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/string.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stddef.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdio.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdarg.h \
|
||||
.././usb_user_config.h .././usb_user.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/pgmspace.h \
|
||||
.././usb.h
|
||||
|
||||
.././config.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay_basic.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/math.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdbool.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/interrupt.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/string.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stddef.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdio.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdarg.h:
|
||||
|
||||
.././usb_user_config.h:
|
||||
|
||||
.././usb_user.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/pgmspace.h:
|
||||
|
||||
.././usb.h:
|
||||
@@ -0,0 +1,70 @@
|
||||
usb_user.d usb_user.o: .././usb_user.c \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdlib.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stddef.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdbool.h \
|
||||
.././usb_user_config.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h \
|
||||
.././config.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay_basic.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/math.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/interrupt.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/string.h \
|
||||
.././usb_user.h \
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/pgmspace.h
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdlib.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stddef.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdbool.h:
|
||||
|
||||
.././usb_user_config.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/include/stdint.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/stdint.h:
|
||||
|
||||
.././config.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/inttypes.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/util/delay_basic.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/math.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/interrupt.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/io.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/sfr_defs.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/iom32u2.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/portpins.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/common.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/version.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/fuse.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/lock.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/string.h:
|
||||
|
||||
.././usb_user.h:
|
||||
|
||||
c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-gnu-toolchain\bin\../lib/gcc/avr/4.7.2/../../../../avr/include/avr/pgmspace.h:
|
||||
@@ -0,0 +1,126 @@
|
||||
/*
|
||||
* Mainboard.c
|
||||
*
|
||||
* Created: 06.10.2013 19:12:35
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
#define F_CPU 16000000
|
||||
//#define F_CPU 8000000
|
||||
//#define F_CPU 2000000
|
||||
|
||||
#include <avr/io.h>
|
||||
#include <util/delay.h>
|
||||
|
||||
//#include "config.h"
|
||||
//#include <avr/io.h>
|
||||
//#include "led.h"
|
||||
//#include "rs232.h"
|
||||
//#include "usb.h"
|
||||
|
||||
/*void wait_for_usb() {
|
||||
while(true) {
|
||||
if(usb_getstatus() == USB_STATUS_DISCONNECTED) {
|
||||
led(YELLOW);
|
||||
if(!(PINC & (1<<PINC7))) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
if(usb_getstatus() == USB_STATUS_ENUMERATED) {
|
||||
led(CYAN);
|
||||
}
|
||||
if(usb_getstatus() == USB_STATUS_CONFIGURED) {
|
||||
led(GREEN);
|
||||
return;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void init()
|
||||
{
|
||||
led(YELLOW);
|
||||
sei();
|
||||
init_led();
|
||||
init_rs232();
|
||||
//init_usb();
|
||||
DDRC &= ~(1<<PINC7);
|
||||
PORTC |= (1<<PINC7);
|
||||
//wait_for_usb();
|
||||
}
|
||||
|
||||
void send(char * text) {
|
||||
uint8_t l = strlen(text);
|
||||
if(l >= 29) {
|
||||
text[29] = 13;
|
||||
text[30] = 10;
|
||||
text[31] = 0;
|
||||
} else {
|
||||
text[l] = 13;
|
||||
text[l+1] = 10;
|
||||
text[l+2] = 0;
|
||||
}
|
||||
led(MAGENTA);
|
||||
rs232_send(text);
|
||||
if(usb_getstatus() == USB_STATUS_CONFIGURED && usb_ready()) {
|
||||
usb_send(text);
|
||||
}
|
||||
led(GREEN);
|
||||
}
|
||||
|
||||
void resi(char * text) {
|
||||
_delay_ms(10);
|
||||
send("Nachricht bekommen!");
|
||||
//send(text);
|
||||
led(RED);
|
||||
_delay_ms(2000);
|
||||
}*/
|
||||
|
||||
uint8_t spi_putc( uint8_t data ) {
|
||||
SPDR = data;
|
||||
|
||||
while(!(SPSR & (1<<SPIF))) {
|
||||
PORTB ^= (1<<PINB6);
|
||||
_delay_ms(100);
|
||||
}
|
||||
|
||||
return SPDR;
|
||||
}
|
||||
|
||||
int main(void)
|
||||
{
|
||||
DDRB = (1<<PINB1) | (1<<PINB2) | (0<<PINB3) | (1<<PINB4) | (1<<PINB7) | (1<<PINB6);
|
||||
PORTB = 0 | (1<<PINB4);
|
||||
|
||||
SPSR = 0;//(1<<SPI2X);
|
||||
SPCR = (1<<SPE) | (1<<MSTR) | (1<<SPR1) | (1<<SPR0);
|
||||
|
||||
_delay_ms(10);
|
||||
|
||||
PORTB &= ~(1<<PINB4);
|
||||
spi_putc( 0xC0 );
|
||||
_delay_ms(1);
|
||||
PORTB |= (1<<PINB4);
|
||||
|
||||
PORTB &= ~(1<<PINB4);
|
||||
spi_putc( 0xC0 );
|
||||
_delay_ms(1);
|
||||
PORTB |= (1<<PINB4);
|
||||
|
||||
PORTB |= (1<<PINB7);
|
||||
|
||||
/*init();
|
||||
|
||||
led(GREEN);
|
||||
char text[32];
|
||||
uint16_t i=0;
|
||||
while(1)
|
||||
{
|
||||
snprintf(text, 32, "blafoo %d ich bin ein lager doofer text",i++);
|
||||
send(text);
|
||||
_delay_ms(100);
|
||||
led_rainbow(5);
|
||||
}*/
|
||||
while(1) {
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,156 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectVersion>6.1</ProjectVersion>
|
||||
<ToolchainName>com.Atmel.AVRGCC8.C</ToolchainName>
|
||||
<ProjectGuid>{839c4697-ab18-4132-8e80-f57ddb26adeb}</ProjectGuid>
|
||||
<avrdevice>ATmega32U2</avrdevice>
|
||||
<avrdeviceseries>none</avrdeviceseries>
|
||||
<OutputType>Executable</OutputType>
|
||||
<Language>C</Language>
|
||||
<OutputFileName>$(MSBuildProjectName)</OutputFileName>
|
||||
<OutputFileExtension>.elf</OutputFileExtension>
|
||||
<OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory>
|
||||
<AssemblyName>Mainboard</AssemblyName>
|
||||
<Name>Mainboard</Name>
|
||||
<RootNamespace>Mainboard</RootNamespace>
|
||||
<ToolchainFlavour>Native</ToolchainFlavour>
|
||||
<KeepTimersRunning>true</KeepTimersRunning>
|
||||
<OverrideVtor>false</OverrideVtor>
|
||||
<OverrideVtorValue>exception_table</OverrideVtorValue>
|
||||
<eraseonlaunchrule>0</eraseonlaunchrule>
|
||||
<ProgFlashFromRam>true</ProgFlashFromRam>
|
||||
<RamSnippetAddress>0x20000000</RamSnippetAddress>
|
||||
<CacheFlash>true</CacheFlash>
|
||||
<UncachedRange />
|
||||
<BootSegment>0</BootSegment>
|
||||
<AsfFrameworkConfig>
|
||||
<framework-data xmlns="">
|
||||
<options />
|
||||
<configurations />
|
||||
<files />
|
||||
<documentation help="" />
|
||||
<dependencies>
|
||||
<content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.7.2" />
|
||||
</dependencies>
|
||||
</framework-data>
|
||||
</AsfFrameworkConfig>
|
||||
<avrtoolinterface>ISP</avrtoolinterface>
|
||||
<avrtool>com.atmel.avrdbg.tool.ispmk2</avrtool>
|
||||
<com_atmel_avrdbg_tool_ispmk2>
|
||||
<ToolType xmlns="">com.atmel.avrdbg.tool.ispmk2</ToolType>
|
||||
<ToolName xmlns="">AVRISP mkII</ToolName>
|
||||
<ToolNumber xmlns="">0000000000000</ToolNumber>
|
||||
<Channel xmlns="">
|
||||
<host>127.0.0.1</host>
|
||||
<port>63239</port>
|
||||
<ssl>False</ssl>
|
||||
</Channel>
|
||||
<ToolOptions xmlns="">
|
||||
<InterfaceName>ISP</InterfaceName>
|
||||
<InterfaceProperties>
|
||||
<JtagDbgClock>249000</JtagDbgClock>
|
||||
<JtagProgClock>1000000</JtagProgClock>
|
||||
<IspClock>150000</IspClock>
|
||||
<JtagInChain>false</JtagInChain>
|
||||
<JtagEnableExtResetOnStartSession>false</JtagEnableExtResetOnStartSession>
|
||||
<JtagDevicesBefore>0</JtagDevicesBefore>
|
||||
<JtagDevicesAfter>0</JtagDevicesAfter>
|
||||
<JtagInstrBitsBefore>0</JtagInstrBitsBefore>
|
||||
<JtagInstrBitsAfter>0</JtagInstrBitsAfter>
|
||||
</InterfaceProperties>
|
||||
</ToolOptions>
|
||||
</com_atmel_avrdbg_tool_ispmk2>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<ToolchainSettings>
|
||||
<AvrGcc>
|
||||
<avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex>
|
||||
<avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss>
|
||||
<avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep>
|
||||
<avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec>
|
||||
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
|
||||
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
|
||||
<avrgcc.compiler.symbols.DefSymbols>
|
||||
<ListValues>
|
||||
<Value>NDEBUG</Value>
|
||||
</ListValues>
|
||||
</avrgcc.compiler.symbols.DefSymbols>
|
||||
<avrgcc.compiler.optimization.level>Optimize for size (-Os)</avrgcc.compiler.optimization.level>
|
||||
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
|
||||
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
|
||||
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
|
||||
<avrgcc.linker.libraries.Libraries>
|
||||
<ListValues>
|
||||
<Value>libm</Value>
|
||||
</ListValues>
|
||||
</avrgcc.linker.libraries.Libraries>
|
||||
</AvrGcc>
|
||||
</ToolchainSettings>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<ToolchainSettings>
|
||||
<AvrGcc>
|
||||
<avrgcc.common.outputfiles.hex>True</avrgcc.common.outputfiles.hex>
|
||||
<avrgcc.common.outputfiles.lss>True</avrgcc.common.outputfiles.lss>
|
||||
<avrgcc.common.outputfiles.eep>True</avrgcc.common.outputfiles.eep>
|
||||
<avrgcc.common.outputfiles.srec>True</avrgcc.common.outputfiles.srec>
|
||||
<avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcc.compiler.general.ChangeDefaultCharTypeUnsigned>
|
||||
<avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcc.compiler.general.ChangeDefaultBitFieldUnsigned>
|
||||
<avrgcc.compiler.symbols.DefSymbols>
|
||||
<ListValues>
|
||||
<Value>DEBUG</Value>
|
||||
</ListValues>
|
||||
</avrgcc.compiler.symbols.DefSymbols>
|
||||
<avrgcc.compiler.optimization.level>Optimize (-O1)</avrgcc.compiler.optimization.level>
|
||||
<avrgcc.compiler.optimization.PackStructureMembers>True</avrgcc.compiler.optimization.PackStructureMembers>
|
||||
<avrgcc.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcc.compiler.optimization.AllocateBytesNeededForEnum>
|
||||
<avrgcc.compiler.optimization.DebugLevel>Default (-g2)</avrgcc.compiler.optimization.DebugLevel>
|
||||
<avrgcc.compiler.warnings.AllWarnings>True</avrgcc.compiler.warnings.AllWarnings>
|
||||
<avrgcc.linker.libraries.Libraries>
|
||||
<ListValues>
|
||||
<Value>libm</Value>
|
||||
</ListValues>
|
||||
</avrgcc.linker.libraries.Libraries>
|
||||
<avrgcc.assembler.debugging.DebugLevel>Default (-Wa,-g)</avrgcc.assembler.debugging.DebugLevel>
|
||||
</AvrGcc>
|
||||
</ToolchainSettings>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="config.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="led.c">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="led.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Mainboard.c">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="rs232.c">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="rs232.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="usb.c">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="usb.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="usb_user.c">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="usb_user.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
<Compile Include="usb_user_config.h">
|
||||
<SubType>compile</SubType>
|
||||
</Compile>
|
||||
</ItemGroup>
|
||||
<Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\Compiler.targets" />
|
||||
</Project>
|
||||
@@ -0,0 +1,184 @@
|
||||
:100000000C9486000C94A3000C94A3000C94A30001
|
||||
:100010000C94A3000C94A3000C94A3000C94A300D4
|
||||
:100020000C94A3000C94A3000C94DC010C94FD012F
|
||||
:100030000C94A3000C94A3000C94A3000C94A300B4
|
||||
:100040000C94A3000C94A3000C94A3000C94A300A4
|
||||
:100050000C94A3000C94A3000C94A3000C94A30094
|
||||
:100060000C94A3000C94A3000C94A3000C94A30084
|
||||
:100070000C94A3000C94A3000C94A3000C94A30074
|
||||
:100080000C94A3000C94A3000C94A3000C94A30064
|
||||
:100090000C94A3000C94A3000C94A3000C94A30054
|
||||
:1000A0000C94A3000C94A3000C94A3001201000272
|
||||
:1000B000FF00001001000100000101020301040320
|
||||
:1000C0000904240352006500750073006300680092
|
||||
:1000D000200045006C0065006B00740072006F002A
|
||||
:1000E0006E0069006B00000022035500730065007C
|
||||
:1000F000720020004400650076006900630065001E
|
||||
:100100002000440065006D006F00000011241FBE38
|
||||
:10011000CFEFDAE0DEBFCDBF11E0A0E0B1E0E0E478
|
||||
:10012000FBE002C005900D92A832B107D9F711E0AB
|
||||
:10013000A8E2B1E001C01D92AD32B107E1F70E9423
|
||||
:10014000DC030C949E050C94000081E08093D700A2
|
||||
:1001500080EA8093D80082E189BD09B400FEFDCF1A
|
||||
:1001600080E98093D8001092E0001092280188E086
|
||||
:100170008093E2000895E0E0F1E091E051E044E096
|
||||
:1001800020812F3F09F19093E9005093EB002093D9
|
||||
:10019000EC008181803811F480E40BC0803411F4CC
|
||||
:1001A00080E307C0803229F0803111F080E001C087
|
||||
:1001B00080E13281382B3093ED0020FF03C0109294
|
||||
:1001C000F00002C04093F0009F5F33969730C1F675
|
||||
:1001D0008EE78093EA001092EA0008958091D9009A
|
||||
:1001E00080FD02C080E008958091E30087FD02C099
|
||||
:1001F00081E0089580912801882311F083E008951B
|
||||
:1002000082E008958091280108958091E80085702A
|
||||
:10021000E1F30895E42FF0E02E173F0708F4422F92
|
||||
:10022000262F372F7EEF9091E8009570E1F3942F01
|
||||
:10023000413108F090E1F901592F09C0882311F0EC
|
||||
:10024000608101C064916093F10051503196552353
|
||||
:10025000A9F7290F311D491B7093E800442319F7B2
|
||||
:10026000903109F308958093E90021E030E002C065
|
||||
:10027000220F331F8A95E2F7EAEEF0E02083108226
|
||||
:1002800008958093E9009091F3008091F200392F56
|
||||
:1002900020E0280F311DC90108958093E900909155
|
||||
:1002A000F300E091F200392F20E0D901AE0FB11D2B
|
||||
:1002B000FD01242F352FE217F30708F49F012115C4
|
||||
:1002C000310519F140E050E09091F100FB01E40F9D
|
||||
:1002D000F51F90834F5F5F4F42175307A8F360915C
|
||||
:1002E000F3009091F200562F40E0490F511D411547
|
||||
:1002F000510559F441E050E002C0440F551F8A9562
|
||||
:10030000E2F74093EA001092EA00C90108956623DB
|
||||
:1003100009F11092E9002091E80020FFFCCF5091F4
|
||||
:10032000F3004091F200352F20E0240F311D2115FC
|
||||
:10033000310581F4FC0180E004C091919093F100BB
|
||||
:100340008F5F8617D0F38091E8008E7F8093E8005E
|
||||
:1003500081E0089580E008954115510559F1809399
|
||||
:10036000E9008091E80080FFFCCF3091F3002091FC
|
||||
:10037000F200932F80E0820F911D0097D9F480E066
|
||||
:1003800090E00BC02091E80025FF06C0FB01E80FBC
|
||||
:10039000F91F20812093F10001968417950790F3AF
|
||||
:1003A0008091E8008E7F8093E8008FE78093E800DB
|
||||
:1003B00081E0089580E008951F920F920FB60F928A
|
||||
:1003C00011248F938091E1001092E10083FF0FC010
|
||||
:1003D0001092E90081E08093EB001092EC0082E142
|
||||
:1003E0008093ED0088E08093F000109228018F91B7
|
||||
:1003F0000F900FBE0F901F9018951F920F920FB67F
|
||||
:100400000F921124DF92EF92FF920F931F932F937D
|
||||
:100410003F934F935F936F937F938F939F93AF938C
|
||||
:10042000BF93EF93FF93DF93CF93CDB7DEB72997B9
|
||||
:10043000DEBFCDBF8091F40080FF66C11092E9005D
|
||||
:100440008091E80083FF5DC15091F1005983409194
|
||||
:10045000F1004A838091F1009091F100392F20E062
|
||||
:1004600090E0822B932B9C838B836091F1007091A1
|
||||
:10047000F100372F20E070E0622B732B7E836D83B9
|
||||
:100480002091F1003091F100F32FE0E030E02E2BCD
|
||||
:100490003F2B38872F83E2EFE093E800463009F0E6
|
||||
:1004A000BAC043E08030940709F4A3C063E0813010
|
||||
:1004B000960750F471E08030970789F0A2E0803011
|
||||
:1004C0009A0709F05BC110C0B3E081309B0709F4C3
|
||||
:1004D00098C0E3E082309E0709F050C197C06CEAF3
|
||||
:1004E00070E0FB01449189C030E0E32E31E0F32E4F
|
||||
:1004F000F701DD2480E090819F3F09F081E0D80E74
|
||||
:10050000339621E0E231F207A9F747E0D49E402D6F
|
||||
:1005100011244E5E842F90E049870E9440048C0194
|
||||
:1005200089E0D8018C9392E011969C9311974985AC
|
||||
:1005300012964C93129713961C92139791E014966F
|
||||
:100540009C93149715969C93159716961C92169744
|
||||
:1005500090E817969C93179799E118969C93189793
|
||||
:10056000F801399619968C93199784E08183128249
|
||||
:100570001382D4828FEF8583168287831086DD20D5
|
||||
:1005800071F1F801729691E057E035E0D7018C9156
|
||||
:100590008F3FF1F050833183282F2795222727950D
|
||||
:1005A000292B2283813441F0803431F0813831F0BD
|
||||
:1005B000803821F083E003C081E001C082E08383C2
|
||||
:1005C000D70111968C9111978483158216823796E4
|
||||
:1005D0009F5F63E070E0E60EF71E9730B9F62F815B
|
||||
:1005E000388581E0B8010E940A01C8010E94E20436
|
||||
:1005F000C8C06EEB70E0FB01449180E00E940A01EC
|
||||
:10060000C0C062EC70E0FB014491F7CF68EE70E08F
|
||||
:10061000FB014491F2CF453059F42EEF2093E800CE
|
||||
:100620002091E80020FFFCCF80688093E300A9C000
|
||||
:10063000493081F4552309F05CC08130910509F0FF
|
||||
:100640009DC081E0809328018EEF8093E8000E9496
|
||||
:10065000BB0097C0483061F4503809F04AC080911F
|
||||
:10066000E80080FFFCCF809128018093F1001BC03F
|
||||
:100670004423D9F48091E80080FFFCCF523811F078
|
||||
:1006800080E00DC06093E9008091EB0090E025E0F0
|
||||
:10069000969587952A95E1F781701092E9008093ED
|
||||
:1006A000F1001092F1008EEF61C0413011F0433043
|
||||
:1006B00001F55230F1F40097E1F46F77862F815005
|
||||
:1006C0008630B8F48EEF8093E8006093E900433001
|
||||
:1006D00009F454C089E18093EB0081E090E002C00E
|
||||
:1006E000880F991F6A95E2F78093EA001092EA005A
|
||||
:1006F00048C0CE0101960E940D04882309F041C034
|
||||
:100700003DC081E28093EB0080E090E041E2082F61
|
||||
:100710000F5F2091F400019630E0082E02C035955D
|
||||
:1007200027950A94E2F720FF26C00093E900209164
|
||||
:10073000E80022FF1EC03091F3002091F200932FB9
|
||||
:1007400080E0820F911D009769F09091F3008091F5
|
||||
:10075000F200792F60E0680F711D802F0E94E00386
|
||||
:100760000093E90089EF8093E8008FE78093E80029
|
||||
:1007700008C04093EB008630910549F681E28093F2
|
||||
:10078000EB002996DEBFCDBFCF91DF91FF91EF91B6
|
||||
:10079000BF91AF919F918F917F916F915F914F9199
|
||||
:1007A0003F912F911F910F91FF90EF90DF900F904D
|
||||
:1007B0000FBE0F901F9018950E94A5007894FFCF50
|
||||
:1007C0000F931F93DF93CF93CDB7DEB7A0970FB6EC
|
||||
:1007D000F894DEBF0FBECDBF8130A1F48E010F5F54
|
||||
:1007E0001F4FB80140E250E00E944D01882351F0B4
|
||||
:1007F00018A2C8010E94790582E8B80140E250E0E1
|
||||
:100800000E94AC01A0960FB6F894DEBF0FBECDBF1C
|
||||
:10081000CF91DF911F910F910895DF93CF93CDB7C3
|
||||
:10082000DEB760970FB6F894DEBF0FBECDBFAC0148
|
||||
:100830009E012F5F3F4FA2E1B1E09CE00D90F901D6
|
||||
:1008400001929F019150D1F71D861E861F86188A3E
|
||||
:10085000FA018081833C51F48181813039F4CE01E9
|
||||
:10086000019660E10E94870181E001C080E060960E
|
||||
:100870000FB6F894DEBF0FBECDBFCF91DF910895C4
|
||||
:10088000EF92FF920F931F93CF93DF9382309105E6
|
||||
:1008900010F482E090E0C0912B01D0912C0120E077
|
||||
:1008A00030E040E050E029C068817981681779071D
|
||||
:1008B000D8F06817790779F48A819B812115310571
|
||||
:1008C00021F0F9019383828304C090932C018093DB
|
||||
:1008D0002B01DE012AC04115510519F06417750777
|
||||
:1008E00018F4FE01AB01D9019E017A816B81E72EDC
|
||||
:1008F000E7017E01062FF62EE7012097A9F64115A4
|
||||
:100900005105F9F0481B590B4430510580F48281A0
|
||||
:100910009381109729F013969C938E93129704C09D
|
||||
:1009200090932C0180932B01DF01129645C0DF01CB
|
||||
:10093000A40FB51F8D939D93425050405183408327
|
||||
:100940003BC02091290130912A012115310541F444
|
||||
:10095000209124013091250130932A01209329010F
|
||||
:1009600020912601309127012115310541F42DB741
|
||||
:100970003EB74091220150912301241B350BA091D9
|
||||
:100980002901B0912A01A217B307A0F42A1B3B0B3F
|
||||
:100990002817390778F0AC014E5F5F4F24173507F1
|
||||
:1009A00048F04A0F5B1F50932A01409329018D9311
|
||||
:1009B0009D9302C0A0E0B0E0CD01CDB7DEB7E6E088
|
||||
:1009C0000C948F05CF93DF93009709F48FC0FC013F
|
||||
:1009D00032971382128260912B0170912C01611564
|
||||
:1009E000710581F420813181280F391F80912901FF
|
||||
:1009F00090912A018217930761F5F0932A01E09301
|
||||
:100A0000290174C0EB0180E090E0CE17DF0740F4CD
|
||||
:100A10002A813B81CE012115310501F1E901F5CF94
|
||||
:100A2000D383C283DF014D915D919D01240F351F5A
|
||||
:100A3000C217D30761F428813981240F351F2E5F37
|
||||
:100A40003F4F318320832A813B8133832283009768
|
||||
:100A500029F4F0932C01E0932B0148C0DC0113969C
|
||||
:100A6000FC93EE931297EC0149915991C40FD51F55
|
||||
:100A7000EC17FD0779F420813181240F351F2E5F9B
|
||||
:100A80003F4F11963C932E932281338113963C93D2
|
||||
:100A90002E931297E0E0F0E0DB0112968D919C918D
|
||||
:100AA0001397009721F0E62FF72FBC01F5CF9B019C
|
||||
:100AB0002E5F3F4FDB018D919C911197820F931F09
|
||||
:100AC0004091290150912A014817590779F430972C
|
||||
:100AD00029F410922C0110922B0102C01382128271
|
||||
:100AE0002250304030932A0120932901DF91CF9189
|
||||
:100AF0000895DC016C9161566A3108F0605E6F5BAD
|
||||
:100B00006D93C1F708952A88398848885F846E8478
|
||||
:100B10007D848C849B84AA84B984C884DF80EE8021
|
||||
:100B2000FD800C811B81AA81B981CE0FD11D0FB62A
|
||||
:100B3000F894DEBF0FBECDBFED010895F894FFCF4E
|
||||
:100B4000802002812002FF2002FF2002FF2002FFFE
|
||||
:100B5000200256657273696F6E20312E30000000DE
|
||||
:080B6000000020002D0100003F
|
||||
:00000001FF
|
||||
@@ -0,0 +1,22 @@
|
||||
/*
|
||||
* config.h
|
||||
*
|
||||
* Created: 06.10.2013 17:05:43
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
|
||||
#ifndef CONFIG_H_
|
||||
#define CONFIG_H_
|
||||
|
||||
|
||||
#define F_CPU 16000000
|
||||
#define BAUD_RATE 9600
|
||||
|
||||
#include <util/delay.h>
|
||||
#include <stdbool.h>
|
||||
#include <avr/interrupt.h>
|
||||
#include <string.h>
|
||||
|
||||
|
||||
#endif /* CONFIG_H_ */
|
||||
@@ -0,0 +1,49 @@
|
||||
/*
|
||||
* led.c
|
||||
*
|
||||
* Created: 06.10.2013 16:32:15
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
#include <avr/io.h>
|
||||
#include "led.h"
|
||||
|
||||
void led(int mask) {
|
||||
int rgb = 0;
|
||||
rgb |= (mask & (1<<0)) ? (1<<0) : (0<<0);
|
||||
rgb |= (mask & (1<<1)) ? (1<<1) : (0<<1);
|
||||
rgb |= (mask & (1<<2)) ? (1<<2) : (0<<2);
|
||||
|
||||
PORTB &= ~((1<<PINB5) | (1<<PINB6) | (1<<PINB7));
|
||||
PORTB |= (rgb<<PINB5);
|
||||
}
|
||||
|
||||
void init_led()
|
||||
{
|
||||
DDRB |= (1<<PINB7) | (1<<PINB6) | (1<<PINB5);
|
||||
}
|
||||
|
||||
void fade(int from, int to, int dur) {
|
||||
for (int i=0;i<0xFF;i++) {
|
||||
for(int k=0;k<dur;k++) {
|
||||
for (int j=i;j<0xFF;j++) {
|
||||
led(from);
|
||||
}
|
||||
for (int j=0;j<i;j++) {
|
||||
led(to);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void led_rainbow(uint8_t t) {
|
||||
fade(WHITE, RED, 10);
|
||||
while(1) {
|
||||
fade(RED, YELLOW, t);
|
||||
fade(YELLOW, GREEN, t);
|
||||
fade(GREEN, CYAN, t);
|
||||
fade(CYAN, BLUE, t);
|
||||
fade(BLUE, MAGENTA, t);
|
||||
fade(MAGENTA, RED, t);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
/*
|
||||
* led.h
|
||||
*
|
||||
* Created: 06.10.2013 16:30:58
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
|
||||
#ifndef LED_H_
|
||||
#define LED_H_
|
||||
|
||||
|
||||
#define BLACK 0
|
||||
#define RED 4
|
||||
#define GREEN 2
|
||||
#define YELLOW 6
|
||||
#define BLUE 1
|
||||
#define MAGENTA 5
|
||||
#define CYAN 3
|
||||
#define WHITE 7
|
||||
|
||||
void init_led();
|
||||
void led(int mask);
|
||||
void fade(int from, int to, int dur);
|
||||
void led_rainbow(uint8_t t);
|
||||
|
||||
|
||||
#endif /* LED_H_ */
|
||||
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
* rs232.c
|
||||
*
|
||||
* Created: 06.10.2013 16:34:27
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
|
||||
#include <stdio.h>
|
||||
#include <avr/io.h>
|
||||
#include "rs232.h"
|
||||
|
||||
int uart_putchar(char c, FILE *stream);
|
||||
static FILE rs232 = FDEV_SETUP_STREAM(uart_putchar, NULL, _FDEV_SETUP_WRITE);
|
||||
|
||||
|
||||
int uart_putchar(char c, FILE *stream)
|
||||
{
|
||||
if (c == '\n') {
|
||||
uart_putchar('\r', stream); //Warten solange bis Zeichen gesendet wurde
|
||||
}
|
||||
loop_until_bit_is_set(UCSR1A, UDRE1); //Ausgabe des Zeichens
|
||||
UDR1 = c;
|
||||
return (0);
|
||||
}
|
||||
|
||||
void init_rs232()
|
||||
{
|
||||
UCSR1C = (1 << UCSZ11) |(1 << UCSZ10); //8N1
|
||||
UCSR1B |= /*(1<<RXEN1) | (1<<RXCIE1) | */ (1<<TXEN1); //Enable TXEN im Register UCR TX-Data Enable
|
||||
UBRR1L = (F_CPU / (BAUD_RATE * 16L) - 1); //Teiler wird gesetzt
|
||||
stdout = &rs232; //öffnet einen Kanal für printf (STDOUT)
|
||||
}
|
||||
|
||||
void rs232_send(char * text) {
|
||||
fprintf(&rs232, text);
|
||||
}
|
||||
@@ -0,0 +1,16 @@
|
||||
/*
|
||||
* rs232.h
|
||||
*
|
||||
* Created: 06.10.2013 16:34:17
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
#include <stdio.h>
|
||||
|
||||
#ifndef RS232_H_
|
||||
#define RS232_H_
|
||||
|
||||
void init_rs232();
|
||||
void rs232_send(char * text);
|
||||
|
||||
#endif /* RS232_H_ */
|
||||
@@ -0,0 +1,81 @@
|
||||
/*
|
||||
* usb.c
|
||||
*
|
||||
* Created: 06.10.2013 21:42:35
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
#include <stdbool.h>
|
||||
#include <string.h>
|
||||
#include <stdio.h>
|
||||
#include "usb_user_config.h" // USB configuration
|
||||
#include "usb_user.h" // USB functions
|
||||
#include "usb.h"
|
||||
|
||||
#ifdef USERDEFCONTROLS // see usbconfig.h
|
||||
//-----------------------------------------------------------------------------
|
||||
// Handle user defined control requests
|
||||
// "ucr" contains the data of the control request
|
||||
// function has to return "true", if request is handled (otherwise "false")
|
||||
bool usb_controlrequest(struct usb_control_request *ucr) {
|
||||
#define USER_REQUESTTYPE 0xC3 // a user defined request type (means, no standard request)
|
||||
#define USER_REQUESTVERSION 0x01 // a self defined request: get version info
|
||||
bool Result;
|
||||
const char VersionInfo[ENDPOINT0_SIZE] = {"Version 1.0"};
|
||||
|
||||
Result=false;
|
||||
if (ucr->bmRequestType == USER_REQUESTTYPE) {
|
||||
// handle the requests (only one defined in this example)
|
||||
switch (ucr->bRequest) {
|
||||
case USER_REQUESTVERSION: // request for version info)
|
||||
usb_txdata_control((uint8_t *)VersionInfo,sizeof(VersionInfo));
|
||||
Result=true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
return Result; // true means, request is handled
|
||||
}
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// handle of endpoint interrupt for incoming data
|
||||
// "datasize" contains the number of bytes in the USB FIFO buffer
|
||||
void usb_ep(uint8_t endpoint, uint16_t datasize) {
|
||||
#define RXENDPOINT 0x01 // endpoint, used for data transfer host->device (defined in "usb_user_config.h")
|
||||
#define TXENDPOINT 0x82 // endpoint, used for data transfer device->host
|
||||
#define BUFSIZE 32 // USB FIFO buffer size (see usb_user_config.h at "endpoints")
|
||||
|
||||
char buf[BUFSIZE]; // buffer for received data from host and data to transmit to host
|
||||
uint8_t n;
|
||||
|
||||
if (endpoint == RXENDPOINT) { // data from host by our defined data receive endpoint
|
||||
n=usb_rxdata(endpoint, (uint8_t *)buf, sizeof(buf)); // read data into buffer
|
||||
if (n) { // data read into local buffer
|
||||
buf[BUFSIZE-1]=0; // for security: terminate string
|
||||
//resi(buf);
|
||||
strupr(buf); // upper case string
|
||||
// response to host with converted string
|
||||
usb_txdata(TXENDPOINT, (uint8_t *)buf, sizeof(buf)); // transfer data to host*/
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void init_usb() {
|
||||
usb_init();
|
||||
}
|
||||
|
||||
void usb_send(char* text) {
|
||||
#define RXENDPOINT 0x01
|
||||
#define TXENDPOINT 0x82
|
||||
#define ITENDPOINT 0x83
|
||||
usb_txdata(TXENDPOINT, (uint8_t *)text, strlen(text));
|
||||
}
|
||||
|
||||
uint8_t usb_getstatus() {
|
||||
return usb_status();
|
||||
}
|
||||
|
||||
uint8_t usb_ready() {
|
||||
return usb_is_ready();
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
/*
|
||||
* usb.h
|
||||
*
|
||||
* Created: 06.10.2013 21:42:01
|
||||
* Author: netz
|
||||
*/
|
||||
|
||||
|
||||
#ifndef USB_H_
|
||||
#define USB_H_
|
||||
|
||||
#include "usb_user.h"
|
||||
|
||||
|
||||
void init_usb();
|
||||
void usb_send(char * text);
|
||||
uint8_t usb_getstatus();
|
||||
uint8_t usb_ready();
|
||||
void resi(char * text);
|
||||
|
||||
#endif /* USB_H_ */
|
||||
@@ -0,0 +1,687 @@
|
||||
/*****************************************************************************
|
||||
|
||||
USB-Template: User defined USB device
|
||||
V1.1.1
|
||||
|
||||
(c) 2010-2011 Reusch Elektronik, Dipl.-Ing. (FH) Rainer Reusch
|
||||
Homepage: http://products.reworld.eu/index.htm
|
||||
|
||||
Supported devices:
|
||||
- AT90USB82, AT90USB162
|
||||
- ATMEGA8U2, ATMEGA16U2, ATMEGA32U2
|
||||
- ATMEGA8U4, ATMEGA16U4, ATMEGA32U4
|
||||
- AT90USB646, AT90USB647, AT90USB1286, AT90USB1287
|
||||
|
||||
Supported modules:
|
||||
- U2DIL-AT90USB162
|
||||
- U2DIL-ATMEGA32U2
|
||||
- U4DIL-ATMEGA32U4
|
||||
- U6DIL-AT90USB1286
|
||||
|
||||
USB Function Implementation
|
||||
|
||||
Created: 2010-01-07
|
||||
Changed: 2011-08-02
|
||||
|
||||
*****************************************************************************/
|
||||
|
||||
// Usually no changes are necessary in this file!
|
||||
|
||||
#include <stdlib.h>
|
||||
#include <stdbool.h>
|
||||
#include "usb_user_config.h"
|
||||
#include "usb_user.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Internal Variables
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// USB State
|
||||
static volatile uint8_t usb_stat = USB_STATUS_DISCONNECTED;
|
||||
|
||||
// USB configuration, selected by host (0=none)
|
||||
// In this version only 0 or 1 is possible (support of only one configuration)
|
||||
static volatile uint8_t usb_conf = 0;
|
||||
|
||||
// USB interface, selected by host
|
||||
// In this version the value 0 and optional more cfgs are possible (see usbconfig.h)
|
||||
#if (NUMINTERFACES>1)
|
||||
static volatile uint8_t usb_if = 0xFF; // 0xFF: no interface selected
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Descriptors
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// configuration descriptor
|
||||
typedef struct {
|
||||
uint8_t bLength;
|
||||
uint8_t bDescriptorType;
|
||||
uint16_t wTotalLength;
|
||||
uint8_t bNumInterfaces;
|
||||
uint8_t bConfigurationValue;
|
||||
uint8_t iConfiguration;
|
||||
uint8_t bmAttributes;
|
||||
uint8_t bMaxPower;
|
||||
} cfg_desc;
|
||||
|
||||
// interface descriptor
|
||||
typedef struct {
|
||||
uint8_t bLength;
|
||||
uint8_t bDescriptorType;
|
||||
uint8_t bInterfaceNumber;
|
||||
uint8_t bAlternateSetting;
|
||||
uint8_t bNumEndpoints;
|
||||
uint8_t bInterfaceClass;
|
||||
uint8_t bInterfaceSubClass;
|
||||
uint8_t bInterfaceProtocol;
|
||||
uint8_t iInterface;
|
||||
} if_desc;
|
||||
|
||||
// endpoint descriptor
|
||||
typedef struct {
|
||||
uint8_t bLength;
|
||||
uint8_t bDescriptorType;
|
||||
uint8_t bEndpointAddress;
|
||||
uint8_t bmAttributes;
|
||||
uint16_t wMaxPacketSize;
|
||||
uint8_t bInterval;
|
||||
} ep_desc;
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB Initializing
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#if defined (__AVR_AT90USB1286__) || (__AVR_AT90USB1287__)
|
||||
#define AT128X
|
||||
#endif
|
||||
|
||||
void usb_init(void)
|
||||
{
|
||||
#ifdef MEGA4
|
||||
UHWCON = _BV(UVREGE); // enable PAD regulator
|
||||
#endif
|
||||
#ifdef MEGA6
|
||||
UHWCON = _BV(UIMOD)|_BV(UVREGE); // set device mode, enable PAD regulator
|
||||
#endif
|
||||
USBCON = _BV(USBE) | _BV(FRZCLK); // enable USB
|
||||
#if (F_CPU==16000000)
|
||||
// 16MHz
|
||||
#ifdef MEGA2
|
||||
PLLCSR = _BV(PLLE) | _BV(PLLP0); // config PLL, 16 MHz xtal
|
||||
#endif
|
||||
#ifdef MEGA4
|
||||
PLLCSR = _BV(PINDIV) | _BV(PLLE); // config PLL, 16 MHz xtal
|
||||
#endif
|
||||
|
||||
#ifdef MEGA6
|
||||
#ifdef AT128X
|
||||
PLLCSR = _BV(PLLP2) | _BV(PLLP0) | _BV(PLLE); // config PLL, 16 MHz xtal (AT90USB128x)
|
||||
#else
|
||||
PLLCSR = _BV(PLLP2) | _BV(PLLP1) | _BV(PLLE); // config PLL, 16 MHz xtal (AT90USB64x and ATMEGA32U6)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#else
|
||||
|
||||
// 8MHz
|
||||
#ifdef MEGA6
|
||||
PLLCSR = _BV(PLLP1) | _BV(PLLP0) |_BV(PLLE); // config PLL, 8 MHz xtal
|
||||
#else
|
||||
PLLCSR = _BV(PLLE); // config PLL, 8 MHz xtal
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
while (!(PLLCSR & _BV(PLOCK))) ; // wait for PLL lock
|
||||
#ifdef MEGA4_6
|
||||
USBCON = _BV(USBE)|_BV(OTGPADE); // start USB clock
|
||||
#else
|
||||
USBCON = _BV(USBE); // start USB clock
|
||||
#endif
|
||||
UDCON = 0; // enable attach resistor
|
||||
usb_conf = 0;
|
||||
#if (NUMINTERFACES>1)
|
||||
usb_if = 0xFF;
|
||||
#endif
|
||||
#ifdef MEGA2
|
||||
// port for VBUS detection
|
||||
VBUSDIR &= ~_BV(VBUSPIN); // port as input
|
||||
#endif
|
||||
UDIEN = _BV(EORSTE); // enable "end of reset" interrupt
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Initializing Endpoints
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#if (NUMINTERFACES>1)
|
||||
void usb_endpoints(uint8_t ifnumber) // with interface number
|
||||
#else
|
||||
void usb_endpoints(void)
|
||||
#endif
|
||||
{
|
||||
#if (NUMINTERFACES>1)
|
||||
#define EPC EP_CONFIG[ifnumber][i]
|
||||
#define IN_TRANSFER EP_CONFIG[ifnumber][i].ep_type & 0x01
|
||||
#else
|
||||
#define EPC EP_CONFIG[i]
|
||||
#define IN_TRANSFER EP_CONFIG[i].ep_type & 0x01
|
||||
#endif
|
||||
uint8_t i;
|
||||
|
||||
for (i=0; i<MAX_ENDPOINT; i++) {
|
||||
if (EPC.ep_type!=EP_TYPE_DISABLED) {
|
||||
UENUM = i+1; // select endpoint
|
||||
UECONX = _BV(EPEN); // enable endpoint
|
||||
UECFG0X = EPC.ep_type; // transfer type and direction
|
||||
UECFG1X = EP_SIZE(EPC.ep_size)|
|
||||
(EPC.ep_buffer); // bufer size and bank
|
||||
if (IN_TRANSFER) UEIENX = 0; // no interrupts handling for IN endpoints
|
||||
else UEIENX = _BV(RXOUTE); // interrupt handling for incoming data (OUT endpoint)
|
||||
}
|
||||
}
|
||||
#ifdef MEGA4_6
|
||||
UERST = 0x7E; // endpoint FIFO reset for endpoint 1, 2, 3, 4, 5 and 6
|
||||
#else
|
||||
UERST = 0x1E; // endpoint FIFO reset for endpoint 1, 2, 3 and 4
|
||||
#endif
|
||||
UERST = 0;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB State
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
uint8_t usb_status(void)
|
||||
{
|
||||
uint8_t r;
|
||||
|
||||
r = USB_STATUS_DISCONNECTED;
|
||||
#ifdef MEGA4_6
|
||||
if (USBSTA & _BV(VBUS)) {
|
||||
r = USB_STATUS_CONNECTED;
|
||||
if (UDADDR & _BV(ADDEN)) {
|
||||
r = USB_STATUS_ENUMERATED;
|
||||
if (usb_conf) r = USB_STATUS_CONFIGURED;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#ifdef MEGA2
|
||||
#ifdef VBUSDETECT
|
||||
if (VBUSPORT & _BV(VBUSPIN)) {
|
||||
r = USB_STATUS_CONNECTED;
|
||||
#endif
|
||||
if (UDADDR & _BV(ADDEN)) {
|
||||
r = USB_STATUS_ENUMERATED;
|
||||
if (usb_conf) r = USB_STATUS_CONFIGURED;
|
||||
}
|
||||
#ifdef VBUSDETECT
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
return r;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB Configuration
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
uint8_t usb_configuration(void)
|
||||
{
|
||||
return usb_conf;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB Interface
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#if (NUMINTERFACES>1)
|
||||
uint8_t usb_interface(void)
|
||||
{
|
||||
return usb_if;
|
||||
}
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Internal used USB routines and macros
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#define USB_SEND_IN UEINTX = ~(1<<TXINI)
|
||||
|
||||
#define STALL UECONX = _BV(STALLRQ) | _BV(EPEN)
|
||||
|
||||
static inline void usb_wait_in_ready(void)
|
||||
{
|
||||
while (!(UEINTX & _BV(TXINI)));
|
||||
}
|
||||
|
||||
uint8_t usb_is_ready() {
|
||||
return (UEINTX & _BV(TXINI));
|
||||
}
|
||||
|
||||
void usb_wait_in(void)
|
||||
// wait for host, until it's ready to receive IN package
|
||||
{
|
||||
uint8_t i;
|
||||
do {
|
||||
i = UEINTX;
|
||||
} while (!(i & (_BV(TXINI)|_BV(RXOUTI))));
|
||||
}
|
||||
|
||||
void usb_desc_out(bool isRAM, const uint8_t *pgmaddr, uint8_t size, uint16_t maxsize)
|
||||
// return descriptor over endpoint 0 to host from flash memory or RAM
|
||||
{
|
||||
uint8_t i=0, len, n;
|
||||
const uint8_t *addr;
|
||||
|
||||
addr=pgmaddr;
|
||||
len=size;
|
||||
if (len>maxsize) len=maxsize;
|
||||
do {
|
||||
usb_wait_in();
|
||||
if (i & _BV(RXOUTI)) return; // cancel
|
||||
// send IN package
|
||||
n = (len < ENDPOINT0_SIZE) ? len : ENDPOINT0_SIZE;
|
||||
for (i = n; i; i--)
|
||||
UEDATX = isRAM ? *addr++ : pgm_read_byte(addr++);
|
||||
len -= n;
|
||||
USB_SEND_IN;
|
||||
} while (len || n == ENDPOINT0_SIZE);
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Free FIFO Buffer
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
void usb_freebuffer(uint8_t endpoint)
|
||||
{
|
||||
UENUM = endpoint; // select endpoint
|
||||
UERST = _BV(endpoint); // endpoint FIFO reset
|
||||
UERST = 0;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Check (Host to Device)
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#ifdef MEGA4_6
|
||||
uint16_t usb_rxavail(uint8_t endpoint)
|
||||
#else
|
||||
uint8_t usb_rxavail(uint8_t endpoint)
|
||||
#endif
|
||||
{
|
||||
UENUM = endpoint; // select endpoint
|
||||
#ifdef MEGA4_6
|
||||
return ((uint16_t)(UEBCHX)<<8)+UEBCLX;
|
||||
#else
|
||||
return UEBCLX;
|
||||
#endif
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Receive (Host to Device)
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#ifdef MEGA4_6
|
||||
uint16_t usb_rxdata(uint8_t endpoint, uint8_t *buffer, uint16_t maxdatasize)
|
||||
#else
|
||||
uint8_t usb_rxdata(uint8_t endpoint, uint8_t *buffer, uint8_t maxdatasize)
|
||||
#endif
|
||||
{
|
||||
#ifdef MEGA4_6
|
||||
uint16_t r, i;
|
||||
#else
|
||||
uint8_t r, i;
|
||||
#endif
|
||||
|
||||
UENUM = endpoint; // select endpoint
|
||||
#ifdef MEGA4_6
|
||||
r = ((uint16_t)(UEBCHX)<<8)+UEBCLX;
|
||||
#else
|
||||
r = UEBCLX;
|
||||
#endif
|
||||
if (r>maxdatasize) r = maxdatasize;
|
||||
if (r) { // data available in input endpoint
|
||||
for (i=0; i<r; i++) buffer[i]=UEDATX;
|
||||
#ifdef MEGA4_6
|
||||
if ((((uint16_t)(UEBCHX)<<8)+UEBCLX)==0) { // buffer is empty
|
||||
#else
|
||||
if (UEBCLX==0) { // buffer is empty
|
||||
#endif
|
||||
UERST = _BV(endpoint); // endpoint FIFO reset
|
||||
UERST = 0;
|
||||
}
|
||||
}
|
||||
return r;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Return (Device to Host), Control Transfers
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
bool usb_txdata_control(uint8_t *buffer, uint8_t datasize)
|
||||
{
|
||||
uint8_t i;
|
||||
|
||||
if (datasize) {
|
||||
UENUM = 0;
|
||||
usb_wait_in_ready();
|
||||
#ifdef MEGA4_6
|
||||
if ((((uint16_t)(UEBCHX)<<8)+UEBCLX)==0) { // buffer is empty
|
||||
#else
|
||||
if (UEBCLX==0) { // buffer is empty
|
||||
#endif
|
||||
for (i=0; i<datasize; i++) UEDATX = buffer[i];
|
||||
UEINTX&=~_BV(TXINI); // necessary (in this order) (changed V1.1.1)
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Return (Device to Host)
|
||||
//-----------------------------------------------------------------------------
|
||||
// This routine has to be used for all transfer types, except control transfers
|
||||
|
||||
#ifdef MEGA4_6
|
||||
bool usb_txdata(uint8_t endpoint, uint8_t *buffer, uint16_t datasize)
|
||||
#else
|
||||
bool usb_txdata(uint8_t endpoint, uint8_t *buffer, uint8_t datasize)
|
||||
#endif
|
||||
{
|
||||
#ifdef MEGA4_6
|
||||
uint16_t i;
|
||||
#else
|
||||
uint8_t i;
|
||||
#endif
|
||||
|
||||
if (datasize) {
|
||||
UENUM = endpoint;
|
||||
usb_wait_in_ready();
|
||||
#ifdef MEGA4_6
|
||||
if ((((uint16_t)(UEBCHX)<<8)+UEBCLX)==0) { // buffer is empty
|
||||
#else
|
||||
if (UEBCLX==0) { // buffer is empty
|
||||
#endif
|
||||
for (i=0; i<datasize; i++)
|
||||
if (UEINTX & _BV(RWAL)) UEDATX = buffer[i];
|
||||
UEINTX&=~_BV(TXINI); // necessary (in this order) (changed V1.1.1)
|
||||
UEINTX=0x7F; // (uint8_t)~_BV(FIFOCON);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB Device Interrupt
|
||||
//-----------------------------------------------------------------------------
|
||||
// Hardware interrupts of the USB controller
|
||||
|
||||
ISR(USB_GEN_vect)
|
||||
{
|
||||
uint8_t intbits;
|
||||
|
||||
intbits = UDINT; // save flags
|
||||
UDINT = 0; // reset flags
|
||||
if (intbits & _BV(EORSTI)) { // End Of Reset Interrupt Flag
|
||||
// initialize endpoint 0 for control transfers
|
||||
UENUM = 0;
|
||||
UECONX = _BV(EPEN);
|
||||
UECFG0X = EP_TYPE_CONTROL;
|
||||
UECFG1X = EP_SIZE(ENDPOINT0_SIZE) | EP_SINGLE_BUFFER;
|
||||
UEIENX = _BV(RXSTPE); // enable interrupt for incoming data
|
||||
usb_conf = 0;
|
||||
#if (NUMINTERFACES>1)
|
||||
usb_if = 0xFF;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Endpoint Interrupts
|
||||
//-----------------------------------------------------------------------------
|
||||
// Interrupts, triggered by incoming data in an endpoint, are handled here.
|
||||
|
||||
ISR(USB_COM_vect)
|
||||
{
|
||||
#if (NUMINTERFACES>1)
|
||||
#define EPCO EP_CONFIG[j][i]
|
||||
#else
|
||||
#define EPCO EP_CONFIG[i]
|
||||
#endif
|
||||
|
||||
uint8_t intbits;
|
||||
uint8_t i, j, n, s;
|
||||
cfg_desc *cfg;
|
||||
if_desc *ifp;
|
||||
ep_desc *epp;
|
||||
#if (USESN==2) // serial number in RAM
|
||||
struct usb_string_descriptor_ram buf;
|
||||
#endif
|
||||
struct usb_control_request ucr;
|
||||
|
||||
if (UEINT & 0x01) {
|
||||
// handle interrupts of endpoint 0 (control transfers)
|
||||
UENUM = 0;
|
||||
intbits = UEINTX; // save interrupt flags of the endpoint
|
||||
if (intbits & _BV(RXSTPI)) { // control transfer, setup
|
||||
ucr.bmRequestType = UEDATX;
|
||||
ucr.bRequest = UEDATX;
|
||||
ucr.wValue = UEDATX;
|
||||
ucr.wValue |= (UEDATX << 8);
|
||||
ucr.wIndex = UEDATX;
|
||||
ucr.wIndex |= (UEDATX << 8);
|
||||
ucr.wLength = UEDATX;
|
||||
ucr.wLength |= (UEDATX << 8);
|
||||
UEINTX = ~(_BV(RXSTPI) | _BV(RXOUTI) | _BV(TXINI));
|
||||
if (ucr.bRequest == GET_DESCRIPTOR) {
|
||||
switch (ucr.wValue) {
|
||||
case 0x0100: // device descriptor
|
||||
usb_desc_out(false,&device_descriptor[0],pgm_read_byte(&device_descriptor[0]),ucr.wLength);
|
||||
break;
|
||||
case 0x0200: // configuration descriptor
|
||||
// get number of activated endpoints
|
||||
n=0;
|
||||
#if (NUMINTERFACES>1)
|
||||
for (j=0; j<NUMINTERFACES; j++)
|
||||
for (i=0; i<MAX_ENDPOINT; i++) n+=(EP_CONFIG[j][i].ep_type!=EP_TYPE_DISABLED);
|
||||
#else
|
||||
for (i=0; i<MAX_ENDPOINT; i++) n+=(EP_CONFIG[i].ep_type!=EP_TYPE_DISABLED);
|
||||
#endif
|
||||
s = sizeof(cfg_desc)+NUMINTERFACES*sizeof(if_desc)+n*sizeof(ep_desc);
|
||||
cfg = malloc(s); // allocate memory
|
||||
// initialize configuration descriptor
|
||||
cfg->bLength = sizeof(cfg_desc);
|
||||
cfg->bDescriptorType = 2;
|
||||
cfg->wTotalLength = s;
|
||||
cfg->bNumInterfaces = NUMINTERFACES;
|
||||
cfg->bConfigurationValue = 1;
|
||||
cfg->iConfiguration = 0;
|
||||
cfg->bmAttributes = POWERING;
|
||||
cfg->bMaxPower = MAXPOWER>>1;
|
||||
// initialize interface descriptor
|
||||
ifp = (if_desc *)((uint16_t)(cfg)+sizeof(cfg_desc));
|
||||
#if (NUMINTERFACES>1)
|
||||
for (j=0; j<NUMINTERFACES; j++) {
|
||||
n = 0;
|
||||
for (i=0; i<MAX_ENDPOINT; i++) n+=(EP_CONFIG[j][i].ep_type!=EP_TYPE_DISABLED); // number of endpoints for one interface
|
||||
#else
|
||||
j = 0;
|
||||
#endif
|
||||
ifp->bLength = sizeof(if_desc);
|
||||
ifp->bDescriptorType = 4;
|
||||
ifp->bInterfaceNumber = j;
|
||||
ifp->bAlternateSetting = 0;
|
||||
ifp->bNumEndpoints = n;
|
||||
ifp->bInterfaceClass = 0xFF;
|
||||
ifp->bInterfaceSubClass = 0x00;
|
||||
ifp->bInterfaceProtocol = 0xFF;
|
||||
ifp->iInterface = 0;
|
||||
epp = (ep_desc *)((uint16_t)(ifp)+sizeof(if_desc));
|
||||
if (n) { // endpoints
|
||||
for (i=0; i<MAX_ENDPOINT; i++) {
|
||||
if (EPCO.ep_type!=EP_TYPE_DISABLED) {
|
||||
epp->bLength = sizeof(ep_desc);
|
||||
epp->bDescriptorType = 5;
|
||||
epp->bEndpointAddress = (i+1)|(EPCO.ep_type<<7);
|
||||
epp->bmAttributes = EP_TRANSFER(EPCO.ep_type);
|
||||
epp->wMaxPacketSize = EPCO.ep_size;
|
||||
epp->bInterval = 0;
|
||||
epp = (ep_desc *)((uint16_t)(epp)+sizeof(ep_desc));
|
||||
}
|
||||
}
|
||||
}
|
||||
#if (NUMINTERFACES>1)
|
||||
ifp = (if_desc *)epp;
|
||||
}
|
||||
#endif
|
||||
// finally
|
||||
usb_desc_out(true,(uint8_t *)cfg,s,ucr.wLength);
|
||||
free(cfg);
|
||||
break;
|
||||
case 0x0300: // String 0
|
||||
usb_desc_out(false,(uint8_t *)&string0.bLength,pgm_read_byte(&string0.bLength),ucr.wLength);
|
||||
break;
|
||||
case 0x0301: // String 1
|
||||
usb_desc_out(false,(uint8_t *)&string1.bLength,pgm_read_byte(&string1.bLength),ucr.wLength);
|
||||
break;
|
||||
case 0x0302: // String 2
|
||||
usb_desc_out(false,(uint8_t *)&string2.bLength,pgm_read_byte(&string2.bLength),ucr.wLength);
|
||||
break;
|
||||
#if (USESN>0)
|
||||
case 0x0303: // String 3, serial number
|
||||
#if (USESN==1) // Seriennummer im Flash
|
||||
usb_desc_out(false,(uint8_t *)&string3.bLength,pgm_read_byte(&string3.bLength),ucr.wLength);
|
||||
#endif
|
||||
#if (USESN==2) // serial number in the RAM
|
||||
buf.bDescriptorType=3; // has to be 3 always
|
||||
i = 0;
|
||||
while (RAMSN[i]) {
|
||||
buf.wString[i] = RAMSN[i];
|
||||
i++;
|
||||
}
|
||||
buf.bLength=2*i+2; // total length of the data set
|
||||
usb_desc_out(true,(uint8_t *)&buf,buf.bLength,ucr.wLength);
|
||||
#endif
|
||||
break;
|
||||
#endif
|
||||
default:
|
||||
STALL; // stall
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (ucr.bRequest == SET_ADDRESS) {
|
||||
USB_SEND_IN;
|
||||
usb_wait_in_ready();
|
||||
UDADDR = ucr.wValue | _BV(ADDEN);
|
||||
return;
|
||||
}
|
||||
if (ucr.bRequest == SET_CONFIGURATION && ucr.bmRequestType == 0) { // another configuration will be chosen
|
||||
if (ucr.wValue==1) { // configuration 1 will be chosen
|
||||
usb_conf = ucr.wValue;
|
||||
USB_SEND_IN;
|
||||
#if (NUMINTERFACES==1)
|
||||
usb_endpoints(); // initialize endpoints
|
||||
#else
|
||||
usb_if = 0; // select interface 0
|
||||
usb_endpoints(usb_if); // initialize endpoints
|
||||
#endif
|
||||
} else { // other configurations are not supported in this version
|
||||
STALL; // stall
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (ucr.bRequest == GET_CONFIGURATION && ucr.bmRequestType == 0x80) {
|
||||
usb_wait_in_ready();
|
||||
UEDATX = usb_conf;
|
||||
USB_SEND_IN;
|
||||
return;
|
||||
}
|
||||
if (ucr.bRequest == GET_STATUS) {
|
||||
usb_wait_in_ready();
|
||||
i = 0;
|
||||
#ifdef SUPPORT_ENDPOINT_HALT
|
||||
if (ucr.bmRequestType == 0x82) {
|
||||
UENUM = ucr.wIndex;
|
||||
if (UECONX & _BV(STALLRQ)) i = 1;
|
||||
UENUM = 0;
|
||||
}
|
||||
#endif
|
||||
UEDATX = i;
|
||||
UEDATX = 0;
|
||||
USB_SEND_IN;
|
||||
return;
|
||||
}
|
||||
#if (NUMINTERFACES>1)
|
||||
if (ucr.bRequest == SET_INTERFACE && (ucr.bmRequestType == 0x20 || ucr.bmRequestType == 0)) { // another interface will be chosen
|
||||
if (ucr.wIndex<NUMINTERFACES) { // defined interface will be chosen
|
||||
usb_if = ucr.wIndex;
|
||||
USB_SEND_IN;
|
||||
usb_endpoints(usb_if); // initialize endpoints
|
||||
} else { // other configurations are not supported in this version
|
||||
STALL; // stall
|
||||
}
|
||||
return;
|
||||
}
|
||||
if (ucr.bRequest == GET_INTERFACE && ucr.bmRequestType == 0x80) {
|
||||
usb_wait_in_ready();
|
||||
UEDATX = usb_if;
|
||||
USB_SEND_IN;
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
#ifdef SUPPORT_ENDPOINT_HALT
|
||||
if ((ucr.bRequest == CLEAR_FEATURE || ucr.bRequest == SET_FEATURE)
|
||||
&& ucr.bmRequestType == 0x02 && ucr.wValue == 0) {
|
||||
i = ucr.wIndex & 0x7F;
|
||||
if (i >= 1 && i <= MAX_ENDPOINT) {
|
||||
USB_SEND_IN;
|
||||
UENUM = i;
|
||||
if (ucr.bRequest == SET_FEATURE) {
|
||||
UECONX = _BV(STALLRQ)|_BV(EPEN);
|
||||
} else {
|
||||
UECONX = _BV(STALLRQC)|_BV(RSTDT)|_BV(EPEN);
|
||||
UERST = _BV(i);
|
||||
UERST = 0;
|
||||
}
|
||||
return;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
#ifdef USERDEFCONTROLS
|
||||
// handle user defined control requests
|
||||
if (!usb_controlrequest(&ucr))
|
||||
UECONX = _BV(STALLRQ) | _BV(EPEN); // stall
|
||||
return;
|
||||
#endif
|
||||
}
|
||||
UECONX = _BV(STALLRQ) | _BV(EPEN); // stall
|
||||
}
|
||||
|
||||
// handle interrupts for further endpoints
|
||||
for (i=1; i<=MAX_ENDPOINT; i++) {
|
||||
if (UEINT & _BV(i)) {
|
||||
UENUM=i; // select endpoint
|
||||
intbits = UEINTX; // save interrupt bits of the endpoint
|
||||
if (intbits & _BV(RXOUTI)) { // interrupt occured by incoming data
|
||||
#ifdef MEGA4_6
|
||||
if (((uint16_t)(UEBCHX)<<8)+UEBCLX) { // data available in input endpoint
|
||||
usb_ep(i,((uint16_t)(UEBCHX)<<8)+UEBCLX);
|
||||
#else
|
||||
if (UEBCLX) { // data available in input endpoint
|
||||
usb_ep(i,UEBCLX);
|
||||
#endif
|
||||
UENUM=i; // reselect endpoint (if changed by handling routine)
|
||||
}
|
||||
UEINTX = ~(_BV(RXOUTI)|_BV(STALLEDI)); // clear interrupt flags
|
||||
UEINTX = 0x7F; // free bank (FIFOCON), has to be executed after RXOUTI!
|
||||
return;
|
||||
}
|
||||
STALL; // stall
|
||||
}
|
||||
}
|
||||
STALL; // stall
|
||||
}
|
||||
@@ -0,0 +1,254 @@
|
||||
/*****************************************************************************
|
||||
|
||||
USB-Template: User defined USB device
|
||||
V1.1.0
|
||||
|
||||
(c) 2010-2011 Reusch Elektronik, Dipl.-Ing. (FH) Rainer Reusch
|
||||
Homepage: http://products.reworld.eu/index.htm
|
||||
|
||||
Supported devices:
|
||||
- AT90USB82, AT90USB162
|
||||
- ATMEGA8U2, ATMEGA16U2, ATMEGA32U2
|
||||
- ATMEGA8U4, ATMEGA16U4, ATMEGA32U4
|
||||
- AT90USB646, AT90USB647, AT90USB1286, AT90USB1287
|
||||
|
||||
Supported modules:
|
||||
- U2DIL-AT90USB162
|
||||
- U2DIL-ATMEGA32U2
|
||||
- U4DIL-ATMEGA32U4
|
||||
- U6DIL-AT90USB1286
|
||||
|
||||
USB Header File
|
||||
|
||||
Created: 2010-01-07
|
||||
Changed: 2011-03-12
|
||||
|
||||
*****************************************************************************/
|
||||
|
||||
// Usually no changes are necessary in this file!
|
||||
|
||||
#ifndef usb_h__
|
||||
#define usb_h__
|
||||
|
||||
#include <avr/pgmspace.h>
|
||||
#include <avr/interrupt.h>
|
||||
#include <stdint.h>
|
||||
#include "usb_user_config.h"
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB Strings
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
struct usb_string_descriptor {
|
||||
uint8_t bLength;
|
||||
uint8_t bDescriptorType;
|
||||
int16_t wString[];
|
||||
};
|
||||
|
||||
static const struct usb_string_descriptor PROGMEM string0 = {
|
||||
4,
|
||||
3,
|
||||
{0x0409}
|
||||
};
|
||||
|
||||
static const struct usb_string_descriptor PROGMEM string1 = {
|
||||
sizeof(STR_MANUFACTURER),
|
||||
3,
|
||||
STR_MANUFACTURER
|
||||
};
|
||||
|
||||
static const struct usb_string_descriptor PROGMEM string2 = {
|
||||
sizeof(STR_PRODUCT),
|
||||
3,
|
||||
STR_PRODUCT
|
||||
};
|
||||
|
||||
#if (USESN==1)
|
||||
static const struct usb_string_descriptor PROGMEM string3 = {
|
||||
sizeof(STR_SERIAL_NUMBER),
|
||||
3,
|
||||
STR_SERIAL_NUMBER
|
||||
};
|
||||
#endif
|
||||
|
||||
#if (USESN==2)
|
||||
// Your USB serial numebr in RAM. Must be set into RAMSN before calling usb_init!
|
||||
// Descriptor size, descriptor ID and conversion into widechars wil be done automatically.
|
||||
|
||||
#define RAMSNLEN 16 // maximum length of the serial number
|
||||
|
||||
struct usb_string_descriptor_ram {
|
||||
uint8_t bLength;
|
||||
uint8_t bDescriptorType;
|
||||
int16_t wString[RAMSNLEN];
|
||||
};
|
||||
|
||||
char RAMSN[RAMSNLEN]; // save the S/N as string here (e.g. read from EEPROM)
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Endpoints
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// buffer sizes of an endpoint
|
||||
// Hint: For 64 byte and more only two endpoints must be activated!
|
||||
#define EP_SIZE(s) ((s) == 512 ? 0x60 : \
|
||||
((s) == 256 ? 0x50 : \
|
||||
((s) == 128 ? 0x40 : \
|
||||
((s) == 64 ? 0x30 : \
|
||||
((s) == 32 ? 0x20 : \
|
||||
((s) == 16 ? 0x10 : \
|
||||
0x00))))))
|
||||
|
||||
// endpoint attributes
|
||||
#define EP_TRANSFER(t) ((t) == EP_TYPE_ISOCHRONOUS_IN ? 1 : \
|
||||
((t) == EP_TYPE_ISOCHRONOUS_OUT ? 1 : \
|
||||
((t) == EP_TYPE_BULK_IN ? 2 : \
|
||||
((t) == EP_TYPE_BULK_OUT ? 2 : \
|
||||
3))))
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Device Descriptor
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#define LSB(n) (n & 255)
|
||||
#define MSB(n) ((n >> 8) & 255)
|
||||
|
||||
static const uint8_t PROGMEM device_descriptor[] = {
|
||||
18, // bLength
|
||||
1, // bDescriptorType
|
||||
0x00, 0x02, // bcdUSB
|
||||
USBDEVICECLASS, // bDeviceClass
|
||||
0, // bDeviceSubClass
|
||||
0, // bDeviceProtocol
|
||||
ENDPOINT0_SIZE, // bMaxPacketSize0
|
||||
LSB(VENDOR_ID), MSB(VENDOR_ID), // idVendor
|
||||
LSB(PRODUCT_ID), MSB(PRODUCT_ID), // idProduct
|
||||
0x00, 0x01, // bcdDevice
|
||||
1, // iManufacturer
|
||||
2, // iProduct
|
||||
3, // iSerialNumber
|
||||
1 // bNumConfigurations
|
||||
};
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Standard Commands for Control Transfers
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
#define GET_STATUS 0
|
||||
#define CLEAR_FEATURE 1
|
||||
#define SET_FEATURE 3
|
||||
#define SET_ADDRESS 5
|
||||
#define GET_DESCRIPTOR 6
|
||||
#define GET_CONFIGURATION 8
|
||||
#define SET_CONFIGURATION 9
|
||||
#define GET_INTERFACE 10
|
||||
#define SET_INTERFACE 11
|
||||
|
||||
//=============================================================================
|
||||
// USB Functions
|
||||
//=============================================================================
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB Initializing
|
||||
//-----------------------------------------------------------------------------
|
||||
// Has to be called one time before any USB actions.
|
||||
// Interrupts has to be enabled (call of sei macro)
|
||||
|
||||
void usb_init(void);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB State
|
||||
//-----------------------------------------------------------------------------
|
||||
// Request of the USB state.
|
||||
// State is determined with function call.
|
||||
// Hint: For AT90USB82/162 and ATMEGAxxU2 without VBUSDETECT option, state will
|
||||
// not change, if USB connector will be unplugged!
|
||||
// Possible return values:
|
||||
#define USB_STATUS_DISCONNECTED 0 // not connected (for self powered devices)
|
||||
#define USB_STATUS_CONNECTED 1 // connected (for AT90USB82/162 and ATMEGAxxU2 only with option VBUSDETECT)
|
||||
#define USB_STATUS_ENUMERATED 2 // USB address assigned (USB connection established)
|
||||
#define USB_STATUS_CONFIGURED 3 // a valid configuration were selected (USB device usable)
|
||||
|
||||
uint8_t usb_status(void);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB Configuration
|
||||
//-----------------------------------------------------------------------------
|
||||
// Returns the configuration number, set by the host
|
||||
// If the value is 0, no configuration were selected by the host. No endpoint
|
||||
// (except ep0 for control transfers) can be used in this case.
|
||||
|
||||
uint8_t usb_configuration(void);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// USB Interface
|
||||
//-----------------------------------------------------------------------------
|
||||
// Returns the number of the interface, selected by the host.
|
||||
|
||||
uint8_t usb_interface(void);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Check (Host to Device)
|
||||
//-----------------------------------------------------------------------------
|
||||
// This function returns the number of data bytes, contained in the FIFO
|
||||
// input buffer, for the specified endpoint.
|
||||
|
||||
#ifdef MEGA4_6
|
||||
uint16_t usb_rxavail(uint8_t endpoint);
|
||||
#else
|
||||
uint8_t usb_rxavail(uint8_t endpoint);
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Receive (Host to Device)
|
||||
//-----------------------------------------------------------------------------
|
||||
// "endpoint" has to specify an "OUT" endpoint (1..4 or 1..6)!
|
||||
// Data will be stored into "buffer".
|
||||
// Returns number of bytes, transfered into buffer
|
||||
#ifdef MEGA4_6
|
||||
uint16_t usb_rxdata(uint8_t endpoint, uint8_t *buffer, uint16_t maxdatasize);
|
||||
#else
|
||||
uint8_t usb_rxdata(uint8_t endpoint, uint8_t *buffer, uint8_t maxdatasize);
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Return (Device to Host), Control Transfer
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data return for control transfers (endpoint 0)
|
||||
// "datasize" not greater than size of FIFO buffer (no check!)
|
||||
// Result is always "true", if no connection to host.
|
||||
// When a connection is established, result is "false", if data block,
|
||||
// stored before, is not read from the FIFO buffer.
|
||||
|
||||
bool usb_txdata_control(uint8_t *buffer, uint8_t datasize);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Return (Device to Host)
|
||||
//-----------------------------------------------------------------------------
|
||||
// "endpoint" must specify a valid endpoint number (1..4 or 1..6)!
|
||||
// "datasize" not greater than size of FIFO buffer (no check!)
|
||||
// Result is always "true", if no connection to host.
|
||||
// When a connection is established, result is "false", if data block,
|
||||
// stored before, is not read from the FIFO buffer.
|
||||
|
||||
#ifdef MEGA4_6
|
||||
bool usb_txdata(uint8_t endpoint, uint8_t *buffer, uint16_t datasize);
|
||||
#else
|
||||
bool usb_txdata(uint8_t endpoint, uint8_t *buffer, uint8_t datasize);
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Free FIFO Buffer
|
||||
//-----------------------------------------------------------------------------
|
||||
// Free the FIFO buffer for one endpoint
|
||||
// Data contained in the buffer will be lost.
|
||||
// Endpoint usable for new data transfer.
|
||||
// It is not necessary, to call this routine after read of buffer data with
|
||||
// read routine. Routine can be used to clear buffer before writing new data.
|
||||
|
||||
void usb_freebuffer(uint8_t endpoint);
|
||||
|
||||
uint8_t usb_is_ready();
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,244 @@
|
||||
/*****************************************************************************
|
||||
|
||||
USB-Template: User defined USB device
|
||||
V1.1.0
|
||||
|
||||
(c) 2010-2011 Reusch Elektronik, Dipl.-Ing. (FH) Rainer Reusch
|
||||
Homepage: http://products.reworld.eu/index.htm
|
||||
|
||||
Supported devices:
|
||||
- AT90USB82, AT90USB162
|
||||
- ATMEGA8U2, ATMEGA16U2, ATMEGA32U2
|
||||
- ATMEGA8U4, ATMEGA16U4, ATMEGA32U4
|
||||
- AT90USB646, AT90USB647, AT90USB1286, AT90USB1287
|
||||
|
||||
Supported modules:
|
||||
- U2DIL-AT90USB162
|
||||
- U2DIL-ATMEGA32U2
|
||||
- U4DIL-ATMEGA32U4
|
||||
- U6DIL-AT90USB1286
|
||||
|
||||
USB Configuration
|
||||
|
||||
Created: 2010-01-07
|
||||
Changed: 2011-03-12
|
||||
|
||||
*****************************************************************************/
|
||||
|
||||
// in this file you will make changes for your purposes
|
||||
|
||||
#ifndef usbconfig_h__
|
||||
#define usbconfig_h__
|
||||
|
||||
#if defined (__AVR_AT90USB82__) || (__AVR_AT90USB162__) || (__AVR_ATmega8U2__) || (__AVR_ATmega32U2__)
|
||||
#define MEGA2 // AT90USB82/162, ATMEGAxxU2
|
||||
#endif
|
||||
#if defined (__AVR_ATmega16U4__) || (__AVR_ATmega32U4__)
|
||||
#define MEGA4 // ATMEGAxxU4
|
||||
#define MEGA4_6
|
||||
#endif
|
||||
#if defined (__AVR_AT90USB646__) || (__AVR_AT90USB647__) || (__AVR_AT90USB1286__) || (__AVR_AT90USB1287__)
|
||||
#define MEGA6 // AT90USB646, -647, -1286, -1287
|
||||
#define MEGA4_6
|
||||
#endif
|
||||
|
||||
#include <stdint.h>
|
||||
#include <stdbool.h>
|
||||
#include "config.h"
|
||||
|
||||
#if (F_CPU==8000000)
|
||||
#define FREQ_OK
|
||||
#endif
|
||||
#if (F_CPU==16000000)
|
||||
#define FREQ_OK
|
||||
#endif
|
||||
#ifndef FREQ_OK
|
||||
#error "Invalid clock frequency (only 8 or 16MHz)!"
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// General USB commitments
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// Vendor Name
|
||||
// will be a part of the descriptor and can be requested by the host
|
||||
#define STR_MANUFACTURER L"BlubbFish"
|
||||
|
||||
// Product Name
|
||||
// will be a part of the descriptor and can be requested by the host
|
||||
#define STR_PRODUCT L"Hacker-Jeopardy"
|
||||
|
||||
// USB Serial Number (optional)
|
||||
// will be a part of the descriptor and can be requested by the host
|
||||
#define USESN 1 // Options: 0= no S/N; 1= S/N inside the flash memory; 2= S/N inside RAM
|
||||
#if (USESN==1)
|
||||
#define STR_SERIAL_NUMBER L"000001" // your serial number, stored in flash memory
|
||||
#endif
|
||||
|
||||
// Vendor ID
|
||||
// set your vendor ID here
|
||||
#define VENDOR_ID 0xDEAD // !!! THIS ID IS NOT FOR OFFICIAL USE, FOR YOUR PERSONAL TESTING PURPOSES ONLY !!!
|
||||
|
||||
// Product ID
|
||||
// set your product ID here
|
||||
#define PRODUCT_ID 0xBEEE // !!! THIS ID IS NOT FOR OFFICIAL USE, FOR YOUR PERSONAL TESTING PURPOSES ONLY !!!
|
||||
|
||||
// USB device class
|
||||
// possible settings:
|
||||
#define USBDEVICECLASS_USER 0xFF // user defined class
|
||||
// set the class for your purposes
|
||||
#define USBDEVICECLASS USBDEVICECLASS_USER
|
||||
|
||||
// power supply
|
||||
#define SELFPOWERED 0x40
|
||||
#define BUSPOWERED 0x80
|
||||
#define POWERING SELFPOWERED | BUSPOWERED // Alternatives: SELFPOWERED or SELFPOWERED | BUSPOWERED
|
||||
|
||||
// current consumption
|
||||
// in mA (milliamperes), uses only even values between 2 and 500
|
||||
#define MAXPOWER 500
|
||||
|
||||
#ifdef MEGA2
|
||||
// The controllers AT90USB82/162 and ATMEGAxxU2 are not able, to detect a
|
||||
// plugged USB connector (presence of VBUS voltage). As alternative an input
|
||||
// port, which is connected with the 5V line of the USB connector, can be
|
||||
// used. A pull down resistor at the input port is recommended.
|
||||
// Uncomment the following line, if a port pin is used for this purpose.
|
||||
//#define VBUSDETECT
|
||||
#define VBUSDIR DDRC // Data Direction Register of the used port
|
||||
#define VBUSPORT PINC // used port
|
||||
#define VBUSPIN PC4 // used pin (PC4 as example)
|
||||
#endif
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Data Set for a USB Control Request
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// Nothing to change here!
|
||||
|
||||
struct usb_control_request {
|
||||
uint8_t bmRequestType;
|
||||
uint8_t bRequest;
|
||||
uint16_t wValue;
|
||||
uint16_t wIndex;
|
||||
uint16_t wLength;
|
||||
};
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Endpoints
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// maximum number of endpoints (don't change!)
|
||||
#ifdef MEGA4_6
|
||||
#define MAX_ENDPOINT 6
|
||||
#else
|
||||
#define MAX_ENDPOINT 4
|
||||
#endif
|
||||
|
||||
// Constants for endpoint configuration (don't change!)
|
||||
#define EP_TYPE_DISABLED 0xFF // endpoint not used
|
||||
#define EP_TYPE_CONTROL 0x00
|
||||
#define EP_TYPE_BULK_IN 0x81
|
||||
#define EP_TYPE_BULK_OUT 0x80
|
||||
#define EP_TYPE_INTERRUPT_IN 0xC1
|
||||
#define EP_TYPE_INTERRUPT_OUT 0xC0
|
||||
#define EP_TYPE_ISOCHRONOUS_IN 0x41
|
||||
#define EP_TYPE_ISOCHRONOUS_OUT 0x40
|
||||
#define EP_SINGLE_BUFFER 0x02
|
||||
#define EP_DOUBLE_BUFFER 0x06
|
||||
|
||||
// Endpoint 0
|
||||
// (for Control Transfers, must be defined always)
|
||||
#define ENDPOINT0_SIZE 16 // control endpoint
|
||||
// uncomment the following line to handle user defined control request
|
||||
// of endpoint 0 in the main program
|
||||
#define USERDEFCONTROLS // we will use self defined control transfers in this example
|
||||
#ifdef USERDEFCONTROLS
|
||||
// function prototype to handle user defined control requests.
|
||||
// Function has to return "true", if request is handled.
|
||||
// If result is "false", a "stall" will be returned to host.
|
||||
bool usb_controlrequest(struct usb_control_request *ucr);
|
||||
#endif
|
||||
|
||||
typedef struct {
|
||||
uint8_t ep_type; // transfer
|
||||
uint8_t ep_size; // buffer size
|
||||
uint8_t ep_buffer; // buffer configuration
|
||||
} ep_config;
|
||||
|
||||
// configuration of the endpoints
|
||||
// EP_TYPE constant, buffer size (8, 16, 32 or 64 byte), single or double buffer
|
||||
|
||||
// Hint: Use only two endpoints, if buffer size is 64 byte!
|
||||
|
||||
// Additional hints, if more than one USB interfaces are defined:
|
||||
// - after configuration change (only configuration 1 is possible),
|
||||
// interface 0 will be selected
|
||||
// - to chose another interface, the control request command SET_INTERFACE
|
||||
// with the request type 0x20 has to be executed
|
||||
|
||||
#define NUMINTERFACES 2 // number of supported interfaces (1...3) (Endpoint configurations)
|
||||
|
||||
#if (NUMINTERFACES>1)
|
||||
static const ep_config EP_CONFIG[NUMINTERFACES][MAX_ENDPOINT] = {{
|
||||
#else
|
||||
static const ep_config EP_CONFIG[MAX_ENDPOINT] = {
|
||||
#endif
|
||||
// modify the following lines for your purposes
|
||||
{EP_TYPE_BULK_OUT, 32, EP_SINGLE_BUFFER}, // one OUT and one IN endpoint with bulk transfer in this example
|
||||
{EP_TYPE_BULK_IN, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER}
|
||||
#ifdef MEGA4_6 // the following endpoints are only available on ATMEGAxxU4 and AT90USB64x/128x controllers
|
||||
,
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER}
|
||||
#endif
|
||||
#if (NUMINTERFACES>1)
|
||||
},{
|
||||
// modify the following lines for your purposes
|
||||
{EP_TYPE_INTERRUPT_IN, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER}
|
||||
#ifdef MEGA4_6 // the following endpoints are only available on ATMEGAxxU4 and AT90USB64x/128x controllers
|
||||
,
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER}
|
||||
#endif
|
||||
}
|
||||
// more interfaces...
|
||||
#if (NUMINTERFACES==3)
|
||||
,{
|
||||
// modify the following lines for your purposes
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER}
|
||||
#ifdef MEGA4_6 // the following endpoints are only available on ATMEGAxxU4 and AT90USB64x/128x controllers
|
||||
,
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER},
|
||||
{EP_TYPE_DISABLED, 32, EP_SINGLE_BUFFER}
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
};
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Endpoint Interrupt
|
||||
//-----------------------------------------------------------------------------
|
||||
// Function prototype to handle endpoint interrupts for incoming data
|
||||
// The routine will be a part of the main program
|
||||
|
||||
void usb_ep(uint8_t endpoint, uint16_t datasize);
|
||||
|
||||
//-----------------------------------------------------------------------------
|
||||
// Functional Purposes
|
||||
//-----------------------------------------------------------------------------
|
||||
|
||||
// "Endpoint Halt" option
|
||||
// Comment the following to save code memory. But USB conformity is lost.
|
||||
#define SUPPORT_ENDPOINT_HALT
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user