Automatic Cronjob Checkin: 20160716-181005

This commit is contained in:
BlubbFish 2016-07-16 16:09:59 +00:00
parent 0bca819bcc
commit f921d0b37b
20 changed files with 2082 additions and 220 deletions

Binary file not shown.

View File

@ -31,7 +31,9 @@ OUTPUT_FILE_DEP:=
LIB_DEP:=
# Every subdirectory with source files must be described here
SUBDIRS :=
SUBDIRS := \
../io \
../io/hardware
# Add inputs and outputs from these tool invocations to the build variables

View File

@ -1,4 +1,4 @@
USBLaminator.d USBLaminator.o: .././USBLaminator.cpp \
USBLaminator.d USBLaminator.o: .././USBLaminator.cpp .././peripheral.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 \
@ -9,7 +9,16 @@ USBLaminator.d USBLaminator.o: .././USBLaminator.cpp \
c:\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/avr/lock.h \
.././io/hardware/portb.hpp .././io/hardware/portc.hpp .././io/Led.hpp \
.././io/hardware/pin.hpp .././io/SSR.hpp \
c:\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/interrupt.h \
.././io/Usart.hpp
.././peripheral.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:
@ -32,3 +41,23 @@ c:\program\ files\ (x86)\atmel\atmel\ toolchain\avr8\ gcc\native\3.4.2.876\avr8-
c:\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:
.././io/hardware/portb.hpp:
.././io/hardware/portc.hpp:
.././io/Led.hpp:
.././io/hardware/pin.hpp:
.././io/SSR.hpp:
c:\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/interrupt.h:
.././io/Usart.hpp:

View File

@ -1,9 +1,53 @@
:100000000C942A000C9434000C9434000C943400AA
:100010000C9434000C9434000C9434000C94340090
:100020000C9434000C9434000C9434000C94340080
:100030000C9434000C9434000C9434000C94340070
:100040000C9434000C9434000C9434000C94340060
:100050000C94340011241FBECFE5D4E0DEBFCDBF29
:100060000E9436000C9437000C940000FFCFF894E7
:02007000FFCFC0
:100000000C942B000C9453000C9453000C9453004C
:100010000C9453000C9453000C94FE000C94530069
:100020000C9453000C9453000C9453000C94530004
:100030000C9453000C9453000C9453000C945300F4
:100040000C9453000C9453000C9453000C945300E4
:100050000C945300530111241FBECFE5D4E0DEBF42
:10006000CDBF10E0A0E6B0E0E2EDF2E002C0059006
:100070000D92A03CB107D9F720E0A0ECB0E001C0A0
:100080001D92A33CB207E1F710E0C6E5D0E004C042
:100090002297FE010E946301C435D107C9F70E946F
:1000A000FB000C9467010C940000CF93C49ABC9A97
:1000B000AA98A29AAB98A39AAC98A49AAD98A59A3C
:1000C000AE98A69AAF98A79AE1E6F0E083E2C39AC9
:1000D000BB9A5D9BFECF8CB9C398BB9A819181116D
:1000E000F6CFAA98A29AAB98A39AAC98A49AAD9886
:1000F000A59AAE98A69AAF98A79A20E030E041E082
:1001000050E0CA01022E02C0880F991F0A94E2F73C
:10011000A82FA17080FF02C0AA9AA29AF82FF270AD
:1001200081FF02C0AB9AA39AE82FE47082FF02C05D
:10013000AC9AA49A782F787083FF02C0AD9AA59AE2
:10014000682F607184FF02C0AE9AA69A982F9072B1
:1001500085FF02C0AF9AA79A8FE7BAE1C6E0815047
:10016000B040C040E1F700C00000AA2311F0AA98F7
:10017000A29AFF2311F0AB98A39AEE2311F0AC984A
:10018000A49A772311F0AD98A59A662311F0AE9842
:10019000A69A992311F0AF98A79A2F5F3F4F263068
:1001A000310509F0AECFAA98A29AAB98A39AAC9861
:1001B000A49AAD98A59AAE98A69AAF98A79A1FBC94
:1001C0008EB58B608EBD1DBC1CBC17BC16BC81E6F9
:1001D0008BBD88EA8ABD19BC18BC89B7806189BF0C
:1001E0007894C498BC9AC39ABB9AC398BB9AC29A93
:1001F000BA9ACF9108950E945500FFCF1F920F9297
:100200000FB60F9211248F939F9395B384E08927A3
:1002100085BB9F918F910F900FBE0F901F901895E7
:10022000CF93DF931F92CDB7DEB76983BC9ABB9A99
:10023000BA9AC498BC9AC398BB9AC298BA9A81E8F1
:1002400089B988E08AB986E880BDE3EBF0E085E50E
:10025000C39ABB9A5D9BFECF8CB9C398BB9A819120
:100260008111F6CF0F90DF91CF910895BC9ABB9A80
:10027000BA9AC498BC9AC398BB9AC298BA9A08957D
:10028000A29AA39AA49AA59AA69AA79AAA98A29A79
:10029000AB98A39AAC98A49AAD98A59AAE98A69A52
:1002A000AF98A79A089582EC90E00E94360181EC05
:1002B00090E00E94400160E080EC90E00E9410011C
:1002C0000895EE0FFF1F0590F491E02D0994F89426
:0202D000FFCF5E
:1002D2002323232320426567696E20426F6F747562
:1002E2007020232323232323232323232323232392
:1002F20023232323232323232323232323232323CC
:1003020023232323232323232323232323232323BB
:1003120023232323232323232323232323232323AB
:100322000A005561727420646F6E65210D0A000027
:00000001FF

