diff --git a/MIC-Week1/.vs/MIC-Week1/v14/.atsuo b/MIC-Week1/.vs/MIC-Week1/v14/.atsuo index 6337d2a..6ab952b 100644 Binary files a/MIC-Week1/.vs/MIC-Week1/v14/.atsuo and b/MIC-Week1/.vs/MIC-Week1/v14/.atsuo differ diff --git a/MIC-Week1/Debug/MIC-Week1.lss b/MIC-Week1/Debug/MIC-Week1.lss index b3b511b..86872df 100644 --- a/MIC-Week1/Debug/MIC-Week1.lss +++ b/MIC-Week1/Debug/MIC-Week1.lss @@ -23,11 +23,11 @@ Idx Name Size VMA LMA File off Algn CONTENTS, READONLY, DEBUGGING 9 .debug_frame 000000ec 00000000 00000000 00000d70 2**2 CONTENTS, READONLY, DEBUGGING - 10 .debug_str 00000220 00000000 00000000 00000e5c 2**0 + 10 .debug_str 0000022b 00000000 00000000 00000e5c 2**0 CONTENTS, READONLY, DEBUGGING - 11 .debug_loc 00000163 00000000 00000000 0000107c 2**0 + 11 .debug_loc 00000163 00000000 00000000 00001087 2**0 CONTENTS, READONLY, DEBUGGING - 12 .debug_ranges 00000060 00000000 00000000 000011df 2**0 + 12 .debug_ranges 00000060 00000000 00000000 000011ea 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: diff --git a/MIC-Week1/Debug/MIC-Week1.map b/MIC-Week1/Debug/MIC-Week1.map index 23d7c37..4e0bc14 100644 --- a/MIC-Week1/Debug/MIC-Week1.map +++ b/MIC-Week1/Debug/MIC-Week1.map @@ -1,7 +1,7 @@ Archive member included to satisfy reference by file (symbol) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_exit.o) - C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o (exit) + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o (exit) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_copy_data.o) main.o (__do_copy_data) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_clear_bss.o) @@ -9,8 +9,8 @@ c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/.. Discarded input sections - .data 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o - .bss 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .data 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o + .bss 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o .text 0x00000000 0x0 main.o .data 0x00000000 0x0 main.o .bss 0x00000000 0x0 main.o @@ -92,7 +92,7 @@ user_signatures 0x00850000 0x00000400 rw !x Linker script and memory map Address of section .data set to 0x800100 -LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o LOAD main.o START GROUP LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libm.a @@ -101,7 +101,7 @@ START GROUP LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libm.a LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libc.a -LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51\libatmega128.a +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51\libatmega128.a END GROUP .hash @@ -196,7 +196,7 @@ END GROUP .text 0x00000000 0x22a *(.vectors) - .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x00000000 __vector_default 0x00000000 __vectors *(.vectors) @@ -222,13 +222,13 @@ END GROUP SORT(*)(.ctors) SORT(*)(.dtors) *(.init0) - .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x0000008c __init *(.init0) *(.init1) *(.init1) *(.init2) - .init2 0x0000008c 0xc C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init2 0x0000008c 0xc C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o *(.init2) *(.init3) *(.init3) @@ -247,10 +247,10 @@ END GROUP *(.init8) *(.init8) *(.init9) - .init9 0x000000c2 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init9 0x000000c2 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o *(.init9) *(.text) - .text 0x000000c6 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .text 0x000000c6 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x000000c6 __vector_22 0x000000c6 __vector_28 0x000000c6 __vector_1 @@ -403,7 +403,7 @@ END GROUP .note.gnu.avr.deviceinfo 0x00000000 0x3c .note.gnu.avr.deviceinfo - 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o .note.gnu.build-id *(.note.gnu.build-id) @@ -444,10 +444,10 @@ END GROUP *(.debug_frame) .debug_frame 0x00000000 0xec main.o -.debug_str 0x00000000 0x220 +.debug_str 0x00000000 0x22b *(.debug_str) - .debug_str 0x00000000 0x220 main.o - 0x254 (size before relaxing) + .debug_str 0x00000000 0x22b main.o + 0x25f (size before relaxing) .debug_loc 0x00000000 0x163 *(.debug_loc) diff --git a/MIC-Week1/Debug/Makefile b/MIC-Week1/Debug/Makefile index 84f1fec..afdcae5 100644 --- a/MIC-Week1/Debug/Makefile +++ b/MIC-Week1/Debug/Makefile @@ -78,7 +78,7 @@ LINKER_SCRIPT_DEP+= ./%.o: .././%.c @echo Building file: $< @echo Invoking: AVR/GNU C Compiler : 4.9.2 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -mrelax -g2 -Wall -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -mrelax -g2 -Wall -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" @echo Finished building: $< @@ -107,7 +107,7 @@ all: $(OUTPUT_FILE_PATH) $(ADDITIONAL_DEPENDENCIES) $(OUTPUT_FILE_PATH): $(OBJS) $(USER_OBJS) $(OUTPUT_FILE_DEP) $(LIB_DEP) $(LINKER_SCRIPT_DEP) @echo Building target: $@ @echo Invoking: AVR/GNU Linker : 4.9.2 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="MIC-Week1.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mrelax -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="MIC-Week1.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mrelax -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" @echo Finished building target: $@ "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature -R .user_signatures "MIC-Week1.elf" "MIC-Week1.hex" "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\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 "MIC-Week1.elf" "MIC-Week1.eep" || exit 0 diff --git a/MIC-Week1/Debug/main.d b/MIC-Week1/Debug/main.d index ffef84e..dc3bcf4 100644 --- a/MIC-Week1/Debug/main.d +++ b/MIC-Week1/Debug/main.d @@ -5,7 +5,7 @@ main.d main.o: .././main.c \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\inttypes.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\gcc\avr\4.9.2\include\stdint.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h \ - C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h \ + C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\common.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\version.h \ @@ -27,7 +27,7 @@ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h: -C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h: +C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h: c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h: diff --git a/MIC-Week1/MIC-Week1.componentinfo.xml b/MIC-Week1/MIC-Week1.componentinfo.xml index 5b64613..5ceaf94 100644 --- a/MIC-Week1/MIC-Week1.componentinfo.xml +++ b/MIC-Week1/MIC-Week1.componentinfo.xml @@ -15,7 +15,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include include C @@ -26,7 +26,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include\avr\iom128.h + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include\avr\iom128.h header C @@ -37,7 +37,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\templates\main.c + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.c template source C Exe @@ -48,7 +48,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\templates\main.cpp + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.cpp template source C Exe @@ -59,7 +59,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128 libraryPrefix GCC @@ -71,8 +71,8 @@ ATmega_DFP - C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/Atmel.ATmega_DFP.pdsc - 1.0.91 + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/Atmel.ATmega_DFP.pdsc + 1.0.90 true ATmega128 diff --git a/MIC-Week1/MIC-Week1.cproj b/MIC-Week1/MIC-Week1.cproj index 40e05fa..a5fd715 100644 --- a/MIC-Week1/MIC-Week1.cproj +++ b/MIC-Week1/MIC-Week1.cproj @@ -55,7 +55,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" True True True @@ -71,7 +71,7 @@ - %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include + %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include Optimize for size (-Os) @@ -89,7 +89,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" True True True @@ -105,7 +105,7 @@ - %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include + %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include Optimize (-O1) diff --git a/MIC-Week2/Debug/MIC-Week2.lss b/MIC-Week2/Debug/MIC-Week2.lss index 0b30920..6c4ca8b 100644 --- a/MIC-Week2/Debug/MIC-Week2.lss +++ b/MIC-Week2/Debug/MIC-Week2.lss @@ -23,11 +23,11 @@ Idx Name Size VMA LMA File off Algn CONTENTS, READONLY, DEBUGGING 9 .debug_frame 00000184 00000000 00000000 00000e44 2**2 CONTENTS, READONLY, DEBUGGING - 10 .debug_str 00000218 00000000 00000000 00000fc8 2**0 + 10 .debug_str 00000223 00000000 00000000 00000fc8 2**0 CONTENTS, READONLY, DEBUGGING - 11 .debug_loc 000003c9 00000000 00000000 000011e0 2**0 + 11 .debug_loc 000003c9 00000000 00000000 000011eb 2**0 CONTENTS, READONLY, DEBUGGING - 12 .debug_ranges 00000068 00000000 00000000 000015a9 2**0 + 12 .debug_ranges 00000068 00000000 00000000 000015b4 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: diff --git a/MIC-Week2/Debug/MIC-Week2.map b/MIC-Week2/Debug/MIC-Week2.map index f135963..7eb288d 100644 --- a/MIC-Week2/Debug/MIC-Week2.map +++ b/MIC-Week2/Debug/MIC-Week2.map @@ -1,7 +1,7 @@ Archive member included to satisfy reference by file (symbol) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_exit.o) - C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o (exit) + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o (exit) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_copy_data.o) main.o (__do_copy_data) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_clear_bss.o) @@ -14,8 +14,8 @@ opdr 0x2 main.o Discarded input sections - .data 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o - .bss 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .data 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o + .bss 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o .text 0x00000000 0x0 main.o .data 0x00000000 0x0 main.o .bss 0x00000000 0x0 main.o @@ -89,7 +89,7 @@ user_signatures 0x00850000 0x00000400 rw !x Linker script and memory map Address of section .data set to 0x800100 -LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o LOAD main.o START GROUP LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libm.a @@ -98,7 +98,7 @@ START GROUP LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libm.a LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libc.a -LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51\libatmega128.a +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51\libatmega128.a END GROUP .hash @@ -193,7 +193,7 @@ END GROUP .text 0x00000000 0x294 *(.vectors) - .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x00000000 __vector_default 0x00000000 __vectors *(.vectors) @@ -219,13 +219,13 @@ END GROUP SORT(*)(.ctors) SORT(*)(.dtors) *(.init0) - .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x0000008c __init *(.init0) *(.init1) *(.init1) *(.init2) - .init2 0x0000008c 0xc C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init2 0x0000008c 0xc C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o *(.init2) *(.init3) *(.init3) @@ -244,10 +244,10 @@ END GROUP *(.init8) *(.init8) *(.init9) - .init9 0x000000c2 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init9 0x000000c2 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o *(.init9) *(.text) - .text 0x000000c6 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .text 0x000000c6 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x000000c6 __vector_22 0x000000c6 __vector_28 0x000000c6 __vector_32 @@ -409,7 +409,7 @@ END GROUP .note.gnu.avr.deviceinfo 0x00000000 0x3c .note.gnu.avr.deviceinfo - 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o .note.gnu.build-id *(.note.gnu.build-id) @@ -450,10 +450,10 @@ END GROUP *(.debug_frame) .debug_frame 0x00000000 0x184 main.o -.debug_str 0x00000000 0x218 +.debug_str 0x00000000 0x223 *(.debug_str) - .debug_str 0x00000000 0x218 main.o - 0x251 (size before relaxing) + .debug_str 0x00000000 0x223 main.o + 0x25c (size before relaxing) .debug_loc 0x00000000 0x3c9 *(.debug_loc) diff --git a/MIC-Week2/Debug/Makefile b/MIC-Week2/Debug/Makefile index 7639310..a37d0d6 100644 --- a/MIC-Week2/Debug/Makefile +++ b/MIC-Week2/Debug/Makefile @@ -78,7 +78,7 @@ LINKER_SCRIPT_DEP+= ./%.o: .././%.c @echo Building file: $< @echo Invoking: AVR/GNU C Compiler : 4.9.2 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -mrelax -g2 -Wall -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -mrelax -g2 -Wall -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" @echo Finished building: $< @@ -107,7 +107,7 @@ all: $(OUTPUT_FILE_PATH) $(ADDITIONAL_DEPENDENCIES) $(OUTPUT_FILE_PATH): $(OBJS) $(USER_OBJS) $(OUTPUT_FILE_DEP) $(LIB_DEP) $(LINKER_SCRIPT_DEP) @echo Building target: $@ @echo Invoking: AVR/GNU Linker : 4.9.2 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="MIC-Week2.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mrelax -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="MIC-Week2.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mrelax -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" @echo Finished building target: $@ "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature -R .user_signatures "MIC-Week2.elf" "MIC-Week2.hex" "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\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 "MIC-Week2.elf" "MIC-Week2.eep" || exit 0 diff --git a/MIC-Week2/Debug/main.d b/MIC-Week2/Debug/main.d index 5405d3a..f45a877 100644 --- a/MIC-Week2/Debug/main.d +++ b/MIC-Week2/Debug/main.d @@ -4,7 +4,7 @@ main.d main.o: .././main.c \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\inttypes.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\gcc\avr\4.9.2\include\stdint.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h \ - C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h \ + C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\common.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\version.h \ @@ -25,7 +25,7 @@ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h: -C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h: +C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h: c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h: diff --git a/MIC-Week2/MIC-Week2.componentinfo.xml b/MIC-Week2/MIC-Week2.componentinfo.xml index 5b64613..5ceaf94 100644 --- a/MIC-Week2/MIC-Week2.componentinfo.xml +++ b/MIC-Week2/MIC-Week2.componentinfo.xml @@ -15,7 +15,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include include C @@ -26,7 +26,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include\avr\iom128.h + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include\avr\iom128.h header C @@ -37,7 +37,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\templates\main.c + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.c template source C Exe @@ -48,7 +48,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\templates\main.cpp + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.cpp template source C Exe @@ -59,7 +59,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128 libraryPrefix GCC @@ -71,8 +71,8 @@ ATmega_DFP - C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/Atmel.ATmega_DFP.pdsc - 1.0.91 + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/Atmel.ATmega_DFP.pdsc + 1.0.90 true ATmega128 diff --git a/MIC-Week2/MIC-Week2.cproj b/MIC-Week2/MIC-Week2.cproj index c34381a..5d48a58 100644 --- a/MIC-Week2/MIC-Week2.cproj +++ b/MIC-Week2/MIC-Week2.cproj @@ -42,7 +42,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" True True True @@ -58,7 +58,7 @@ - %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include + %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include Optimize for size (-Os) @@ -76,7 +76,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" True True True @@ -92,7 +92,7 @@ - %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include + %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include Optimize (-O1) diff --git a/MIC-Week3/Debug/MIC-Week3.lss b/MIC-Week3/Debug/MIC-Week3.lss index fd6496e..3f603d8 100644 --- a/MIC-Week3/Debug/MIC-Week3.lss +++ b/MIC-Week3/Debug/MIC-Week3.lss @@ -23,11 +23,11 @@ Idx Name Size VMA LMA File off Algn CONTENTS, READONLY, DEBUGGING 9 .debug_frame 00000178 00000000 00000000 000022c4 2**2 CONTENTS, READONLY, DEBUGGING - 10 .debug_str 0000028d 00000000 00000000 0000243c 2**0 + 10 .debug_str 00000298 00000000 00000000 0000243c 2**0 CONTENTS, READONLY, DEBUGGING - 11 .debug_loc 000004aa 00000000 00000000 000026c9 2**0 + 11 .debug_loc 000004aa 00000000 00000000 000026d4 2**0 CONTENTS, READONLY, DEBUGGING - 12 .debug_ranges 00000078 00000000 00000000 00002b73 2**0 + 12 .debug_ranges 00000078 00000000 00000000 00002b7e 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: diff --git a/MIC-Week3/Debug/MIC-Week3.map b/MIC-Week3/Debug/MIC-Week3.map index a83c9e3..d13fcd9 100644 --- a/MIC-Week3/Debug/MIC-Week3.map +++ b/MIC-Week3/Debug/MIC-Week3.map @@ -3,7 +3,7 @@ Archive member included to satisfy reference by file (symbol) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_divmodhi4.o) main.o (__divmodhi4) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_exit.o) - C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o (exit) + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o (exit) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_copy_data.o) main.o (__do_copy_data) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_clear_bss.o) @@ -39,8 +39,8 @@ c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/.. Discarded input sections - .data 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o - .bss 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .data 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o + .bss 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o .text 0x00000000 0x0 lcd.o .data 0x00000000 0x0 lcd.o .bss 0x00000000 0x0 lcd.o @@ -288,7 +288,7 @@ user_signatures 0x00850000 0x00000400 rw !x Linker script and memory map Address of section .data set to 0x800100 -LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o LOAD lcd.o LOAD main.o START GROUP @@ -298,7 +298,7 @@ START GROUP LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libm.a LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libc.a -LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51\libatmega128.a +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51\libatmega128.a END GROUP .hash @@ -393,7 +393,7 @@ END GROUP .text 0x00000000 0x39e *(.vectors) - .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x00000000 __vector_default 0x00000000 __vectors *(.vectors) @@ -419,13 +419,13 @@ END GROUP SORT(*)(.ctors) SORT(*)(.dtors) *(.init0) - .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x0000008c __init *(.init0) *(.init1) *(.init1) *(.init2) - .init2 0x0000008c 0xc C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init2 0x0000008c 0xc C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o *(.init2) *(.init3) *(.init3) @@ -444,10 +444,10 @@ END GROUP *(.init8) *(.init8) *(.init9) - .init9 0x000000c2 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init9 0x000000c2 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o *(.init9) *(.text) - .text 0x000000c6 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .text 0x000000c6 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x000000c6 __vector_22 0x000000c6 __vector_28 0x000000c6 __vector_1 @@ -619,7 +619,7 @@ END GROUP .note.gnu.avr.deviceinfo 0x00000000 0x3c .note.gnu.avr.deviceinfo - 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o .note.gnu.build-id *(.note.gnu.build-id) @@ -666,12 +666,12 @@ END GROUP .debug_frame 0x00000000 0xac lcd.o .debug_frame 0x000000ac 0xcc main.o -.debug_str 0x00000000 0x28d +.debug_str 0x00000000 0x298 *(.debug_str) - .debug_str 0x00000000 0x1e5 lcd.o - 0x223 (size before relaxing) - .debug_str 0x000001e5 0xa8 main.o - 0x2ad (size before relaxing) + .debug_str 0x00000000 0x1f0 lcd.o + 0x22e (size before relaxing) + .debug_str 0x000001f0 0xa8 main.o + 0x2b8 (size before relaxing) .debug_loc 0x00000000 0x4aa *(.debug_loc) diff --git a/MIC-Week3/Debug/Makefile b/MIC-Week3/Debug/Makefile index 5e3743e..2e06c23 100644 --- a/MIC-Week3/Debug/Makefile +++ b/MIC-Week3/Debug/Makefile @@ -85,7 +85,7 @@ LINKER_SCRIPT_DEP+= ./%.o: .././%.c @echo Building file: $< @echo Invoking: AVR/GNU C Compiler : 4.9.2 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -mrelax -g2 -Wall -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -mrelax -g2 -Wall -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" @echo Finished building: $< @@ -114,7 +114,7 @@ all: $(OUTPUT_FILE_PATH) $(ADDITIONAL_DEPENDENCIES) $(OUTPUT_FILE_PATH): $(OBJS) $(USER_OBJS) $(OUTPUT_FILE_DEP) $(LIB_DEP) $(LINKER_SCRIPT_DEP) @echo Building target: $@ @echo Invoking: AVR/GNU Linker : 4.9.2 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="MIC-Week3.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mrelax -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="MIC-Week3.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mrelax -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" @echo Finished building target: $@ "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature -R .user_signatures "MIC-Week3.elf" "MIC-Week3.hex" "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\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 "MIC-Week3.elf" "MIC-Week3.eep" || exit 0 diff --git a/MIC-Week3/Debug/lcd.d b/MIC-Week3/Debug/lcd.d index 10d8e1d..ef08dd5 100644 --- a/MIC-Week3/Debug/lcd.d +++ b/MIC-Week3/Debug/lcd.d @@ -4,7 +4,7 @@ lcd.d lcd.o: .././lcd.c \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\inttypes.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\gcc\avr\4.9.2\include\stdint.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h \ - C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h \ + C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\common.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\version.h \ @@ -27,7 +27,7 @@ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h: -C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h: +C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h: c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h: diff --git a/MIC-Week3/Debug/main.d b/MIC-Week3/Debug/main.d index fddf5fc..bf24e6c 100644 --- a/MIC-Week3/Debug/main.d +++ b/MIC-Week3/Debug/main.d @@ -4,7 +4,7 @@ main.d main.o: .././main.c \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\inttypes.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\gcc\avr\4.9.2\include\stdint.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h \ - C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h \ + C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\common.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\version.h \ @@ -28,7 +28,7 @@ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h: -C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h: +C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h: c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h: diff --git a/MIC-Week3/MIC-Week3.componentinfo.xml b/MIC-Week3/MIC-Week3.componentinfo.xml index 49ba890..5ceaf94 100644 --- a/MIC-Week3/MIC-Week3.componentinfo.xml +++ b/MIC-Week3/MIC-Week3.componentinfo.xml @@ -15,7 +15,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include include C @@ -26,7 +26,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include\avr\iom128.h + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include\avr\iom128.h header C @@ -37,18 +37,18 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\templates\main.c + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.c template source C Exe - Y3gdIKh8oyi8jcdzNK2ycw== + GD1k8YYhulqRs6FD1B2Hog== templates/main.c Main file (.c) - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\templates\main.cpp + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.cpp template source C Exe @@ -59,7 +59,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128 libraryPrefix GCC @@ -71,8 +71,8 @@ ATmega_DFP - C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/Atmel.ATmega_DFP.pdsc - 1.0.91 + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/Atmel.ATmega_DFP.pdsc + 1.0.90 true ATmega128 diff --git a/MIC-Week3/MIC-Week3.cproj b/MIC-Week3/MIC-Week3.cproj index 407ad73..ba43ee4 100644 --- a/MIC-Week3/MIC-Week3.cproj +++ b/MIC-Week3/MIC-Week3.cproj @@ -28,21 +28,21 @@ 0 - - - - - - - - - + + + + + + + + + - -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" True True True @@ -58,7 +58,7 @@ - %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include + %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include Optimize for size (-Os) @@ -76,7 +76,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" True True True @@ -92,7 +92,7 @@ - %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include + %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include Optimize (-O1) diff --git a/MIC-Week4/Debug/MIC-Week4.lss b/MIC-Week4/Debug/MIC-Week4.lss index 40ab2a8..2d8ba58 100644 --- a/MIC-Week4/Debug/MIC-Week4.lss +++ b/MIC-Week4/Debug/MIC-Week4.lss @@ -3,29 +3,29 @@ MIC-Week4.elf: file format elf32-avr Sections: Idx Name Size VMA LMA File off Algn - 0 .data 00000000 00800100 00800100 00000170 2**0 + 0 .data 00000000 00800100 00800100 00000256 2**0 CONTENTS, ALLOC, LOAD, DATA - 1 .text 0000011c 00000000 00000000 00000054 2**1 + 1 .text 00000202 00000000 00000000 00000054 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE - 2 .comment 00000030 00000000 00000000 00000170 2**0 + 2 .comment 00000030 00000000 00000000 00000256 2**0 CONTENTS, READONLY - 3 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 000001a0 2**2 + 3 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00000288 2**2 CONTENTS, READONLY - 4 .debug_aranges 00000058 00000000 00000000 000001dc 2**0 + 4 .debug_aranges 00000060 00000000 00000000 000002c4 2**0 CONTENTS, READONLY, DEBUGGING - 5 .debug_info 0000084e 00000000 00000000 00000234 2**0 + 5 .debug_info 00000b07 00000000 00000000 00000324 2**0 CONTENTS, READONLY, DEBUGGING - 6 .debug_abbrev 000001e3 00000000 00000000 00000a82 2**0 + 6 .debug_abbrev 0000021b 00000000 00000000 00000e2b 2**0 CONTENTS, READONLY, DEBUGGING - 7 .debug_line 000004b5 00000000 00000000 00000c65 2**0 + 7 .debug_line 000005f4 00000000 00000000 00001046 2**0 CONTENTS, READONLY, DEBUGGING - 8 .debug_frame 00000094 00000000 00000000 0000111c 2**2 + 8 .debug_frame 000000a4 00000000 00000000 0000163c 2**2 CONTENTS, READONLY, DEBUGGING - 9 .debug_str 000001ef 00000000 00000000 000011b0 2**0 + 9 .debug_str 00000212 00000000 00000000 000016e0 2**0 CONTENTS, READONLY, DEBUGGING - 10 .debug_loc 00000361 00000000 00000000 0000139f 2**0 + 10 .debug_loc 000005d6 00000000 00000000 000018f2 2**0 CONTENTS, READONLY, DEBUGGING - 11 .debug_ranges 000000e0 00000000 00000000 00001700 2**0 + 11 .debug_ranges 00000150 00000000 00000000 00001ec8 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: @@ -123,8 +123,8 @@ Disassembly of section .text: a2: a0 30 cpi r26, 0x00 ; 0 a4: b2 07 cpc r27, r18 a6: e1 f7 brne .-8 ; 0xa0 <.do_clear_bss_loop> - a8: 25 d0 rcall .+74 ; 0xf4
- aa: 36 c0 rjmp .+108 ; 0x118 <_exit> + a8: 98 d0 rcall .+304 ; 0x1da
+ aa: a9 c0 rjmp .+338 ; 0x1fe <_exit> 000000ac <__bad_interrupt>: ac: a9 cf rjmp .-174 ; 0x0 <__vectors> @@ -132,7 +132,7 @@ Disassembly of section .text: 000000ae : } -// Set pulse width for RED on pin PB5, 0=off, 255=max +// Set pulse width for Blue on pin PB5, 0=off, 255=max void setBlue( unsigned char blue ) { OCR1C = blue; @@ -181,56 +181,352 @@ void adcInit( void ) f0: 86 b9 out 0x06, r24 ; 6 f2: 08 95 ret -000000f4
: - - -// Main program: Counting on T1 -int main( void ) +000000f4 : + testColor(); + } +} +int testColor(void) { - DDRB = 0xFF; + DDRB = 0xFF; // set PORTB for compare output f4: 8f ef ldi r24, 0xFF ; 255 f6: 87 bb out 0x17, r24 ; 23 - DDRF = 0x00; // set PORTF for input (ADC) - f8: 10 92 61 00 sts 0x0061, r1 - DDRA = 0xFF; // set PORTA for output - fc: 8a bb out 0x1a, r24 ; 26 - adcInit(); // initialize ADC - fe: f5 df rcall .-22 ; 0xea timer1Init(); - 100: e7 df rcall .-50 ; 0xd0 + f8: eb df rcall .-42 ; 0xd0 + wait(100); + fa: 84 e6 ldi r24, 0x64 ; 100 + fc: 90 e0 ldi r25, 0x00 ; 0 + fe: d7 df rcall .-82 ; 0xae +} + +// Set pulse width for Blue on pin PB5, 0=off, 255=max +void setBlue( unsigned char blue ) +{ + OCR1C = blue; + 100: 08 e7 ldi r16, 0x78 ; 120 + 102: 10 e0 ldi r17, 0x00 ; 0 + timer1Init(); + wait(100); while (1) { - ADCSRA |= BIT(6); // Start ADC - 102: 36 9a sbi 0x06, 6 ; 6 - while ( ADCSRA & BIT(6) ) ; // Wait for completion - 104: 36 99 sbic 0x06, 6 ; 6 - 106: fe cf rjmp .-4 ; 0x104 - setRed(ADCH); // Show MSB (bit 9:2) of ADC - 108: 85 b1 in r24, 0x05 ; 5 + int delta = 1; + 104: aa 24 eor r10, r10 + 106: a3 94 inc r10 + 108: b1 2c mov r11, r1 + setGreen( green ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int blue = 0; blue<=255; blue+=delta2) + 10a: cc 24 eor r12, r12 + 10c: ca 94 dec r12 + 10e: d1 2c mov r13, r1 } // Set pulse width for RED on pin PB5, 0=off, 255=max void setRed( unsigned char red ) { OCR1A = red; - 10a: 90 e0 ldi r25, 0x00 ; 0 - 10c: 9b bd out 0x2b, r25 ; 43 - 10e: 8a bd out 0x2a, r24 ; 42 + 110: 1b bc out 0x2b, r1 ; 43 + 112: 1a bc out 0x2a, r1 ; 42 +} + +// Set pulse width for Blue on pin PB5, 0=off, 255=max +void setBlue( unsigned char blue ) +{ + OCR1C = blue; + 114: f8 01 movw r30, r16 + 116: 11 82 std Z+1, r1 ; 0x01 + 118: 10 82 st Z, r1 +} + +// Set pulse width for Green on pin PB5, 0=off, 255=max +void setGreen( unsigned char green ) +{ + OCR1B = green; + 11a: 19 bc out 0x29, r1 ; 41 + 11c: 18 bc out 0x28, r1 ; 40 + int delta2 = 1; + setRed (0); + setBlue(0); + setGreen(0); + + for (int red = 0; red<=255; red+=delta) + 11e: c0 e0 ldi r28, 0x00 ; 0 + 120: d0 e0 ldi r29, 0x00 ; 0 + timer1Init(); + wait(100); + + while (1) + { + int delta = 1; + 122: ea 2c mov r14, r10 + 124: fb 2c mov r15, r11 + 126: ce 01 movw r24, r28 + 128: 99 27 eor r25, r25 +} + +// Set pulse width for RED on pin PB5, 0=off, 255=max +void setRed( unsigned char red ) +{ + OCR1A = red; + 12a: 9b bd out 0x2b, r25 ; 43 + 12c: 8a bd out 0x2a, r24 ; 42 + setGreen(0); + + for (int red = 0; red<=255; red+=delta) + { + setRed( red ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + 12e: f2 e0 ldi r31, 0x02 ; 2 + 130: ef 0e add r14, r31 + 132: f1 1c adc r15, r1 + wait(10); // delay of 100 ms (busy waiting) + 134: 8a e0 ldi r24, 0x0A ; 10 + 136: 90 e0 ldi r25, 0x00 ; 0 + 138: ba df rcall .-140 ; 0xae + int delta2 = 1; + setRed (0); + setBlue(0); + setGreen(0); + + for (int red = 0; red<=255; red+=delta) + 13a: ce 0d add r28, r14 + 13c: df 1d adc r29, r15 + 13e: cf 3f cpi r28, 0xFF ; 255 + 140: d1 05 cpc r29, r1 + 142: 89 f3 breq .-30 ; 0x126 + 144: 84 f3 brlt .-32 ; 0x126 + 146: c0 e0 ldi r28, 0x00 ; 0 + 148: d0 e0 ldi r29, 0x00 ; 0 + 14a: ce 01 movw r24, r28 + 14c: 99 27 eor r25, r25 +} + +// Set pulse width for Green on pin PB5, 0=off, 255=max +void setGreen( unsigned char green ) +{ + OCR1B = green; + 14e: 99 bd out 0x29, r25 ; 41 + 150: 88 bd out 0x28, r24 ; 40 + + for (int green = 0; green<=255; green+=delta1) + { + setGreen( green ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + 152: 8a e0 ldi r24, 0x0A ; 10 + 154: 90 e0 ldi r25, 0x00 ; 0 + 156: ab df rcall .-170 ; 0xae + setRed( red ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int green = 0; green<=255; green+=delta1) + 158: 21 96 adiw r28, 0x01 ; 1 + 15a: c1 15 cp r28, r1 + 15c: 81 e0 ldi r24, 0x01 ; 1 + 15e: d8 07 cpc r29, r24 + 160: a1 f7 brne .-24 ; 0x14a + 162: 33 c0 rjmp .+102 ; 0x1ca + 164: ce 01 movw r24, r28 + 166: 99 27 eor r25, r25 +} + +// Set pulse width for Blue on pin PB5, 0=off, 255=max +void setBlue( unsigned char blue ) +{ + OCR1C = blue; + 168: f8 01 movw r30, r16 + 16a: 91 83 std Z+1, r25 ; 0x01 + 16c: 80 83 st Z, r24 + + for (int blue = 0; blue<=255; blue+=delta2) + { + setBlue( blue ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + 16e: 8a e0 ldi r24, 0x0A ; 10 + 170: 90 e0 ldi r25, 0x00 ; 0 + 172: 9d df rcall .-198 ; 0xae + setGreen( green ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int blue = 0; blue<=255; blue+=delta2) + 174: 21 96 adiw r28, 0x01 ; 1 + 176: c1 15 cp r28, r1 + 178: f1 e0 ldi r31, 0x01 ; 1 + 17a: df 07 cpc r29, r31 + 17c: 99 f7 brne .-26 ; 0x164 + 17e: 28 c0 rjmp .+80 ; 0x1d0 + 180: ce 01 movw r24, r28 + 182: 99 27 eor r25, r25 +} + +// Set pulse width for RED on pin PB5, 0=off, 255=max +void setRed( unsigned char red ) +{ + OCR1A = red; + 184: 9b bd out 0x2b, r25 ; 43 + 186: 8a bd out 0x2a, r24 ; 42 + } + + for (int red = 255; red>=0; red-=delta) + { + setRed( red ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps down + 188: 82 e0 ldi r24, 0x02 ; 2 + 18a: e8 1a sub r14, r24 + 18c: f1 08 sbc r15, r1 + wait(10); // delay of 100 ms (busy waiting) + 18e: 8a e0 ldi r24, 0x0A ; 10 + 190: 90 e0 ldi r25, 0x00 ; 0 + 192: 8d df rcall .-230 ; 0xae + setBlue( blue ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int red = 255; red>=0; red-=delta) + 194: ce 19 sub r28, r14 + 196: df 09 sbc r29, r15 + 198: 9a f7 brpl .-26 ; 0x180 + 19a: cc 2d mov r28, r12 + 19c: dd 2d mov r29, r13 + 19e: ce 01 movw r24, r28 + 1a0: 99 27 eor r25, r25 +} + +// Set pulse width for Green on pin PB5, 0=off, 255=max +void setGreen( unsigned char green ) +{ + OCR1B = green; + 1a2: 99 bd out 0x29, r25 ; 41 + 1a4: 88 bd out 0x28, r24 ; 40 + + for (int green = 255; green>=0; green-=delta1) + { + setGreen( green ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + 1a6: 8a e0 ldi r24, 0x0A ; 10 + 1a8: 90 e0 ldi r25, 0x00 ; 0 + 1aa: 81 df rcall .-254 ; 0xae + setRed( red ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps down + wait(10); // delay of 100 ms (busy waiting) + } + + for (int green = 255; green>=0; green-=delta1) + 1ac: 21 97 sbiw r28, 0x01 ; 1 + 1ae: b8 f7 brcc .-18 ; 0x19e + 1b0: cc 2d mov r28, r12 + 1b2: dd 2d mov r29, r13 + 1b4: ce 01 movw r24, r28 + 1b6: 99 27 eor r25, r25 +} + +// Set pulse width for Blue on pin PB5, 0=off, 255=max +void setBlue( unsigned char blue ) +{ + OCR1C = blue; + 1b8: f8 01 movw r30, r16 + 1ba: 91 83 std Z+1, r25 ; 0x01 + 1bc: 80 83 st Z, r24 + + for (int blue = 255; blue>=0; blue-=delta2) + { + setBlue( blue ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + 1be: 8a e0 ldi r24, 0x0A ; 10 + 1c0: 90 e0 ldi r25, 0x00 ; 0 + 1c2: 75 df rcall .-278 ; 0xae + setGreen( green ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int blue = 255; blue>=0; blue-=delta2) + 1c4: 21 97 sbiw r28, 0x01 ; 1 + 1c6: b0 f7 brcc .-20 ; 0x1b4 + 1c8: a3 cf rjmp .-186 ; 0x110 + setRed( red ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int green = 0; green<=255; green+=delta1) + 1ca: c0 e0 ldi r28, 0x00 ; 0 + 1cc: d0 e0 ldi r29, 0x00 ; 0 + 1ce: ca cf rjmp .-108 ; 0x164 + 1d0: 8c ef ldi r24, 0xFC ; 252 + 1d2: f8 1a sub r15, r24 + setGreen( green ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int blue = 0; blue<=255; blue+=delta2) + 1d4: cc 2d mov r28, r12 + 1d6: dd 2d mov r29, r13 + 1d8: d3 cf rjmp .-90 ; 0x180 + +000001da
: + + +// Main program: Counting on T1 +int main( void ) +{ + DDRB = 0xFF; + 1da: 8f ef ldi r24, 0xFF ; 255 + 1dc: 87 bb out 0x17, r24 ; 23 + DDRF = 0x00; // set PORTF for input (ADC) + 1de: 10 92 61 00 sts 0x0061, r1 + DDRA = 0xFF; // set PORTA for output + 1e2: 8a bb out 0x1a, r24 ; 26 + adcInit(); // initialize ADC + 1e4: 82 df rcall .-252 ; 0xea + timer1Init(); + 1e6: 74 df rcall .-280 ; 0xd0 + + while (1) + { + ADCSRA |= BIT(6); // Start ADC + 1e8: 36 9a sbi 0x06, 6 ; 6 + while ( ADCSRA & BIT(6) ) ; // Wait for completion + 1ea: 36 99 sbic 0x06, 6 ; 6 + 1ec: fe cf rjmp .-4 ; 0x1ea + setRed(ADCH); // Show MSB (bit 9:2) of ADC + 1ee: 85 b1 in r24, 0x05 ; 5 +} + +// Set pulse width for RED on pin PB5, 0=off, 255=max +void setRed( unsigned char red ) +{ + OCR1A = red; + 1f0: 90 e0 ldi r25, 0x00 ; 0 + 1f2: 9b bd out 0x2b, r25 ; 43 + 1f4: 8a bd out 0x2a, r24 ; 42 while (1) { ADCSRA |= BIT(6); // Start ADC while ( ADCSRA & BIT(6) ) ; // Wait for completion setRed(ADCH); // Show MSB (bit 9:2) of ADC wait(100); // every 50 ms (busy waiting) - 110: 84 e6 ldi r24, 0x64 ; 100 - 112: 90 e0 ldi r25, 0x00 ; 0 - 114: cc df rcall .-104 ; 0xae - } - 116: f5 cf rjmp .-22 ; 0x102 + 1f6: 84 e6 ldi r24, 0x64 ; 100 + 1f8: 90 e0 ldi r25, 0x00 ; 0 + 1fa: 59 df rcall .-334 ; 0xae + //opgaveextra(); + testColor(); + 1fc: 7b df rcall .-266 ; 0xf4 -00000118 <_exit>: - 118: f8 94 cli +000001fe <_exit>: + 1fe: f8 94 cli -0000011a <__stop_program>: - 11a: ff cf rjmp .-2 ; 0x11a <__stop_program> +00000200 <__stop_program>: + 200: ff cf rjmp .-2 ; 0x200 <__stop_program> diff --git a/MIC-Week4/Debug/MIC-Week4.map b/MIC-Week4/Debug/MIC-Week4.map index 95796d7..0ef7e12 100644 --- a/MIC-Week4/Debug/MIC-Week4.map +++ b/MIC-Week4/Debug/MIC-Week4.map @@ -1,14 +1,14 @@ Archive member included to satisfy reference by file (symbol) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_exit.o) - C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o (exit) + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o (exit) c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_clear_bss.o) main.o (__do_clear_bss) Discarded input sections - .data 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o - .bss 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .data 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o + .bss 0x00000000 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o .text 0x00000000 0x0 main.o .data 0x00000000 0x0 main.o .bss 0x00000000 0x0 main.o @@ -69,7 +69,7 @@ user_signatures 0x00850000 0x00000400 rw !x Linker script and memory map Address of section .data set to 0x800100 -LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o LOAD main.o START GROUP LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libm.a @@ -78,7 +78,7 @@ START GROUP LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libm.a LOAD c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/../../../../avr/lib/avr51\libc.a -LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51\libatmega128.a +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51\libatmega128.a END GROUP .hash @@ -171,9 +171,9 @@ END GROUP .rela.plt *(.rela.plt) -.text 0x00000000 0x11c +.text 0x00000000 0x202 *(.vectors) - .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x00000000 __vector_default 0x00000000 __vectors *(.vectors) @@ -199,13 +199,13 @@ END GROUP SORT(*)(.ctors) SORT(*)(.dtors) *(.init0) - .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x0000008c __init *(.init0) *(.init1) *(.init1) *(.init2) - .init2 0x0000008c 0xc C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init2 0x0000008c 0xc C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o *(.init2) *(.init3) *(.init3) @@ -222,10 +222,10 @@ END GROUP *(.init8) *(.init8) *(.init9) - .init9 0x000000a8 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .init9 0x000000a8 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o *(.init9) *(.text) - .text 0x000000ac 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + .text 0x000000ac 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o 0x000000ac __vector_22 0x000000ac __vector_28 0x000000ac __vector_1 @@ -270,13 +270,16 @@ END GROUP 0x000000d0 timer1Init .text.adcInit 0x000000ea 0xa main.o 0x000000ea adcInit - .text.main 0x000000f4 0x24 main.o - 0x000000f4 main - 0x00000118 . = ALIGN (0x2) + .text.testColor + 0x000000f4 0xe6 main.o + 0x000000f4 testColor + .text.main 0x000001da 0x24 main.o + 0x000001da main + 0x000001fe . = ALIGN (0x2) *(.fini9) - .fini9 0x00000118 0x0 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_exit.o) - 0x00000118 _exit - 0x00000118 exit + .fini9 0x000001fe 0x0 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_exit.o) + 0x000001fe _exit + 0x000001fe exit *(.fini9) *(.fini8) *(.fini8) @@ -295,11 +298,11 @@ END GROUP *(.fini1) *(.fini1) *(.fini0) - .fini0 0x00000118 0x4 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_exit.o) + .fini0 0x000001fe 0x4 c:/program files (x86)/atmel/studio/7.0/toolchain/avr8/avr8-gnu-toolchain/bin/../lib/gcc/avr/4.9.2/avr51\libgcc.a(_exit.o) *(.fini0) - 0x0000011c _etext = . + 0x00000202 _etext = . -.data 0x00800100 0x0 load address 0x0000011c +.data 0x00800100 0x0 load address 0x00000202 0x00800100 PROVIDE (__data_start, .) *(.data) *(.data*) @@ -316,8 +319,8 @@ END GROUP *(.bss*) *(COMMON) 0x00800100 PROVIDE (__bss_end, .) - 0x0000011c __data_load_start = LOADADDR (.data) - 0x0000011c __data_load_end = (__data_load_start + SIZEOF (.data)) + 0x00000202 __data_load_start = LOADADDR (.data) + 0x00000202 __data_load_end = (__data_load_start + SIZEOF (.data)) .noinit 0x00800100 0x0 0x00800100 PROVIDE (__noinit_start, .) @@ -371,7 +374,7 @@ END GROUP .note.gnu.avr.deviceinfo 0x00000000 0x3c .note.gnu.avr.deviceinfo - 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o .note.gnu.build-id *(.note.gnu.build-id) @@ -388,38 +391,38 @@ END GROUP .debug_sfnames *(.debug_sfnames) -.debug_aranges 0x00000000 0x58 +.debug_aranges 0x00000000 0x60 *(.debug_aranges) .debug_aranges - 0x00000000 0x58 main.o + 0x00000000 0x60 main.o .debug_pubnames *(.debug_pubnames) -.debug_info 0x00000000 0x84e +.debug_info 0x00000000 0xb07 *(.debug_info .gnu.linkonce.wi.*) - .debug_info 0x00000000 0x84e main.o + .debug_info 0x00000000 0xb07 main.o -.debug_abbrev 0x00000000 0x1e3 +.debug_abbrev 0x00000000 0x21b *(.debug_abbrev) - .debug_abbrev 0x00000000 0x1e3 main.o + .debug_abbrev 0x00000000 0x21b main.o -.debug_line 0x00000000 0x4b5 +.debug_line 0x00000000 0x5f4 *(.debug_line .debug_line.* .debug_line_end) - .debug_line 0x00000000 0x4b5 main.o + .debug_line 0x00000000 0x5f4 main.o -.debug_frame 0x00000000 0x94 +.debug_frame 0x00000000 0xa4 *(.debug_frame) - .debug_frame 0x00000000 0x94 main.o + .debug_frame 0x00000000 0xa4 main.o -.debug_str 0x00000000 0x1ef +.debug_str 0x00000000 0x212 *(.debug_str) - .debug_str 0x00000000 0x1ef main.o - 0x223 (size before relaxing) + .debug_str 0x00000000 0x212 main.o + 0x246 (size before relaxing) -.debug_loc 0x00000000 0x361 +.debug_loc 0x00000000 0x5d6 *(.debug_loc) - .debug_loc 0x00000000 0x361 main.o + .debug_loc 0x00000000 0x5d6 main.o .debug_macinfo *(.debug_macinfo) @@ -439,9 +442,9 @@ END GROUP .debug_pubtypes *(.debug_pubtypes) -.debug_ranges 0x00000000 0xe0 +.debug_ranges 0x00000000 0x150 *(.debug_ranges) - .debug_ranges 0x00000000 0xe0 main.o + .debug_ranges 0x00000000 0x150 main.o .debug_macro *(.debug_macro) diff --git a/MIC-Week4/Debug/MIC-Week4.srec b/MIC-Week4/Debug/MIC-Week4.srec index 3415c65..13ad250 100644 --- a/MIC-Week4/Debug/MIC-Week4.srec +++ b/MIC-Week4/Debug/MIC-Week4.srec @@ -9,12 +9,27 @@ S113006025C0000023C0000021C000001FC0000004 S11300701DC000001BC0000019C0000017C0000014 S113008015C0000013C0000011C0000011241FBEE1 S1130090CFEFD0E1DEBFCDBF21E0A0E0B1E001C0F1 -S11300A01D92A030B207E1F725D036C0A9CF1816AB +S11300A01D92A030B207E1F798D0A9C0A9CF1816C5 S11300B019066CF420E030E0EFECF7E03197F1F74B S11300C000C000002F5F3F4F28173907A9F7089594 S11300D01BBC1ABC19BC18BC109279001092780091 S11300E089EA8FBD8BE08EBD089581EE87B986E8DD -S11300F086B908958FEF87BB109261008ABBF5DF44 -S1130100E7DF369A3699FECF85B190E09BBD8ABD74 -S10F011084E690E0CCDFF5CFF894FFCF3C +S11300F086B908958FEF87BBEBDF84E690E0D7DF06 +S113010008E710E0AA24A394B12CCC24CA94D12CDF +S11301101BBC1ABCF8011182108219BC18BCC0E0C7 +S1130120D0E0EA2CFB2CCE0199279BBD8ABDF2E0DE +S1130130EF0EF11C8AE090E0BADFCE0DDF1DCF3F59 +S1130140D10589F384F3C0E0D0E0CE01992799BDAD +S113015088BD8AE090E0ABDF2196C11581E0D80725 +S1130160A1F733C0CE019927F801918380838AE0F7 +S113017090E09DDF2196C115F1E0DF0799F728C0D3 +S1130180CE0199279BBD8ABD82E0E81AF1088AE076 +S113019090E08DDFCE19DF099AF7CC2DDD2DCE014D +S11301A0992799BD88BD8AE090E081DF2197B8F74F +S11301B0CC2DDD2DCE019927F801918380838AE02F +S11301C090E075DF2197B0F7A3CFC0E0D0E0CACFAD +S11301D08CEFF81ACC2DDD2DD3CF8FEF87BB109287 +S11301E061008ABB82DF74DF369A3699FECF85B10F +S11301F090E09BBD8ABD84E690E059DF7BDFF894F4 +S1050200FFCF2A S9030000FC diff --git a/MIC-Week4/Debug/Makefile b/MIC-Week4/Debug/Makefile index 164d7c1..a21b641 100644 --- a/MIC-Week4/Debug/Makefile +++ b/MIC-Week4/Debug/Makefile @@ -78,7 +78,7 @@ LINKER_SCRIPT_DEP+= ./%.o: .././%.c @echo Building file: $< @echo Invoking: AVR/GNU C Compiler : 4.9.2 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -mrelax -g2 -Wall -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -x c -funsigned-char -funsigned-bitfields -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include" -O1 -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -mrelax -g2 -Wall -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" @echo Finished building: $< @@ -107,7 +107,7 @@ all: $(OUTPUT_FILE_PATH) $(ADDITIONAL_DEPENDENCIES) $(OUTPUT_FILE_PATH): $(OBJS) $(USER_OBJS) $(OUTPUT_FILE_DEP) $(LIB_DEP) $(LINKER_SCRIPT_DEP) @echo Building target: $@ @echo Invoking: AVR/GNU Linker : 4.9.2 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="MIC-Week4.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mrelax -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -Wl,-Map="MIC-Week4.map" -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -mrelax -mmcu=atmega128 -B "C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" @echo Finished building target: $@ "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\avr8-gnu-toolchain\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature -R .user_signatures "MIC-Week4.elf" "MIC-Week4.hex" "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\avr8\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 "MIC-Week4.elf" "MIC-Week4.eep" || exit 0 diff --git a/MIC-Week4/Debug/main.d b/MIC-Week4/Debug/main.d index 5405d3a..f45a877 100644 --- a/MIC-Week4/Debug/main.d +++ b/MIC-Week4/Debug/main.d @@ -4,7 +4,7 @@ main.d main.o: .././main.c \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\inttypes.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\gcc\avr\4.9.2\include\stdint.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h \ - C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h \ + C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\common.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\version.h \ @@ -25,7 +25,7 @@ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdint.h: -C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include/avr/iom128.h: +C:\Program\ Files\ (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include/avr/iom128.h: c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h: diff --git a/MIC-Week4/MIC-Week4.componentinfo.xml b/MIC-Week4/MIC-Week4.componentinfo.xml index 657f734..5ceaf94 100644 --- a/MIC-Week4/MIC-Week4.componentinfo.xml +++ b/MIC-Week4/MIC-Week4.componentinfo.xml @@ -15,7 +15,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include include C @@ -26,7 +26,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include\avr\iom128.h + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\include\avr\iom128.h header C @@ -37,18 +37,18 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\templates\main.c + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.c template source C Exe - a50mn6LpYEswUxuI7De0ug== + GD1k8YYhulqRs6FD1B2Hog== templates/main.c Main file (.c) - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\templates\main.cpp + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.cpp template source C Exe @@ -59,7 +59,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128 libraryPrefix GCC @@ -71,8 +71,8 @@ ATmega_DFP - C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/Atmel.ATmega_DFP.pdsc - 1.0.91 + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/Atmel.ATmega_DFP.pdsc + 1.0.90 true ATmega128 diff --git a/MIC-Week4/MIC-Week4.cproj b/MIC-Week4/MIC-Week4.cproj index 0a0e729..9e44ec6 100644 --- a/MIC-Week4/MIC-Week4.cproj +++ b/MIC-Week4/MIC-Week4.cproj @@ -28,21 +28,21 @@ 1 - - - - - - - - - + + + + + + + + + - -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" True True True @@ -58,7 +58,7 @@ - %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include + %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include Optimize for size (-Os) @@ -76,7 +76,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" True True True @@ -92,7 +92,7 @@ - %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include + %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include Optimize (-O1) diff --git a/MIC-Week4/main.c b/MIC-Week4/main.c index fda90d1..5565ad5 100644 --- a/MIC-Week4/main.c +++ b/MIC-Week4/main.c @@ -53,13 +53,13 @@ void setRed( unsigned char red ) OCR1A = red; } -// Set pulse width for RED on pin PB5, 0=off, 255=max +// Set pulse width for Green on pin PB5, 0=off, 255=max void setGreen( unsigned char green ) { OCR1B = green; } -// Set pulse width for RED on pin PB5, 0=off, 255=max +// Set pulse width for Blue on pin PB5, 0=off, 255=max void setBlue( unsigned char blue ) { OCR1C = blue; @@ -91,9 +91,135 @@ int main( void ) while ( ADCSRA & BIT(6) ) ; // Wait for completion setRed(ADCH); // Show MSB (bit 9:2) of ADC wait(100); // every 50 ms (busy waiting) + //opgaveextra(); + //testColor(); + alleKleuren(); } } +int alleKleuren(void) +{ + DDRB = 0xFF; // set PORTB for compare output + timer1Init(); + wait(100); + + while (1) + { + int delta = 1; + int delta1 = 1; + int delta2 = 1; + setRed (0); + setBlue(0); + setGreen(0); + + for (int red = 0; red<=255; red+=delta) + { + setRed( red ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + + for (int green = 0; green<=255; green+=delta1) + { + setGreen( green ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + + for (int blue = 0; blue<=255; blue+=delta2) + { + setBlue( blue ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + } + + } + + for (int red = 255; red>=0; red-=delta) + { + setRed( red ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps down + wait(100); // delay of 100 ms (busy waiting) + + for (int green = 255; green<=0; green-=delta1) + { + setRed( green ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps down + wait(100); // delay of 100 ms (busy waiting) + + for (int blue = 255; blue<=0; blue-=delta2) + { + setRed( blue ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps down + wait(100); // delay of 100 ms (busy waiting) + } + } + } +} +int testColor(void) +{ + DDRB = 0xFF; // set PORTB for compare output + timer1Init(); + wait(100); + + while (1) + { + int delta = 1; + int delta1 = 1; + int delta2 = 1; + setRed (0); + setBlue(0); + setGreen(0); + + for (int red = 0; red<=255; red+=delta) + { + setRed( red ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int green = 0; green<=255; green+=delta1) + { + setGreen( green ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int blue = 0; blue<=255; blue+=delta2) + { + setBlue( blue ); // 8-bits PWM on pin OCR1a + delta += 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int red = 255; red>=0; red-=delta) + { + setRed( red ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps down + wait(10); // delay of 100 ms (busy waiting) + } + + for (int green = 255; green>=0; green-=delta1) + { + setGreen( green ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + + for (int blue = 255; blue>=0; blue-=delta2) + { + setBlue( blue ); // 8-bits PWM on pin OCR1a + delta -= 2; // progressive steps up + wait(10); // delay of 100 ms (busy waiting) + } + //setRed( 0 ); + //delta = 1; + //setBlue(0); + //delta1 = 1; + //setGreen(0); + //delta2 = 2; + } + +} // Main program: Counting on T1 int opgaveextra( void ) {