From d2b96f769a3719e6fa29c748d43128ba6e3f6e1d Mon Sep 17 00:00:00 2001 From: Kenneth van Ewijk Date: Tue, 8 Mar 2016 10:29:30 +0100 Subject: [PATCH] Opgaven temperatuursensor --- MIC-Week1/.vs/MIC-Week1/v14/.atsuo | Bin 42496 -> 36352 bytes MIC-Week1/Debug/Makefile | 4 +- MIC-Week1/MIC-Week1.componentinfo.xml | 14 +- MIC-Week1/MIC-Week1.cproj | 8 +- MIC-Week2/Debug/Makefile | 4 +- MIC-Week2/MIC-Week2.componentinfo.xml | 14 +- MIC-Week2/MIC-Week2.cproj | 8 +- MIC-Week3/Debug/Makefile | 4 +- MIC-Week3/MIC-Week3.componentinfo.xml | 14 +- MIC-Week3/MIC-Week3.cproj | 8 +- MIC-Week4/Debug/MIC-Week4.lss | 1347 ++++++++++++++++++++++--- MIC-Week4/Debug/MIC-Week4.map | 314 ++++-- MIC-Week4/Debug/MIC-Week4.srec | 152 ++- MIC-Week4/Debug/Makefile | 11 +- MIC-Week4/Debug/lcd.d | 52 + MIC-Week4/Debug/main.d | 9 +- MIC-Week4/Debug/makedep.mk | 2 + MIC-Week4/MIC-Week4.componentinfo.xml | 14 +- MIC-Week4/MIC-Week4.cproj | 14 +- MIC-Week4/lcd.c | 124 +++ MIC-Week4/lcd.h | 19 + MIC-Week4/main.c | 45 +- 22 files changed, 1840 insertions(+), 341 deletions(-) create mode 100644 MIC-Week4/Debug/lcd.d create mode 100644 MIC-Week4/lcd.c create mode 100644 MIC-Week4/lcd.h diff --git a/MIC-Week1/.vs/MIC-Week1/v14/.atsuo b/MIC-Week1/.vs/MIC-Week1/v14/.atsuo index dab820dd03c938bf1be397da9f4655fecc3effcd..c2d434bafee8784e585817940d60246d5b48c442 100644 GIT binary patch delta 5150 zcmeI0S#Vp`8GvqWAbK;)D_ zfR-ll-vVtyoP;j4FCn8DhUp8TbeRrN%2Q`Lowif@(oQF((=u(CDeix+q()f^JkggP z%{S+q|Lo`d=Rg0|(%bx{^ZYYoRPWV;68=5f%v%qgEWbx>;qiD&Lr~>csY~!7-znOI zf*xcQ1GxKkcb>(Jp#!R2$Je|@VH!gZP=YOIk9LDrC@>A6U>))?Hdur4W<-VD)0FjN zOgd|Y`$b34R{gJJyk)^cuq%|oa z%Kn8JvK_5$A?a4=YIZ>K0!+7W7mIgh-ETtG;>i$ujp;xYSn2BQK9n*6#S46RZ*2X2_K4T)Zb&7~$^&;4e(`4b7Fe88)TkImTfnR7V zg2MeLsT$nq-Ak!p$A(>^-B{SsRzbLenMMUQ?AYkN?-J(8j&Q-i+s_N|82n{;3i$cT z2(=1Jib>dWsDI#<-w(X~ag5D~1+gMF#EwiLlZXRxA}+*-cn~i_ z+8%Dk0gPvmU^D+nGbVM8VET*5QJh1qXQ0MlI*ufeB$7hXNCwFwIV6v;$Sg94%p(g( z0VyJjNC_z;6{LzBLmovQLyjXgWC^)V*=n5DeU943Z4}vvMz|W9r?#{6DQ012(rVam zpX8zd!(`+$MkZ2B%w(f6c#oC-N#OgJ{BVsH0-J7> z?+2e`k5Iw2y>xyX9PJx{r4{YxtJ3a1`*ObsTz%62D`1-fPN6zyQJurQ7+&ib^lewb zn}Y{oX}f{M%R4aIIwIVJO`d?tj#GGW@8E$uE{+VWuHJUJp?{YYhBMce2aO`~T9TKM z=oNWGs2%mXdmVq;SLKkuzI@*sZ;&0P|G_FLTUrHfp^6Z3Arwy zvePc$H$|N~Ok5GcM>}mI^3tqFS|dVXm$R2559Zo7X(zFjf9Qmdw%7zDNjgSzi8YCV z>TIhi3}L2*i)t#=E1$L}d}aZt1YH8-#PfZEi&&O?x<_w}@ybleE(9d`b|31^o_JE2o{ zNVEn=ydP;DO1&TxP}C8q$Z=Kcuz>grt->B6AQQ&`t9wl%QgAP3S`}dFfS_I;vQuQe zLUOF#aAT9Rds|x_Y6^hjm^h|ZY($fm3xo%_(=-EP+yf${L4f9%ToSjB_Ezs zdB8I|FYsUy=q|Wm_&{fU>w!%a?B=f*Q221drLhfg(XpK>zzK(y;=ykm`+9$k)v=Hx z4<{58@Z!Ne&1W)RkGpz$iaD>?h+HVhSCeKOZ9YGZvjz0S6F|}T< zmZ?E|ZU|luZtf&neuRhnH9Bw#Z3MZn0^W>qREj_HesDMC^u!Q#5nelLNA(1l!&ss}rwj`19E*sL-*c*I?>7h<;o46#o?DZ?@_o@G>%Zs-As`ms{zn)pg zUw-C~)Ed~qU(d&-;~ur|+U-YCe|=6Xpow4D3dA=fhJyIR9Zg}SnqRO_l-(0Wmqctf z%VIJ%_l9MOT*v*q{sd1xq^5!`=>5i|YuZ1l3YR^eaTlG-%*tcAsH{>fW$mSjq@B%#-6>1Rz$60& zpTXoQPlhaWiL@-nS~J<8lr^{%IVlcutno*XHKq#36|ty0M2 z#i~&yO;la-XjGxmR2SpLTEMAe#=QkuV%n8k$VZGRE34O;+@7SxVlbP6R;OOAVHhPd zubE;bp^|EmRh6pxl+zn$vkI}wqEk*EQVNv$7YLq4xmBJqUMUUj&vi;vI76HZq|A2EzeoG!D>q}1Eyir#2& zQC0So9BQLMS!F{yi^4rwQI!j{sl-|n`r=eASIA^MrFhPYZT`JEm+Z3tSeaQN7+4a9leh_o9OczRR?e|BzwXD{@lA46=-Pk2#qt2V+} z@lLcMoCH>1`Y~D&Vxu{eGGUhCXJ`&R?G*al!#rZ;$vwx9$xr&=%7s(;VN#cL)Pvml zwY7zc!IkvGpuKPnuBWx2)oAe@s=(>tu1|AKiM!t0n$7Lgo*~ci#GnGFoyFoH0~2EF&3< z*EyCiX0wM#5)UEDX0uGRARA`N@i4ROLaOj@uVzg) literal 42496 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 diff --git a/MIC-Week1/Debug/Makefile b/MIC-Week1/Debug/Makefile index afdcae5..84f1fec 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.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 "$@" "$<" + $(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 "$@" "$<" @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.90\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.91\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/MIC-Week1.componentinfo.xml b/MIC-Week1/MIC-Week1.componentinfo.xml index 5ceaf94..5b64613 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.90\include + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include include C @@ -26,7 +26,7 @@ - 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\Packs\Atmel\ATmega_DFP\1.0.91\include\avr\iom128.h header C @@ -37,7 +37,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.c + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90\templates\main.cpp + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90\gcc\dev\atmega128 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90/Atmel.ATmega_DFP.pdsc - 1.0.90 + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/Atmel.ATmega_DFP.pdsc + 1.0.91 true ATmega128 diff --git a/MIC-Week1/MIC-Week1.cproj b/MIC-Week1/MIC-Week1.cproj index a5fd715..40e05fa 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.90\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" True True True @@ -71,7 +71,7 @@ - %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include + %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include Optimize for size (-Os) @@ -89,7 +89,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" True True True @@ -105,7 +105,7 @@ - %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include + %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include Optimize (-O1) diff --git a/MIC-Week2/Debug/Makefile b/MIC-Week2/Debug/Makefile index a37d0d6..7639310 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.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 "$@" "$<" + $(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 "$@" "$<" @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.90\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.91\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/MIC-Week2.componentinfo.xml b/MIC-Week2/MIC-Week2.componentinfo.xml index 5ceaf94..5b64613 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.90\include + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include include C @@ -26,7 +26,7 @@ - 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\Packs\Atmel\ATmega_DFP\1.0.91\include\avr\iom128.h header C @@ -37,7 +37,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.c + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90\templates\main.cpp + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90\gcc\dev\atmega128 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90/Atmel.ATmega_DFP.pdsc - 1.0.90 + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/Atmel.ATmega_DFP.pdsc + 1.0.91 true ATmega128 diff --git a/MIC-Week2/MIC-Week2.cproj b/MIC-Week2/MIC-Week2.cproj index 5d48a58..c34381a 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.90\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" True True True @@ -58,7 +58,7 @@ - %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include + %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include Optimize for size (-Os) @@ -76,7 +76,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" True True True @@ -92,7 +92,7 @@ - %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include + %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include Optimize (-O1) diff --git a/MIC-Week3/Debug/Makefile b/MIC-Week3/Debug/Makefile index 2e06c23..5e3743e 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.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 "$@" "$<" + $(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 "$@" "$<" @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.90\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.91\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/MIC-Week3.componentinfo.xml b/MIC-Week3/MIC-Week3.componentinfo.xml index 5ceaf94..5b64613 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.90\include + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include include C @@ -26,7 +26,7 @@ - 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\Packs\Atmel\ATmega_DFP\1.0.91\include\avr\iom128.h header C @@ -37,7 +37,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.c + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90\templates\main.cpp + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90\gcc\dev\atmega128 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90/Atmel.ATmega_DFP.pdsc - 1.0.90 + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/Atmel.ATmega_DFP.pdsc + 1.0.91 true ATmega128 diff --git a/MIC-Week3/MIC-Week3.cproj b/MIC-Week3/MIC-Week3.cproj index ba43ee4..b2a296b 100644 --- a/MIC-Week3/MIC-Week3.cproj +++ b/MIC-Week3/MIC-Week3.cproj @@ -42,7 +42,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" True True True @@ -58,7 +58,7 @@ - %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include + %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include Optimize for size (-Os) @@ -76,7 +76,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" True True True @@ -92,7 +92,7 @@ - %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include + %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include Optimize (-O1) diff --git a/MIC-Week4/Debug/MIC-Week4.lss b/MIC-Week4/Debug/MIC-Week4.lss index 5a0eb28..9d51be9 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 00000176 2**0 + 0 .data 00000004 00800100 0000083c 000008b0 2**0 CONTENTS, ALLOC, LOAD, DATA - 1 .text 00000122 00000000 00000000 00000054 2**1 + 1 .text 0000083c 00000000 00000000 00000074 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE - 2 .comment 00000030 00000000 00000000 00000176 2**0 + 2 .comment 0000005c 00000000 00000000 000008b4 2**0 CONTENTS, READONLY - 3 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 000001a8 2**2 + 3 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00000910 2**2 CONTENTS, READONLY - 4 .debug_aranges 00000068 00000000 00000000 000001e4 2**0 + 4 .debug_aranges 000000c8 00000000 00000000 0000094c 2**0 CONTENTS, READONLY, DEBUGGING - 5 .debug_info 00000b91 00000000 00000000 0000024c 2**0 + 5 .debug_info 000012f5 00000000 00000000 00000a14 2**0 CONTENTS, READONLY, DEBUGGING - 6 .debug_abbrev 00000253 00000000 00000000 00000ddd 2**0 + 6 .debug_abbrev 0000048c 00000000 00000000 00001d09 2**0 CONTENTS, READONLY, DEBUGGING - 7 .debug_line 00000654 00000000 00000000 00001030 2**0 + 7 .debug_line 000009cf 00000000 00000000 00002195 2**0 CONTENTS, READONLY, DEBUGGING - 8 .debug_frame 000000b4 00000000 00000000 00001684 2**2 + 8 .debug_frame 00000190 00000000 00000000 00002b64 2**2 CONTENTS, READONLY, DEBUGGING - 9 .debug_str 00000222 00000000 00000000 00001738 2**0 + 9 .debug_str 000002bb 00000000 00000000 00002cf4 2**0 CONTENTS, READONLY, DEBUGGING - 10 .debug_loc 000004be 00000000 00000000 0000195a 2**0 + 10 .debug_loc 000007e6 00000000 00000000 00002faf 2**0 CONTENTS, READONLY, DEBUGGING - 11 .debug_ranges 00000138 00000000 00000000 00001e18 2**0 + 11 .debug_ranges 00000188 00000000 00000000 00003795 2**0 CONTENTS, READONLY, DEBUGGING Disassembly of section .text: @@ -33,73 +33,73 @@ Disassembly of section .text: 00000000 <__vectors>: 0: 45 c0 rjmp .+138 ; 0x8c <__ctors_end> 2: 00 00 nop - 4: 53 c0 rjmp .+166 ; 0xac <__bad_interrupt> + 4: 60 c0 rjmp .+192 ; 0xc6 <__bad_interrupt> 6: 00 00 nop - 8: 51 c0 rjmp .+162 ; 0xac <__bad_interrupt> + 8: 5e c0 rjmp .+188 ; 0xc6 <__bad_interrupt> a: 00 00 nop - c: 4f c0 rjmp .+158 ; 0xac <__bad_interrupt> + c: 5c c0 rjmp .+184 ; 0xc6 <__bad_interrupt> e: 00 00 nop - 10: 4d c0 rjmp .+154 ; 0xac <__bad_interrupt> + 10: 5a c0 rjmp .+180 ; 0xc6 <__bad_interrupt> 12: 00 00 nop - 14: 4b c0 rjmp .+150 ; 0xac <__bad_interrupt> + 14: 58 c0 rjmp .+176 ; 0xc6 <__bad_interrupt> 16: 00 00 nop - 18: 49 c0 rjmp .+146 ; 0xac <__bad_interrupt> + 18: 56 c0 rjmp .+172 ; 0xc6 <__bad_interrupt> 1a: 00 00 nop - 1c: 47 c0 rjmp .+142 ; 0xac <__bad_interrupt> + 1c: 54 c0 rjmp .+168 ; 0xc6 <__bad_interrupt> 1e: 00 00 nop - 20: 45 c0 rjmp .+138 ; 0xac <__bad_interrupt> + 20: 52 c0 rjmp .+164 ; 0xc6 <__bad_interrupt> 22: 00 00 nop - 24: 43 c0 rjmp .+134 ; 0xac <__bad_interrupt> + 24: 50 c0 rjmp .+160 ; 0xc6 <__bad_interrupt> 26: 00 00 nop - 28: 41 c0 rjmp .+130 ; 0xac <__bad_interrupt> + 28: 4e c0 rjmp .+156 ; 0xc6 <__bad_interrupt> 2a: 00 00 nop - 2c: 3f c0 rjmp .+126 ; 0xac <__bad_interrupt> + 2c: 4c c0 rjmp .+152 ; 0xc6 <__bad_interrupt> 2e: 00 00 nop - 30: 3d c0 rjmp .+122 ; 0xac <__bad_interrupt> + 30: 4a c0 rjmp .+148 ; 0xc6 <__bad_interrupt> 32: 00 00 nop - 34: 3b c0 rjmp .+118 ; 0xac <__bad_interrupt> + 34: 48 c0 rjmp .+144 ; 0xc6 <__bad_interrupt> 36: 00 00 nop - 38: 39 c0 rjmp .+114 ; 0xac <__bad_interrupt> + 38: 46 c0 rjmp .+140 ; 0xc6 <__bad_interrupt> 3a: 00 00 nop - 3c: 37 c0 rjmp .+110 ; 0xac <__bad_interrupt> + 3c: 44 c0 rjmp .+136 ; 0xc6 <__bad_interrupt> 3e: 00 00 nop - 40: 35 c0 rjmp .+106 ; 0xac <__bad_interrupt> + 40: 42 c0 rjmp .+132 ; 0xc6 <__bad_interrupt> 42: 00 00 nop - 44: 33 c0 rjmp .+102 ; 0xac <__bad_interrupt> + 44: 40 c0 rjmp .+128 ; 0xc6 <__bad_interrupt> 46: 00 00 nop - 48: 31 c0 rjmp .+98 ; 0xac <__bad_interrupt> + 48: 3e c0 rjmp .+124 ; 0xc6 <__bad_interrupt> 4a: 00 00 nop - 4c: 2f c0 rjmp .+94 ; 0xac <__bad_interrupt> + 4c: 3c c0 rjmp .+120 ; 0xc6 <__bad_interrupt> 4e: 00 00 nop - 50: 2d c0 rjmp .+90 ; 0xac <__bad_interrupt> + 50: 3a c0 rjmp .+116 ; 0xc6 <__bad_interrupt> 52: 00 00 nop - 54: 2b c0 rjmp .+86 ; 0xac <__bad_interrupt> + 54: 38 c0 rjmp .+112 ; 0xc6 <__bad_interrupt> 56: 00 00 nop - 58: 29 c0 rjmp .+82 ; 0xac <__bad_interrupt> + 58: 36 c0 rjmp .+108 ; 0xc6 <__bad_interrupt> 5a: 00 00 nop - 5c: 27 c0 rjmp .+78 ; 0xac <__bad_interrupt> + 5c: 34 c0 rjmp .+104 ; 0xc6 <__bad_interrupt> 5e: 00 00 nop - 60: 25 c0 rjmp .+74 ; 0xac <__bad_interrupt> + 60: 32 c0 rjmp .+100 ; 0xc6 <__bad_interrupt> 62: 00 00 nop - 64: 23 c0 rjmp .+70 ; 0xac <__bad_interrupt> + 64: 30 c0 rjmp .+96 ; 0xc6 <__bad_interrupt> 66: 00 00 nop - 68: 21 c0 rjmp .+66 ; 0xac <__bad_interrupt> + 68: 2e c0 rjmp .+92 ; 0xc6 <__bad_interrupt> 6a: 00 00 nop - 6c: 1f c0 rjmp .+62 ; 0xac <__bad_interrupt> + 6c: 2c c0 rjmp .+88 ; 0xc6 <__bad_interrupt> 6e: 00 00 nop - 70: 1d c0 rjmp .+58 ; 0xac <__bad_interrupt> + 70: 2a c0 rjmp .+84 ; 0xc6 <__bad_interrupt> 72: 00 00 nop - 74: 1b c0 rjmp .+54 ; 0xac <__bad_interrupt> + 74: 28 c0 rjmp .+80 ; 0xc6 <__bad_interrupt> 76: 00 00 nop - 78: 19 c0 rjmp .+50 ; 0xac <__bad_interrupt> + 78: 26 c0 rjmp .+76 ; 0xc6 <__bad_interrupt> 7a: 00 00 nop - 7c: 17 c0 rjmp .+46 ; 0xac <__bad_interrupt> + 7c: 24 c0 rjmp .+72 ; 0xc6 <__bad_interrupt> 7e: 00 00 nop - 80: 15 c0 rjmp .+42 ; 0xac <__bad_interrupt> + 80: 22 c0 rjmp .+68 ; 0xc6 <__bad_interrupt> 82: 00 00 nop - 84: 13 c0 rjmp .+38 ; 0xac <__bad_interrupt> + 84: 20 c0 rjmp .+64 ; 0xc6 <__bad_interrupt> 86: 00 00 nop - 88: 11 c0 rjmp .+34 ; 0xac <__bad_interrupt> + 88: 1e c0 rjmp .+60 ; 0xc6 <__bad_interrupt> ... 0000008c <__ctors_end>: @@ -110,145 +110,1168 @@ Disassembly of section .text: 94: de bf out 0x3e, r29 ; 62 96: cd bf out 0x3d, r28 ; 61 -00000098 <__do_clear_bss>: - 98: 21 e0 ldi r18, 0x01 ; 1 +00000098 <__do_copy_data>: + 98: 11 e0 ldi r17, 0x01 ; 1 9a: a0 e0 ldi r26, 0x00 ; 0 9c: b1 e0 ldi r27, 0x01 ; 1 - 9e: 01 c0 rjmp .+2 ; 0xa2 <.do_clear_bss_start> + 9e: ec e3 ldi r30, 0x3C ; 60 + a0: f8 e0 ldi r31, 0x08 ; 8 + a2: 00 e0 ldi r16, 0x00 ; 0 + a4: 0b bf out 0x3b, r16 ; 59 + a6: 02 c0 rjmp .+4 ; 0xac <__do_copy_data+0x14> + a8: 07 90 elpm r0, Z+ + aa: 0d 92 st X+, r0 + ac: a4 30 cpi r26, 0x04 ; 4 + ae: b1 07 cpc r27, r17 + b0: d9 f7 brne .-10 ; 0xa8 <__do_copy_data+0x10> -000000a0 <.do_clear_bss_loop>: - a0: 1d 92 st X+, r1 +000000b2 <__do_clear_bss>: + b2: 21 e0 ldi r18, 0x01 ; 1 + b4: a4 e0 ldi r26, 0x04 ; 4 + b6: b1 e0 ldi r27, 0x01 ; 1 + b8: 01 c0 rjmp .+2 ; 0xbc <.do_clear_bss_start> -000000a2 <.do_clear_bss_start>: - a2: a0 30 cpi r26, 0x00 ; 0 - a4: b2 07 cpc r27, r18 - a6: e1 f7 brne .-8 ; 0xa0 <.do_clear_bss_loop> - a8: 28 d0 rcall .+80 ; 0xfa
- aa: 39 c0 rjmp .+114 ; 0x11e <_exit> +000000ba <.do_clear_bss_loop>: + ba: 1d 92 st X+, r1 -000000ac <__bad_interrupt>: - ac: a9 cf rjmp .-174 ; 0x0 <__vectors> +000000bc <.do_clear_bss_start>: + bc: a4 30 cpi r26, 0x04 ; 4 + be: b2 07 cpc r27, r18 + c0: e1 f7 brne .-8 ; 0xba <.do_clear_bss_loop> + c2: be d0 rcall .+380 ; 0x240
+ c4: b9 c3 rjmp .+1906 ; 0x838 <_exit> -000000ae : -} +000000c6 <__bad_interrupt>: + c6: 9c cf rjmp .-200 ; 0x0 <__vectors> -// Set pulse width for Blue on pin PB5, 0=off, 255=max -void setBlue( unsigned char blue ) +000000c8 : + } + } + + void display_char( unsigned char dat ) + { + PORTC = dat & 0xF0; // hoge nibble + c8: 98 2f mov r25, r24 + ca: 90 7f andi r25, 0xF0 ; 240 + cc: 95 bb out 0x15, r25 ; 21 + PORTC = PORTC | 0x0C; // Enable on (EN = 1, RS=1), + ce: 95 b3 in r25, 0x15 ; 21 + d0: 9c 60 ori r25, 0x0C ; 12 + d2: 95 bb out 0x15, r25 ; 21 + #else + //round up by default + __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); + #endif + + __builtin_avr_delay_cycles(__ticks_dc); + d4: ef e9 ldi r30, 0x9F ; 159 + d6: ff e0 ldi r31, 0x0F ; 15 + d8: 31 97 sbiw r30, 0x01 ; 1 + da: f1 f7 brne .-4 ; 0xd8 + dc: 00 c0 rjmp .+0 ; 0xde + de: 00 00 nop + _delay_ms(2); // wait 1 ms + PORTC = 0x04; // Enable off (EN = 0, RS = 1) + e0: 94 e0 ldi r25, 0x04 ; 4 + e2: 95 bb out 0x15, r25 ; 21 + e4: ef e9 ldi r30, 0x9F ; 159 + e6: ff e0 ldi r31, 0x0F ; 15 + e8: 31 97 sbiw r30, 0x01 ; 1 + ea: f1 f7 brne .-4 ; 0xe8 + ec: 00 c0 rjmp .+0 ; 0xee + ee: 00 00 nop + + _delay_ms(2); // wait 1 ms + + PORTC = (dat & 0x0F) << 4; // lage nibble + f0: f0 e1 ldi r31, 0x10 ; 16 + f2: 8f 9f mul r24, r31 + f4: c0 01 movw r24, r0 + f6: 11 24 eor r1, r1 + f8: 85 bb out 0x15, r24 ; 21 + PORTC = PORTC | 0x0C; // Enable on (RS=1), + fa: 85 b3 in r24, 0x15 ; 21 + fc: 8c 60 ori r24, 0x0C ; 12 + fe: 85 bb out 0x15, r24 ; 21 + 100: 8f e9 ldi r24, 0x9F ; 159 + 102: 9f e0 ldi r25, 0x0F ; 15 + 104: 01 97 sbiw r24, 0x01 ; 1 + 106: f1 f7 brne .-4 ; 0x104 + 108: 00 c0 rjmp .+0 ; 0x10a + 10a: 00 00 nop + // start (EN=1) + _delay_ms(2); // wait 1 ms + PORTC = 0x00; // stop + 10c: 15 ba out 0x15, r1 ; 21 + 10e: 08 95 ret + +00000110 : + // (EN=0 RS=0) + } + + void lcd_command ( unsigned char dat ) + { + PORTC = dat & 0xF0; // hoge nibble + 110: 98 2f mov r25, r24 + 112: 90 7f andi r25, 0xF0 ; 240 + 114: 95 bb out 0x15, r25 ; 21 + PORTC = PORTC | 0x08; // data (RS=0), + 116: ab 9a sbi 0x15, 3 ; 21 + 118: ef e9 ldi r30, 0x9F ; 159 + 11a: ff e0 ldi r31, 0x0F ; 15 + 11c: 31 97 sbiw r30, 0x01 ; 1 + 11e: f1 f7 brne .-4 ; 0x11c + 120: 00 c0 rjmp .+0 ; 0x122 + 122: 00 00 nop + // start (EN=1) + _delay_ms(2); // wait 1 ms + PORTC = 0x04; // stop (EN = 0) + 124: 94 e0 ldi r25, 0x04 ; 4 + 126: 95 bb out 0x15, r25 ; 21 + 128: ef e9 ldi r30, 0x9F ; 159 + 12a: ff e0 ldi r31, 0x0F ; 15 + 12c: 31 97 sbiw r30, 0x01 ; 1 + 12e: f1 f7 brne .-4 ; 0x12c + 130: 00 c0 rjmp .+0 ; 0x132 + 132: 00 00 nop + + _delay_ms(2); // wait 1 ms + + PORTC = (dat & 0x0F) << 4; // lage nibble + 134: f0 e1 ldi r31, 0x10 ; 16 + 136: 8f 9f mul r24, r31 + 138: c0 01 movw r24, r0 + 13a: 11 24 eor r1, r1 + 13c: 85 bb out 0x15, r24 ; 21 + PORTC = PORTC | 0x08; // data (RS=0), + 13e: ab 9a sbi 0x15, 3 ; 21 + 140: 8f e9 ldi r24, 0x9F ; 159 + 142: 9f e0 ldi r25, 0x0F ; 15 + 144: 01 97 sbiw r24, 0x01 ; 1 + 146: f1 f7 brne .-4 ; 0x144 + 148: 00 c0 rjmp .+0 ; 0x14a + 14a: 00 00 nop + // start (EN=1) + _delay_ms(2); // wait 1 ms + PORTC = 0x00; // stop + 14c: 15 ba out 0x15, r1 ; 21 + 14e: 08 95 ret + +00000150 : + + _delay_ms(100); + } + +void display_text( int line, char *text ) { - OCR1C = blue; - ae: 18 16 cp r1, r24 - b0: 19 06 cpc r1, r25 - b2: 6c f4 brge .+26 ; 0xce - b4: 20 e0 ldi r18, 0x00 ; 0 - b6: 30 e0 ldi r19, 0x00 ; 0 - b8: ef ec ldi r30, 0xCF ; 207 - ba: f7 e0 ldi r31, 0x07 ; 7 - bc: 31 97 sbiw r30, 0x01 ; 1 - be: f1 f7 brne .-4 ; 0xbc - c0: 00 c0 rjmp .+0 ; 0xc2 - c2: 00 00 nop - c4: 2f 5f subi r18, 0xFF ; 255 - c6: 3f 4f sbci r19, 0xFF ; 255 - c8: 28 17 cp r18, r24 - ca: 39 07 cpc r19, r25 - cc: a9 f7 brne .-22 ; 0xb8 - ce: 08 95 ret + 150: cf 93 push r28 + 152: df 93 push r29 + 154: eb 01 movw r28, r22 + // eerst de eerste 8 karakters = regel 1 -000000d0 : - d0: 1b bc out 0x2b, r1 ; 43 - d2: 1a bc out 0x2a, r1 ; 42 - d4: 19 bc out 0x29, r1 ; 41 - d6: 18 bc out 0x28, r1 ; 40 - d8: 10 92 79 00 sts 0x0079, r1 - dc: 10 92 78 00 sts 0x0078, r1 - e0: 89 ea ldi r24, 0xA9 ; 169 - e2: 8f bd out 0x2f, r24 ; 47 - e4: 8b e0 ldi r24, 0x0B ; 11 - e6: 8e bd out 0x2e, r24 ; 46 - e8: 08 95 ret + if(line) + 156: 89 2b or r24, r25 + 158: 19 f0 breq .+6 ; 0x160 + { + // eerste pos regel 1 + lcd_command(0xC0); + 15a: 80 ec ldi r24, 0xC0 ; 192 + 15c: d9 df rcall .-78 ; 0x110 + 15e: 02 c0 rjmp .+4 ; 0x164 + } + else + { + // regel 0 + lcd_command(0x80); + 160: 80 e8 ldi r24, 0x80 ; 128 + 162: d6 df rcall .-84 ; 0x110 + } -000000ea : -// void setBlue( unsigned char blue) + int count = 0; + + while (text[count] != '\0') { + 164: 88 81 ld r24, Y + 166: 88 23 and r24, r24 + 168: 59 f0 breq .+22 ; 0x180 + 16a: 21 96 adiw r28, 0x01 ; 1 + display_char( text[count] ); + 16c: ad df rcall .-166 ; 0xc8 + 16e: 8f e9 ldi r24, 0x9F ; 159 + 170: 9f e0 ldi r25, 0x0F ; 15 + 172: 01 97 sbiw r24, 0x01 ; 1 + 174: f1 f7 brne .-4 ; 0x172 + 176: 00 c0 rjmp .+0 ; 0x178 + 178: 00 00 nop + lcd_command(0x80); + } + + int count = 0; + + while (text[count] != '\0') { + 17a: 89 91 ld r24, Y+ + 17c: 81 11 cpse r24, r1 + 17e: f6 cf rjmp .-20 ; 0x16c + display_char( text[count] ); + count++; + + _delay_ms(2); + } +} + 180: df 91 pop r29 + 182: cf 91 pop r28 + 184: 08 95 ret + +00000186 : + +void clear_display() +{ + lcd_command(0b00000001); + 186: 81 e0 ldi r24, 0x01 ; 1 + 188: c3 df rcall .-122 ; 0x110 + lcd_command(0b10000000); + 18a: 80 e8 ldi r24, 0x80 ; 128 + 18c: c1 cf rjmp .-126 ; 0x110 + 18e: 08 95 ret + +00000190 : + void display_char(unsigned char dat); + void lcd_command(unsigned char dat); + + void lcd_init() + { + DDRC = 0b11111111; + 190: 8f ef ldi r24, 0xFF ; 255 + 192: 84 bb out 0x14, r24 ; 20 + 194: 2f ef ldi r18, 0xFF ; 255 + 196: 80 e7 ldi r24, 0x70 ; 112 + 198: 92 e0 ldi r25, 0x02 ; 2 + 19a: 21 50 subi r18, 0x01 ; 1 + 19c: 80 40 sbci r24, 0x00 ; 0 + 19e: 90 40 sbci r25, 0x00 ; 0 + 1a0: e1 f7 brne .-8 ; 0x19a + 1a2: 00 c0 rjmp .+0 ; 0x1a4 + 1a4: 00 00 nop + + _delay_ms(100); + + // return home + lcd_command( 0x02 ); + 1a6: 82 e0 ldi r24, 0x02 ; 2 + 1a8: b3 df rcall .-154 ; 0x110 + 1aa: 2f e7 ldi r18, 0x7F ; 127 + 1ac: 88 e3 ldi r24, 0x38 ; 56 + 1ae: 91 e0 ldi r25, 0x01 ; 1 + 1b0: 21 50 subi r18, 0x01 ; 1 + 1b2: 80 40 sbci r24, 0x00 ; 0 + 1b4: 90 40 sbci r25, 0x00 ; 0 + 1b6: e1 f7 brne .-8 ; 0x1b0 + 1b8: 00 c0 rjmp .+0 ; 0x1ba + 1ba: 00 00 nop + // mode: 4 bits interface data, 2 lines, 5x8 dots + _delay_ms(50); + lcd_command( 0x28 ); + 1bc: 88 e2 ldi r24, 0x28 ; 40 + 1be: a8 df rcall .-176 ; 0x110 + 1c0: 2f e7 ldi r18, 0x7F ; 127 + 1c2: 88 e3 ldi r24, 0x38 ; 56 + 1c4: 91 e0 ldi r25, 0x01 ; 1 + 1c6: 21 50 subi r18, 0x01 ; 1 + 1c8: 80 40 sbci r24, 0x00 ; 0 + 1ca: 90 40 sbci r25, 0x00 ; 0 + 1cc: e1 f7 brne .-8 ; 0x1c6 + 1ce: 00 c0 rjmp .+0 ; 0x1d0 + 1d0: 00 00 nop + // display: on, cursor off, blinking off + _delay_ms(50); + lcd_command( 0x0C ); + 1d2: 8c e0 ldi r24, 0x0C ; 12 + 1d4: 9d df rcall .-198 ; 0x110 + 1d6: 2f e7 ldi r18, 0x7F ; 127 + 1d8: 88 e3 ldi r24, 0x38 ; 56 + 1da: 91 e0 ldi r25, 0x01 ; 1 + 1dc: 21 50 subi r18, 0x01 ; 1 + 1de: 80 40 sbci r24, 0x00 ; 0 + 1e0: 90 40 sbci r25, 0x00 ; 0 + 1e2: e1 f7 brne .-8 ; 0x1dc + 1e4: 00 c0 rjmp .+0 ; 0x1e6 + 1e6: 00 00 nop + // entry mode: cursor to right, no shift + _delay_ms(50); + lcd_command( 0x06 ); + 1e8: 86 e0 ldi r24, 0x06 ; 6 + 1ea: 92 df rcall .-220 ; 0x110 + 1ec: 2f e7 ldi r18, 0x7F ; 127 + 1ee: 88 e3 ldi r24, 0x38 ; 56 + 1f0: 91 e0 ldi r25, 0x01 ; 1 + 1f2: 21 50 subi r18, 0x01 ; 1 + 1f4: 80 40 sbci r24, 0x00 ; 0 + 1f6: 90 40 sbci r25, 0x00 ; 0 + 1f8: e1 f7 brne .-8 ; 0x1f2 + 1fa: 00 c0 rjmp .+0 ; 0x1fc + 1fc: 00 00 nop + // RAM address: 0, first position, line 1 + _delay_ms(50); + clear_display(); + 1fe: c3 df rcall .-122 ; 0x186 + 200: 2f ef ldi r18, 0xFF ; 255 + 202: 80 e7 ldi r24, 0x70 ; 112 + 204: 92 e0 ldi r25, 0x02 ; 2 + 206: 21 50 subi r18, 0x01 ; 1 + 208: 80 40 sbci r24, 0x00 ; 0 + 20a: 90 40 sbci r25, 0x00 ; 0 + 20c: e1 f7 brne .-8 ; 0x206 + 20e: 00 c0 rjmp .+0 ; 0x210 + 210: 00 00 nop + 212: 08 95 ret + +00000214 : // Initialize ADC: -void adcInit( void ) +void adcInitFree( void ) { - ADMUX = 0b11100001; // AREF=2,56 V, result left adjusted, channel1 at pin PF1 - ea: 81 ee ldi r24, 0xE1 ; 225 - ec: 87 b9 out 0x07, r24 ; 7 + ADMUX = 0b01100001; // AREF=VCC, result left adjusted, channel1 at pin PF1 + ADCSRA = 0b11100110; // ADC-enable, no interrupt, start, free running, division by 64 + 214: 18 16 cp r1, r24 + 216: 19 06 cpc r1, r25 + 218: 6c f4 brge .+26 ; 0x234 + 21a: 20 e0 ldi r18, 0x00 ; 0 + 21c: 30 e0 ldi r19, 0x00 ; 0 + 21e: ef ec ldi r30, 0xCF ; 207 + 220: f7 e0 ldi r31, 0x07 ; 7 + 222: 31 97 sbiw r30, 0x01 ; 1 + 224: f1 f7 brne .-4 ; 0x222 + 226: 00 c0 rjmp .+0 ; 0x228 + 228: 00 00 nop + 22a: 2f 5f subi r18, 0xFF ; 255 + 22c: 3f 4f sbci r19, 0xFF ; 255 + 22e: 28 17 cp r18, r24 + 230: 39 07 cpc r19, r25 + 232: a9 f7 brne .-22 ; 0x21e + 234: 08 95 ret + +00000236 : +} + +void adcInitPoll( void ) +{ + ADMUX = 0b01100001; // AREF=2,56 V, result left adjusted, channel1 at pin PF1 + 236: 81 e6 ldi r24, 0x61 ; 97 + 238: 87 b9 out 0x07, r24 ; 7 ADCSRA = 0b10000110; // ADC-enable, no interrupt, no free running, division by 64 - ee: 86 e8 ldi r24, 0x86 ; 134 - f0: 86 b9 out 0x06, r24 ; 6 - f2: 08 95 ret + 23a: 86 e8 ldi r24, 0x86 ; 134 + 23c: 86 b9 out 0x06, r24 ; 6 + 23e: 08 95 ret -000000f4 : - } +00000240
: } -int setWithButton(void) -{ - if( (0b00000001 & PINC) != 0) - f4: 98 99 sbic 0x13, 0 ; 19 - { - ADCSRA |= BIT(6); - f6: 36 9a sbi 0x06, 6 ; 6 - } -} - f8: 08 95 ret - -000000fa
: - - -// Main program: Counting on T1 int main( void ) { - DDRB = 0xFF; - fa: 8f ef ldi r24, 0xFF ; 255 - fc: 87 bb out 0x17, r24 ; 23 - DDRF = 0x00; // set PORTF for input (ADC) - fe: 10 92 61 00 sts 0x0061, r1 - DDRA = 0xFF; // set PORTA for output - 102: 8a bb out 0x1a, r24 ; 26 - adcInit(); // initialize ADC - 104: f2 df rcall .-28 ; 0xea - timer1Init(); - 106: e4 df rcall .-56 ; 0xd0 + 240: cf 93 push r28 + 242: df 93 push r29 + 244: cd b7 in r28, 0x3d ; 61 + 246: de b7 in r29, 0x3e ; 62 + 248: 28 97 sbiw r28, 0x08 ; 8 + 24a: 0f b6 in r0, 0x3f ; 63 + 24c: f8 94 cli + 24e: de bf out 0x3e, r29 ; 62 + 250: 0f be out 0x3f, r0 ; 63 + 252: cd bf out 0x3d, r28 ; 61 + DDRF = 0x00; + 254: 10 92 61 00 sts 0x0061, r1 + adcInitPoll(); + 258: ee df rcall .-36 ; 0x236 + lcd_init(); + 25a: 9a df rcall .-204 ; 0x190 + while ( ADCSRA & BIT(6) ) ; // Wait for completion - while (1) + data = ADCH; + data = (data<<2) | ADCL; + + sprintf(l1, "%d", ADCH); + 25c: 0f 2e mov r0, r31 + 25e: f0 e0 ldi r31, 0x00 ; 0 + 260: ef 2e mov r14, r31 + 262: f1 e0 ldi r31, 0x01 ; 1 + 264: ff 2e mov r15, r31 + 266: f0 2d mov r31, r0 + 268: 8e 01 movw r16, r28 + 26a: 0f 5f subi r16, 0xFF ; 255 + 26c: 1f 4f sbci r17, 0xFF ; 255 + + char l1[8]; + + while(1) { - //ADCSRA |= BIT(6); // Start ADC + ADCSRA |= BIT(6); // Start ADC + 26e: 36 9a sbi 0x06, 6 ; 6 while ( ADCSRA & BIT(6) ) ; // Wait for completion - 108: 36 99 sbic 0x06, 6 ; 6 - 10a: fe cf rjmp .-4 ; 0x108 - setRed(ADCH); - 10c: 85 b1 in r24, 0x05 ; 5 -} + 270: 36 99 sbic 0x06, 6 ; 6 + 272: fe cf rjmp .-4 ; 0x270 -// Set pulse width for RED on pin PB5, 0=off, 255=max -void setRed( unsigned char red ) -{ - OCR1A = red; - 10e: 90 e0 ldi r25, 0x00 ; 0 - 110: 9b bd out 0x2b, r25 ; 43 - 112: 8a bd out 0x2a, r24 ; 42 - //ADCSRA |= BIT(6); // Start ADC - while ( ADCSRA & BIT(6) ) ; // Wait for completion - setRed(ADCH); - //setBlue(ADCH); - //setGreen(ADCH); - wait(100); // every 50 ms (busy waiting) - 114: 84 e6 ldi r24, 0x64 ; 100 - 116: 90 e0 ldi r25, 0x00 ; 0 - 118: ca df rcall .-108 ; 0xae - //alleKleuren(); - //opgaveextra(); - setWithButton(); - 11a: ec df rcall .-40 ; 0xf4 + data = ADCH; + 274: 85 b1 in r24, 0x05 ; 5 + data = (data<<2) | ADCL; + 276: 84 b1 in r24, 0x04 ; 4 + + sprintf(l1, "%d", ADCH); + 278: 85 b1 in r24, 0x05 ; 5 + 27a: 1f 92 push r1 + 27c: 8f 93 push r24 + 27e: ff 92 push r15 + 280: ef 92 push r14 + 282: 1f 93 push r17 + 284: 0f 93 push r16 + 286: 0f d0 rcall .+30 ; 0x2a6 + display_text(0, l1); + 288: b8 01 movw r22, r16 + 28a: 80 e0 ldi r24, 0x00 ; 0 + 28c: 90 e0 ldi r25, 0x00 ; 0 + 28e: 60 df rcall .-320 ; 0x150 + + wait(3000); + 290: 88 eb ldi r24, 0xB8 ; 184 + 292: 9b e0 ldi r25, 0x0B ; 11 + 294: bf df rcall .-130 ; 0x214 + + clear_display(); + 296: 77 df rcall .-274 ; 0x186 } - 11c: f5 cf rjmp .-22 ; 0x108 + 298: 0f 90 pop r0 + 29a: 0f 90 pop r0 + 29c: 0f 90 pop r0 + 29e: 0f 90 pop r0 + 2a0: 0f 90 pop r0 + 2a2: 0f 90 pop r0 + 2a4: e4 cf rjmp .-56 ; 0x26e -0000011e <_exit>: - 11e: f8 94 cli +000002a6 : + 2a6: 0f 93 push r16 + 2a8: 1f 93 push r17 + 2aa: cf 93 push r28 + 2ac: df 93 push r29 + 2ae: cd b7 in r28, 0x3d ; 61 + 2b0: de b7 in r29, 0x3e ; 62 + 2b2: 2e 97 sbiw r28, 0x0e ; 14 + 2b4: 0f b6 in r0, 0x3f ; 63 + 2b6: f8 94 cli + 2b8: de bf out 0x3e, r29 ; 62 + 2ba: 0f be out 0x3f, r0 ; 63 + 2bc: cd bf out 0x3d, r28 ; 61 + 2be: 0d 89 ldd r16, Y+21 ; 0x15 + 2c0: 1e 89 ldd r17, Y+22 ; 0x16 + 2c2: 86 e0 ldi r24, 0x06 ; 6 + 2c4: 8c 83 std Y+4, r24 ; 0x04 + 2c6: 1a 83 std Y+2, r17 ; 0x02 + 2c8: 09 83 std Y+1, r16 ; 0x01 + 2ca: 8f ef ldi r24, 0xFF ; 255 + 2cc: 9f e7 ldi r25, 0x7F ; 127 + 2ce: 9e 83 std Y+6, r25 ; 0x06 + 2d0: 8d 83 std Y+5, r24 ; 0x05 + 2d2: ae 01 movw r20, r28 + 2d4: 47 5e subi r20, 0xE7 ; 231 + 2d6: 5f 4f sbci r21, 0xFF ; 255 + 2d8: 6f 89 ldd r22, Y+23 ; 0x17 + 2da: 78 8d ldd r23, Y+24 ; 0x18 + 2dc: ce 01 movw r24, r28 + 2de: 01 96 adiw r24, 0x01 ; 1 + 2e0: 11 d0 rcall .+34 ; 0x304 + 2e2: 2f 81 ldd r18, Y+7 ; 0x07 + 2e4: 38 85 ldd r19, Y+8 ; 0x08 + 2e6: f8 01 movw r30, r16 + 2e8: e2 0f add r30, r18 + 2ea: f3 1f adc r31, r19 + 2ec: 10 82 st Z, r1 + 2ee: 2e 96 adiw r28, 0x0e ; 14 + 2f0: 0f b6 in r0, 0x3f ; 63 + 2f2: f8 94 cli + 2f4: de bf out 0x3e, r29 ; 62 + 2f6: 0f be out 0x3f, r0 ; 63 + 2f8: cd bf out 0x3d, r28 ; 61 + 2fa: df 91 pop r29 + 2fc: cf 91 pop r28 + 2fe: 1f 91 pop r17 + 300: 0f 91 pop r16 + 302: 08 95 ret -00000120 <__stop_program>: - 120: ff cf rjmp .-2 ; 0x120 <__stop_program> +00000304 : + 304: 2f 92 push r2 + 306: 3f 92 push r3 + 308: 4f 92 push r4 + 30a: 5f 92 push r5 + 30c: 6f 92 push r6 + 30e: 7f 92 push r7 + 310: 8f 92 push r8 + 312: 9f 92 push r9 + 314: af 92 push r10 + 316: bf 92 push r11 + 318: cf 92 push r12 + 31a: df 92 push r13 + 31c: ef 92 push r14 + 31e: ff 92 push r15 + 320: 0f 93 push r16 + 322: 1f 93 push r17 + 324: cf 93 push r28 + 326: df 93 push r29 + 328: cd b7 in r28, 0x3d ; 61 + 32a: de b7 in r29, 0x3e ; 62 + 32c: 2c 97 sbiw r28, 0x0c ; 12 + 32e: 0f b6 in r0, 0x3f ; 63 + 330: f8 94 cli + 332: de bf out 0x3e, r29 ; 62 + 334: 0f be out 0x3f, r0 ; 63 + 336: cd bf out 0x3d, r28 ; 61 + 338: 7c 01 movw r14, r24 + 33a: 6b 01 movw r12, r22 + 33c: 8a 01 movw r16, r20 + 33e: fc 01 movw r30, r24 + 340: 17 82 std Z+7, r1 ; 0x07 + 342: 16 82 std Z+6, r1 ; 0x06 + 344: 83 81 ldd r24, Z+3 ; 0x03 + 346: 81 ff sbrs r24, 1 + 348: b0 c1 rjmp .+864 ; 0x6aa + 34a: ce 01 movw r24, r28 + 34c: 01 96 adiw r24, 0x01 ; 1 + 34e: 4c 01 movw r8, r24 + 350: f7 01 movw r30, r14 + 352: 93 81 ldd r25, Z+3 ; 0x03 + 354: f6 01 movw r30, r12 + 356: 93 fd sbrc r25, 3 + 358: 85 91 lpm r24, Z+ + 35a: 93 ff sbrs r25, 3 + 35c: 81 91 ld r24, Z+ + 35e: 6f 01 movw r12, r30 + 360: 88 23 and r24, r24 + 362: 09 f4 brne .+2 ; 0x366 + 364: 9e c1 rjmp .+828 ; 0x6a2 + 366: 85 32 cpi r24, 0x25 ; 37 + 368: 39 f4 brne .+14 ; 0x378 + 36a: 93 fd sbrc r25, 3 + 36c: 85 91 lpm r24, Z+ + 36e: 93 ff sbrs r25, 3 + 370: 81 91 ld r24, Z+ + 372: 6f 01 movw r12, r30 + 374: 85 32 cpi r24, 0x25 ; 37 + 376: 21 f4 brne .+8 ; 0x380 + 378: b7 01 movw r22, r14 + 37a: 90 e0 ldi r25, 0x00 ; 0 + 37c: c7 d1 rcall .+910 ; 0x70c + 37e: e8 cf rjmp .-48 ; 0x350 + 380: 51 2c mov r5, r1 + 382: 31 2c mov r3, r1 + 384: 20 e0 ldi r18, 0x00 ; 0 + 386: 20 32 cpi r18, 0x20 ; 32 + 388: a0 f4 brcc .+40 ; 0x3b2 + 38a: 8b 32 cpi r24, 0x2B ; 43 + 38c: 69 f0 breq .+26 ; 0x3a8 + 38e: 30 f4 brcc .+12 ; 0x39c + 390: 80 32 cpi r24, 0x20 ; 32 + 392: 59 f0 breq .+22 ; 0x3aa + 394: 83 32 cpi r24, 0x23 ; 35 + 396: 69 f4 brne .+26 ; 0x3b2 + 398: 20 61 ori r18, 0x10 ; 16 + 39a: 2c c0 rjmp .+88 ; 0x3f4 + 39c: 8d 32 cpi r24, 0x2D ; 45 + 39e: 39 f0 breq .+14 ; 0x3ae + 3a0: 80 33 cpi r24, 0x30 ; 48 + 3a2: 39 f4 brne .+14 ; 0x3b2 + 3a4: 21 60 ori r18, 0x01 ; 1 + 3a6: 26 c0 rjmp .+76 ; 0x3f4 + 3a8: 22 60 ori r18, 0x02 ; 2 + 3aa: 24 60 ori r18, 0x04 ; 4 + 3ac: 23 c0 rjmp .+70 ; 0x3f4 + 3ae: 28 60 ori r18, 0x08 ; 8 + 3b0: 21 c0 rjmp .+66 ; 0x3f4 + 3b2: 27 fd sbrc r18, 7 + 3b4: 27 c0 rjmp .+78 ; 0x404 + 3b6: 30 ed ldi r19, 0xD0 ; 208 + 3b8: 38 0f add r19, r24 + 3ba: 3a 30 cpi r19, 0x0A ; 10 + 3bc: 78 f4 brcc .+30 ; 0x3dc + 3be: 26 ff sbrs r18, 6 + 3c0: 06 c0 rjmp .+12 ; 0x3ce + 3c2: fa e0 ldi r31, 0x0A ; 10 + 3c4: 5f 9e mul r5, r31 + 3c6: 30 0d add r19, r0 + 3c8: 11 24 eor r1, r1 + 3ca: 53 2e mov r5, r19 + 3cc: 13 c0 rjmp .+38 ; 0x3f4 + 3ce: 8a e0 ldi r24, 0x0A ; 10 + 3d0: 38 9e mul r3, r24 + 3d2: 30 0d add r19, r0 + 3d4: 11 24 eor r1, r1 + 3d6: 33 2e mov r3, r19 + 3d8: 20 62 ori r18, 0x20 ; 32 + 3da: 0c c0 rjmp .+24 ; 0x3f4 + 3dc: 8e 32 cpi r24, 0x2E ; 46 + 3de: 21 f4 brne .+8 ; 0x3e8 + 3e0: 26 fd sbrc r18, 6 + 3e2: 5f c1 rjmp .+702 ; 0x6a2 + 3e4: 20 64 ori r18, 0x40 ; 64 + 3e6: 06 c0 rjmp .+12 ; 0x3f4 + 3e8: 8c 36 cpi r24, 0x6C ; 108 + 3ea: 11 f4 brne .+4 ; 0x3f0 + 3ec: 20 68 ori r18, 0x80 ; 128 + 3ee: 02 c0 rjmp .+4 ; 0x3f4 + 3f0: 88 36 cpi r24, 0x68 ; 104 + 3f2: 41 f4 brne .+16 ; 0x404 + 3f4: f6 01 movw r30, r12 + 3f6: 93 fd sbrc r25, 3 + 3f8: 85 91 lpm r24, Z+ + 3fa: 93 ff sbrs r25, 3 + 3fc: 81 91 ld r24, Z+ + 3fe: 6f 01 movw r12, r30 + 400: 81 11 cpse r24, r1 + 402: c1 cf rjmp .-126 ; 0x386 + 404: 98 2f mov r25, r24 + 406: 9f 7d andi r25, 0xDF ; 223 + 408: 95 54 subi r25, 0x45 ; 69 + 40a: 93 30 cpi r25, 0x03 ; 3 + 40c: 28 f4 brcc .+10 ; 0x418 + 40e: 0c 5f subi r16, 0xFC ; 252 + 410: 1f 4f sbci r17, 0xFF ; 255 + 412: ff e3 ldi r31, 0x3F ; 63 + 414: f9 83 std Y+1, r31 ; 0x01 + 416: 0d c0 rjmp .+26 ; 0x432 + 418: 83 36 cpi r24, 0x63 ; 99 + 41a: 31 f0 breq .+12 ; 0x428 + 41c: 83 37 cpi r24, 0x73 ; 115 + 41e: 71 f0 breq .+28 ; 0x43c + 420: 83 35 cpi r24, 0x53 ; 83 + 422: 09 f0 breq .+2 ; 0x426 + 424: 57 c0 rjmp .+174 ; 0x4d4 + 426: 21 c0 rjmp .+66 ; 0x46a + 428: f8 01 movw r30, r16 + 42a: 80 81 ld r24, Z + 42c: 89 83 std Y+1, r24 ; 0x01 + 42e: 0e 5f subi r16, 0xFE ; 254 + 430: 1f 4f sbci r17, 0xFF ; 255 + 432: 44 24 eor r4, r4 + 434: 43 94 inc r4 + 436: 51 2c mov r5, r1 + 438: 54 01 movw r10, r8 + 43a: 14 c0 rjmp .+40 ; 0x464 + 43c: 38 01 movw r6, r16 + 43e: f2 e0 ldi r31, 0x02 ; 2 + 440: 6f 0e add r6, r31 + 442: 71 1c adc r7, r1 + 444: f8 01 movw r30, r16 + 446: a0 80 ld r10, Z + 448: b1 80 ldd r11, Z+1 ; 0x01 + 44a: 26 ff sbrs r18, 6 + 44c: 03 c0 rjmp .+6 ; 0x454 + 44e: 65 2d mov r22, r5 + 450: 70 e0 ldi r23, 0x00 ; 0 + 452: 02 c0 rjmp .+4 ; 0x458 + 454: 6f ef ldi r22, 0xFF ; 255 + 456: 7f ef ldi r23, 0xFF ; 255 + 458: c5 01 movw r24, r10 + 45a: 2c 87 std Y+12, r18 ; 0x0c + 45c: 4c d1 rcall .+664 ; 0x6f6 + 45e: 2c 01 movw r4, r24 + 460: 83 01 movw r16, r6 + 462: 2c 85 ldd r18, Y+12 ; 0x0c + 464: 2f 77 andi r18, 0x7F ; 127 + 466: 22 2e mov r2, r18 + 468: 16 c0 rjmp .+44 ; 0x496 + 46a: 38 01 movw r6, r16 + 46c: f2 e0 ldi r31, 0x02 ; 2 + 46e: 6f 0e add r6, r31 + 470: 71 1c adc r7, r1 + 472: f8 01 movw r30, r16 + 474: a0 80 ld r10, Z + 476: b1 80 ldd r11, Z+1 ; 0x01 + 478: 26 ff sbrs r18, 6 + 47a: 03 c0 rjmp .+6 ; 0x482 + 47c: 65 2d mov r22, r5 + 47e: 70 e0 ldi r23, 0x00 ; 0 + 480: 02 c0 rjmp .+4 ; 0x486 + 482: 6f ef ldi r22, 0xFF ; 255 + 484: 7f ef ldi r23, 0xFF ; 255 + 486: c5 01 movw r24, r10 + 488: 2c 87 std Y+12, r18 ; 0x0c + 48a: 2a d1 rcall .+596 ; 0x6e0 + 48c: 2c 01 movw r4, r24 + 48e: 2c 85 ldd r18, Y+12 ; 0x0c + 490: 20 68 ori r18, 0x80 ; 128 + 492: 22 2e mov r2, r18 + 494: 83 01 movw r16, r6 + 496: 23 fc sbrc r2, 3 + 498: 19 c0 rjmp .+50 ; 0x4cc + 49a: 83 2d mov r24, r3 + 49c: 90 e0 ldi r25, 0x00 ; 0 + 49e: 48 16 cp r4, r24 + 4a0: 59 06 cpc r5, r25 + 4a2: a0 f4 brcc .+40 ; 0x4cc + 4a4: b7 01 movw r22, r14 + 4a6: 80 e2 ldi r24, 0x20 ; 32 + 4a8: 90 e0 ldi r25, 0x00 ; 0 + 4aa: 30 d1 rcall .+608 ; 0x70c + 4ac: 3a 94 dec r3 + 4ae: f5 cf rjmp .-22 ; 0x49a + 4b0: f5 01 movw r30, r10 + 4b2: 27 fc sbrc r2, 7 + 4b4: 85 91 lpm r24, Z+ + 4b6: 27 fe sbrs r2, 7 + 4b8: 81 91 ld r24, Z+ + 4ba: 5f 01 movw r10, r30 + 4bc: b7 01 movw r22, r14 + 4be: 90 e0 ldi r25, 0x00 ; 0 + 4c0: 25 d1 rcall .+586 ; 0x70c + 4c2: 31 10 cpse r3, r1 + 4c4: 3a 94 dec r3 + 4c6: f1 e0 ldi r31, 0x01 ; 1 + 4c8: 4f 1a sub r4, r31 + 4ca: 51 08 sbc r5, r1 + 4cc: 41 14 cp r4, r1 + 4ce: 51 04 cpc r5, r1 + 4d0: 79 f7 brne .-34 ; 0x4b0 + 4d2: de c0 rjmp .+444 ; 0x690 + 4d4: 84 36 cpi r24, 0x64 ; 100 + 4d6: 11 f0 breq .+4 ; 0x4dc + 4d8: 89 36 cpi r24, 0x69 ; 105 + 4da: 31 f5 brne .+76 ; 0x528 + 4dc: f8 01 movw r30, r16 + 4de: 27 ff sbrs r18, 7 + 4e0: 07 c0 rjmp .+14 ; 0x4f0 + 4e2: 60 81 ld r22, Z + 4e4: 71 81 ldd r23, Z+1 ; 0x01 + 4e6: 82 81 ldd r24, Z+2 ; 0x02 + 4e8: 93 81 ldd r25, Z+3 ; 0x03 + 4ea: 0c 5f subi r16, 0xFC ; 252 + 4ec: 1f 4f sbci r17, 0xFF ; 255 + 4ee: 08 c0 rjmp .+16 ; 0x500 + 4f0: 60 81 ld r22, Z + 4f2: 71 81 ldd r23, Z+1 ; 0x01 + 4f4: 07 2e mov r0, r23 + 4f6: 00 0c add r0, r0 + 4f8: 88 0b sbc r24, r24 + 4fa: 99 0b sbc r25, r25 + 4fc: 0e 5f subi r16, 0xFE ; 254 + 4fe: 1f 4f sbci r17, 0xFF ; 255 + 500: 2f 76 andi r18, 0x6F ; 111 + 502: 72 2e mov r7, r18 + 504: 97 ff sbrs r25, 7 + 506: 09 c0 rjmp .+18 ; 0x51a + 508: 90 95 com r25 + 50a: 80 95 com r24 + 50c: 70 95 com r23 + 50e: 61 95 neg r22 + 510: 7f 4f sbci r23, 0xFF ; 255 + 512: 8f 4f sbci r24, 0xFF ; 255 + 514: 9f 4f sbci r25, 0xFF ; 255 + 516: 20 68 ori r18, 0x80 ; 128 + 518: 72 2e mov r7, r18 + 51a: 2a e0 ldi r18, 0x0A ; 10 + 51c: 30 e0 ldi r19, 0x00 ; 0 + 51e: a4 01 movw r20, r8 + 520: 2d d1 rcall .+602 ; 0x77c <__ultoa_invert> + 522: a8 2e mov r10, r24 + 524: a8 18 sub r10, r8 + 526: 43 c0 rjmp .+134 ; 0x5ae + 528: 85 37 cpi r24, 0x75 ; 117 + 52a: 29 f4 brne .+10 ; 0x536 + 52c: 2f 7e andi r18, 0xEF ; 239 + 52e: b2 2e mov r11, r18 + 530: 2a e0 ldi r18, 0x0A ; 10 + 532: 30 e0 ldi r19, 0x00 ; 0 + 534: 25 c0 rjmp .+74 ; 0x580 + 536: f2 2f mov r31, r18 + 538: f9 7f andi r31, 0xF9 ; 249 + 53a: bf 2e mov r11, r31 + 53c: 8f 36 cpi r24, 0x6F ; 111 + 53e: c1 f0 breq .+48 ; 0x570 + 540: 18 f4 brcc .+6 ; 0x548 + 542: 88 35 cpi r24, 0x58 ; 88 + 544: 79 f0 breq .+30 ; 0x564 + 546: ad c0 rjmp .+346 ; 0x6a2 + 548: 80 37 cpi r24, 0x70 ; 112 + 54a: 19 f0 breq .+6 ; 0x552 + 54c: 88 37 cpi r24, 0x78 ; 120 + 54e: 21 f0 breq .+8 ; 0x558 + 550: a8 c0 rjmp .+336 ; 0x6a2 + 552: 2f 2f mov r18, r31 + 554: 20 61 ori r18, 0x10 ; 16 + 556: b2 2e mov r11, r18 + 558: b4 fe sbrs r11, 4 + 55a: 0d c0 rjmp .+26 ; 0x576 + 55c: 8b 2d mov r24, r11 + 55e: 84 60 ori r24, 0x04 ; 4 + 560: b8 2e mov r11, r24 + 562: 09 c0 rjmp .+18 ; 0x576 + 564: 24 ff sbrs r18, 4 + 566: 0a c0 rjmp .+20 ; 0x57c + 568: 9f 2f mov r25, r31 + 56a: 96 60 ori r25, 0x06 ; 6 + 56c: b9 2e mov r11, r25 + 56e: 06 c0 rjmp .+12 ; 0x57c + 570: 28 e0 ldi r18, 0x08 ; 8 + 572: 30 e0 ldi r19, 0x00 ; 0 + 574: 05 c0 rjmp .+10 ; 0x580 + 576: 20 e1 ldi r18, 0x10 ; 16 + 578: 30 e0 ldi r19, 0x00 ; 0 + 57a: 02 c0 rjmp .+4 ; 0x580 + 57c: 20 e1 ldi r18, 0x10 ; 16 + 57e: 32 e0 ldi r19, 0x02 ; 2 + 580: f8 01 movw r30, r16 + 582: b7 fe sbrs r11, 7 + 584: 07 c0 rjmp .+14 ; 0x594 + 586: 60 81 ld r22, Z + 588: 71 81 ldd r23, Z+1 ; 0x01 + 58a: 82 81 ldd r24, Z+2 ; 0x02 + 58c: 93 81 ldd r25, Z+3 ; 0x03 + 58e: 0c 5f subi r16, 0xFC ; 252 + 590: 1f 4f sbci r17, 0xFF ; 255 + 592: 06 c0 rjmp .+12 ; 0x5a0 + 594: 60 81 ld r22, Z + 596: 71 81 ldd r23, Z+1 ; 0x01 + 598: 80 e0 ldi r24, 0x00 ; 0 + 59a: 90 e0 ldi r25, 0x00 ; 0 + 59c: 0e 5f subi r16, 0xFE ; 254 + 59e: 1f 4f sbci r17, 0xFF ; 255 + 5a0: a4 01 movw r20, r8 + 5a2: ec d0 rcall .+472 ; 0x77c <__ultoa_invert> + 5a4: a8 2e mov r10, r24 + 5a6: a8 18 sub r10, r8 + 5a8: fb 2d mov r31, r11 + 5aa: ff 77 andi r31, 0x7F ; 127 + 5ac: 7f 2e mov r7, r31 + 5ae: 76 fe sbrs r7, 6 + 5b0: 0b c0 rjmp .+22 ; 0x5c8 + 5b2: 37 2d mov r19, r7 + 5b4: 3e 7f andi r19, 0xFE ; 254 + 5b6: a5 14 cp r10, r5 + 5b8: 50 f4 brcc .+20 ; 0x5ce + 5ba: 74 fe sbrs r7, 4 + 5bc: 0a c0 rjmp .+20 ; 0x5d2 + 5be: 72 fc sbrc r7, 2 + 5c0: 08 c0 rjmp .+16 ; 0x5d2 + 5c2: 37 2d mov r19, r7 + 5c4: 3e 7e andi r19, 0xEE ; 238 + 5c6: 05 c0 rjmp .+10 ; 0x5d2 + 5c8: ba 2c mov r11, r10 + 5ca: 37 2d mov r19, r7 + 5cc: 03 c0 rjmp .+6 ; 0x5d4 + 5ce: ba 2c mov r11, r10 + 5d0: 01 c0 rjmp .+2 ; 0x5d4 + 5d2: b5 2c mov r11, r5 + 5d4: 34 ff sbrs r19, 4 + 5d6: 0d c0 rjmp .+26 ; 0x5f2 + 5d8: fe 01 movw r30, r28 + 5da: ea 0d add r30, r10 + 5dc: f1 1d adc r31, r1 + 5de: 80 81 ld r24, Z + 5e0: 80 33 cpi r24, 0x30 ; 48 + 5e2: 11 f4 brne .+4 ; 0x5e8 + 5e4: 39 7e andi r19, 0xE9 ; 233 + 5e6: 09 c0 rjmp .+18 ; 0x5fa + 5e8: 32 ff sbrs r19, 2 + 5ea: 06 c0 rjmp .+12 ; 0x5f8 + 5ec: b3 94 inc r11 + 5ee: b3 94 inc r11 + 5f0: 04 c0 rjmp .+8 ; 0x5fa + 5f2: 83 2f mov r24, r19 + 5f4: 86 78 andi r24, 0x86 ; 134 + 5f6: 09 f0 breq .+2 ; 0x5fa + 5f8: b3 94 inc r11 + 5fa: 33 fd sbrc r19, 3 + 5fc: 12 c0 rjmp .+36 ; 0x622 + 5fe: 30 ff sbrs r19, 0 + 600: 06 c0 rjmp .+12 ; 0x60e + 602: 5a 2c mov r5, r10 + 604: b3 14 cp r11, r3 + 606: 18 f4 brcc .+6 ; 0x60e + 608: 53 0c add r5, r3 + 60a: 5b 18 sub r5, r11 + 60c: b3 2c mov r11, r3 + 60e: b3 14 cp r11, r3 + 610: 60 f4 brcc .+24 ; 0x62a + 612: b7 01 movw r22, r14 + 614: 80 e2 ldi r24, 0x20 ; 32 + 616: 90 e0 ldi r25, 0x00 ; 0 + 618: 3c 87 std Y+12, r19 ; 0x0c + 61a: 78 d0 rcall .+240 ; 0x70c + 61c: b3 94 inc r11 + 61e: 3c 85 ldd r19, Y+12 ; 0x0c + 620: f6 cf rjmp .-20 ; 0x60e + 622: b3 14 cp r11, r3 + 624: 10 f4 brcc .+4 ; 0x62a + 626: 3b 18 sub r3, r11 + 628: 01 c0 rjmp .+2 ; 0x62c + 62a: 31 2c mov r3, r1 + 62c: 34 ff sbrs r19, 4 + 62e: 11 c0 rjmp .+34 ; 0x652 + 630: b7 01 movw r22, r14 + 632: 80 e3 ldi r24, 0x30 ; 48 + 634: 90 e0 ldi r25, 0x00 ; 0 + 636: 3c 87 std Y+12, r19 ; 0x0c + 638: 69 d0 rcall .+210 ; 0x70c + 63a: 3c 85 ldd r19, Y+12 ; 0x0c + 63c: 32 ff sbrs r19, 2 + 63e: 16 c0 rjmp .+44 ; 0x66c + 640: 31 fd sbrc r19, 1 + 642: 03 c0 rjmp .+6 ; 0x64a + 644: 88 e7 ldi r24, 0x78 ; 120 + 646: 90 e0 ldi r25, 0x00 ; 0 + 648: 02 c0 rjmp .+4 ; 0x64e + 64a: 88 e5 ldi r24, 0x58 ; 88 + 64c: 90 e0 ldi r25, 0x00 ; 0 + 64e: b7 01 movw r22, r14 + 650: 0c c0 rjmp .+24 ; 0x66a + 652: 83 2f mov r24, r19 + 654: 86 78 andi r24, 0x86 ; 134 + 656: 51 f0 breq .+20 ; 0x66c + 658: 31 ff sbrs r19, 1 + 65a: 02 c0 rjmp .+4 ; 0x660 + 65c: 8b e2 ldi r24, 0x2B ; 43 + 65e: 01 c0 rjmp .+2 ; 0x662 + 660: 80 e2 ldi r24, 0x20 ; 32 + 662: 37 fd sbrc r19, 7 + 664: 8d e2 ldi r24, 0x2D ; 45 + 666: b7 01 movw r22, r14 + 668: 90 e0 ldi r25, 0x00 ; 0 + 66a: 50 d0 rcall .+160 ; 0x70c + 66c: a5 14 cp r10, r5 + 66e: 30 f4 brcc .+12 ; 0x67c + 670: b7 01 movw r22, r14 + 672: 80 e3 ldi r24, 0x30 ; 48 + 674: 90 e0 ldi r25, 0x00 ; 0 + 676: 4a d0 rcall .+148 ; 0x70c + 678: 5a 94 dec r5 + 67a: f8 cf rjmp .-16 ; 0x66c + 67c: aa 94 dec r10 + 67e: f4 01 movw r30, r8 + 680: ea 0d add r30, r10 + 682: f1 1d adc r31, r1 + 684: 80 81 ld r24, Z + 686: b7 01 movw r22, r14 + 688: 90 e0 ldi r25, 0x00 ; 0 + 68a: 40 d0 rcall .+128 ; 0x70c + 68c: a1 10 cpse r10, r1 + 68e: f6 cf rjmp .-20 ; 0x67c + 690: 33 20 and r3, r3 + 692: 09 f4 brne .+2 ; 0x696 + 694: 5d ce rjmp .-838 ; 0x350 + 696: b7 01 movw r22, r14 + 698: 80 e2 ldi r24, 0x20 ; 32 + 69a: 90 e0 ldi r25, 0x00 ; 0 + 69c: 37 d0 rcall .+110 ; 0x70c + 69e: 3a 94 dec r3 + 6a0: f7 cf rjmp .-18 ; 0x690 + 6a2: f7 01 movw r30, r14 + 6a4: 86 81 ldd r24, Z+6 ; 0x06 + 6a6: 97 81 ldd r25, Z+7 ; 0x07 + 6a8: 02 c0 rjmp .+4 ; 0x6ae + 6aa: 8f ef ldi r24, 0xFF ; 255 + 6ac: 9f ef ldi r25, 0xFF ; 255 + 6ae: 2c 96 adiw r28, 0x0c ; 12 + 6b0: 0f b6 in r0, 0x3f ; 63 + 6b2: f8 94 cli + 6b4: de bf out 0x3e, r29 ; 62 + 6b6: 0f be out 0x3f, r0 ; 63 + 6b8: cd bf out 0x3d, r28 ; 61 + 6ba: df 91 pop r29 + 6bc: cf 91 pop r28 + 6be: 1f 91 pop r17 + 6c0: 0f 91 pop r16 + 6c2: ff 90 pop r15 + 6c4: ef 90 pop r14 + 6c6: df 90 pop r13 + 6c8: cf 90 pop r12 + 6ca: bf 90 pop r11 + 6cc: af 90 pop r10 + 6ce: 9f 90 pop r9 + 6d0: 8f 90 pop r8 + 6d2: 7f 90 pop r7 + 6d4: 6f 90 pop r6 + 6d6: 5f 90 pop r5 + 6d8: 4f 90 pop r4 + 6da: 3f 90 pop r3 + 6dc: 2f 90 pop r2 + 6de: 08 95 ret + +000006e0 : + 6e0: fc 01 movw r30, r24 + 6e2: 05 90 lpm r0, Z+ + 6e4: 61 50 subi r22, 0x01 ; 1 + 6e6: 70 40 sbci r23, 0x00 ; 0 + 6e8: 01 10 cpse r0, r1 + 6ea: d8 f7 brcc .-10 ; 0x6e2 + 6ec: 80 95 com r24 + 6ee: 90 95 com r25 + 6f0: 8e 0f add r24, r30 + 6f2: 9f 1f adc r25, r31 + 6f4: 08 95 ret + +000006f6 : + 6f6: fc 01 movw r30, r24 + 6f8: 61 50 subi r22, 0x01 ; 1 + 6fa: 70 40 sbci r23, 0x00 ; 0 + 6fc: 01 90 ld r0, Z+ + 6fe: 01 10 cpse r0, r1 + 700: d8 f7 brcc .-10 ; 0x6f8 + 702: 80 95 com r24 + 704: 90 95 com r25 + 706: 8e 0f add r24, r30 + 708: 9f 1f adc r25, r31 + 70a: 08 95 ret + +0000070c : + 70c: 0f 93 push r16 + 70e: 1f 93 push r17 + 710: cf 93 push r28 + 712: df 93 push r29 + 714: fb 01 movw r30, r22 + 716: 23 81 ldd r18, Z+3 ; 0x03 + 718: 21 fd sbrc r18, 1 + 71a: 03 c0 rjmp .+6 ; 0x722 + 71c: 8f ef ldi r24, 0xFF ; 255 + 71e: 9f ef ldi r25, 0xFF ; 255 + 720: 28 c0 rjmp .+80 ; 0x772 + 722: 22 ff sbrs r18, 2 + 724: 16 c0 rjmp .+44 ; 0x752 + 726: 46 81 ldd r20, Z+6 ; 0x06 + 728: 57 81 ldd r21, Z+7 ; 0x07 + 72a: 24 81 ldd r18, Z+4 ; 0x04 + 72c: 35 81 ldd r19, Z+5 ; 0x05 + 72e: 42 17 cp r20, r18 + 730: 53 07 cpc r21, r19 + 732: 44 f4 brge .+16 ; 0x744 + 734: a0 81 ld r26, Z + 736: b1 81 ldd r27, Z+1 ; 0x01 + 738: 9d 01 movw r18, r26 + 73a: 2f 5f subi r18, 0xFF ; 255 + 73c: 3f 4f sbci r19, 0xFF ; 255 + 73e: 31 83 std Z+1, r19 ; 0x01 + 740: 20 83 st Z, r18 + 742: 8c 93 st X, r24 + 744: 26 81 ldd r18, Z+6 ; 0x06 + 746: 37 81 ldd r19, Z+7 ; 0x07 + 748: 2f 5f subi r18, 0xFF ; 255 + 74a: 3f 4f sbci r19, 0xFF ; 255 + 74c: 37 83 std Z+7, r19 ; 0x07 + 74e: 26 83 std Z+6, r18 ; 0x06 + 750: 10 c0 rjmp .+32 ; 0x772 + 752: eb 01 movw r28, r22 + 754: 09 2f mov r16, r25 + 756: 18 2f mov r17, r24 + 758: 00 84 ldd r0, Z+8 ; 0x08 + 75a: f1 85 ldd r31, Z+9 ; 0x09 + 75c: e0 2d mov r30, r0 + 75e: 09 95 icall + 760: 89 2b or r24, r25 + 762: e1 f6 brne .-72 ; 0x71c + 764: 8e 81 ldd r24, Y+6 ; 0x06 + 766: 9f 81 ldd r25, Y+7 ; 0x07 + 768: 01 96 adiw r24, 0x01 ; 1 + 76a: 9f 83 std Y+7, r25 ; 0x07 + 76c: 8e 83 std Y+6, r24 ; 0x06 + 76e: 81 2f mov r24, r17 + 770: 90 2f mov r25, r16 + 772: df 91 pop r29 + 774: cf 91 pop r28 + 776: 1f 91 pop r17 + 778: 0f 91 pop r16 + 77a: 08 95 ret + +0000077c <__ultoa_invert>: + 77c: fa 01 movw r30, r20 + 77e: aa 27 eor r26, r26 + 780: 28 30 cpi r18, 0x08 ; 8 + 782: 51 f1 breq .+84 ; 0x7d8 <__ultoa_invert+0x5c> + 784: 20 31 cpi r18, 0x10 ; 16 + 786: 81 f1 breq .+96 ; 0x7e8 <__ultoa_invert+0x6c> + 788: e8 94 clt + 78a: 6f 93 push r22 + 78c: 6e 7f andi r22, 0xFE ; 254 + 78e: 6e 5f subi r22, 0xFE ; 254 + 790: 7f 4f sbci r23, 0xFF ; 255 + 792: 8f 4f sbci r24, 0xFF ; 255 + 794: 9f 4f sbci r25, 0xFF ; 255 + 796: af 4f sbci r26, 0xFF ; 255 + 798: b1 e0 ldi r27, 0x01 ; 1 + 79a: 3e d0 rcall .+124 ; 0x818 <__ultoa_invert+0x9c> + 79c: b4 e0 ldi r27, 0x04 ; 4 + 79e: 3c d0 rcall .+120 ; 0x818 <__ultoa_invert+0x9c> + 7a0: 67 0f add r22, r23 + 7a2: 78 1f adc r23, r24 + 7a4: 89 1f adc r24, r25 + 7a6: 9a 1f adc r25, r26 + 7a8: a1 1d adc r26, r1 + 7aa: 68 0f add r22, r24 + 7ac: 79 1f adc r23, r25 + 7ae: 8a 1f adc r24, r26 + 7b0: 91 1d adc r25, r1 + 7b2: a1 1d adc r26, r1 + 7b4: 6a 0f add r22, r26 + 7b6: 71 1d adc r23, r1 + 7b8: 81 1d adc r24, r1 + 7ba: 91 1d adc r25, r1 + 7bc: a1 1d adc r26, r1 + 7be: 20 d0 rcall .+64 ; 0x800 <__ultoa_invert+0x84> + 7c0: 09 f4 brne .+2 ; 0x7c4 <__ultoa_invert+0x48> + 7c2: 68 94 set + 7c4: 3f 91 pop r19 + 7c6: 2a e0 ldi r18, 0x0A ; 10 + 7c8: 26 9f mul r18, r22 + 7ca: 11 24 eor r1, r1 + 7cc: 30 19 sub r19, r0 + 7ce: 30 5d subi r19, 0xD0 ; 208 + 7d0: 31 93 st Z+, r19 + 7d2: de f6 brtc .-74 ; 0x78a <__ultoa_invert+0xe> + 7d4: cf 01 movw r24, r30 + 7d6: 08 95 ret + 7d8: 46 2f mov r20, r22 + 7da: 47 70 andi r20, 0x07 ; 7 + 7dc: 40 5d subi r20, 0xD0 ; 208 + 7de: 41 93 st Z+, r20 + 7e0: b3 e0 ldi r27, 0x03 ; 3 + 7e2: 0f d0 rcall .+30 ; 0x802 <__ultoa_invert+0x86> + 7e4: c9 f7 brne .-14 ; 0x7d8 <__ultoa_invert+0x5c> + 7e6: f6 cf rjmp .-20 ; 0x7d4 <__ultoa_invert+0x58> + 7e8: 46 2f mov r20, r22 + 7ea: 4f 70 andi r20, 0x0F ; 15 + 7ec: 40 5d subi r20, 0xD0 ; 208 + 7ee: 4a 33 cpi r20, 0x3A ; 58 + 7f0: 18 f0 brcs .+6 ; 0x7f8 <__ultoa_invert+0x7c> + 7f2: 49 5d subi r20, 0xD9 ; 217 + 7f4: 31 fd sbrc r19, 1 + 7f6: 40 52 subi r20, 0x20 ; 32 + 7f8: 41 93 st Z+, r20 + 7fa: 02 d0 rcall .+4 ; 0x800 <__ultoa_invert+0x84> + 7fc: a9 f7 brne .-22 ; 0x7e8 <__ultoa_invert+0x6c> + 7fe: ea cf rjmp .-44 ; 0x7d4 <__ultoa_invert+0x58> + 800: b4 e0 ldi r27, 0x04 ; 4 + 802: a6 95 lsr r26 + 804: 97 95 ror r25 + 806: 87 95 ror r24 + 808: 77 95 ror r23 + 80a: 67 95 ror r22 + 80c: ba 95 dec r27 + 80e: c9 f7 brne .-14 ; 0x802 <__ultoa_invert+0x86> + 810: 00 97 sbiw r24, 0x00 ; 0 + 812: 61 05 cpc r22, r1 + 814: 71 05 cpc r23, r1 + 816: 08 95 ret + 818: 9b 01 movw r18, r22 + 81a: ac 01 movw r20, r24 + 81c: 0a 2e mov r0, r26 + 81e: 06 94 lsr r0 + 820: 57 95 ror r21 + 822: 47 95 ror r20 + 824: 37 95 ror r19 + 826: 27 95 ror r18 + 828: ba 95 dec r27 + 82a: c9 f7 brne .-14 ; 0x81e <__ultoa_invert+0xa2> + 82c: 62 0f add r22, r18 + 82e: 73 1f adc r23, r19 + 830: 84 1f adc r24, r20 + 832: 95 1f adc r25, r21 + 834: a0 1d adc r26, r0 + 836: 08 95 ret + +00000838 <_exit>: + 838: f8 94 cli + +0000083a <__stop_program>: + 83a: ff cf rjmp .-2 ; 0x83a <__stop_program> diff --git a/MIC-Week4/Debug/MIC-Week4.map b/MIC-Week4/Debug/MIC-Week4.map index 01a43c3..9ceb8e6 100644 --- a/MIC-Week4/Debug/MIC-Week4.map +++ b/MIC-Week4/Debug/MIC-Week4.map @@ -1,21 +1,50 @@ 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.90/gcc/dev/atmega128/avr51/crtatmega128.o (exit) + 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/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) main.o (__do_clear_bss) +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(sprintf.o) + main.o (sprintf) +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(vfprintf_std.o) + 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(sprintf.o) (vfprintf) +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(strnlen_P.o) + 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(vfprintf_std.o) (strnlen_P) +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(strnlen.o) + 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(vfprintf_std.o) (strnlen) +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(fputc.o) + 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(vfprintf_std.o) (fputc) +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(ultoa_invert.o) + 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(vfprintf_std.o) (__ultoa_invert) Discarded input sections - .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 + .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 + .text 0x00000000 0x0 lcd.o + .data 0x00000000 0x0 lcd.o + .bss 0x00000000 0x0 lcd.o + .text.set_cursor + 0x00000000 0x8 lcd.o + .text.shift_display + 0x00000000 0x52 lcd.o .text 0x00000000 0x0 main.o .data 0x00000000 0x0 main.o .bss 0x00000000 0x0 main.o + .text.timer1Init + 0x00000000 0x1a main.o .text.setRed 0x00000000 0x8 main.o .text.setGreen 0x00000000 0x8 main.o .text.setBlue 0x00000000 0xc main.o + .text.adcInitFree + 0x00000000 0xa main.o + .text.setWithButton + 0x00000000 0x6 main.o + .text.somemain + 0x00000000 0x2c main.o .text.alleKleuren 0x00000000 0x132 main.o .text.opgaveextra @@ -39,6 +68,22 @@ Discarded input sections 0x00000000 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) .text.libgcc.fixed 0x00000000 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) + .text 0x00000000 0x0 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) + .data 0x00000000 0x0 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) + .bss 0x00000000 0x0 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) + .text.libgcc.mul + 0x00000000 0x0 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) + .text.libgcc.div + 0x00000000 0x0 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) + .text.libgcc 0x00000000 0x0 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) + .text.libgcc.prologue + 0x00000000 0x0 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) + .text.libgcc.builtins + 0x00000000 0x0 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) + .text.libgcc.fmul + 0x00000000 0x0 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) + .text.libgcc.fixed + 0x00000000 0x0 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) .text 0x00000000 0x0 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) .data 0x00000000 0x0 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) .bss 0x00000000 0x0 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) @@ -55,6 +100,24 @@ Discarded input sections 0x00000000 0x0 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) .text.libgcc.fixed 0x00000000 0x0 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) + .text 0x00000000 0x0 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(sprintf.o) + .data 0x00000000 0x0 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(sprintf.o) + .bss 0x00000000 0x0 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(sprintf.o) + .text 0x00000000 0x0 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(vfprintf_std.o) + .data 0x00000000 0x0 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(vfprintf_std.o) + .bss 0x00000000 0x0 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(vfprintf_std.o) + .text 0x00000000 0x0 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(strnlen_P.o) + .data 0x00000000 0x0 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(strnlen_P.o) + .bss 0x00000000 0x0 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(strnlen_P.o) + .text 0x00000000 0x0 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(strnlen.o) + .data 0x00000000 0x0 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(strnlen.o) + .bss 0x00000000 0x0 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(strnlen.o) + .text 0x00000000 0x0 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(fputc.o) + .data 0x00000000 0x0 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(fputc.o) + .bss 0x00000000 0x0 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(fputc.o) + .text 0x00000000 0x0 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(ultoa_invert.o) + .data 0x00000000 0x0 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(ultoa_invert.o) + .bss 0x00000000 0x0 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(ultoa_invert.o) Memory Configuration @@ -71,7 +134,8 @@ 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.90/gcc/dev/atmega128/avr51/crtatmega128.o +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o +LOAD lcd.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 @@ -80,7 +144,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.90/gcc/dev/atmega128/avr51\libatmega128.a +LOAD C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51\libatmega128.a END GROUP .hash @@ -173,9 +237,9 @@ END GROUP .rela.plt *(.rela.plt) -.text 0x00000000 0x122 +.text 0x00000000 0x83c *(.vectors) - .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o + .vectors 0x00000000 0x8c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o 0x00000000 __vector_default 0x00000000 __vectors *(.vectors) @@ -201,19 +265,21 @@ END GROUP SORT(*)(.ctors) SORT(*)(.dtors) *(.init0) - .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.0.90/gcc/dev/atmega128/avr51/crtatmega128.o + .init0 0x0000008c 0x0 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/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.90/gcc/dev/atmega128/avr51/crtatmega128.o + .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) *(.init3) *(.init3) *(.init4) - .init4 0x00000098 0x10 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) - 0x00000098 __do_clear_bss + .init4 0x00000098 0x1a 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) + 0x00000098 __do_copy_data + .init4 0x000000b2 0x10 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) + 0x000000b2 __do_clear_bss *(.init4) *(.init5) *(.init5) @@ -224,64 +290,92 @@ END GROUP *(.init8) *(.init8) *(.init9) - .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 0x000000c2 0x4 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/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.90/gcc/dev/atmega128/avr51/crtatmega128.o - 0x000000ac __vector_22 - 0x000000ac __vector_28 - 0x000000ac __vector_1 - 0x000000ac __vector_32 - 0x000000ac __vector_34 - 0x000000ac __vector_24 - 0x000000ac __vector_12 - 0x000000ac __bad_interrupt - 0x000000ac __vector_6 - 0x000000ac __vector_31 - 0x000000ac __vector_3 - 0x000000ac __vector_23 - 0x000000ac __vector_30 - 0x000000ac __vector_25 - 0x000000ac __vector_11 - 0x000000ac __vector_13 - 0x000000ac __vector_17 - 0x000000ac __vector_19 - 0x000000ac __vector_7 - 0x000000ac __vector_27 - 0x000000ac __vector_5 - 0x000000ac __vector_33 - 0x000000ac __vector_4 - 0x000000ac __vector_9 - 0x000000ac __vector_2 - 0x000000ac __vector_21 - 0x000000ac __vector_15 - 0x000000ac __vector_29 - 0x000000ac __vector_8 - 0x000000ac __vector_26 - 0x000000ac __vector_14 - 0x000000ac __vector_10 - 0x000000ac __vector_16 - 0x000000ac __vector_18 - 0x000000ac __vector_20 - 0x000000ae . = ALIGN (0x2) + .text 0x000000c6 0x2 C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o + 0x000000c6 __vector_22 + 0x000000c6 __vector_28 + 0x000000c6 __vector_1 + 0x000000c6 __vector_32 + 0x000000c6 __vector_34 + 0x000000c6 __vector_24 + 0x000000c6 __vector_12 + 0x000000c6 __bad_interrupt + 0x000000c6 __vector_6 + 0x000000c6 __vector_31 + 0x000000c6 __vector_3 + 0x000000c6 __vector_23 + 0x000000c6 __vector_30 + 0x000000c6 __vector_25 + 0x000000c6 __vector_11 + 0x000000c6 __vector_13 + 0x000000c6 __vector_17 + 0x000000c6 __vector_19 + 0x000000c6 __vector_7 + 0x000000c6 __vector_27 + 0x000000c6 __vector_5 + 0x000000c6 __vector_33 + 0x000000c6 __vector_4 + 0x000000c6 __vector_9 + 0x000000c6 __vector_2 + 0x000000c6 __vector_21 + 0x000000c6 __vector_15 + 0x000000c6 __vector_29 + 0x000000c6 __vector_8 + 0x000000c6 __vector_26 + 0x000000c6 __vector_14 + 0x000000c6 __vector_10 + 0x000000c6 __vector_16 + 0x000000c6 __vector_18 + 0x000000c6 __vector_20 + 0x000000c8 . = ALIGN (0x2) *(.text.*) - .text.wait 0x000000ae 0x22 main.o - 0x000000ae wait - .text.timer1Init - 0x000000d0 0x1a main.o - 0x000000d0 timer1Init - .text.adcInit 0x000000ea 0xa main.o - 0x000000ea adcInit - .text.setWithButton - 0x000000f4 0x6 main.o - 0x000000f4 setWithButton - .text.main 0x000000fa 0x24 main.o - 0x000000fa main - 0x0000011e . = ALIGN (0x2) + .text.display_char + 0x000000c8 0x48 lcd.o + 0x000000c8 display_char + .text.lcd_command + 0x00000110 0x40 lcd.o + 0x00000110 lcd_command + .text.display_text + 0x00000150 0x36 lcd.o + 0x00000150 display_text + .text.clear_display + 0x00000186 0xa lcd.o + 0x00000186 clear_display + .text.lcd_init + 0x00000190 0x84 lcd.o + 0x00000190 lcd_init + .text.wait 0x00000214 0x22 main.o + 0x00000214 wait + .text.adcInitPoll + 0x00000236 0xa main.o + 0x00000236 adcInitPoll + .text.main 0x00000240 0x66 main.o + 0x00000240 main + .text.avr-libc + 0x000002a6 0x5e 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(sprintf.o) + 0x000002a6 sprintf + .text.avr-libc + 0x00000304 0x3dc 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(vfprintf_std.o) + 0x00000304 vfprintf + .text.avr-libc + 0x000006e0 0x16 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(strnlen_P.o) + 0x000006e0 strnlen_P + .text.avr-libc + 0x000006f6 0x16 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(strnlen.o) + 0x000006f6 strnlen + .text.avr-libc + 0x0000070c 0x70 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(fputc.o) + 0x0000070c fputc + .text.avr-libc + 0x0000077c 0xbc 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(ultoa_invert.o) + 0x0000077c __ultoa_invert + 0x00000838 . = ALIGN (0x2) *(.fini9) - .fini9 0x0000011e 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) - 0x0000011e _exit - 0x0000011e exit + .fini9 0x00000838 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) + 0x00000838 _exit + 0x00000838 exit *(.fini9) *(.fini8) *(.fini8) @@ -300,36 +394,39 @@ END GROUP *(.fini1) *(.fini1) *(.fini0) - .fini0 0x0000011e 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 0x00000838 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) - 0x00000122 _etext = . + 0x0000083c _etext = . -.data 0x00800100 0x0 load address 0x00000122 +.data 0x00800100 0x4 load address 0x0000083c 0x00800100 PROVIDE (__data_start, .) *(.data) *(.data*) *(.rodata) *(.rodata*) + .rodata.str1.1 + 0x00800100 0x3 main.o *(.gnu.linkonce.d*) - 0x00800100 . = ALIGN (0x2) - 0x00800100 _edata = . - 0x00800100 PROVIDE (__data_end, .) + 0x00800104 . = ALIGN (0x2) + *fill* 0x00800103 0x1 + 0x00800104 _edata = . + 0x00800104 PROVIDE (__data_end, .) -.bss 0x00800100 0x0 - 0x00800100 PROVIDE (__bss_start, .) +.bss 0x00800104 0x0 + 0x00800104 PROVIDE (__bss_start, .) *(.bss) *(.bss*) *(COMMON) - 0x00800100 PROVIDE (__bss_end, .) - 0x00000122 __data_load_start = LOADADDR (.data) - 0x00000122 __data_load_end = (__data_load_start + SIZEOF (.data)) + 0x00800104 PROVIDE (__bss_end, .) + 0x0000083c __data_load_start = LOADADDR (.data) + 0x00000840 __data_load_end = (__data_load_start + SIZEOF (.data)) -.noinit 0x00800100 0x0 - 0x00800100 PROVIDE (__noinit_start, .) +.noinit 0x00800104 0x0 + 0x00800104 PROVIDE (__noinit_start, .) *(.noinit*) - 0x00800100 PROVIDE (__noinit_end, .) - 0x00800100 _end = . - 0x00800100 PROVIDE (__heap_start, .) + 0x00800104 PROVIDE (__noinit_end, .) + 0x00800104 _end = . + 0x00800104 PROVIDE (__heap_start, .) .eeprom 0x00810000 0x0 *(.eeprom*) @@ -368,15 +465,20 @@ END GROUP .stab.indexstr *(.stab.indexstr) -.comment 0x00000000 0x30 +.comment 0x00000000 0x5c *(.comment) - .comment 0x00000000 0x30 main.o + .comment 0x00000000 0x30 lcd.o 0x31 (size before relaxing) + .comment 0x00000030 0x31 main.o + .comment 0x00000030 0x31 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(sprintf.o) + .comment 0x00000030 0x2c 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(vfprintf_std.o) + 0x2d (size before relaxing) + .comment 0x0000005c 0x31 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(fputc.o) .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.90/gcc/dev/atmega128/avr51/crtatmega128.o + 0x00000000 0x3c C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/gcc/dev/atmega128/avr51/crtatmega128.o .note.gnu.build-id *(.note.gnu.build-id) @@ -393,38 +495,47 @@ END GROUP .debug_sfnames *(.debug_sfnames) -.debug_aranges 0x00000000 0x68 +.debug_aranges 0x00000000 0xc8 *(.debug_aranges) .debug_aranges - 0x00000000 0x68 main.o + 0x00000000 0x50 lcd.o + .debug_aranges + 0x00000050 0x78 main.o .debug_pubnames *(.debug_pubnames) -.debug_info 0x00000000 0xb91 +.debug_info 0x00000000 0x12f5 *(.debug_info .gnu.linkonce.wi.*) - .debug_info 0x00000000 0xb91 main.o + .debug_info 0x00000000 0x5ff lcd.o + .debug_info 0x000005ff 0xcf6 main.o -.debug_abbrev 0x00000000 0x253 +.debug_abbrev 0x00000000 0x48c *(.debug_abbrev) - .debug_abbrev 0x00000000 0x253 main.o + .debug_abbrev 0x00000000 0x1ac lcd.o + .debug_abbrev 0x000001ac 0x2e0 main.o -.debug_line 0x00000000 0x654 +.debug_line 0x00000000 0x9cf *(.debug_line .debug_line.* .debug_line_end) - .debug_line 0x00000000 0x654 main.o + .debug_line 0x00000000 0x2df lcd.o + .debug_line 0x000002df 0x6f0 main.o -.debug_frame 0x00000000 0xb4 +.debug_frame 0x00000000 0x190 *(.debug_frame) - .debug_frame 0x00000000 0xb4 main.o + .debug_frame 0x00000000 0xac lcd.o + .debug_frame 0x000000ac 0xe4 main.o -.debug_str 0x00000000 0x222 +.debug_str 0x00000000 0x2bb *(.debug_str) - .debug_str 0x00000000 0x222 main.o - 0x256 (size before relaxing) + .debug_str 0x00000000 0x1e5 lcd.o + 0x223 (size before relaxing) + .debug_str 0x000001e5 0xd6 main.o + 0x2a3 (size before relaxing) -.debug_loc 0x00000000 0x4be +.debug_loc 0x00000000 0x7e6 *(.debug_loc) - .debug_loc 0x00000000 0x4be main.o + .debug_loc 0x00000000 0x2e1 lcd.o + .debug_loc 0x000002e1 0x505 main.o .debug_macinfo *(.debug_macinfo) @@ -444,9 +555,10 @@ END GROUP .debug_pubtypes *(.debug_pubtypes) -.debug_ranges 0x00000000 0x138 +.debug_ranges 0x00000000 0x188 *(.debug_ranges) - .debug_ranges 0x00000000 0x138 main.o + .debug_ranges 0x00000000 0x40 lcd.o + .debug_ranges 0x00000040 0x148 main.o .debug_macro *(.debug_macro) diff --git a/MIC-Week4/Debug/MIC-Week4.srec b/MIC-Week4/Debug/MIC-Week4.srec index 0b81bda..90fbe8c 100644 --- a/MIC-Week4/Debug/MIC-Week4.srec +++ b/MIC-Week4/Debug/MIC-Week4.srec @@ -1,21 +1,135 @@ S01100004D49432D5765656B342E737265634D -S113000045C0000053C0000051C000004FC00000B4 -S11300104DC000004BC0000049C0000047C00000B4 -S113002045C0000043C0000041C000003FC00000C4 -S11300303DC000003BC0000039C0000037C00000D4 -S113004035C0000033C0000031C000002FC00000E4 -S11300502DC000002BC0000029C0000027C00000F4 -S113006025C0000023C0000021C000001FC0000004 -S11300701DC000001BC0000019C0000017C0000014 -S113008015C0000013C0000011C0000011241FBEE1 -S1130090CFEFD0E1DEBFCDBF21E0A0E0B1E001C0F1 -S11300A01D92A030B207E1F728D039C0A9CF1816A5 -S11300B019066CF420E030E0EFECF7E03197F1F74B -S11300C000C000002F5F3F4F28173907A9F7089594 -S11300D01BBC1ABC19BC18BC109279001092780091 -S11300E089EA8FBD8BE08EBD089581EE87B986E8DD -S11300F086B908959899369A08958FEF87BB109220 -S113010061008ABBF2DFE4DF3699FECF85B190E06F -S11301109BBD8ABD84E690E0CADFECDFF5CFF8949E -S1050120FFCF0B +S113000045C0000060C000005EC000005CC000008D +S11300105AC0000058C0000056C0000054C0000080 +S113002052C0000050C000004EC000004CC0000090 +S11300304AC0000048C0000046C0000044C00000A0 +S113004042C0000040C000003EC000003CC00000B0 +S11300503AC0000038C0000036C0000034C00000C0 +S113006032C0000030C000002EC000002CC00000D0 +S11300702AC0000028C0000026C0000024C00000E0 +S113008022C0000020C000001EC0000011241FBEBA +S1130090CFEFD0E1DEBFCDBF11E0A0E0B1E0ECE3F3 +S11300A0F8E000E00BBF02C007900D92A430B10746 +S11300B0D9F721E0A4E0B1E001C01D92A430B20759 +S11300C0E1F7BED0B9C39CCF982F907F95BB95B371 +S11300D09C6095BBEFE9FFE03197F1F700C00000A9 +S11300E094E095BBEFE9FFE03197F1F700C0000021 +S11300F0F0E18F9FC001112485BB85B38C6085BB63 +S11301008FE99FE00197F1F700C0000015BA089548 +S1130110982F907F95BBAB9AEFE9FFE03197F1F709 +S113012000C0000094E095BBEFE9FFE03197F1F7E0 +S113013000C00000F0E18F9FC001112485BBAB9A81 +S11301408FE99FE00197F1F700C0000015BA089508 +S1130150CF93DF93EB01892B19F080ECD9DF02C038 +S113016080E8D6DF8881882359F02196ADDF8FE9B6 +S11301709FE00197F1F700C0000089918111F6CF4B +S1130180DF91CF91089581E0C3DF80E8C1CF089566 +S11301908FEF84BB2FEF80E792E0215080409040A6 +S11301A0E1F700C0000082E0B3DF2FE788E391E0CD +S11301B0215080409040E1F700C0000088E2A8DFB1 +S11301C02FE788E391E0215080409040E1F700C0A0 +S11301D000008CE09DDF2FE788E391E02150804010 +S11301E09040E1F700C0000086E092DF2FE788E34B +S11301F091E0215080409040E1F700C00000C3DF4F +S11302002FEF80E792E0215080409040E1F700C05A +S113021000000895181619066CF420E030E0EFECA5 +S1130220F7E03197F1F700C000002F5F3F4F281728 +S11302303907A9F7089581E687B986E886B908954C +S1130240CF93DF93CDB7DEB728970FB6F894DEBF10 +S11302500FBECDBF10926100EEDF9ADF0F2EF0E0EB +S1130260EF2EF1E0FF2EF02D8E010F5F1F4F369A17 +S11302703699FECF85B184B185B11F928F93FF92D9 +S1130280EF921F930F930FD0B80180E090E060DFEE +S113029088EB9BE0BFDF77DF0F900F900F900F90FC +S11302A00F900F90E4CF0F931F93CF93DF93CDB7AD +S11302B0DEB72E970FB6F894DEBF0FBECDBF0D8903 +S11302C01E8986E08C831A8309838FEF9FE79E83C0 +S11302D08D83AE01475E5F4F6F89788DCE010196A5 +S11302E011D02F813885F801E20FF31F10822E966A +S11302F00FB6F894DEBF0FBECDBFDF91CF911F9133 +S11303000F9108952F923F924F925F926F927F9236 +S11303108F929F92AF92BF92CF92DF92EF92FF9211 +S11303200F931F93CF93DF93CDB7DEB72C970FB600 +S1130330F894DEBF0FBECDBF7C016B018A01FC01C6 +S113034017821682838181FFB0C1CE0101964C01D0 +S1130350F7019381F60193FD859193FF81916F01DC +S1130360882309F49EC1853239F493FD859193FF66 +S113037081916F01853221F4B70190E0C7D1E8CFB4 +S1130380512C312C20E02032A0F48B3269F030F46F +S1130390803259F0833269F420612CC08D3239F0F7 +S11303A0803339F4216026C02260246023C0286091 +S11303B021C027FD27C030ED380F3A3078F426FFEE +S11303C006C0FAE05F9E300D1124532E13C08AE05C +S11303D0389E300D1124332E20620CC08E3221F44D +S11303E026FD5FC1206406C08C3611F4206802C06B +S11303F0883641F4F60193FD859193FF81916F0155 +S11304008111C1CF982F9F7D9554933028F40C5FB0 +S11304101F4FFFE3F9830DC0833631F0833771F04A +S1130420833509F057C021C0F801808189830E5FAC +S11304301F4F44244394512C540114C03801F2E05A +S11304406F0E711CF801A080B18026FF03C0652DDA +S113045070E002C06FEF7FEFC5012C874CD12C01F7 +S113046083012C852F77222E16C03801F2E06F0EFF +S1130470711CF801A080B18026FF03C0652D70E0D7 +S113048002C06FEF7FEFC5012C872AD12C012C8588 +S11304902068222E830123FC19C0832D90E0481686 +S11304A05906A0F4B70180E290E030D13A94F5CF38 +S11304B0F50127FC859127FE81915F01B70190E04A +S11304C025D131103A94F1E04F1A510841145104E6 +S11304D079F7DEC0843611F0893631F5F80127FF4B +S11304E007C060817181828193810C5F1F4F08C0B6 +S11304F060817181072E000C880B990B0E5F1F4FD2 +S11305002F76722E97FF09C090958095709561950E +S11305107F4F8F4F9F4F2068722E2AE030E0A40156 +S11305202DD1A82EA81843C0853729F42F7EB22ECA +S11305302AE030E025C0F22FF97FBF2E8F36C1F0BC +S113054018F4883579F0ADC0803719F0883721F078 +S1130550A8C02F2F2061B22EB4FE0DC08B2D846055 +S1130560B82E09C024FF0AC09F2F9660B92E06C07A +S113057028E030E005C020E130E002C020E132E0B4 +S1130580F801B7FE07C060817181828193810C5F9D +S11305901F4F06C06081718180E090E00E5F1F4FA5 +S11305A0A401ECD0A82EA818FB2DFF777F2E76FE91 +S11305B00BC0372D3E7FA51450F474FE0AC072FCA4 +S11305C008C0372D3E7E05C0BA2C372D03C0BA2C87 +S11305D001C0B52C34FF0DC0FE01EA0DF11D808170 +S11305E0803311F4397E09C032FF06C0B394B3944A +S11305F004C0832F867809F0B39433FD12C030FF12 +S113060006C05A2CB31418F4530C5B18B32CB3144F +S113061060F4B70180E290E03C8778D0B3943C85E5 +S1130620F6CFB31410F43B1801C0312C34FF11C0C1 +S1130630B70180E390E03C8769D03C8532FF16C067 +S113064031FD03C088E790E002C088E590E0B7017F +S11306500CC0832F867851F031FF02C08BE201C0B9 +S113066080E237FD8DE2B70190E050D0A51430F45C +S1130670B70180E390E04AD05A94F8CFAA94F401E9 +S1130680EA0DF11D8081B70190E040D0A110F6CFB2 +S1130690332009F45DCEB70180E290E037D03A947C +S11306A0F7CFF7018681978102C08FEF9FEF2C96D9 +S11306B00FB6F894DEBF0FBECDBFDF91CF911F916F +S11306C00F91FF90EF90DF90CF90BF90AF909F90ED +S11306D08F907F906F905F904F903F902F900895F0 +S11306E0FC010590615070400110D8F780959095F9 +S11306F08E0F9F1F0895FC016150704001900110FE +S1130700D8F7809590958E0F9F1F08950F931F9390 +S1130710CF93DF93FB01238121FD03C08FEF9FEF74 +S113072028C022FF16C04681578124813581421793 +S1130730530744F4A081B1819D012F5F3F4F318362 +S113074020838C93268137812F5F3F4F3783268305 +S113075010C0EB01092F182F0084F185E02D0995B5 +S1130760892BE1F68E819F8101969F838E83812F51 +S1130770902FDF91CF911F910F910895FA01AA272D +S1130780283051F1203181F1E8946F936E7F6E5FD0 +S11307907F4F8F4F9F4FAF4FB1E03ED0B4E03CD07E +S11307A0670F781F891F9A1FA11D680F791F8A1F61 +S11307B0911DA11D6A0F711D811D911DA11D20D0C8 +S11307C009F468943F912AE0269F11243019305D82 +S11307D03193DEF6CF010895462F4770405D419373 +S11307E0B3E00FD0C9F7F6CF462F4F70405D4A33C0 +S11307F018F0495D31FD4052419302D0A9F7EACF88 +S1130800B4E0A6959795879577956795BA95C9F7B6 +S113081000976105710508959B01AC010A2E0694A9 +S11308205795479537952795BA95C9F7620F731F62 +S10F0830841F951FA01D0895F894FFCFAD +S107083C256400002B S9030000FC diff --git a/MIC-Week4/Debug/Makefile b/MIC-Week4/Debug/Makefile index a21b641..c84d839 100644 --- a/MIC-Week4/Debug/Makefile +++ b/MIC-Week4/Debug/Makefile @@ -37,6 +37,7 @@ SUBDIRS := # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ +../lcd.c \ ../main.c @@ -47,15 +48,19 @@ ASM_SRCS += OBJS += \ +lcd.o \ main.o OBJS_AS_ARGS += \ +lcd.o \ main.o C_DEPS += \ +lcd.d \ main.d C_DEPS_AS_ARGS += \ +lcd.d \ main.d OUTPUT_FILE_PATH +=MIC-Week4.elf @@ -75,10 +80,12 @@ 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.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 "$@" "$<" + $(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 "$@" "$<" @echo Finished building: $< @@ -107,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-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" + $(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" @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/lcd.d b/MIC-Week4/Debug/lcd.d new file mode 100644 index 0000000..10d8e1d --- /dev/null +++ b/MIC-Week4/Debug/lcd.d @@ -0,0 +1,52 @@ +lcd.d lcd.o: .././lcd.c \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\io.h \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\sfr_defs.h \ + 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\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 \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\fuse.h \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\lock.h \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay_basic.h \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\math.h \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdlib.h \ + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\gcc\avr\4.9.2\include\stddef.h \ + .././lcd.h + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\io.h: + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\sfr_defs.h: + +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\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: + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\fuse.h: + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\lock.h: + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h: + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay_basic.h: + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\math.h: + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\stdlib.h: + +c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\lib\gcc\avr\4.9.2\include\stddef.h: + +.././lcd.h: diff --git a/MIC-Week4/Debug/main.d b/MIC-Week4/Debug/main.d index f45a877..d259ff0 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.90\include/avr/iom128.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\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 \ @@ -13,7 +13,8 @@ main.d main.o: .././main.c \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\util\delay_basic.h \ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\math.h \ - c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\interrupt.h + c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\interrupt.h \ + .././lcd.h c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\io.h: @@ -25,7 +26,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.90\include/avr/iom128.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\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\portpins.h: @@ -44,3 +45,5 @@ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\ c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\math.h: c:\program\ files\ (x86)\atmel\studio\7.0\toolchain\avr8\avr8-gnu-toolchain\avr\include\avr\interrupt.h: + +.././lcd.h: diff --git a/MIC-Week4/Debug/makedep.mk b/MIC-Week4/Debug/makedep.mk index 6a14fde..2b654d5 100644 --- a/MIC-Week4/Debug/makedep.mk +++ b/MIC-Week4/Debug/makedep.mk @@ -2,5 +2,7 @@ # Automatically-generated file. Do not edit or delete the file ################################################################################ +lcd.c + main.c diff --git a/MIC-Week4/MIC-Week4.componentinfo.xml b/MIC-Week4/MIC-Week4.componentinfo.xml index 5ceaf94..5b64613 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.90\include + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\include include C @@ -26,7 +26,7 @@ - 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\Packs\Atmel\ATmega_DFP\1.0.91\include\avr\iom128.h header C @@ -37,7 +37,7 @@ - C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.0.90\templates\main.c + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90\templates\main.cpp + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90\gcc\dev\atmega128 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\Atmel\ATmega_DFP\1.0.91\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.90/Atmel.ATmega_DFP.pdsc - 1.0.90 + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/Atmel/ATmega_DFP/1.0.91/Atmel.ATmega_DFP.pdsc + 1.0.91 true ATmega128 diff --git a/MIC-Week4/MIC-Week4.cproj b/MIC-Week4/MIC-Week4.cproj index 9e44ec6..f0841bc 100644 --- a/MIC-Week4/MIC-Week4.cproj +++ b/MIC-Week4/MIC-Week4.cproj @@ -42,7 +42,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" True True True @@ -58,7 +58,7 @@ - %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include + %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include Optimize for size (-Os) @@ -76,7 +76,7 @@ - -mmcu=atmega128 -B "%24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\gcc\dev\atmega128" + -mmcu=atmega128 -B "%24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\gcc\dev\atmega128" True True True @@ -92,7 +92,7 @@ - %24(PackRepoDir)\atmel\ATmega_DFP\1.0.90\include + %24(PackRepoDir)\Atmel\ATmega_DFP\1.0.91\include Optimize (-O1) @@ -110,6 +110,12 @@ + + compile + + + compile + compile diff --git a/MIC-Week4/lcd.c b/MIC-Week4/lcd.c new file mode 100644 index 0000000..dae1df7 --- /dev/null +++ b/MIC-Week4/lcd.c @@ -0,0 +1,124 @@ +/* + * lcd.c + * + * Created: 23-2-2016 14:06:31 + * Author: kenny + */ + #define F_CPU 8000000UL //CPU op 8MHz + + #include + #include + #include + + #include "lcd.h" + + //LOCAL + void display_char(unsigned char dat); + void lcd_command(unsigned char dat); + + void lcd_init() + { + DDRC = 0b11111111; + + _delay_ms(100); + + // return home + lcd_command( 0x02 ); + // mode: 4 bits interface data, 2 lines, 5x8 dots + _delay_ms(50); + lcd_command( 0x28 ); + // display: on, cursor off, blinking off + _delay_ms(50); + lcd_command( 0x0C ); + // entry mode: cursor to right, no shift + _delay_ms(50); + lcd_command( 0x06 ); + // RAM address: 0, first position, line 1 + _delay_ms(50); + clear_display(); + + _delay_ms(100); + } + +void display_text( int line, char *text ) +{ + // eerst de eerste 8 karakters = regel 1 + + if(line) + { + // eerste pos regel 1 + lcd_command(0xC0); + } + else + { + // regel 0 + lcd_command(0x80); + } + + int count = 0; + + while (text[count] != '\0') { + display_char( text[count] ); + count++; + + _delay_ms(2); + } +} + +void clear_display() +{ + lcd_command(0b00000001); + lcd_command(0b10000000); +} + + void set_cursor(int position) + { + position = position | (1<<7); + + lcd_command(position); + } + + void shift_display(int left, int count) + { + unsigned char data = left ? 0b00011100 : 0b00011000; + + for (int i=0; i #include +#include "lcd.h" + #define BIT(x) (1 << (x)) unsigned int sCount=0, minutes=0, hours=0; @@ -69,20 +71,55 @@ void setBlue( unsigned char blue ) // void setBlue( unsigned char blue) // Initialize ADC: -void adcInit( void ) +void adcInitFree( void ) { - ADMUX = 0b11100001; // AREF=2,56 V, result left adjusted, channel1 at pin PF1 + ADMUX = 0b01100001; // AREF=VCC, result left adjusted, channel1 at pin PF1 + ADCSRA = 0b11100110; // ADC-enable, no interrupt, start, free running, division by 64 +} + +void adcInitPoll( void ) +{ + ADMUX = 0b01100001; // AREF=2,56 V, result left adjusted, channel1 at pin PF1 ADCSRA = 0b10000110; // ADC-enable, no interrupt, no free running, division by 64 } +int main( void ) +{ + DDRF = 0x00; + adcInitPoll(); + lcd_init(); + + + unsigned char data; + + char l1[8]; + + while(1) + { + ADCSRA |= BIT(6); // Start ADC + while ( ADCSRA & BIT(6) ) ; // Wait for completion + + data = ADCH; + data = (data<<2) | ADCL; + + sprintf(l1, "%d", ADCH); + display_text(0, l1); + + wait(3000); + + clear_display(); + } + +} + // Main program: Counting on T1 -int main( void ) +int somemain( void ) { DDRB = 0xFF; DDRF = 0x00; // set PORTF for input (ADC) DDRA = 0xFF; // set PORTA for output - adcInit(); // initialize ADC + adcInitPoll(); // initialize ADC timer1Init(); while (1)