File diff suppressed because it is too large Load Diff

View File

@ -2,12 +2,22 @@ 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/avr5\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/avr5/crtm16a.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/avr5\libgcc.a(_copy_data.o)
USBLaminator.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/avr5\libgcc.a(_clear_bss.o)
USBLaminator.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/avr5\libgcc.a(_ctors.o)
USBLaminator.o (__do_global_ctors)
c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.7.2/avr5\libgcc.a(_tablejump.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/avr5\libgcc.a(_ctors.o) (__tablejump__)
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/avr5/crtm16a.o
.group 0x00000000 0x8 USBLaminator.o
.group 0x00000000 0x8 USBLaminator.o
.group 0x00000000 0x8 USBLaminator.o
.text 0x00000000 0x0 USBLaminator.o
.bss 0x00000000 0x0 USBLaminator.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/avr5\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/avr5\libgcc.a(_exit.o)
.text.libgcc.mul
@ -21,6 +31,57 @@ Discarded input sections
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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\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/avr5\libgcc.a(_ctors.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/avr5\libgcc.a(_ctors.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/avr5\libgcc.a(_ctors.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/avr5\libgcc.a(_ctors.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/avr5\libgcc.a(_ctors.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/avr5\libgcc.a(_ctors.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/avr5\libgcc.a(_ctors.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/avr5\libgcc.a(_ctors.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/avr5\libgcc.a(_tablejump.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/avr5\libgcc.a(_tablejump.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/avr5\libgcc.a(_tablejump.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/avr5\libgcc.a(_tablejump.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/avr5\libgcc.a(_tablejump.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/avr5\libgcc.a(_tablejump.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/avr5\libgcc.a(_tablejump.o)
Memory Configuration
@ -137,7 +198,7 @@ LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8
.rela.plt
*(.rela.plt)
.text 0x00000000 0x72
.text 0x00000000 0x2d2
*(.vectors)
.vectors 0x00000000 0x54 c:/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/avr5/crtm16a.o
0x00000000 __vector_default
@ -157,68 +218,95 @@ LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8
*(.lowtext*)
0x00000054 __ctors_start = .
*(.ctors)
0x00000054 __ctors_end = .
0x00000054 __dtors_start = .
.ctors 0x00000054 0x2 USBLaminator.o
0x00000056 __ctors_end = .
0x00000056 __dtors_start = .
*(.dtors)
0x00000054 __dtors_end = .
0x00000056 __dtors_end = .
SORT(*)(.ctors)
SORT(*)(.dtors)
*(.init0)
.init0 0x00000054 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/avr5/crtm16a.o
0x00000054 __init
.init0 0x00000056 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/avr5/crtm16a.o
0x00000056 __init
*(.init0)
*(.init1)
*(.init1)
*(.init2)
.init2 0x00000054 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/avr5/crtm16a.o
.init2 0x00000056 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/avr5/crtm16a.o
*(.init2)
*(.init3)
*(.init3)
*(.init4)
.init4 0x00000062 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/avr5\libgcc.a(_copy_data.o)
0x00000062 __do_copy_data
.init4 0x00000078 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/avr5\libgcc.a(_clear_bss.o)
0x00000078 __do_clear_bss
*(.init4)
*(.init5)
*(.init5)
*(.init6)
.init6 0x00000088 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/avr5\libgcc.a(_ctors.o)
0x00000088 __do_global_ctors
*(.init6)
*(.init7)
*(.init7)
*(.init8)
*(.init8)
*(.init9)
.init9 0x00000060 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/avr5/crtm16a.o
.init9 0x0000009e 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/avr5/crtm16a.o
*(.init9)
*(.text)
.text 0x00000068 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/avr5/crtm16a.o
0x00000068 __vector_1
0x00000068 __vector_12
0x00000068 __bad_interrupt
0x00000068 __vector_6
0x00000068 __vector_3
0x00000068 __vector_11
0x00000068 __vector_13
0x00000068 __vector_17
0x00000068 __vector_19
0x00000068 __vector_7
0x00000068 __vector_5
0x00000068 __vector_4
0x00000068 __vector_9
0x00000068 __vector_2
0x00000068 __vector_15
0x00000068 __vector_8
0x00000068 __vector_14
0x00000068 __vector_10
0x00000068 __vector_16
0x00000068 __vector_18
0x00000068 __vector_20
0x0000006c . = ALIGN (0x2)
.text 0x000000a6 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/avr5/crtm16a.o
0x000000a6 __vector_1
0x000000a6 __vector_12
0x000000a6 __bad_interrupt
0x000000a6 __vector_3
0x000000a6 __vector_11
0x000000a6 __vector_13
0x000000a6 __vector_17
0x000000a6 __vector_19
0x000000a6 __vector_7
0x000000a6 __vector_5
0x000000a6 __vector_4
0x000000a6 __vector_9
0x000000a6 __vector_2
0x000000a6 __vector_15
0x000000a6 __vector_8
0x000000a6 __vector_14
0x000000a6 __vector_10
0x000000a6 __vector_16
0x000000a6 __vector_18
0x000000a6 __vector_20
0x000000aa . = ALIGN (0x2)
*(.text.*)
.text.main 0x0000006c 0x2 USBLaminator.o
0x0000006c main
0x0000006e . = ALIGN (0x2)
.text._Z5setupv
0x000000aa 0x14c USBLaminator.o
0x000000aa _Z5setupv
.text.main 0x000001f6 0x6 USBLaminator.o
0x000001f6 main
.text.__vector_6
0x000001fc 0x24 USBLaminator.o
0x000001fc __vector_6
.text._ZN5UsartILm9600EEC2E3LedIN6avrlib5portbELi4ELi3ELi2EE
0x00000220 0x4c USBLaminator.o
0x00000220 _ZN5UsartILm9600EEC2E3LedIN6avrlib5portbELi4ELi3ELi2EE
0x00000220 _ZN5UsartILm9600EEC1E3LedIN6avrlib5portbELi4ELi3ELi2EE
.text._ZN3LedIN6avrlib5portbELi4ELi3ELi2EE4initEv
0x0000026c 0x14 USBLaminator.o
0x0000026c _ZN3LedIN6avrlib5portbELi4ELi3ELi2EE4initEv
.text._ZN3SSRIN6avrlib5portcELi2ELi3ELi4ELi5ELi6ELi7EE4initEv
0x00000280 0x26 USBLaminator.o
0x00000280 _ZN3SSRIN6avrlib5portcELi2ELi3ELi4ELi5ELi6ELi7EE4initEv
.text._GLOBAL__sub_I_l
0x000002a6 0x1c USBLaminator.o
.text.libgcc 0x000002c2 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/avr5\libgcc.a(_tablejump.o)
0x000002c2 __tablejump2__
0x000002c6 __tablejump__
0x000002ce . = ALIGN (0x2)
*(.fini9)
.fini9 0x0000006e 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/avr5\libgcc.a(_exit.o)
0x0000006e _exit
0x0000006e exit
.fini9 0x000002ce 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/avr5\libgcc.a(_exit.o)
0x000002ce _exit
0x000002ce exit
*(.fini9)
*(.fini8)
*(.fini8)
@ -237,39 +325,50 @@ LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8
*(.fini1)
*(.fini1)
*(.fini0)
.fini0 0x0000006e 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/avr5\libgcc.a(_exit.o)
.fini0 0x000002ce 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/avr5\libgcc.a(_exit.o)
*(.fini0)
0x00000072 _etext = .
0x000002d2 _etext = .
.data 0x00800060 0x0 load address 0x00000072
.data 0x00800060 0x60 load address 0x000002d2
0x00800060 PROVIDE (__data_start, .)
*(.data)
.data 0x00800060 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/avr5/crtm16a.o
.data 0x00800060 0x0 USBLaminator.o
.data 0x00800060 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/avr5\libgcc.a(_exit.o)
.data 0x00800060 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/avr5\libgcc.a(_copy_data.o)
.data 0x00800060 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/avr5\libgcc.a(_clear_bss.o)
.data 0x00800060 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/avr5\libgcc.a(_ctors.o)
.data 0x00800060 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/avr5\libgcc.a(_tablejump.o)
*(.data*)
*(.rodata)
*(.rodata*)
.rodata.str1.1
0x00800060 0x5f USBLaminator.o
*(.gnu.linkonce.d*)
0x00800060 . = ALIGN (0x2)
0x00800060 _edata = .
0x00800060 PROVIDE (__data_end, .)
0x008000c0 . = ALIGN (0x2)
*fill* 0x008000bf 0x1
0x008000c0 _edata = .
0x008000c0 PROVIDE (__data_end, .)
.bss 0x00800060 0x0
0x00800060 PROVIDE (__bss_start, .)
.bss 0x008000c0 0x3
0x008000c0 PROVIDE (__bss_start, .)
*(.bss)
.bss 0x008000c0 0x3 USBLaminator.o
0x008000c0 r
0x008000c1 o
0x008000c2 l
*(.bss*)
*(COMMON)
0x00800060 PROVIDE (__bss_end, .)
0x00000072 __data_load_start = LOADADDR (.data)
0x00000072 __data_load_end = (__data_load_start + SIZEOF (.data))
0x008000c3 PROVIDE (__bss_end, .)
0x000002d2 __data_load_start = LOADADDR (.data)
0x00000332 __data_load_end = (__data_load_start + SIZEOF (.data))
.noinit 0x00800060 0x0
0x00800060 PROVIDE (__noinit_start, .)
.noinit 0x008000c3 0x0
0x008000c3 PROVIDE (__noinit_start, .)
*(.noinit*)
0x00800060 PROVIDE (__noinit_end, .)
0x00800060 _end = .
0x00800060 PROVIDE (__heap_start, .)
0x008000c3 PROVIDE (__noinit_end, .)
0x008000c3 _end = .
0x008000c3 PROVIDE (__heap_start, .)
.eeprom 0x00810000 0x0
*(.eeprom*)
@ -327,38 +426,39 @@ LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8
.debug_sfnames
*(.debug_sfnames)
.debug_aranges 0x00000000 0x20
.debug_aranges 0x00000000 0x50
*(.debug_aranges)
.debug_aranges
0x00000000 0x20 USBLaminator.o
0x00000000 0x50 USBLaminator.o
.debug_pubnames
*(.debug_pubnames)
.debug_info 0x00000000 0x7b
.debug_info 0x00000000 0x30ea
*(.debug_info)
.debug_info 0x00000000 0x7b USBLaminator.o
.debug_info 0x00000000 0x30ea USBLaminator.o
*(.gnu.linkonce.wi.*)
.debug_abbrev 0x00000000 0x44
.debug_abbrev 0x00000000 0x3fb
*(.debug_abbrev)
.debug_abbrev 0x00000000 0x44 USBLaminator.o
.debug_abbrev 0x00000000 0x3fb USBLaminator.o
.debug_line 0x00000000 0x42
.debug_line 0x00000000 0x3ef
*(.debug_line)
.debug_line 0x00000000 0x42 USBLaminator.o
.debug_line 0x00000000 0x3ef USBLaminator.o
.debug_frame 0x00000000 0x24
.debug_frame 0x00000000 0xb0
*(.debug_frame)
.debug_frame 0x00000000 0x24 USBLaminator.o
.debug_frame 0x00000000 0xb0 USBLaminator.o
.debug_str 0x00000000 0x9a
.debug_str 0x00000000 0x1103
*(.debug_str)
.debug_str 0x00000000 0x9a USBLaminator.o
0xce (size before relaxing)
.debug_str 0x00000000 0x1103 USBLaminator.o
0x114e (size before relaxing)
.debug_loc
.debug_loc 0x00000000 0x301
*(.debug_loc)
.debug_loc 0x00000000 0x301 USBLaminator.o
.debug_macinfo
*(.debug_macinfo)
@ -366,9 +466,9 @@ LOAD c:/program files (x86)/atmel/atmel toolchain/avr8 gcc/native/3.4.2.876/avr8
.debug_pubtypes
*(.debug_pubtypes)
.debug_ranges 0x00000000 0x10
.debug_ranges 0x00000000 0x40
*(.debug_ranges)
.debug_ranges 0x00000000 0x10 USBLaminator.o
.debug_ranges 0x00000000 0x40 USBLaminator.o
.debug_macro
*(.debug_macro)

View File

@ -1,10 +1,54 @@
S01400005553424C616D696E61746F722E737265637F
S11300000C942A000C9434000C9434000C943400A6
S11300100C9434000C9434000C9434000C9434008C
S11300200C9434000C9434000C9434000C9434007C
S11300300C9434000C9434000C9434000C9434006C
S11300400C9434000C9434000C9434000C9434005C
S11300500C94340011241FBECFE5D4E0DEBFCDBF25
S11300600E9436000C9437000C940000FFCFF894E3
S1050070FFCFBC
S11300000C942B000C9453000C9453000C94530048
S11300100C9453000C9453000C94FE000C94530065
S11300200C9453000C9453000C9453000C94530000
S11300300C9453000C9453000C9453000C945300F0
S11300400C9453000C9453000C9453000C945300E0
S11300500C945300530111241FBECFE5D4E0DEBF3E
S1130060CDBF10E0A0E6B0E0E2EDF2E002C0059002
S11300700D92A03CB107D9F720E0A0ECB0E001C09C
S11300801D92A33CB207E1F710E0C6E5D0E004C03E
S11300902297FE010E946301C435D107C9F70E946B
S11300A0FB000C9467010C940000CF93C49ABC9A93
S11300B0AA98A29AAB98A39AAC98A49AAD98A59A38
S11300C0AE98A69AAF98A79AE1E6F0E083E2C39AC5
S11300D0BB9A5D9BFECF8CB9C398BB9A8191811169
S11300E0F6CFAA98A29AAB98A39AAC98A49AAD9882
S11300F0A59AAE98A69AAF98A79A20E030E041E07E
S113010050E0CA01022E02C0880F991F0A94E2F738
S1130110A82FA17080FF02C0AA9AA29AF82FF270A9
S113012081FF02C0AB9AA39AE82FE47082FF02C059
S1130130AC9AA49A782F787083FF02C0AD9AA59ADE
S1130140682F607184FF02C0AE9AA69A982F9072AD
S113015085FF02C0AF9AA79A8FE7BAE1C6E0815043
S1130160B040C040E1F700C00000AA2311F0AA98F3
S1130170A29AFF2311F0AB98A39AEE2311F0AC9846
S1130180A49A772311F0AD98A59A662311F0AE983E
S1130190A69A992311F0AF98A79A2F5F3F4F263064
S11301A0310509F0AECFAA98A29AAB98A39AAC985D
S11301B0A49AAD98A59AAE98A69AAF98A79A1FBC90
S11301C08EB58B608EBD1DBC1CBC17BC16BC81E6F5
S11301D08BBD88EA8ABD19BC18BC89B7806189BF08
S11301E07894C498BC9AC39ABB9AC398BB9AC29A8F
S11301F0BA9ACF9108950E945500FFCF1F920F9293
S11302000FB60F9211248F939F9395B384E089279F
S113021085BB9F918F910F900FBE0F901F901895E3
S1130220CF93DF931F92CDB7DEB76983BC9ABB9A95
S1130230BA9AC498BC9AC398BB9AC298BA9A81E8ED
S113024089B988E08AB986E880BDE3EBF0E085E50A
S1130250C39ABB9A5D9BFECF8CB9C398BB9A81911C
S11302608111F6CF0F90DF91CF910895BC9ABB9A7C
S1130270BA9AC498BC9AC398BB9AC298BA9A089579
S1130280A29AA39AA49AA59AA69AA79AAA98A29A75
S1130290AB98A39AAC98A49AAD98A59AAE98A69A4E
S11302A0AF98A79A089582EC90E00E94360181EC01
S11302B090E00E94400160E080EC90E00E94100118
S11302C00895EE0FFF1F0590F491E02D0994F89422
S10502D0FFCF5A
S11302D22323232320426567696E20426F6F74755E
S11302E2702023232323232323232323232323238E
S11302F223232323232323232323232323232323C8
S113030223232323232323232323232323232323B7
S113031223232323232323232323232323232323A7
S11303220A005561727420646F6E65210D0A000023
S9030000FC

View File

View File

@ -5,13 +5,35 @@
* Author: netz
*/
#include "peripheral.h"
#include <avr/io.h>
ledclass l;
ssrclass o;
usartclass r(l);
void setup()
{
l.on(l.RED);
o.off();
r.send("#### Begin Bootup ##############################################################\n");
o.test();
o.setup_timer();
l.off(l.RED);
l.on(l.YELLOW);
//adc on
//button on
l.off(l.YELLOW);
l.on(l.GREEN);
}
int main(void)
{
setup();
while(1)
{
//TODO:: Please write your application code
}
}
ISR(TIMER1_COMPA_vect) {
o.timer();
}

View File

@ -27,14 +27,14 @@
<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>
<options />
<configurations />
<files />
<documentation help="" />
<dependencies>
<content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.7.2" />
</dependencies>
</framework-data>
</AsfFrameworkConfig>
<avrtool>com.atmel.avrdbg.tool.ispmk2</avrtool>
<avrtoolinterface>ISP</avrtoolinterface>
@ -44,7 +44,7 @@
<ToolNumber>0000000000000</ToolNumber>
<Channel>
<host>127.0.0.1</host>
<port>2444</port>
<port>10439</port>
<ssl>False</ssl>
</Channel>
<ToolOptions>
@ -62,90 +62,132 @@
</InterfaceProperties>
</ToolOptions>
</com_atmel_avrdbg_tool_ispmk2>
<com_atmel_avrdbg_tool_simulator>
<ToolType xmlns="">com.atmel.avrdbg.tool.simulator</ToolType>
<ToolName xmlns="">Simulator</ToolName>
<ToolNumber xmlns="">
</ToolNumber>
<Channel xmlns="">
<host>127.0.0.1</host>
<port>10439</port>
<ssl>False</ssl>
</Channel>
</com_atmel_avrdbg_tool_simulator>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<ToolchainSettings>
<AvrGccCpp>
<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>
<avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>
<avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>
<avrgcccpp.compiler.symbols.DefSymbols>
<ListValues>
<Value>NDEBUG</Value>
</ListValues>
</avrgcccpp.compiler.symbols.DefSymbols>
<avrgcccpp.compiler.optimization.level>Optimize for size (-Os)</avrgcccpp.compiler.optimization.level>
<avrgcccpp.compiler.optimization.PackStructureMembers>True</avrgcccpp.compiler.optimization.PackStructureMembers>
<avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>
<avrgcccpp.compiler.warnings.AllWarnings>True</avrgcccpp.compiler.warnings.AllWarnings>
<avrgcccpp.linker.libraries.Libraries>
<ListValues>
<Value>libm</Value>
</ListValues>
</avrgcccpp.linker.libraries.Libraries>
<avrgcccpp.linker.memorysettings.Comment>&lt;segmentname&gt;=&lt;address&gt;, for example .boot=0xff</avrgcccpp.linker.memorysettings.Comment>
</AvrGccCpp>
<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>
<avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>
<avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>
<avrgcccpp.compiler.symbols.DefSymbols>
<ListValues>
<Value>NDEBUG</Value>
</ListValues>
</avrgcccpp.compiler.symbols.DefSymbols>
<avrgcccpp.compiler.optimization.level>Optimize for size (-Os)</avrgcccpp.compiler.optimization.level>
<avrgcccpp.compiler.optimization.PackStructureMembers>True</avrgcccpp.compiler.optimization.PackStructureMembers>
<avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>
<avrgcccpp.compiler.warnings.AllWarnings>True</avrgcccpp.compiler.warnings.AllWarnings>
<avrgcccpp.linker.libraries.Libraries>
<ListValues>
<Value>libm</Value>
</ListValues>
</avrgcccpp.linker.libraries.Libraries>
<avrgcccpp.linker.memorysettings.Comment>&lt;segmentname&gt;=&lt;address&gt;, for example .boot=0xff</avrgcccpp.linker.memorysettings.Comment>
</AvrGccCpp>
</ToolchainSettings>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<ToolchainSettings>
<AvrGccCpp>
<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>
<avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>
<avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>
<avrgcccpp.compiler.symbols.DefSymbols>
<ListValues>
<Value>DEBUG</Value>
</ListValues>
</avrgcccpp.compiler.symbols.DefSymbols>
<avrgcccpp.compiler.optimization.level>Optimize (-O1)</avrgcccpp.compiler.optimization.level>
<avrgcccpp.compiler.optimization.PackStructureMembers>True</avrgcccpp.compiler.optimization.PackStructureMembers>
<avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>
<avrgcccpp.compiler.optimization.DebugLevel>Default (-g2)</avrgcccpp.compiler.optimization.DebugLevel>
<avrgcccpp.compiler.warnings.AllWarnings>True</avrgcccpp.compiler.warnings.AllWarnings>
<avrgcccpp.linker.libraries.Libraries>
<ListValues>
<Value>libm</Value>
</ListValues>
</avrgcccpp.linker.libraries.Libraries>
<avrgcccpp.linker.memorysettings.Comment>&lt;segmentname&gt;=&lt;address&gt;, for example .boot=0xff</avrgcccpp.linker.memorysettings.Comment>
<avrgcccpp.assembler.debugging.DebugLevel>Default (-Wa,-g)</avrgcccpp.assembler.debugging.DebugLevel>
</AvrGccCpp>
<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>
<avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultCharTypeUnsigned>
<avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>True</avrgcccpp.compiler.general.ChangeDefaultBitFieldUnsigned>
<avrgcccpp.compiler.symbols.DefSymbols>
<ListValues>
<Value>DEBUG</Value>
</ListValues>
</avrgcccpp.compiler.symbols.DefSymbols>
<avrgcccpp.compiler.optimization.level>Optimize (-O1)</avrgcccpp.compiler.optimization.level>
<avrgcccpp.compiler.optimization.PackStructureMembers>True</avrgcccpp.compiler.optimization.PackStructureMembers>
<avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>True</avrgcccpp.compiler.optimization.AllocateBytesNeededForEnum>
<avrgcccpp.compiler.optimization.DebugLevel>Default (-g2)</avrgcccpp.compiler.optimization.DebugLevel>
<avrgcccpp.compiler.warnings.AllWarnings>True</avrgcccpp.compiler.warnings.AllWarnings>
<avrgcccpp.linker.libraries.Libraries>
<ListValues>
<Value>libm</Value>
</ListValues>
</avrgcccpp.linker.libraries.Libraries>
<avrgcccpp.linker.memorysettings.Comment>&lt;segmentname&gt;=&lt;address&gt;, for example .boot=0xff</avrgcccpp.linker.memorysettings.Comment>
<avrgcccpp.assembler.debugging.DebugLevel>Default (-Wa,-g)</avrgcccpp.assembler.debugging.DebugLevel>
</AvrGccCpp>
</ToolchainSettings>
</PropertyGroup>
<ItemGroup>
<Compile Include="io\hardware\pin.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="io\hardware\porta.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="io\hardware\portb.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="io\hardware\portc.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="io\hardware\portd.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="io\Led.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="io\SSR.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="io\Usart.hpp">
<SubType>compile</SubType>
</Compile>
<Compile Include="peripheral.h">
<SubType>compile</SubType>
</Compile>
<Compile Include="USBLaminator.cpp">
<SubType>compile</SubType>
</Compile>
</ItemGroup>
<ItemGroup>
<Folder Include="io" />
<Folder Include="io\hardware" />
</ItemGroup>
<Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\Compiler.targets" />
</Project>

View File

@ -0,0 +1,68 @@
/*
* Led.h
*
* Created: 03.11.2013 17:11:58
* Author: BlubbFish
*/
#ifndef LED_H_
#define LED_H_
#include "hardware/pin.hpp"
template <typename Port, int pin_red, int pin_yellow, int pin_green>
class Led {
public:
Led() {
init();
}
void off(uint8_t led = 0b00000111) {
if(led & this->RED) {
red::make_low();
}
if(led & this->YELLOW) {
yellow::make_low();
}
if(led & this->GREEN) {
green::make_low();
}
}
void on(uint8_t led = 0b00000111) {
if(led & this->RED) {
red::make_high();
}
if(led & this->YELLOW) {
yellow::make_high();
}
if(led & this->GREEN) {
green::make_high();
}
}
void toggle(uint8_t led = 0b00000111) {
if(led & this->RED) {
red::toggle();
}
if(led & this->YELLOW) {
yellow::toggle();
}
if(led & this->GREEN) {
green::toggle();
}
}
static const uint8_t RED = (1<<0);
static const uint8_t YELLOW = (1<<1);
static const uint8_t GREEN = (1<<2);
private:
void init() {
red::make_output();
yellow::make_output();
green::make_output();
off();
}
void uninit();
const typedef avrlib::pin<Port, pin_red> red;
const typedef avrlib::pin<Port, pin_yellow> yellow;
const typedef avrlib::pin<Port, pin_green> green;
};
#endif /* LED_H_ */

View File

@ -0,0 +1,148 @@
/*
* SSR.hpp
*
* Created: 16.07.2016 00:56:08
* Author: netz
*/
#ifndef SSR_H_
#define SSR_H_
#include <util/delay.h>
#include <avr/interrupt.h>
#include "hardware/pin.hpp"
template <typename Port, int pin_out1, int pin_out2, int pin_out3, int pin_out4, int pin_out5, int pin_out6>
class SSR {
public:
SSR() {
init();
}
void off(uint8_t ausg = 255) {
if(ausg & OUT1) {
out1::make_low();
}
if(ausg & OUT2) {
out2::make_low();
}
if(ausg & OUT3) {
out3::make_low();
}
if(ausg & OUT4) {
out4::make_low();
}
if(ausg & OUT5) {
out5::make_low();
}
if(ausg & OUT6) {
out6::make_low();
}
}
void on(uint8_t ausg = 255) {
if(ausg & OUT1) {
out1::make_high();
}
if(ausg & OUT2) {
out2::make_high();
}
if(ausg & OUT3) {
out3::make_high();
}
if(ausg & OUT4) {
out4::make_high();
}
if(ausg & OUT5) {
out5::make_high();
}
if(ausg & OUT6) {
out6::make_high();
}
}
void toggle(uint8_t ausg = 255) {
if(ausg & OUT1) {
out1::toggle();
}
if(ausg & OUT2) {
out2::toggle();
}
if(ausg & OUT3) {
out3::toggle();
}
if(ausg & OUT4) {
out4::toggle();
}
if(ausg & OUT5) {
out5::toggle();
}
if(ausg & OUT6) {
out6::toggle();
}
}
void test() {
off();
for (uint8_t i=0;i<6;i++) {
on((1<<i));
_delay_ms(100);
off((1<<i));
}
off();
}
void timer() {
out1::toggle();
}
void setup_timer() {
// Timer/Counter 1 initialization
// Clock source: System Clock
// Clock value: 250,000 kHz
// Mode: CTC top=OCR1A
// OC1A output: Disconnected
// OC1B output: Disconnected
// Noise Canceler: Off
// Input Capture on Falling Edge
// Timer Period: 0,1 s
// Timer1 Overflow Interrupt: Off
// Input Capture Interrupt: Off
// Compare A Match Interrupt: On
// Compare B Match Interrupt: Off
TCCR1A = 0;
TCCR1B |= (1<<WGM12) | (1<<CS11) | (1<<CS10);
TCNT1H = 0;
TCNT1L = 0;
ICR1H = 0;
ICR1L = 0;
OCR1AH = 0x61;
OCR1AL = 0xA8;
OCR1BH = 0;
OCR1BL = 0;
// Timer(s)/Counter(s) Interrupt(s) initialization
TIMSK |= (1<<OCIE1A);
sei();
}
static const uint8_t OUT1 = (1<<0);
static const uint8_t OUT2 = (1<<1);
static const uint8_t OUT3 = (1<<2);
static const uint8_t OUT4 = (1<<3);
static const uint8_t OUT5 = (1<<4);
static const uint8_t OUT6 = (1<<5);
private:
void init() {
out1::make_output();
out2::make_output();
out3::make_output();
out4::make_output();
out5::make_output();
out6::make_output();
off();
}
void uninit();
const typedef avrlib::pin<Port, pin_out1> out1;
const typedef avrlib::pin<Port, pin_out2> out2;
const typedef avrlib::pin<Port, pin_out3> out3;
const typedef avrlib::pin<Port, pin_out4> out4;
const typedef avrlib::pin<Port, pin_out5> out5;
const typedef avrlib::pin<Port, pin_out6> out6;
};
#endif /* SSR_H_ */

View File

@ -0,0 +1,46 @@
/*
* Usart.hpp
*
* Created: 16.07.2016 12:58:49
* Author: netz
*/
#ifndef USART_H_
#define USART_H_
template <uint32_t baudrate>
class Usart {
public:
Usart(ledclass l) {
init();
this->led = l;
send("Uart done!\r\n");
}
void send(const char *text) {
while (*text)
{
uart_putchar(*text);
text++;
}
}
void send(uint8_t wert) {
uart_putchar(wert);
}
private:
void init() {
UBRRL = (F_CPU / (baudrate * 16L) - 1); //Teiler wird gesetzt
UCSRB = /*(1<<RXEN1) | (1<<RXCIE1) | */ (1<<TXEN); //Enable TXEN im Register UCR TX-Data Enable
UCSRC = (1<<URSEL) | (3<<UCSZ0); //8N1
}
uint8_t uart_putchar(uint8_t c) {
led.on(led.YELLOW);
loop_until_bit_is_set(UCSRA, UDRE); //Ausgabe des Zeichens
UDR = c;
led.off(led.YELLOW);
return 0;
}
ledclass led;
};
#endif /* USART_H_ */

View File

@ -0,0 +1,50 @@
#ifndef AVRLIB_PIN_HPP
#define AVRLIB_PIN_HPP
#include <avr/io.h>
namespace avrlib {
template <typename Port, uint8_t Pin>
struct pin
{
static void set(bool value = true)
{
if (value)
Port::port(Port::port() | (1<<Pin));
else
Port::port(Port::port() & ~(1<<Pin));
}
static void clear() { set(false); }
static void toggle() { Port::port(Port::port() ^ (1<<Pin)); }
static bool get() { return (Port::port() & (1<<Pin)) != 0; }
static bool value() { return (Port::pin() & (1<<Pin)) != 0; }
static void output(bool value)
{
if (value)
Port::dir(Port::dir() | (1<<Pin));
else
Port::dir(Port::dir() & ~(1<<Pin));
}
static bool output() { return (Port::dir() & (1<<Pin)) != 0; }
static void make_output() { output(true); }
static void make_input() { output(false); clear(); }
static void make_low() { clear(); output(true); }
static void make_high() { set(); output(true); }
static void set_value(bool value) { set(value); }
static void set_high() { set(true); }
static void set_low() { set(false); }
static bool read() { return value(); }
static void pullup() { set_high(); }
};
}
#endif

View File

@ -0,0 +1,22 @@
#ifndef AVRLIB_PORTA_HPP
#define AVRLIB_PORTA_HPP
#include <avr/io.h>
namespace avrlib {
struct porta
{
static uint8_t port() { return PORTA; }
static void port(uint8_t v) { PORTA = v; }
static uint8_t pin() { return PINA; }
static void pin(uint8_t v) { PINA = v; }
static uint8_t dir() { return DDRA; }
static void dir(uint8_t v) { DDRA = v; }
};
}
#endif

View File

@ -0,0 +1,22 @@
#ifndef AVRLIB_PORTB_HPP
#define AVRLIB_PORTB_HPP
#include <avr/io.h>
namespace avrlib {
struct portb
{
static uint8_t port() { return PORTB; }
static void port(uint8_t v) { PORTB = v; }
static uint8_t pin() { return PINB; }
static void pin(uint8_t v) { PINB = v; }
static uint8_t dir() { return DDRB; }
static void dir(uint8_t v) { DDRB = v; }
};
}
#endif

View File

@ -0,0 +1,22 @@
#ifndef AVRLIB_PORTC_HPP
#define AVRLIB_PORTC_HPP
#include <avr/io.h>
namespace avrlib {
struct portc
{
static uint8_t port() { return PORTC; }
static void port(uint8_t v) { PORTC = v; }
static uint8_t pin() { return PINC; }
static void pin(uint8_t v) { PINC = v; }
static uint8_t dir() { return DDRC; }
static void dir(uint8_t v) { DDRC = v; }
};
}
#endif

View File

@ -0,0 +1,22 @@
#ifndef AVRLIB_PORTD_HPP
#define AVRLIB_PORTD_HPP
#include <avr/io.h>
namespace avrlib {
struct portd
{
static uint8_t port() { return PORTD; }
static void port(uint8_t v) { PORTD = v; }
static uint8_t pin() { return PIND; }
static void pin(uint8_t v) { PIND = v; }
static uint8_t dir() { return DDRD; }
static void dir(uint8_t v) { DDRD = v; }
};
}
#endif

View File

@ -0,0 +1,45 @@
/*
* peripheral.h
*
* Created: 16.07.2016 00:16:53
* Author: netz
*/
#ifndef PERIPHERAL_H_
#define PERIPHERAL_H_
#define F_CPU 20000000
#include <avr/io.h>
#include "io/hardware/portb.hpp"
#include "io/hardware/portc.hpp"
#include "io/Led.hpp"
typedef Led<
avrlib::portb, //LED an PORTD
PINB4, //Rot
PINB3, //Gelb
PINB2 //Grün
> ledclass;
#include "io/SSR.hpp"
typedef SSR<
avrlib::portc,
PINC2,
PINC3,
PINC4,
PINC5,
PINC6,
PINC7
> ssrclass;
#include "io/Usart.hpp"
typedef Usart<
9600
> usartclass;
#endif /* PERIPHERAL_H_ */