From 7673bb3bbf45a1fb079f623c5e467db2dc2bce15 Mon Sep 17 00:00:00 2001 From: stijn Date: Wed, 10 Feb 2021 10:06:04 +0100 Subject: [PATCH] Auto stash before merge of "main" and "origin/main" --- Microcontrollers/Microcontrollers.atsln | 12 + .../opdracht 1.4/Debug/opdracht 1.4.lss | 24 ++ .../opdracht 1.5/Debug/opdracht 1.5.lss | 22 ++ .../opdracht 1.6/Debug/opdracht 1.6.lss | 24 ++ Microcontrollers/opdracht 2.1/Debug/Makefile | 125 ++++++++++ .../opdracht 2.1/Debug/makedep.mk | 6 + .../opdracht 2.1/Debug/memoryfile.xml | 17 ++ .../opdracht 2.1/Debug/opdracht 2.1.eep | 1 + .../opdracht 2.1/Debug/opdracht 2.1.lss | 227 ++++++++++++++++++ Microcontrollers/opdracht 2.1/main.c | 86 +++++++ .../opdracht 2.1.componentinfo.xml | 42 ++++ .../opdracht 2.1/opdracht 2.1.cproj | 99 ++++++++ 12 files changed, 685 insertions(+) create mode 100644 Microcontrollers/opdracht 2.1/Debug/Makefile create mode 100644 Microcontrollers/opdracht 2.1/Debug/makedep.mk create mode 100644 Microcontrollers/opdracht 2.1/Debug/memoryfile.xml create mode 100644 Microcontrollers/opdracht 2.1/Debug/opdracht 2.1.eep create mode 100644 Microcontrollers/opdracht 2.1/Debug/opdracht 2.1.lss create mode 100644 Microcontrollers/opdracht 2.1/main.c create mode 100644 Microcontrollers/opdracht 2.1/opdracht 2.1.componentinfo.xml create mode 100644 Microcontrollers/opdracht 2.1/opdracht 2.1.cproj diff --git a/Microcontrollers/Microcontrollers.atsln b/Microcontrollers/Microcontrollers.atsln index 123fff7..c764a78 100644 --- a/Microcontrollers/Microcontrollers.atsln +++ b/Microcontrollers/Microcontrollers.atsln @@ -12,6 +12,11 @@ EndProject Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "opdracht 1.5", "opdracht 1.5\opdracht 1.5.cproj", "{B2CED75E-444E-40D3-8DB2-1E83EBFA08BA}" EndProject Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "opdracht 1.7a", "opdracht 1.7a\opdracht 1.7a.cproj", "{BAE7767D-1CC2-42DA-9CC0-FD878EA43AC1}" +<<<<<<< HEAD +EndProject +Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "opdracht 2.1", "opdracht 2.1\opdracht 2.1.cproj", "{69165C62-B4D4-4FE3-B777-080628FAC668}" +======= +>>>>>>> main EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -39,6 +44,13 @@ Global {BAE7767D-1CC2-42DA-9CC0-FD878EA43AC1}.Debug|AVR.Build.0 = Debug|AVR {BAE7767D-1CC2-42DA-9CC0-FD878EA43AC1}.Release|AVR.ActiveCfg = Release|AVR {BAE7767D-1CC2-42DA-9CC0-FD878EA43AC1}.Release|AVR.Build.0 = Release|AVR +<<<<<<< HEAD + {69165C62-B4D4-4FE3-B777-080628FAC668}.Debug|AVR.ActiveCfg = Debug|AVR + {69165C62-B4D4-4FE3-B777-080628FAC668}.Debug|AVR.Build.0 = Debug|AVR + {69165C62-B4D4-4FE3-B777-080628FAC668}.Release|AVR.ActiveCfg = Release|AVR + {69165C62-B4D4-4FE3-B777-080628FAC668}.Release|AVR.Build.0 = Release|AVR +======= +>>>>>>> main EndGlobalSection GlobalSection(SolutionProperties) = preSolution HideSolutionNode = FALSE diff --git a/Microcontrollers/opdracht 1.4/Debug/opdracht 1.4.lss b/Microcontrollers/opdracht 1.4/Debug/opdracht 1.4.lss index c90ea22..337e679 100644 --- a/Microcontrollers/opdracht 1.4/Debug/opdracht 1.4.lss +++ b/Microcontrollers/opdracht 1.4/Debug/opdracht 1.4.lss @@ -11,6 +11,25 @@ Idx Name Size VMA LMA File off Algn CONTENTS, READONLY 3 .debug_aranges 00000028 00000000 00000000 0000017f 2**0 CONTENTS, READONLY, DEBUGGING +<<<<<<< HEAD + 4 .debug_info 00000b4d 00000000 00000000 000001a7 2**0 + CONTENTS, READONLY, DEBUGGING + 5 .debug_abbrev 00000830 00000000 00000000 00000cf4 2**0 + CONTENTS, READONLY, DEBUGGING + 6 .debug_line 000002ae 00000000 00000000 00001524 2**0 + CONTENTS, READONLY, DEBUGGING + 7 .debug_frame 00000034 00000000 00000000 000017d4 2**2 + CONTENTS, READONLY, DEBUGGING + 8 .debug_str 0000027d 00000000 00000000 00001808 2**0 + CONTENTS, READONLY, DEBUGGING + 9 .debug_loc 00000089 00000000 00000000 00001a85 2**0 + CONTENTS, READONLY, DEBUGGING + 10 .debug_ranges 00000018 00000000 00000000 00001b0e 2**0 + CONTENTS, READONLY, DEBUGGING + 11 .text 00000004 000000f8 000000f8 0000014c 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 12 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00001b28 2**2 +======= 4 .debug_info 00000b26 00000000 00000000 000001a7 2**0 CONTENTS, READONLY, DEBUGGING 5 .debug_abbrev 00000830 00000000 00000000 00000ccd 2**0 @@ -28,6 +47,7 @@ Idx Name Size VMA LMA File off Algn 11 .text 00000004 000000f8 000000f8 0000014c 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE 12 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00001b00 2**2 +>>>>>>> main CONTENTS, READONLY, DEBUGGING 13 .text.wait 0000001e 000000da 000000da 0000012e 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE @@ -92,7 +112,11 @@ Disassembly of section .text: Disassembly of section .text: 000000f8 <__bad_interrupt>: +<<<<<<< HEAD + f8: 0c 94 00 00 jmp 0 ; 0x0 <__vectors> +======= f8: 0c 94 00 00 jmp 0 ; 0x0 <__TEXT_REGION_ORIGIN__> +>>>>>>> main Disassembly of section .text.wait: diff --git a/Microcontrollers/opdracht 1.5/Debug/opdracht 1.5.lss b/Microcontrollers/opdracht 1.5/Debug/opdracht 1.5.lss index 8bc5446..98aeb27 100644 --- a/Microcontrollers/opdracht 1.5/Debug/opdracht 1.5.lss +++ b/Microcontrollers/opdracht 1.5/Debug/opdracht 1.5.lss @@ -11,6 +11,23 @@ Idx Name Size VMA LMA File off Algn CONTENTS, READONLY 3 .debug_aranges 00000020 00000000 00000000 0000012d 2**0 CONTENTS, READONLY, DEBUGGING +<<<<<<< HEAD + 4 .debug_info 000009fe 00000000 00000000 0000014d 2**0 + CONTENTS, READONLY, DEBUGGING + 5 .debug_abbrev 00000756 00000000 00000000 00000b4b 2**0 + CONTENTS, READONLY, DEBUGGING + 6 .debug_line 000001a6 00000000 00000000 000012a1 2**0 + CONTENTS, READONLY, DEBUGGING + 7 .debug_frame 00000024 00000000 00000000 00001448 2**2 + CONTENTS, READONLY, DEBUGGING + 8 .debug_str 0000027d 00000000 00000000 0000146c 2**0 + CONTENTS, READONLY, DEBUGGING + 9 .debug_ranges 00000010 00000000 00000000 000016e9 2**0 + CONTENTS, READONLY, DEBUGGING + 10 .text 00000004 000000a4 000000a4 000000f8 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 11 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 000016fc 2**2 +======= 4 .debug_info 000009d7 00000000 00000000 0000014d 2**0 CONTENTS, READONLY, DEBUGGING 5 .debug_abbrev 00000756 00000000 00000000 00000b24 2**0 @@ -26,6 +43,7 @@ Idx Name Size VMA LMA File off Algn 10 .text 00000004 000000a4 000000a4 000000f8 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE 11 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 000016d4 2**2 +>>>>>>> main CONTENTS, READONLY, DEBUGGING 12 .text.main 00000002 000000a8 000000a8 000000fc 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE @@ -88,7 +106,11 @@ Disassembly of section .text: Disassembly of section .text: 000000a4 <__bad_interrupt>: +<<<<<<< HEAD + a4: 0c 94 00 00 jmp 0 ; 0x0 <__TEXT_REGION_ORIGIN__> +======= a4: 0c 94 00 00 jmp 0 ; 0x0 <__vectors> +>>>>>>> main Disassembly of section .text.main: diff --git a/Microcontrollers/opdracht 1.6/Debug/opdracht 1.6.lss b/Microcontrollers/opdracht 1.6/Debug/opdracht 1.6.lss index 74975e7..e15847a 100644 --- a/Microcontrollers/opdracht 1.6/Debug/opdracht 1.6.lss +++ b/Microcontrollers/opdracht 1.6/Debug/opdracht 1.6.lss @@ -11,6 +11,25 @@ Idx Name Size VMA LMA File off Algn CONTENTS, READONLY 3 .debug_aranges 00000050 00000000 00000000 000001eb 2**0 CONTENTS, READONLY, DEBUGGING +<<<<<<< HEAD + 4 .debug_info 00000cfe 00000000 00000000 0000023b 2**0 + CONTENTS, READONLY, DEBUGGING + 5 .debug_abbrev 000008c5 00000000 00000000 00000f39 2**0 + CONTENTS, READONLY, DEBUGGING + 6 .debug_line 0000036f 00000000 00000000 000017fe 2**0 + CONTENTS, READONLY, DEBUGGING + 7 .debug_frame 0000008c 00000000 00000000 00001b70 2**2 + CONTENTS, READONLY, DEBUGGING + 8 .debug_str 0000027d 00000000 00000000 00001bfc 2**0 + CONTENTS, READONLY, DEBUGGING + 9 .debug_loc 000001dc 00000000 00000000 00001e79 2**0 + CONTENTS, READONLY, DEBUGGING + 10 .debug_ranges 00000040 00000000 00000000 00002055 2**0 + CONTENTS, READONLY, DEBUGGING + 11 .text 00000004 00000164 00000164 000001b8 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 12 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00002098 2**2 +======= 4 .debug_info 00000cd7 00000000 00000000 0000023b 2**0 CONTENTS, READONLY, DEBUGGING 5 .debug_abbrev 000008c5 00000000 00000000 00000f12 2**0 @@ -28,6 +47,7 @@ Idx Name Size VMA LMA File off Algn 11 .text 00000004 00000164 00000164 000001b8 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE 12 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00002070 2**2 +>>>>>>> main CONTENTS, READONLY, DEBUGGING 13 .text.wait 0000001e 0000010e 0000010e 00000162 2**1 CONTENTS, ALLOC, LOAD, READONLY, CODE @@ -98,7 +118,11 @@ Disassembly of section .text: Disassembly of section .text: 00000164 <__bad_interrupt>: +<<<<<<< HEAD + 164: 0c 94 00 00 jmp 0 ; 0x0 <__vectors> +======= 164: 0c 94 00 00 jmp 0 ; 0x0 <__TEXT_REGION_ORIGIN__> +>>>>>>> main Disassembly of section .text.wait: diff --git a/Microcontrollers/opdracht 2.1/Debug/Makefile b/Microcontrollers/opdracht 2.1/Debug/Makefile new file mode 100644 index 0000000..39dbf4c --- /dev/null +++ b/Microcontrollers/opdracht 2.1/Debug/Makefile @@ -0,0 +1,125 @@ +################################################################################ +# Automatically-generated file. Do not edit! +################################################################################ + +SHELL := cmd.exe +RM := rm -rf + +USER_OBJS := + +LIBS := +PROJ := + +O_SRCS := +C_SRCS := +S_SRCS := +S_UPPER_SRCS := +OBJ_SRCS := +ASM_SRCS := +PREPROCESSING_SRCS := +OBJS := +OBJS_AS_ARGS := +C_DEPS := +C_DEPS_AS_ARGS := +EXECUTABLES := +OUTPUT_FILE_PATH := +OUTPUT_FILE_PATH_AS_ARGS := +AVR_APP_PATH :=$$$AVR_APP_PATH$$$ +QUOTE := " +ADDITIONAL_DEPENDENCIES:= +OUTPUT_FILE_DEP:= +LIB_DEP:= +LINKER_SCRIPT_DEP:= + +# Every subdirectory with source files must be described here +SUBDIRS := + + +# Add inputs and outputs from these tool invocations to the build variables +C_SRCS += \ +../main.c + + +PREPROCESSING_SRCS += + + +ASM_SRCS += + + +OBJS += \ +main.o + +OBJS_AS_ARGS += \ +main.o + +C_DEPS += \ +main.d + +C_DEPS_AS_ARGS += \ +main.d + +OUTPUT_FILE_PATH +=opdracht\ 2.1.elf + +OUTPUT_FILE_PATH_AS_ARGS +="opdracht 2.1.elf" + +ADDITIONAL_DEPENDENCIES:= + +OUTPUT_FILE_DEP:= ./makedep.mk + +LIB_DEP+= + +LINKER_SCRIPT_DEP+= + + +# AVR32/GNU C Compiler +./main.o: .././main.c + @echo Building file: $< + @echo Invoking: XC8 C Compiler : 2.31 + $(QUOTE)C:\Program Files\Microchip\xc8\v2.31\bin\xc8-cc.exe$(QUOTE) -mcpu=ATmega128 -mdfp="C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.6.364\xc8" -c -x c -funsigned-char -funsigned-bitfields -mext=cci -D__ATmega128__ -DDEBUG -Og -ffunction-sections -fdata-sections -fpack-struct -fshort-enums -g2 -Wall -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" + @echo Finished building: $< + + + + + +# AVR32/GNU Preprocessing Assembler + + + +# AVR32/GNU Assembler + + + + +ifneq ($(MAKECMDGOALS),clean) +ifneq ($(strip $(C_DEPS)),) +-include $(C_DEPS) +endif +endif + +# Add inputs and outputs from these tool invocations to the build variables + +# All Target +all: $(OUTPUT_FILE_PATH) $(ADDITIONAL_DEPENDENCIES) + +$(OUTPUT_FILE_PATH): $(OBJS) $(USER_OBJS) $(OUTPUT_FILE_DEP) $(LIB_DEP) $(LINKER_SCRIPT_DEP) + @echo Building target: $@ + @echo Invoking: XC8 C Linker : 2.31 + $(QUOTE)C:\Program Files\Microchip\xc8\v2.31\bin\xc8-cc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -mcpu=ATmega128 -mdfp="C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.6.364\xc8" -Wl,-Map="opdracht 2.1.map" -funsigned-char -funsigned-bitfields -Wl,--start-group -Wl,-lm -Wl,--end-group -Wl,--gc-sections -Og -ffunction-sections -fdata-sections -fpack-struct -fshort-enums --memorysummary,memoryfile.xml + @echo Finished building target: $@ + "C:\Program Files\Microchip\xc8\v2.31\bin\avr-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature -R .user_signatures "opdracht 2.1.elf" "opdracht 2.1.hex" + "C:\Program Files\Microchip\xc8\v2.31\bin\avr-objcopy.exe" -j .eeprom --set-section-flags=.eeprom=alloc,load --change-section-lma .eeprom=0 --no-change-warnings -O ihex "opdracht 2.1.elf" "opdracht 2.1.eep" || exit 0 + "C:\Program Files\Microchip\xc8\v2.31\bin\avr-objdump.exe" -h -S "opdracht 2.1.elf" > "opdracht 2.1.lss" + + + + + + + +# Other Targets +clean: + -$(RM) $(OBJS_AS_ARGS) $(EXECUTABLES) + -$(RM) $(C_DEPS_AS_ARGS) + rm -rf "opdracht 2.1.elf" "opdracht 2.1.hex" "opdracht 2.1.eep" "opdracht 2.1.map" "opdracht 2.1.usersignatures" "opdracht 2.1.a" "opdracht 2.1.lss" + \ No newline at end of file diff --git a/Microcontrollers/opdracht 2.1/Debug/makedep.mk b/Microcontrollers/opdracht 2.1/Debug/makedep.mk new file mode 100644 index 0000000..6a14fde --- /dev/null +++ b/Microcontrollers/opdracht 2.1/Debug/makedep.mk @@ -0,0 +1,6 @@ +################################################################################ +# Automatically-generated file. Do not edit or delete the file +################################################################################ + +main.c + diff --git a/Microcontrollers/opdracht 2.1/Debug/memoryfile.xml b/Microcontrollers/opdracht 2.1/Debug/memoryfile.xml new file mode 100644 index 0000000..b616913 --- /dev/null +++ b/Microcontrollers/opdracht 2.1/Debug/memoryfile.xml @@ -0,0 +1,17 @@ + + + + + bytes + 131072 + 296 + 130776 + + + bytes + 4096 + 0 + 4096 + + + diff --git a/Microcontrollers/opdracht 2.1/Debug/opdracht 2.1.eep b/Microcontrollers/opdracht 2.1/Debug/opdracht 2.1.eep new file mode 100644 index 0000000..7c166a1 --- /dev/null +++ b/Microcontrollers/opdracht 2.1/Debug/opdracht 2.1.eep @@ -0,0 +1 @@ +:00000001FF diff --git a/Microcontrollers/opdracht 2.1/Debug/opdracht 2.1.lss b/Microcontrollers/opdracht 2.1/Debug/opdracht 2.1.lss new file mode 100644 index 0000000..b108395 --- /dev/null +++ b/Microcontrollers/opdracht 2.1/Debug/opdracht 2.1.lss @@ -0,0 +1,227 @@ + +opdracht 2.1.elf: file format elf32-avr + +Sections: +Idx Name Size VMA LMA File off Algn + 0 .data 00000000 00800100 00800100 0000017c 2**0 + ALLOC, LOAD, DATA + 1 .text 000000a4 00000000 00000000 00000054 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 2 .comment 0000002f 00000000 00000000 0000017c 2**0 + CONTENTS, READONLY + 3 .debug_aranges 00000038 00000000 00000000 000001ab 2**0 + CONTENTS, READONLY, DEBUGGING + 4 .debug_info 00000b51 00000000 00000000 000001e3 2**0 + CONTENTS, READONLY, DEBUGGING + 5 .debug_abbrev 00000830 00000000 00000000 00000d34 2**0 + CONTENTS, READONLY, DEBUGGING + 6 .debug_line 000002cb 00000000 00000000 00001564 2**0 + CONTENTS, READONLY, DEBUGGING + 7 .debug_frame 00000074 00000000 00000000 00001830 2**2 + CONTENTS, READONLY, DEBUGGING + 8 .debug_str 0000027d 00000000 00000000 000018a4 2**0 + CONTENTS, READONLY, DEBUGGING + 9 .debug_loc 000000e2 00000000 00000000 00001b21 2**0 + CONTENTS, READONLY, DEBUGGING + 10 .debug_ranges 00000028 00000000 00000000 00001c03 2**0 + CONTENTS, READONLY, DEBUGGING + 11 .text 00000004 00000124 00000124 00000178 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 12 .note.gnu.avr.deviceinfo 0000003c 00000000 00000000 00001c2c 2**2 + CONTENTS, READONLY, DEBUGGING + 13 .text.wait 0000001e 000000ca 000000ca 0000011e 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 14 .text.__vector_1 0000001e 000000e8 000000e8 0000013c 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 15 .text.__vector_2 0000001e 00000106 00000106 0000015a 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + 16 .text.main 00000026 000000a4 000000a4 000000f8 2**1 + CONTENTS, ALLOC, LOAD, READONLY, CODE + +Disassembly of section .text: + +00000000 <__vectors>: + 0: 0c 94 46 00 jmp 0x8c ; 0x8c <__ctors_end> + 4: 0c 94 74 00 jmp 0xe8 ; 0xe8 <__vector_1> + 8: 0c 94 83 00 jmp 0x106 ; 0x106 <__vector_2> + c: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 10: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 14: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 18: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 1c: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 20: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 24: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 28: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 2c: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 30: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 34: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 38: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 3c: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 40: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 44: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 48: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 4c: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 50: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 54: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 58: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 5c: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 60: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 64: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 68: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 6c: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 70: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 74: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 78: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 7c: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 80: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 84: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + 88: 0c 94 92 00 jmp 0x124 ; 0x124 <__bad_interrupt> + +0000008c <__ctors_end>: + 8c: 11 24 eor r1, r1 + 8e: 1f be out 0x3f, r1 ; 63 + 90: cf ef ldi r28, 0xFF ; 255 + 92: d0 e1 ldi r29, 0x10 ; 16 + 94: de bf out 0x3e, r29 ; 62 + 96: cd bf out 0x3d, r28 ; 61 + 98: 0e 94 52 00 call 0xa4 ; 0xa4 <_etext> + 9c: 0c 94 50 00 jmp 0xa0 ; 0xa0 <_exit> + +000000a0 <_exit>: + a0: f8 94 cli + +000000a2 <__stop_program>: + a2: ff cf rjmp .-2 ; 0xa2 <__stop_program> + +Disassembly of section .text: + +00000124 <__bad_interrupt>: + 124: 0c 94 00 00 jmp 0 ; 0x0 <__TEXT_REGION_ORIGIN__> + +Disassembly of section .text.wait: + +000000ca : + clock value is set. This is used by _delay_ms inside + util/delay.h +Version : DMK, Initial code +*******************************************************************/ +void wait( int ms ) { + for (int i=0; i + #else + //round up by default + __ticks_dc = (uint32_t)(ceil(fabs(__tmp))); + #endif + + __builtin_avr_delay_cycles(__ticks_dc); + d0: ef ec ldi r30, 0xCF ; 207 + d2: f7 e0 ldi r31, 0x07 ; 7 + d4: 31 97 sbiw r30, 0x01 ; 1 + d6: f1 f7 brne .-4 ; 0xd4 + d8: 00 c0 rjmp .+0 ; 0xda + da: 00 00 nop + dc: 2f 5f subi r18, 0xFF ; 255 + de: 3f 4f sbci r19, 0xFF ; 255 + e0: 28 17 cp r18, r24 + e2: 39 07 cpc r19, r25 + e4: ac f3 brlt .-22 ; 0xd0 + _delay_ms( 1 ); // library function (max 30 ms at 8MHz) + } +} + e6: 08 95 ret + +Disassembly of section .text.__vector_1: + +000000e8 <__vector_1>: +inputs: +outputs: +notes: Set PORTD.5 +Version : DMK, Initial code +*******************************************************************/ +ISR( INT0_vect ) { + e8: 1f 92 push r1 + ea: 0f 92 push r0 + ec: 0f b6 in r0, 0x3f ; 63 + ee: 0f 92 push r0 + f0: 11 24 eor r1, r1 + f2: 8f 93 push r24 + PORTD |= (1<<5); + f4: 82 b3 in r24, 0x12 ; 18 + f6: 80 62 ori r24, 0x20 ; 32 + f8: 82 bb out 0x12, r24 ; 18 +} + fa: 8f 91 pop r24 + fc: 0f 90 pop r0 + fe: 0f be out 0x3f, r0 ; 63 + 100: 0f 90 pop r0 + 102: 1f 90 pop r1 + 104: 18 95 reti + +Disassembly of section .text.__vector_2: + +00000106 <__vector_2>: +inputs: +outputs: +notes: Clear PORTD.5 +Version : DMK, Initial code +*******************************************************************/ +ISR( INT1_vect ) { + 106: 1f 92 push r1 + 108: 0f 92 push r0 + 10a: 0f b6 in r0, 0x3f ; 63 + 10c: 0f 92 push r0 + 10e: 11 24 eor r1, r1 + 110: 8f 93 push r24 + PORTD &= ~(1<<5); + 112: 82 b3 in r24, 0x12 ; 18 + 114: 8f 7d andi r24, 0xDF ; 223 + 116: 82 bb out 0x12, r24 ; 18 +} + 118: 8f 91 pop r24 + 11a: 0f 90 pop r0 + 11c: 0f be out 0x3f, r0 ; 63 + 11e: 0f 90 pop r0 + 120: 1f 90 pop r1 + 122: 18 95 reti + +Disassembly of section .text.main: + +000000a4
: +notes: Slow background task after init ISR +Version : DMK, Initial code +*******************************************************************/ +int main( void ) { + // Init I/O + DDRD = 0xF0; // PORTD(7:4) output, PORTD(3:0) input + a4: 80 ef ldi r24, 0xF0 ; 240 + a6: 81 bb out 0x11, r24 ; 17 + + // Init Interrupt hardware + EICRA |= 0x0B; // INT1 falling edge, INT0 rising edge + a8: ea e6 ldi r30, 0x6A ; 106 + aa: f0 e0 ldi r31, 0x00 ; 0 + ac: 80 81 ld r24, Z + ae: 8b 60 ori r24, 0x0B ; 11 + b0: 80 83 st Z, r24 + EIMSK |= 0x03; // Enable INT1 & INT0 + b2: 89 b7 in r24, 0x39 ; 57 + b4: 83 60 ori r24, 0x03 ; 3 + b6: 89 bf out 0x39, r24 ; 57 + + // Enable global interrupt system + //SREG = 0x80; // Of direct via SREG of via wrapper + sei(); + b8: 78 94 sei + + while (1) { + PORTD ^= (1<<7); // Toggle PORTD.7 + ba: 82 b3 in r24, 0x12 ; 18 + bc: 80 58 subi r24, 0x80 ; 128 + be: 82 bb out 0x12, r24 ; 18 + wait( 500 ); + c0: 84 ef ldi r24, 0xF4 ; 244 + c2: 91 e0 ldi r25, 0x01 ; 1 + c4: 0e 94 65 00 call 0xca ; 0xca + c8: f8 cf rjmp .-16 ; 0xba diff --git a/Microcontrollers/opdracht 2.1/main.c b/Microcontrollers/opdracht 2.1/main.c new file mode 100644 index 0000000..561e21a --- /dev/null +++ b/Microcontrollers/opdracht 2.1/main.c @@ -0,0 +1,86 @@ +/* --------------------------------------------------------------------------- +** This software is in the public domain, furnished "as is", without technical +** support, and with no warranty, express or implied, as to its usefulness for +** any purpose. +** +** ioisr.c +** +** Beschrijving: ISR on PORTD demonstrattion +** Target: AVR mcu +** Build: avr-gcc -std=c99 -Wall -O3 -mmcu=atmega128 -D F_CPU=8000000UL -c ioisr.c +** avr-gcc -g -mmcu=atmega128 -o ioisr.elf ioisr.o +** avr-objcopy -O ihex ioisr.elf ioisr.hex +** or type 'make' +** Author: dkroeske@gmail.com +** -------------------------------------------------------------------------*/ + +#define F_CPU 8e6 +#include +#include +#include + + +/****************************************************************** +/* +short: Busy wait number of millisecs +inputs: int ms (Number of millisecs to busy wait) +outputs: +notes: Busy wait, not very accurate. Make sure (external) + clock value is set. This is used by _delay_ms inside + util/delay.h +Version : DMK, Initial code +*******************************************************************/ +void wait( int ms ) { + for (int i=0; i + + + + + + Device + Startup + + + Atmel + 1.6.0 + C:/Program Files (x86)\Atmel\Studio\7.0\Packs + + + + + C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\ATmega_DFP\1.6.364\xc8\avr\include\avr\iom128.h + + header + XC + JdJ7J9I/SJh965SEyyyVYw== + + xc8/avr/include/avr/iom128.h + + + + + ATmega_DFP + C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/ATmega_DFP/1.6.364/Atmel.ATmega_DFP.pdsc + 1.6.364 + true + ATmega128 + + + + Resolved + Fixed + true + + + \ No newline at end of file diff --git a/Microcontrollers/opdracht 2.1/opdracht 2.1.cproj b/Microcontrollers/opdracht 2.1/opdracht 2.1.cproj new file mode 100644 index 0000000..3ae88cc --- /dev/null +++ b/Microcontrollers/opdracht 2.1/opdracht 2.1.cproj @@ -0,0 +1,99 @@ + + + + 2.0 + 7.0 + com.microchip.xc8 + {69165c62-b4d4-4fe3-b777-080628fac668} + ATmega128 + none + Executable + C + $(MSBuildProjectName) + .elf + $(MSBuildProjectDirectory)\$(Configuration) + opdracht 2.1 + opdracht 2.1 + opdracht 2.1 + XC8_2.31 + true + false + true + true + + + true + + 2 + 0 + 0 + + + + + + + + + + + + + + + + + + True + True + True + + + (%24DeviceMacro) + NDEBUG + + + Optimize for size (-Os) + True + True + True + + + libm + + + + + + + + + True + True + + + (%24DeviceMacro) + DEBUG + + + Optimize debugging experience (-Og) + True + True + Default (-g2) + True + + + libm + + + Default (-Wa,-g) + + + + + + compile + + + + \ No newline at end of file