diff --git a/.gitignore b/.gitignore index a6d2fcca2e6f996eb2dcc94589f48087482d0a3d..ddadb7056e3a9d18add5367a6e1e64655fcb6bb9 100644 --- a/.gitignore +++ b/.gitignore @@ -12,6 +12,13 @@ jake/ **.s#* **/ASF/ +**.atsln +**.atsuo +**.cproj +**.componentinfo.xml +**.vs +**/Debug/ +**/Device_Startup js/node_modules/ diff --git a/circuit/mkstepper/eagle.epf b/circuit/mkstepper/eagle.epf index 69b9a828c9e2472e7d8e29453ebcd37c4b0d0962..8fea37c60d10de81aa0e519538c6f50532f05d60 100644 --- a/circuit/mkstepper/eagle.epf +++ b/circuit/mkstepper/eagle.epf @@ -1,5 +1,5 @@ [Eagle] -Version="08 03 02" +Version="09 00 00" Platform="Windows" Globals="Globals" Desktop="Desktop" @@ -37,58 +37,10 @@ UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/rload.lbr" UsedLibrary="C:/EAGLE 8.3.2/lbr/ltspice/sym.lbr" [Win_1] -Type="Library Editor" -Loc="-8 -31 1191 568" -State=2 -Number=3 -File="D:/Dropbox (Personal)/CBA/doc/libraries/eagle/sensor.lbr" -View="-22.9819 -13.8034 22.9819 17.1562" -WireWidths=" 0.0762 0.1016 0.15 0.2 0.2032 0.3048 0.4064 0.508 0.6096 0.8128 1.016 1.27 2.54 0.1524 0.254 0.127" -PadDiameters=" 0.254 0.3048 0.4064 0.6096 0.8128 1.016 1.27 1.4224 1.6764 1.778 1.9304 2.1844 2.54 3.81 6.4516 0" -PadDrills=" 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.65 0.7 0.75 0.8 0.85 0.9 1 0.6" -ViaDiameters=" 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 0.95 1 1.05 1.1 1.15 1.2 1.3 0" -ViaDrills=" 0.2 0.25 0.3 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 1 0.35" -HoleDrills=" 0.2 0.25 0.3 0.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 1 0.35" -TextSizes=" 0.254 0.3048 0.4064 0.6096 0.8128 1.016 1.4224 1.6764 1.9304 2.1844 2.54 3.81 5.08 6.4516 1.778 1.27" -PolygonSpacings=" 0.254 0.3048 0.4064 0.6096 0.8128 1.016 1.4224 1.6764 1.778 1.9304 2.1844 2.54 3.81 5.08 6.4516 1.27" -PolygonIsolates=" 0.254 0.3048 0.4064 0.6096 0.8128 1.016 1.27 1.4224 1.6764 1.778 1.9304 2.1844 2.54 3.81 6.4516 0" -MiterRadiuss=" 0.254 0.3175 0.635 1.27 2.54 1 2 2.5 5 7.5 10 0" -DimensionWidths=" 0 0.127 0.254 0.1 0.26 0.13" -DimensionExtWidths=" 0.127 0.254 0.1 0.13 0.26 0" -DimensionExtLengths=" 1.27 2.54 1 2 3 0" -DimensionExtOffsets=" 1.27 2.54 1 2 3 0" -SmdSizes=" 0.3048 0.1524 0.4064 0.2032 0.6096 0.3048 0.8128 0.4064 1.016 0.508 1.27 0.6604 1.4224 0.7112 1.6764 0.8128 1.778 0.9144 1.9304 0.9652 2.1844 1.0668 2.54 1.27 3.81 1.9304 5.08 2.54 6.4516 3.2512 1.27 0.635" -WireBend=0 -WireBendSet=0 -WireCap=1 -MiterStyle=0 -PadShape=0 -ViaShape=1 -PolygonPour=0 -PolygonRank=0 -PolygonThermals=1 -PolygonOrphans=0 -TextRatio=8 -DimensionUnit=1 -DimensionPrecision=2 -DimensionShowUnit=0 -PinDirection=3 -PinFunction=0 -PinLength=2 -PinVisible=3 -SwapLevel=0 -ArcDirection=0 -AddLevel=2 -PadsSameType=0 -Layer=94 - -[Win_2] Type="Schematic Editor" -Loc="-8 -31 1191 608" -State=2 Number=1 File="mkstepper.sch" -View="-9.54513 0.074075 260.973 261.007" +View="-21.652 1.07368 203.78 218.518" WireWidths=" 0.0762 0.1016 0.127 0.15 0.2 0.2032 0.254 0.3048 0.4064 0.508 0.6096 0.8128 1.016 1.27 2.54 0.1524" PadDiameters=" 0.254 0.3048 0.4064 0.6096 0.8128 1.016 1.27 1.4224 1.6764 1.778 1.9304 2.1844 2.54 3.81 6.4516 0" PadDrills=" 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.65 0.7 0.75 0.8 0.85 0.9 1 0.6" @@ -127,16 +79,14 @@ ArcDirection=0 AddLevel=2 PadsSameType=0 Layer=91 -Views=" 1: -9.54513 0.074075 260.973 261.007" +Views=" 1: -21.652 1.07368 203.78 218.518" Sheet="1" -[Win_3] +[Win_2] Type="Board Editor" -Loc="-1928 -8 -9 1008" -State=1 Number=2 File="mkstepper.brd" -View="-23.1359 -2.82307 64.795 62.6903" +View="7.50586 28.8374 36.9537 50.7777" WireWidths=" 0.0762 0.1016 0.127 0.15 0.2 0.2032 0.254 0.3048 0.4064 0.508 0.6096 0.8128 1.016 1.27 2.54 0.1524" PadDiameters=" 0.254 0.3048 0.4064 0.6096 0.8128 1.016 1.27 1.4224 1.6764 1.778 1.9304 2.1844 2.54 3.81 6.4516 0" PadDrills=" 0.2 0.25 0.3 0.35 0.4 0.45 0.5 0.55 0.65 0.7 0.75 0.8 0.85 0.9 1 0.6" @@ -176,15 +126,12 @@ AddLevel=2 PadsSameType=0 Layer=16 -[Win_4] +[Win_3] Type="Control Panel" -Loc="-1928 -8 -9 1008" -State=1 Number=0 [Desktop] -Screen="3840 1080" +Screen="6000 2160" Window="Win_1" Window="Win_2" Window="Win_3" -Window="Win_4" diff --git a/embedded/mkstepper-v011/.vs/mkstepper-v011/v14/.atsuo b/embedded/mkstepper-v011/.vs/mkstepper-v011/v14/.atsuo deleted file mode 100644 index a00c03b772fc52019e490e3bc1a10d65712cfc46..0000000000000000000000000000000000000000 Binary files a/embedded/mkstepper-v011/.vs/mkstepper-v011/v14/.atsuo and /dev/null differ diff --git a/embedded/mkstepper-v011/mkstepper-v011.atsln b/embedded/mkstepper-v011/mkstepper-v011.atsln deleted file mode 100644 index 0b9dfe8d84f64d4c1fd33db1ea082e738e70330a..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011.atsln +++ /dev/null @@ -1,22 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 12.00 -# Atmel Studio Solution File, Format Version 11.00 -VisualStudioVersion = 14.0.23107.0 -MinimumVisualStudioVersion = 10.0.40219.1 -Project("{54F91283-7BC4-4236-8FF9-10F437C3AD48}") = "mkstepper-v011", "mkstepper-v011\mkstepper-v011.cproj", "{DCE6C7E3-EE26-4D79-826B-08594B9AD897}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|ARM = Debug|ARM - Release|ARM = Release|ARM - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {DCE6C7E3-EE26-4D79-826B-08594B9AD897}.Debug|ARM.ActiveCfg = Debug|ARM - {DCE6C7E3-EE26-4D79-826B-08594B9AD897}.Debug|ARM.Build.0 = Debug|ARM - {DCE6C7E3-EE26-4D79-826B-08594B9AD897}.Release|ARM.ActiveCfg = Release|ARM - {DCE6C7E3-EE26-4D79-826B-08594B9AD897}.Release|ARM.Build.0 = Release|ARM - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/embedded/mkstepper-v011/mkstepper-v011/Debug/Makefile b/embedded/mkstepper-v011/mkstepper-v011/Debug/Makefile deleted file mode 100644 index b582b1c81fe7224413037905bc6e06963b641760..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011/Debug/Makefile +++ /dev/null @@ -1,210 +0,0 @@ -################################################################################ -# 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 := \ -../Device_Startup/ - - -# Add inputs and outputs from these tool invocations to the build variables -C_SRCS += \ -../apahandler.c \ -../apaport.c \ -../Device_Startup/startup_samd51.c \ -../Device_Startup/system_samd51.c \ -../main.c \ -../pin.c \ -../ringbuffer.c \ -../spiport.c \ -../stepper.c \ -../tmc26.c \ -../uartport.c - - -PREPROCESSING_SRCS += - - -ASM_SRCS += - - -OBJS += \ -apahandler.o \ -apaport.o \ -Device_Startup/startup_samd51.o \ -Device_Startup/system_samd51.o \ -main.o \ -pin.o \ -ringbuffer.o \ -spiport.o \ -stepper.o \ -tmc26.o \ -uartport.o - -OBJS_AS_ARGS += \ -apahandler.o \ -apaport.o \ -Device_Startup/startup_samd51.o \ -Device_Startup/system_samd51.o \ -main.o \ -pin.o \ -ringbuffer.o \ -spiport.o \ -stepper.o \ -tmc26.o \ -uartport.o - -C_DEPS += \ -apahandler.d \ -apaport.d \ -Device_Startup/startup_samd51.d \ -Device_Startup/system_samd51.d \ -main.d \ -pin.d \ -ringbuffer.d \ -spiport.d \ -stepper.d \ -tmc26.d \ -uartport.d - -C_DEPS_AS_ARGS += \ -apahandler.d \ -apaport.d \ -Device_Startup/startup_samd51.d \ -Device_Startup/system_samd51.d \ -main.d \ -pin.d \ -ringbuffer.d \ -spiport.d \ -stepper.d \ -tmc26.d \ -uartport.d - -OUTPUT_FILE_PATH +=mkstepper-v011.elf - -OUTPUT_FILE_PATH_AS_ARGS +=mkstepper-v011.elf - -ADDITIONAL_DEPENDENCIES:= - -OUTPUT_FILE_DEP:= ./makedep.mk - -LIB_DEP+= - -LINKER_SCRIPT_DEP+= \ -../Device_Startup/samd51j18a_flash.ld \ -../Device_Startup/samd51j18a_sram.ld - - -# AVR32/GNU C Compiler - - - - - - - - - - - - - - - - - - - - - - - -./%.o: .././%.c - @echo Building file: $< - @echo Invoking: ARM/GNU C Compiler : 6.3.1 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-gcc.exe$(QUOTE) -x c -mthumb -D__SAMD51J18A__ -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\arm\CMSIS\5.0.1\CMSIS\Include" -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\include" -O1 -ffunction-sections -mlong-calls -g3 -Wall -mcpu=cortex-m4 -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" - @echo Finished building: $< - - -Device_Startup/%.o: ../Device_Startup/%.c - @echo Building file: $< - @echo Invoking: ARM/GNU C Compiler : 6.3.1 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-gcc.exe$(QUOTE) -x c -mthumb -D__SAMD51J18A__ -DDEBUG -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\arm\CMSIS\5.0.1\CMSIS\Include" -I"C:\Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\include" -O1 -ffunction-sections -mlong-calls -g3 -Wall -mcpu=cortex-m4 -c -std=gnu99 -MD -MP -MF "$(@:%.o=%.d)" -MT"$(@:%.o=%.d)" -MT"$(@:%.o=%.o)" -o "$@" "$<" - @echo Finished building: $< - - - - -# AVR32/GNU Preprocessing Assembler - - - -# AVR32/GNU Assembler - - - - -ifneq ($(MAKECMDGOALS),clean) -ifneq ($(strip $(C_DEPS)),) --include $(C_DEPS) -endif -endif - -# Add inputs and outputs from these tool invocations to the build variables - -# All Target -all: $(OUTPUT_FILE_PATH) $(ADDITIONAL_DEPENDENCIES) - -$(OUTPUT_FILE_PATH): $(OBJS) $(USER_OBJS) $(OUTPUT_FILE_DEP) $(LIB_DEP) $(LINKER_SCRIPT_DEP) - @echo Building target: $@ - @echo Invoking: ARM/GNU Linker : 6.3.1 - $(QUOTE)C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-gcc.exe$(QUOTE) -o$(OUTPUT_FILE_PATH_AS_ARGS) $(OBJS_AS_ARGS) $(USER_OBJS) $(LIBS) -mthumb -Wl,-Map="mkstepper-v011.map" -Wl,--start-group -lm -Wl,--end-group -L"..\\Device_Startup" -Wl,--gc-sections -mcpu=cortex-m4 -Tsamd51j18a_flash.ld - @echo Finished building target: $@ - "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-objcopy.exe" -O binary "mkstepper-v011.elf" "mkstepper-v011.bin" - "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-objcopy.exe" -O ihex -R .eeprom -R .fuse -R .lock -R .signature "mkstepper-v011.elf" "mkstepper-v011.hex" - "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-objcopy.exe" -j .eeprom --set-section-flags=.eeprom=alloc,load --change-section-lma .eeprom=0 --no-change-warnings -O binary "mkstepper-v011.elf" "mkstepper-v011.eep" || exit 0 - "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-objdump.exe" -h -S "mkstepper-v011.elf" > "mkstepper-v011.lss" - "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-objcopy.exe" -O srec -R .eeprom -R .fuse -R .lock -R .signature "mkstepper-v011.elf" "mkstepper-v011.srec" - "C:\Program Files (x86)\Atmel\Studio\7.0\toolchain\arm\arm-gnu-toolchain\bin\arm-none-eabi-size.exe" "mkstepper-v011.elf" - - - - - - - -# Other Targets -clean: - -$(RM) $(OBJS_AS_ARGS) $(EXECUTABLES) - -$(RM) $(C_DEPS_AS_ARGS) - rm -rf "mkstepper-v011.elf" "mkstepper-v011.a" "mkstepper-v011.hex" "mkstepper-v011.bin" "mkstepper-v011.lss" "mkstepper-v011.eep" "mkstepper-v011.map" "mkstepper-v011.srec" - \ No newline at end of file diff --git a/embedded/mkstepper-v011/mkstepper-v011/Debug/makedep.mk b/embedded/mkstepper-v011/mkstepper-v011/Debug/makedep.mk deleted file mode 100644 index 1e1e106697abe52063d89d8aae377a7cf17b8e74..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011/Debug/makedep.mk +++ /dev/null @@ -1,26 +0,0 @@ -################################################################################ -# Automatically-generated file. Do not edit or delete the file -################################################################################ - -apahandler.c - -apaport.c - -Device_Startup\startup_samd51.c - -Device_Startup\system_samd51.c - -main.c - -pin.c - -ringbuffer.c - -spiport.c - -stepper.c - -tmc26.c - -uartport.c - diff --git a/embedded/mkstepper-v011/mkstepper-v011/Debug/mkstepper-v011.eep b/embedded/mkstepper-v011/mkstepper-v011/Debug/mkstepper-v011.eep deleted file mode 100644 index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000 diff --git a/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/samd51j18a_flash.ld b/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/samd51j18a_flash.ld deleted file mode 100644 index 301f100e83356376dbdd6191ac64239e551ae9c0..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/samd51j18a_flash.ld +++ /dev/null @@ -1,163 +0,0 @@ -/** - * \file - * - * \brief Linker script for running in internal FLASH on the SAMD51J18A - * - * Copyright (c) 2017 Microchip Technology Inc. - * - * \asf_license_start - * - * \page License - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the Licence at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * \asf_license_stop - * - */ - - -OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") -OUTPUT_ARCH(arm) -SEARCH_DIR(.) - -/* Memory Spaces Definitions */ -MEMORY -{ - rom (rx) : ORIGIN = 0x00000000, LENGTH = 0x00040000 - ram (rwx) : ORIGIN = 0x20000000, LENGTH = 0x00020000 - bkupram (rwx) : ORIGIN = 0x47000000, LENGTH = 0x00002000 - qspi (rwx) : ORIGIN = 0x04000000, LENGTH = 0x01000000 -} - -/* The stack size used by the application. NOTE: you need to adjust according to your application. */ -STACK_SIZE = DEFINED(STACK_SIZE) ? STACK_SIZE : DEFINED(__stack_size__) ? __stack_size__ : 0x8000; - -/* Section Definitions */ -SECTIONS -{ - .text : - { - . = ALIGN(4); - _sfixed = .; - KEEP(*(.vectors .vectors.*)) - *(.text .text.* .gnu.linkonce.t.*) - *(.glue_7t) *(.glue_7) - *(.rodata .rodata* .gnu.linkonce.r.*) - *(.ARM.extab* .gnu.linkonce.armextab.*) - - /* Support C constructors, and C destructors in both user code - and the C library. This also provides support for C++ code. */ - . = ALIGN(4); - KEEP(*(.init)) - . = ALIGN(4); - __preinit_array_start = .; - KEEP (*(.preinit_array)) - __preinit_array_end = .; - - . = ALIGN(4); - __init_array_start = .; - KEEP (*(SORT(.init_array.*))) - KEEP (*(.init_array)) - __init_array_end = .; - - . = ALIGN(4); - KEEP (*crtbegin.o(.ctors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*crtend.o(.ctors)) - - . = ALIGN(4); - KEEP(*(.fini)) - - . = ALIGN(4); - __fini_array_start = .; - KEEP (*(.fini_array)) - KEEP (*(SORT(.fini_array.*))) - __fini_array_end = .; - - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*crtend.o(.dtors)) - - . = ALIGN(4); - _efixed = .; /* End of text section */ - } > rom - - /* .ARM.exidx is sorted, so has to go in its own output section. */ - PROVIDE_HIDDEN (__exidx_start = .); - .ARM.exidx : - { - *(.ARM.exidx* .gnu.linkonce.armexidx.*) - } > rom - PROVIDE_HIDDEN (__exidx_end = .); - - . = ALIGN(4); - _etext = .; - - .relocate : AT (_etext) - { - . = ALIGN(4); - _srelocate = .; - *(.ramfunc .ramfunc.*); - *(.data .data.*); - . = ALIGN(4); - _erelocate = .; - } > ram - - .bkupram (NOLOAD): - { - . = ALIGN(8); - _sbkupram = .; - *(.bkupram .bkupram.*); - . = ALIGN(8); - _ebkupram = .; - } > bkupram - - .qspi (NOLOAD): - { - . = ALIGN(8); - _sqspi = .; - *(.qspi .qspi.*); - . = ALIGN(8); - _eqspi = .; - } > qspi - - /* .bss section which is used for uninitialized data */ - .bss (NOLOAD) : - { - . = ALIGN(4); - _sbss = . ; - _szero = .; - *(.bss .bss.*) - *(COMMON) - . = ALIGN(4); - _ebss = . ; - _ezero = .; - } > ram - - /* stack section */ - .stack (NOLOAD): - { - . = ALIGN(8); - _sstack = .; - . = . + STACK_SIZE; - . = ALIGN(8); - _estack = .; - } > ram - - . = ALIGN(4); - _end = . ; -} diff --git a/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/samd51j18a_sram.ld b/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/samd51j18a_sram.ld deleted file mode 100644 index 0303f06c3a62e558ecfe4277dad36f8b5d5448d6..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/samd51j18a_sram.ld +++ /dev/null @@ -1,162 +0,0 @@ -/** - * \file - * - * \brief Linker script for running in internal SRAM on the SAMD51J18A - * - * Copyright (c) 2017 Microchip Technology Inc. - * - * \asf_license_start - * - * \page License - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the Licence at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * \asf_license_stop - * - */ - - -OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") -OUTPUT_ARCH(arm) -SEARCH_DIR(.) - -/* Memory Spaces Definitions */ -MEMORY -{ - ram (rwx) : ORIGIN = 0x20000000, LENGTH = 0x00020000 - bkupram (rwx) : ORIGIN = 0x47000000, LENGTH = 0x00002000 - qspi (rwx) : ORIGIN = 0x04000000, LENGTH = 0x01000000 -} - -/* The stack size used by the application. NOTE: you need to adjust according to your application. */ -STACK_SIZE = DEFINED(STACK_SIZE) ? STACK_SIZE : DEFINED(__stack_size__) ? __stack_size__ : 0x8000; - -/* Section Definitions */ -SECTIONS -{ - .text : - { - . = ALIGN(4); - _sfixed = .; - KEEP(*(.vectors .vectors.*)) - *(.text .text.* .gnu.linkonce.t.*) - *(.glue_7t) *(.glue_7) - *(.rodata .rodata* .gnu.linkonce.r.*) - *(.ARM.extab* .gnu.linkonce.armextab.*) - - /* Support C constructors, and C destructors in both user code - and the C library. This also provides support for C++ code. */ - . = ALIGN(4); - KEEP(*(.init)) - . = ALIGN(4); - __preinit_array_start = .; - KEEP (*(.preinit_array)) - __preinit_array_end = .; - - . = ALIGN(4); - __init_array_start = .; - KEEP (*(SORT(.init_array.*))) - KEEP (*(.init_array)) - __init_array_end = .; - - . = ALIGN(4); - KEEP (*crtbegin.o(.ctors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .ctors)) - KEEP (*(SORT(.ctors.*))) - KEEP (*crtend.o(.ctors)) - - . = ALIGN(4); - KEEP(*(.fini)) - - . = ALIGN(4); - __fini_array_start = .; - KEEP (*(.fini_array)) - KEEP (*(SORT(.fini_array.*))) - __fini_array_end = .; - - KEEP (*crtbegin.o(.dtors)) - KEEP (*(EXCLUDE_FILE (*crtend.o) .dtors)) - KEEP (*(SORT(.dtors.*))) - KEEP (*crtend.o(.dtors)) - - . = ALIGN(4); - _efixed = .; /* End of text section */ - } > ram - - /* .ARM.exidx is sorted, so has to go in its own output section. */ - PROVIDE_HIDDEN (__exidx_start = .); - .ARM.exidx : - { - *(.ARM.exidx* .gnu.linkonce.armexidx.*) - } > ram - PROVIDE_HIDDEN (__exidx_end = .); - - . = ALIGN(4); - _etext = .; - - .relocate : AT (_etext) - { - . = ALIGN(4); - _srelocate = .; - *(.ramfunc .ramfunc.*); - *(.data .data.*); - . = ALIGN(4); - _erelocate = .; - } > ram - - .bkupram (NOLOAD): - { - . = ALIGN(8); - _sbkupram = .; - *(.bkupram .bkupram.*); - . = ALIGN(8); - _ebkupram = .; - } > bkupram - - .qspi (NOLOAD): - { - . = ALIGN(8); - _sqspi = .; - *(.qspi .qspi.*); - . = ALIGN(8); - _eqspi = .; - } > qspi - - /* .bss section which is used for uninitialized data */ - .bss (NOLOAD) : - { - . = ALIGN(4); - _sbss = . ; - _szero = .; - *(.bss .bss.*) - *(COMMON) - . = ALIGN(4); - _ebss = . ; - _ezero = .; - } > ram - - /* stack section */ - .stack (NOLOAD): - { - . = ALIGN(8); - _sstack = .; - . = . + STACK_SIZE; - . = ALIGN(8); - _estack = .; - } > ram - - . = ALIGN(4); - _end = . ; -} diff --git a/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/startup_samd51.c b/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/startup_samd51.c deleted file mode 100644 index a62d02f1ca57aa2d3ef1ba50af1751639e5e316c..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/startup_samd51.c +++ /dev/null @@ -1,548 +0,0 @@ -/** - * \file - * - * \brief gcc starttup file for SAMD51 - * - * Copyright (c) 2017 Microchip Technology Inc. - * - * \asf_license_start - * - * \page License - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the Licence at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * \asf_license_stop - * - */ - -#include "samd51.h" - -/* Initialize segments */ -extern uint32_t _sfixed; -extern uint32_t _efixed; -extern uint32_t _etext; -extern uint32_t _srelocate; -extern uint32_t _erelocate; -extern uint32_t _szero; -extern uint32_t _ezero; -extern uint32_t _sstack; -extern uint32_t _estack; - -/** \cond DOXYGEN_SHOULD_SKIP_THIS */ -int main(void); -/** \endcond */ - -void __libc_init_array(void); - -/* Default empty handler */ -void Dummy_Handler(void); - -/* Cortex-M4 core handlers */ -void NMI_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void HardFault_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void MemManage_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void BusFault_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void UsageFault_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void SVC_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void DebugMon_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void PendSV_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void SysTick_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); - -/* Peripherals handlers */ -void PM_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void MCLK_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void OSCCTRL_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* OSCCTRL_XOSCFAIL_0, OSCCTRL_XOSCRDY_0 */ -void OSCCTRL_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* OSCCTRL_XOSCFAIL_1, OSCCTRL_XOSCRDY_1 */ -void OSCCTRL_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* OSCCTRL_DFLLLOCKC, OSCCTRL_DFLLLOCKF, OSCCTRL_DFLLOOB, OSCCTRL_DFLLRCS, OSCCTRL_DFLLRDY */ -void OSCCTRL_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* OSCCTRL_DPLLLCKF_0, OSCCTRL_DPLLLCKR_0, OSCCTRL_DPLLLDRTO_0, OSCCTRL_DPLLLTO_0 */ -void OSCCTRL_4_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* OSCCTRL_DPLLLCKF_1, OSCCTRL_DPLLLCKR_1, OSCCTRL_DPLLLDRTO_1, OSCCTRL_DPLLLTO_1 */ -void OSC32KCTRL_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void SUPC_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SUPC_B12SRDY, SUPC_B33SRDY, SUPC_BOD12RDY, SUPC_BOD33RDY, SUPC_VCORERDY, SUPC_VREGRDY */ -void SUPC_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SUPC_BOD12DET, SUPC_BOD33DET */ -void WDT_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void RTC_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void EIC_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_0 */ -void EIC_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_1 */ -void EIC_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_2 */ -void EIC_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_3 */ -void EIC_4_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_4 */ -void EIC_5_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_5 */ -void EIC_6_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_6 */ -void EIC_7_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_7 */ -void EIC_8_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_8 */ -void EIC_9_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_9 */ -void EIC_10_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_10 */ -void EIC_11_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_11 */ -void EIC_12_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_12 */ -void EIC_13_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_13 */ -void EIC_14_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_14 */ -void EIC_15_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EIC_EXTINT_15 */ -void FREQM_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void NVMCTRL_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* NVMCTRL_0, NVMCTRL_1, NVMCTRL_2, NVMCTRL_3, NVMCTRL_4, NVMCTRL_5, NVMCTRL_6, NVMCTRL_7 */ -void NVMCTRL_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* NVMCTRL_10, NVMCTRL_8, NVMCTRL_9 */ -void DMAC_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DMAC_SUSP_0, DMAC_TCMPL_0, DMAC_TERR_0 */ -void DMAC_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DMAC_SUSP_1, DMAC_TCMPL_1, DMAC_TERR_1 */ -void DMAC_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DMAC_SUSP_2, DMAC_TCMPL_2, DMAC_TERR_2 */ -void DMAC_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DMAC_SUSP_3, DMAC_TCMPL_3, DMAC_TERR_3 */ -void DMAC_4_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DMAC_SUSP_10, DMAC_SUSP_11, DMAC_SUSP_12, DMAC_SUSP_13, DMAC_SUSP_14, DMAC_SUSP_15, DMAC_SUSP_16, DMAC_SUSP_17, DMAC_SUSP_18, DMAC_SUSP_19, DMAC_SUSP_20, DMAC_SUSP_21, DMAC_SUSP_22, DMAC_SUSP_23, DMAC_SUSP_24, DMAC_SUSP_25, DMAC_SUSP_26, DMAC_SUSP_27, DMAC_SUSP_28, DMAC_SUSP_29, DMAC_SUSP_30, DMAC_SUSP_31, DMAC_SUSP_4, DMAC_SUSP_5, DMAC_SUSP_6, DMAC_SUSP_7, DMAC_SUSP_8, DMAC_SUSP_9, DMAC_TCMPL_10, DMAC_TCMPL_11, DMAC_TCMPL_12, DMAC_TCMPL_13, DMAC_TCMPL_14, DMAC_TCMPL_15, DMAC_TCMPL_16, DMAC_TCMPL_17, DMAC_TCMPL_18, DMAC_TCMPL_19, DMAC_TCMPL_20, DMAC_TCMPL_21, DMAC_TCMPL_22, DMAC_TCMPL_23, DMAC_TCMPL_24, DMAC_TCMPL_25, DMAC_TCMPL_26, DMAC_TCMPL_27, DMAC_TCMPL_28, DMAC_TCMPL_29, DMAC_TCMPL_30, DMAC_TCMPL_31, DMAC_TCMPL_4, DMAC_TCMPL_5, DMAC_TCMPL_6, DMAC_TCMPL_7, DMAC_TCMPL_8, DMAC_TCMPL_9, DMAC_TERR_10, DMAC_TERR_11, DMAC_TERR_12, DMAC_TERR_13, DMAC_TERR_14, DMAC_TERR_15, DMAC_TERR_16, DMAC_TERR_17, DMAC_TERR_18, DMAC_TERR_19, DMAC_TERR_20, DMAC_TERR_21, DMAC_TERR_22, DMAC_TERR_23, DMAC_TERR_24, DMAC_TERR_25, DMAC_TERR_26, DMAC_TERR_27, DMAC_TERR_28, DMAC_TERR_29, DMAC_TERR_30, DMAC_TERR_31, DMAC_TERR_4, DMAC_TERR_5, DMAC_TERR_6, DMAC_TERR_7, DMAC_TERR_8, DMAC_TERR_9 */ -void EVSYS_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EVSYS_EVD_0, EVSYS_OVR_0 */ -void EVSYS_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EVSYS_EVD_1, EVSYS_OVR_1 */ -void EVSYS_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EVSYS_EVD_2, EVSYS_OVR_2 */ -void EVSYS_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EVSYS_EVD_3, EVSYS_OVR_3 */ -void EVSYS_4_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* EVSYS_EVD_10, EVSYS_EVD_11, EVSYS_EVD_4, EVSYS_EVD_5, EVSYS_EVD_6, EVSYS_EVD_7, EVSYS_EVD_8, EVSYS_EVD_9, EVSYS_OVR_10, EVSYS_OVR_11, EVSYS_OVR_4, EVSYS_OVR_5, EVSYS_OVR_6, EVSYS_OVR_7, EVSYS_OVR_8, EVSYS_OVR_9 */ -void PAC_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void TAL_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TAL_BRK */ -void TAL_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TAL_IPS_0, TAL_IPS_1 */ -void RAMECC_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void SERCOM0_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM0_0 */ -void SERCOM0_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM0_1 */ -void SERCOM0_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM0_2 */ -void SERCOM0_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM0_3, SERCOM0_4, SERCOM0_5, SERCOM0_6 */ -void SERCOM1_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM1_0 */ -void SERCOM1_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM1_1 */ -void SERCOM1_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM1_2 */ -void SERCOM1_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM1_3, SERCOM1_4, SERCOM1_5, SERCOM1_6 */ -void SERCOM2_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM2_0 */ -void SERCOM2_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM2_1 */ -void SERCOM2_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM2_2 */ -void SERCOM2_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM2_3, SERCOM2_4, SERCOM2_5, SERCOM2_6 */ -void SERCOM3_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM3_0 */ -void SERCOM3_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM3_1 */ -void SERCOM3_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM3_2 */ -void SERCOM3_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM3_3, SERCOM3_4, SERCOM3_5, SERCOM3_6 */ -#ifdef ID_SERCOM4 -void SERCOM4_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM4_0 */ -void SERCOM4_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM4_1 */ -void SERCOM4_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM4_2 */ -void SERCOM4_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM4_3, SERCOM4_4, SERCOM4_5, SERCOM4_6 */ -#endif -#ifdef ID_SERCOM5 -void SERCOM5_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM5_0 */ -void SERCOM5_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM5_1 */ -void SERCOM5_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM5_2 */ -void SERCOM5_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM5_3, SERCOM5_4, SERCOM5_5, SERCOM5_6 */ -#endif -#ifdef ID_SERCOM6 -void SERCOM6_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM6_0 */ -void SERCOM6_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM6_1 */ -void SERCOM6_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM6_2 */ -void SERCOM6_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM6_3, SERCOM6_4, SERCOM6_5, SERCOM6_6 */ -#endif -#ifdef ID_SERCOM7 -void SERCOM7_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM7_0 */ -void SERCOM7_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM7_1 */ -void SERCOM7_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM7_2 */ -void SERCOM7_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* SERCOM7_3, SERCOM7_4, SERCOM7_5, SERCOM7_6 */ -#endif -#ifdef ID_CAN0 -void CAN0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -#ifdef ID_CAN1 -void CAN1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -#ifdef ID_USB -void USB_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* USB_EORSM_DNRSM, USB_EORST_RST, USB_LPMSUSP_DDISC, USB_LPM_DCONN, USB_MSOF, USB_RAMACER, USB_RXSTP_TXSTP_0, USB_RXSTP_TXSTP_1, USB_RXSTP_TXSTP_2, USB_RXSTP_TXSTP_3, USB_RXSTP_TXSTP_4, USB_RXSTP_TXSTP_5, USB_RXSTP_TXSTP_6, USB_RXSTP_TXSTP_7, USB_STALL0_STALL_0, USB_STALL0_STALL_1, USB_STALL0_STALL_2, USB_STALL0_STALL_3, USB_STALL0_STALL_4, USB_STALL0_STALL_5, USB_STALL0_STALL_6, USB_STALL0_STALL_7, USB_STALL1_0, USB_STALL1_1, USB_STALL1_2, USB_STALL1_3, USB_STALL1_4, USB_STALL1_5, USB_STALL1_6, USB_STALL1_7, USB_SUSPEND, USB_TRFAIL0_TRFAIL_0, USB_TRFAIL0_TRFAIL_1, USB_TRFAIL0_TRFAIL_2, USB_TRFAIL0_TRFAIL_3, USB_TRFAIL0_TRFAIL_4, USB_TRFAIL0_TRFAIL_5, USB_TRFAIL0_TRFAIL_6, USB_TRFAIL0_TRFAIL_7, USB_TRFAIL1_PERR_0, USB_TRFAIL1_PERR_1, USB_TRFAIL1_PERR_2, USB_TRFAIL1_PERR_3, USB_TRFAIL1_PERR_4, USB_TRFAIL1_PERR_5, USB_TRFAIL1_PERR_6, USB_TRFAIL1_PERR_7, USB_UPRSM, USB_WAKEUP */ -void USB_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* USB_SOF_HSOF */ -void USB_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* USB_TRCPT0_0, USB_TRCPT0_1, USB_TRCPT0_2, USB_TRCPT0_3, USB_TRCPT0_4, USB_TRCPT0_5, USB_TRCPT0_6, USB_TRCPT0_7 */ -void USB_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* USB_TRCPT1_0, USB_TRCPT1_1, USB_TRCPT1_2, USB_TRCPT1_3, USB_TRCPT1_4, USB_TRCPT1_5, USB_TRCPT1_6, USB_TRCPT1_7 */ -#endif -#ifdef ID_GMAC -void GMAC_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -void TCC0_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC0_CNT_A, TCC0_DFS_A, TCC0_ERR_A, TCC0_FAULT0_A, TCC0_FAULT1_A, TCC0_FAULTA_A, TCC0_FAULTB_A, TCC0_OVF, TCC0_TRG, TCC0_UFS_A */ -void TCC0_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC0_MC_0 */ -void TCC0_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC0_MC_1 */ -void TCC0_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC0_MC_2 */ -void TCC0_4_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC0_MC_3 */ -void TCC0_5_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC0_MC_4 */ -void TCC0_6_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC0_MC_5 */ -void TCC1_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC1_CNT_A, TCC1_DFS_A, TCC1_ERR_A, TCC1_FAULT0_A, TCC1_FAULT1_A, TCC1_FAULTA_A, TCC1_FAULTB_A, TCC1_OVF, TCC1_TRG, TCC1_UFS_A */ -void TCC1_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC1_MC_0 */ -void TCC1_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC1_MC_1 */ -void TCC1_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC1_MC_2 */ -void TCC1_4_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC1_MC_3 */ -void TCC2_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC2_CNT_A, TCC2_DFS_A, TCC2_ERR_A, TCC2_FAULT0_A, TCC2_FAULT1_A, TCC2_FAULTA_A, TCC2_FAULTB_A, TCC2_OVF, TCC2_TRG, TCC2_UFS_A */ -void TCC2_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC2_MC_0 */ -void TCC2_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC2_MC_1 */ -void TCC2_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC2_MC_2 */ -#ifdef ID_TCC3 -void TCC3_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC3_CNT_A, TCC3_DFS_A, TCC3_ERR_A, TCC3_FAULT0_A, TCC3_FAULT1_A, TCC3_FAULTA_A, TCC3_FAULTB_A, TCC3_OVF, TCC3_TRG, TCC3_UFS_A */ -void TCC3_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC3_MC_0 */ -void TCC3_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC3_MC_1 */ -#endif -#ifdef ID_TCC4 -void TCC4_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC4_CNT_A, TCC4_DFS_A, TCC4_ERR_A, TCC4_FAULT0_A, TCC4_FAULT1_A, TCC4_FAULTA_A, TCC4_FAULTB_A, TCC4_OVF, TCC4_TRG, TCC4_UFS_A */ -void TCC4_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC4_MC_0 */ -void TCC4_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* TCC4_MC_1 */ -#endif -void TC0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void TC1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void TC2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void TC3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#ifdef ID_TC4 -void TC4_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -#ifdef ID_TC5 -void TC5_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -#ifdef ID_TC6 -void TC6_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -#ifdef ID_TC7 -void TC7_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -void PDEC_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* PDEC_DIR_A, PDEC_ERR_A, PDEC_OVF, PDEC_VLC_A */ -void PDEC_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* PDEC_MC_0 */ -void PDEC_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* PDEC_MC_1 */ -void ADC0_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* ADC0_OVERRUN, ADC0_WINMON */ -void ADC0_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* ADC0_RESRDY */ -void ADC1_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* ADC1_OVERRUN, ADC1_WINMON */ -void ADC1_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* ADC1_RESRDY */ -void AC_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void DAC_0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DAC_OVERRUN_A_0, DAC_OVERRUN_A_1, DAC_UNDERRUN_A_0, DAC_UNDERRUN_A_1 */ -void DAC_1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DAC_EMPTY_0 */ -void DAC_2_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DAC_EMPTY_1 */ -void DAC_3_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DAC_RESRDY_0 */ -void DAC_4_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); /* DAC_RESRDY_1 */ -#ifdef ID_I2S -void I2S_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -void PCC_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void AES_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -void TRNG_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#ifdef ID_ICM -void ICM_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -#ifdef ID_PUKCC -void PUKCC_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -void QSPI_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#ifdef ID_SDHC0 -void SDHC0_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif -#ifdef ID_SDHC1 -void SDHC1_Handler ( void ) __attribute__ ((weak, alias("Dummy_Handler"))); -#endif - -/* Exception Table */ -__attribute__ ((section(".vectors"))) -const DeviceVectors exception_table = { - - /* Configure Initial Stack Pointer, using linker-generated symbols */ - .pvStack = (void*) (&_estack), - - .pfnReset_Handler = (void*) Reset_Handler, - .pfnNMI_Handler = (void*) NMI_Handler, - .pfnHardFault_Handler = (void*) HardFault_Handler, - .pfnMemManage_Handler = (void*) MemManage_Handler, - .pfnBusFault_Handler = (void*) BusFault_Handler, - .pfnUsageFault_Handler = (void*) UsageFault_Handler, - .pvReservedM9 = (void*) (0UL), /* Reserved */ - .pvReservedM8 = (void*) (0UL), /* Reserved */ - .pvReservedM7 = (void*) (0UL), /* Reserved */ - .pvReservedM6 = (void*) (0UL), /* Reserved */ - .pfnSVC_Handler = (void*) SVC_Handler, - .pfnDebugMon_Handler = (void*) DebugMon_Handler, - .pvReservedM3 = (void*) (0UL), /* Reserved */ - .pfnPendSV_Handler = (void*) PendSV_Handler, - .pfnSysTick_Handler = (void*) SysTick_Handler, - - /* Configurable interrupts */ - .pfnPM_Handler = (void*) PM_Handler, /* 0 Power Manager */ - .pfnMCLK_Handler = (void*) MCLK_Handler, /* 1 Main Clock */ - .pfnOSCCTRL_0_Handler = (void*) OSCCTRL_0_Handler, /* 2 OSCCTRL_XOSCFAIL_0, OSCCTRL_XOSCRDY_0 */ - .pfnOSCCTRL_1_Handler = (void*) OSCCTRL_1_Handler, /* 3 OSCCTRL_XOSCFAIL_1, OSCCTRL_XOSCRDY_1 */ - .pfnOSCCTRL_2_Handler = (void*) OSCCTRL_2_Handler, /* 4 OSCCTRL_DFLLLOCKC, OSCCTRL_DFLLLOCKF, OSCCTRL_DFLLOOB, OSCCTRL_DFLLRCS, OSCCTRL_DFLLRDY */ - .pfnOSCCTRL_3_Handler = (void*) OSCCTRL_3_Handler, /* 5 OSCCTRL_DPLLLCKF_0, OSCCTRL_DPLLLCKR_0, OSCCTRL_DPLLLDRTO_0, OSCCTRL_DPLLLTO_0 */ - .pfnOSCCTRL_4_Handler = (void*) OSCCTRL_4_Handler, /* 6 OSCCTRL_DPLLLCKF_1, OSCCTRL_DPLLLCKR_1, OSCCTRL_DPLLLDRTO_1, OSCCTRL_DPLLLTO_1 */ - .pfnOSC32KCTRL_Handler = (void*) OSC32KCTRL_Handler, /* 7 32kHz Oscillators Control */ - .pfnSUPC_0_Handler = (void*) SUPC_0_Handler, /* 8 SUPC_B12SRDY, SUPC_B33SRDY, SUPC_BOD12RDY, SUPC_BOD33RDY, SUPC_VCORERDY, SUPC_VREGRDY */ - .pfnSUPC_1_Handler = (void*) SUPC_1_Handler, /* 9 SUPC_BOD12DET, SUPC_BOD33DET */ - .pfnWDT_Handler = (void*) WDT_Handler, /* 10 Watchdog Timer */ - .pfnRTC_Handler = (void*) RTC_Handler, /* 11 Real-Time Counter */ - .pfnEIC_0_Handler = (void*) EIC_0_Handler, /* 12 EIC_EXTINT_0 */ - .pfnEIC_1_Handler = (void*) EIC_1_Handler, /* 13 EIC_EXTINT_1 */ - .pfnEIC_2_Handler = (void*) EIC_2_Handler, /* 14 EIC_EXTINT_2 */ - .pfnEIC_3_Handler = (void*) EIC_3_Handler, /* 15 EIC_EXTINT_3 */ - .pfnEIC_4_Handler = (void*) EIC_4_Handler, /* 16 EIC_EXTINT_4 */ - .pfnEIC_5_Handler = (void*) EIC_5_Handler, /* 17 EIC_EXTINT_5 */ - .pfnEIC_6_Handler = (void*) EIC_6_Handler, /* 18 EIC_EXTINT_6 */ - .pfnEIC_7_Handler = (void*) EIC_7_Handler, /* 19 EIC_EXTINT_7 */ - .pfnEIC_8_Handler = (void*) EIC_8_Handler, /* 20 EIC_EXTINT_8 */ - .pfnEIC_9_Handler = (void*) EIC_9_Handler, /* 21 EIC_EXTINT_9 */ - .pfnEIC_10_Handler = (void*) EIC_10_Handler, /* 22 EIC_EXTINT_10 */ - .pfnEIC_11_Handler = (void*) EIC_11_Handler, /* 23 EIC_EXTINT_11 */ - .pfnEIC_12_Handler = (void*) EIC_12_Handler, /* 24 EIC_EXTINT_12 */ - .pfnEIC_13_Handler = (void*) EIC_13_Handler, /* 25 EIC_EXTINT_13 */ - .pfnEIC_14_Handler = (void*) EIC_14_Handler, /* 26 EIC_EXTINT_14 */ - .pfnEIC_15_Handler = (void*) EIC_15_Handler, /* 27 EIC_EXTINT_15 */ - .pfnFREQM_Handler = (void*) FREQM_Handler, /* 28 Frequency Meter */ - .pfnNVMCTRL_0_Handler = (void*) NVMCTRL_0_Handler, /* 29 NVMCTRL_0, NVMCTRL_1, NVMCTRL_2, NVMCTRL_3, NVMCTRL_4, NVMCTRL_5, NVMCTRL_6, NVMCTRL_7 */ - .pfnNVMCTRL_1_Handler = (void*) NVMCTRL_1_Handler, /* 30 NVMCTRL_10, NVMCTRL_8, NVMCTRL_9 */ - .pfnDMAC_0_Handler = (void*) DMAC_0_Handler, /* 31 DMAC_SUSP_0, DMAC_TCMPL_0, DMAC_TERR_0 */ - .pfnDMAC_1_Handler = (void*) DMAC_1_Handler, /* 32 DMAC_SUSP_1, DMAC_TCMPL_1, DMAC_TERR_1 */ - .pfnDMAC_2_Handler = (void*) DMAC_2_Handler, /* 33 DMAC_SUSP_2, DMAC_TCMPL_2, DMAC_TERR_2 */ - .pfnDMAC_3_Handler = (void*) DMAC_3_Handler, /* 34 DMAC_SUSP_3, DMAC_TCMPL_3, DMAC_TERR_3 */ - .pfnDMAC_4_Handler = (void*) DMAC_4_Handler, /* 35 DMAC_SUSP_10, DMAC_SUSP_11, DMAC_SUSP_12, DMAC_SUSP_13, DMAC_SUSP_14, DMAC_SUSP_15, DMAC_SUSP_16, DMAC_SUSP_17, DMAC_SUSP_18, DMAC_SUSP_19, DMAC_SUSP_20, DMAC_SUSP_21, DMAC_SUSP_22, DMAC_SUSP_23, DMAC_SUSP_24, DMAC_SUSP_25, DMAC_SUSP_26, DMAC_SUSP_27, DMAC_SUSP_28, DMAC_SUSP_29, DMAC_SUSP_30, DMAC_SUSP_31, DMAC_SUSP_4, DMAC_SUSP_5, DMAC_SUSP_6, DMAC_SUSP_7, DMAC_SUSP_8, DMAC_SUSP_9, DMAC_TCMPL_10, DMAC_TCMPL_11, DMAC_TCMPL_12, DMAC_TCMPL_13, DMAC_TCMPL_14, DMAC_TCMPL_15, DMAC_TCMPL_16, DMAC_TCMPL_17, DMAC_TCMPL_18, DMAC_TCMPL_19, DMAC_TCMPL_20, DMAC_TCMPL_21, DMAC_TCMPL_22, DMAC_TCMPL_23, DMAC_TCMPL_24, DMAC_TCMPL_25, DMAC_TCMPL_26, DMAC_TCMPL_27, DMAC_TCMPL_28, DMAC_TCMPL_29, DMAC_TCMPL_30, DMAC_TCMPL_31, DMAC_TCMPL_4, DMAC_TCMPL_5, DMAC_TCMPL_6, DMAC_TCMPL_7, DMAC_TCMPL_8, DMAC_TCMPL_9, DMAC_TERR_10, DMAC_TERR_11, DMAC_TERR_12, DMAC_TERR_13, DMAC_TERR_14, DMAC_TERR_15, DMAC_TERR_16, DMAC_TERR_17, DMAC_TERR_18, DMAC_TERR_19, DMAC_TERR_20, DMAC_TERR_21, DMAC_TERR_22, DMAC_TERR_23, DMAC_TERR_24, DMAC_TERR_25, DMAC_TERR_26, DMAC_TERR_27, DMAC_TERR_28, DMAC_TERR_29, DMAC_TERR_30, DMAC_TERR_31, DMAC_TERR_4, DMAC_TERR_5, DMAC_TERR_6, DMAC_TERR_7, DMAC_TERR_8, DMAC_TERR_9 */ - .pfnEVSYS_0_Handler = (void*) EVSYS_0_Handler, /* 36 EVSYS_EVD_0, EVSYS_OVR_0 */ - .pfnEVSYS_1_Handler = (void*) EVSYS_1_Handler, /* 37 EVSYS_EVD_1, EVSYS_OVR_1 */ - .pfnEVSYS_2_Handler = (void*) EVSYS_2_Handler, /* 38 EVSYS_EVD_2, EVSYS_OVR_2 */ - .pfnEVSYS_3_Handler = (void*) EVSYS_3_Handler, /* 39 EVSYS_EVD_3, EVSYS_OVR_3 */ - .pfnEVSYS_4_Handler = (void*) EVSYS_4_Handler, /* 40 EVSYS_EVD_10, EVSYS_EVD_11, EVSYS_EVD_4, EVSYS_EVD_5, EVSYS_EVD_6, EVSYS_EVD_7, EVSYS_EVD_8, EVSYS_EVD_9, EVSYS_OVR_10, EVSYS_OVR_11, EVSYS_OVR_4, EVSYS_OVR_5, EVSYS_OVR_6, EVSYS_OVR_7, EVSYS_OVR_8, EVSYS_OVR_9 */ - .pfnPAC_Handler = (void*) PAC_Handler, /* 41 Peripheral Access Controller */ - .pfnTAL_0_Handler = (void*) TAL_0_Handler, /* 42 TAL_BRK */ - .pfnTAL_1_Handler = (void*) TAL_1_Handler, /* 43 TAL_IPS_0, TAL_IPS_1 */ - .pvReserved44 = (void*) (0UL), /* 44 Reserved */ - .pfnRAMECC_Handler = (void*) RAMECC_Handler, /* 45 RAM ECC */ - .pfnSERCOM0_0_Handler = (void*) SERCOM0_0_Handler, /* 46 SERCOM0_0 */ - .pfnSERCOM0_1_Handler = (void*) SERCOM0_1_Handler, /* 47 SERCOM0_1 */ - .pfnSERCOM0_2_Handler = (void*) SERCOM0_2_Handler, /* 48 SERCOM0_2 */ - .pfnSERCOM0_3_Handler = (void*) SERCOM0_3_Handler, /* 49 SERCOM0_3, SERCOM0_4, SERCOM0_5, SERCOM0_6 */ - .pfnSERCOM1_0_Handler = (void*) SERCOM1_0_Handler, /* 50 SERCOM1_0 */ - .pfnSERCOM1_1_Handler = (void*) SERCOM1_1_Handler, /* 51 SERCOM1_1 */ - .pfnSERCOM1_2_Handler = (void*) SERCOM1_2_Handler, /* 52 SERCOM1_2 */ - .pfnSERCOM1_3_Handler = (void*) SERCOM1_3_Handler, /* 53 SERCOM1_3, SERCOM1_4, SERCOM1_5, SERCOM1_6 */ - .pfnSERCOM2_0_Handler = (void*) SERCOM2_0_Handler, /* 54 SERCOM2_0 */ - .pfnSERCOM2_1_Handler = (void*) SERCOM2_1_Handler, /* 55 SERCOM2_1 */ - .pfnSERCOM2_2_Handler = (void*) SERCOM2_2_Handler, /* 56 SERCOM2_2 */ - .pfnSERCOM2_3_Handler = (void*) SERCOM2_3_Handler, /* 57 SERCOM2_3, SERCOM2_4, SERCOM2_5, SERCOM2_6 */ - .pfnSERCOM3_0_Handler = (void*) SERCOM3_0_Handler, /* 58 SERCOM3_0 */ - .pfnSERCOM3_1_Handler = (void*) SERCOM3_1_Handler, /* 59 SERCOM3_1 */ - .pfnSERCOM3_2_Handler = (void*) SERCOM3_2_Handler, /* 60 SERCOM3_2 */ - .pfnSERCOM3_3_Handler = (void*) SERCOM3_3_Handler, /* 61 SERCOM3_3, SERCOM3_4, SERCOM3_5, SERCOM3_6 */ -#ifdef ID_SERCOM4 - .pfnSERCOM4_0_Handler = (void*) SERCOM4_0_Handler, /* 62 SERCOM4_0 */ - .pfnSERCOM4_1_Handler = (void*) SERCOM4_1_Handler, /* 63 SERCOM4_1 */ - .pfnSERCOM4_2_Handler = (void*) SERCOM4_2_Handler, /* 64 SERCOM4_2 */ - .pfnSERCOM4_3_Handler = (void*) SERCOM4_3_Handler, /* 65 SERCOM4_3, SERCOM4_4, SERCOM4_5, SERCOM4_6 */ -#else - .pvReserved62 = (void*) (0UL), /* 62 Reserved */ - .pvReserved63 = (void*) (0UL), /* 63 Reserved */ - .pvReserved64 = (void*) (0UL), /* 64 Reserved */ - .pvReserved65 = (void*) (0UL), /* 65 Reserved */ -#endif -#ifdef ID_SERCOM5 - .pfnSERCOM5_0_Handler = (void*) SERCOM5_0_Handler, /* 66 SERCOM5_0 */ - .pfnSERCOM5_1_Handler = (void*) SERCOM5_1_Handler, /* 67 SERCOM5_1 */ - .pfnSERCOM5_2_Handler = (void*) SERCOM5_2_Handler, /* 68 SERCOM5_2 */ - .pfnSERCOM5_3_Handler = (void*) SERCOM5_3_Handler, /* 69 SERCOM5_3, SERCOM5_4, SERCOM5_5, SERCOM5_6 */ -#else - .pvReserved66 = (void*) (0UL), /* 66 Reserved */ - .pvReserved67 = (void*) (0UL), /* 67 Reserved */ - .pvReserved68 = (void*) (0UL), /* 68 Reserved */ - .pvReserved69 = (void*) (0UL), /* 69 Reserved */ -#endif -#ifdef ID_SERCOM6 - .pfnSERCOM6_0_Handler = (void*) SERCOM6_0_Handler, /* 70 SERCOM6_0 */ - .pfnSERCOM6_1_Handler = (void*) SERCOM6_1_Handler, /* 71 SERCOM6_1 */ - .pfnSERCOM6_2_Handler = (void*) SERCOM6_2_Handler, /* 72 SERCOM6_2 */ - .pfnSERCOM6_3_Handler = (void*) SERCOM6_3_Handler, /* 73 SERCOM6_3, SERCOM6_4, SERCOM6_5, SERCOM6_6 */ -#else - .pvReserved70 = (void*) (0UL), /* 70 Reserved */ - .pvReserved71 = (void*) (0UL), /* 71 Reserved */ - .pvReserved72 = (void*) (0UL), /* 72 Reserved */ - .pvReserved73 = (void*) (0UL), /* 73 Reserved */ -#endif -#ifdef ID_SERCOM7 - .pfnSERCOM7_0_Handler = (void*) SERCOM7_0_Handler, /* 74 SERCOM7_0 */ - .pfnSERCOM7_1_Handler = (void*) SERCOM7_1_Handler, /* 75 SERCOM7_1 */ - .pfnSERCOM7_2_Handler = (void*) SERCOM7_2_Handler, /* 76 SERCOM7_2 */ - .pfnSERCOM7_3_Handler = (void*) SERCOM7_3_Handler, /* 77 SERCOM7_3, SERCOM7_4, SERCOM7_5, SERCOM7_6 */ -#else - .pvReserved74 = (void*) (0UL), /* 74 Reserved */ - .pvReserved75 = (void*) (0UL), /* 75 Reserved */ - .pvReserved76 = (void*) (0UL), /* 76 Reserved */ - .pvReserved77 = (void*) (0UL), /* 77 Reserved */ -#endif -#ifdef ID_CAN0 - .pfnCAN0_Handler = (void*) CAN0_Handler, /* 78 Control Area Network 0 */ -#else - .pvReserved78 = (void*) (0UL), /* 78 Reserved */ -#endif -#ifdef ID_CAN1 - .pfnCAN1_Handler = (void*) CAN1_Handler, /* 79 Control Area Network 1 */ -#else - .pvReserved79 = (void*) (0UL), /* 79 Reserved */ -#endif -#ifdef ID_USB - .pfnUSB_0_Handler = (void*) USB_0_Handler, /* 80 USB_EORSM_DNRSM, USB_EORST_RST, USB_LPMSUSP_DDISC, USB_LPM_DCONN, USB_MSOF, USB_RAMACER, USB_RXSTP_TXSTP_0, USB_RXSTP_TXSTP_1, USB_RXSTP_TXSTP_2, USB_RXSTP_TXSTP_3, USB_RXSTP_TXSTP_4, USB_RXSTP_TXSTP_5, USB_RXSTP_TXSTP_6, USB_RXSTP_TXSTP_7, USB_STALL0_STALL_0, USB_STALL0_STALL_1, USB_STALL0_STALL_2, USB_STALL0_STALL_3, USB_STALL0_STALL_4, USB_STALL0_STALL_5, USB_STALL0_STALL_6, USB_STALL0_STALL_7, USB_STALL1_0, USB_STALL1_1, USB_STALL1_2, USB_STALL1_3, USB_STALL1_4, USB_STALL1_5, USB_STALL1_6, USB_STALL1_7, USB_SUSPEND, USB_TRFAIL0_TRFAIL_0, USB_TRFAIL0_TRFAIL_1, USB_TRFAIL0_TRFAIL_2, USB_TRFAIL0_TRFAIL_3, USB_TRFAIL0_TRFAIL_4, USB_TRFAIL0_TRFAIL_5, USB_TRFAIL0_TRFAIL_6, USB_TRFAIL0_TRFAIL_7, USB_TRFAIL1_PERR_0, USB_TRFAIL1_PERR_1, USB_TRFAIL1_PERR_2, USB_TRFAIL1_PERR_3, USB_TRFAIL1_PERR_4, USB_TRFAIL1_PERR_5, USB_TRFAIL1_PERR_6, USB_TRFAIL1_PERR_7, USB_UPRSM, USB_WAKEUP */ - .pfnUSB_1_Handler = (void*) USB_1_Handler, /* 81 USB_SOF_HSOF */ - .pfnUSB_2_Handler = (void*) USB_2_Handler, /* 82 USB_TRCPT0_0, USB_TRCPT0_1, USB_TRCPT0_2, USB_TRCPT0_3, USB_TRCPT0_4, USB_TRCPT0_5, USB_TRCPT0_6, USB_TRCPT0_7 */ - .pfnUSB_3_Handler = (void*) USB_3_Handler, /* 83 USB_TRCPT1_0, USB_TRCPT1_1, USB_TRCPT1_2, USB_TRCPT1_3, USB_TRCPT1_4, USB_TRCPT1_5, USB_TRCPT1_6, USB_TRCPT1_7 */ -#else - .pvReserved80 = (void*) (0UL), /* 80 Reserved */ - .pvReserved81 = (void*) (0UL), /* 81 Reserved */ - .pvReserved82 = (void*) (0UL), /* 82 Reserved */ - .pvReserved83 = (void*) (0UL), /* 83 Reserved */ -#endif -#ifdef ID_GMAC - .pfnGMAC_Handler = (void*) GMAC_Handler, /* 84 Ethernet MAC */ -#else - .pvReserved84 = (void*) (0UL), /* 84 Reserved */ -#endif - .pfnTCC0_0_Handler = (void*) TCC0_0_Handler, /* 85 TCC0_CNT_A, TCC0_DFS_A, TCC0_ERR_A, TCC0_FAULT0_A, TCC0_FAULT1_A, TCC0_FAULTA_A, TCC0_FAULTB_A, TCC0_OVF, TCC0_TRG, TCC0_UFS_A */ - .pfnTCC0_1_Handler = (void*) TCC0_1_Handler, /* 86 TCC0_MC_0 */ - .pfnTCC0_2_Handler = (void*) TCC0_2_Handler, /* 87 TCC0_MC_1 */ - .pfnTCC0_3_Handler = (void*) TCC0_3_Handler, /* 88 TCC0_MC_2 */ - .pfnTCC0_4_Handler = (void*) TCC0_4_Handler, /* 89 TCC0_MC_3 */ - .pfnTCC0_5_Handler = (void*) TCC0_5_Handler, /* 90 TCC0_MC_4 */ - .pfnTCC0_6_Handler = (void*) TCC0_6_Handler, /* 91 TCC0_MC_5 */ - .pfnTCC1_0_Handler = (void*) TCC1_0_Handler, /* 92 TCC1_CNT_A, TCC1_DFS_A, TCC1_ERR_A, TCC1_FAULT0_A, TCC1_FAULT1_A, TCC1_FAULTA_A, TCC1_FAULTB_A, TCC1_OVF, TCC1_TRG, TCC1_UFS_A */ - .pfnTCC1_1_Handler = (void*) TCC1_1_Handler, /* 93 TCC1_MC_0 */ - .pfnTCC1_2_Handler = (void*) TCC1_2_Handler, /* 94 TCC1_MC_1 */ - .pfnTCC1_3_Handler = (void*) TCC1_3_Handler, /* 95 TCC1_MC_2 */ - .pfnTCC1_4_Handler = (void*) TCC1_4_Handler, /* 96 TCC1_MC_3 */ - .pfnTCC2_0_Handler = (void*) TCC2_0_Handler, /* 97 TCC2_CNT_A, TCC2_DFS_A, TCC2_ERR_A, TCC2_FAULT0_A, TCC2_FAULT1_A, TCC2_FAULTA_A, TCC2_FAULTB_A, TCC2_OVF, TCC2_TRG, TCC2_UFS_A */ - .pfnTCC2_1_Handler = (void*) TCC2_1_Handler, /* 98 TCC2_MC_0 */ - .pfnTCC2_2_Handler = (void*) TCC2_2_Handler, /* 99 TCC2_MC_1 */ - .pfnTCC2_3_Handler = (void*) TCC2_3_Handler, /* 100 TCC2_MC_2 */ -#ifdef ID_TCC3 - .pfnTCC3_0_Handler = (void*) TCC3_0_Handler, /* 101 TCC3_CNT_A, TCC3_DFS_A, TCC3_ERR_A, TCC3_FAULT0_A, TCC3_FAULT1_A, TCC3_FAULTA_A, TCC3_FAULTB_A, TCC3_OVF, TCC3_TRG, TCC3_UFS_A */ - .pfnTCC3_1_Handler = (void*) TCC3_1_Handler, /* 102 TCC3_MC_0 */ - .pfnTCC3_2_Handler = (void*) TCC3_2_Handler, /* 103 TCC3_MC_1 */ -#else - .pvReserved101 = (void*) (0UL), /* 101 Reserved */ - .pvReserved102 = (void*) (0UL), /* 102 Reserved */ - .pvReserved103 = (void*) (0UL), /* 103 Reserved */ -#endif -#ifdef ID_TCC4 - .pfnTCC4_0_Handler = (void*) TCC4_0_Handler, /* 104 TCC4_CNT_A, TCC4_DFS_A, TCC4_ERR_A, TCC4_FAULT0_A, TCC4_FAULT1_A, TCC4_FAULTA_A, TCC4_FAULTB_A, TCC4_OVF, TCC4_TRG, TCC4_UFS_A */ - .pfnTCC4_1_Handler = (void*) TCC4_1_Handler, /* 105 TCC4_MC_0 */ - .pfnTCC4_2_Handler = (void*) TCC4_2_Handler, /* 106 TCC4_MC_1 */ -#else - .pvReserved104 = (void*) (0UL), /* 104 Reserved */ - .pvReserved105 = (void*) (0UL), /* 105 Reserved */ - .pvReserved106 = (void*) (0UL), /* 106 Reserved */ -#endif - .pfnTC0_Handler = (void*) TC0_Handler, /* 107 Basic Timer Counter 0 */ - .pfnTC1_Handler = (void*) TC1_Handler, /* 108 Basic Timer Counter 1 */ - .pfnTC2_Handler = (void*) TC2_Handler, /* 109 Basic Timer Counter 2 */ - .pfnTC3_Handler = (void*) TC3_Handler, /* 110 Basic Timer Counter 3 */ -#ifdef ID_TC4 - .pfnTC4_Handler = (void*) TC4_Handler, /* 111 Basic Timer Counter 4 */ -#else - .pvReserved111 = (void*) (0UL), /* 111 Reserved */ -#endif -#ifdef ID_TC5 - .pfnTC5_Handler = (void*) TC5_Handler, /* 112 Basic Timer Counter 5 */ -#else - .pvReserved112 = (void*) (0UL), /* 112 Reserved */ -#endif -#ifdef ID_TC6 - .pfnTC6_Handler = (void*) TC6_Handler, /* 113 Basic Timer Counter 6 */ -#else - .pvReserved113 = (void*) (0UL), /* 113 Reserved */ -#endif -#ifdef ID_TC7 - .pfnTC7_Handler = (void*) TC7_Handler, /* 114 Basic Timer Counter 7 */ -#else - .pvReserved114 = (void*) (0UL), /* 114 Reserved */ -#endif - .pfnPDEC_0_Handler = (void*) PDEC_0_Handler, /* 115 PDEC_DIR_A, PDEC_ERR_A, PDEC_OVF, PDEC_VLC_A */ - .pfnPDEC_1_Handler = (void*) PDEC_1_Handler, /* 116 PDEC_MC_0 */ - .pfnPDEC_2_Handler = (void*) PDEC_2_Handler, /* 117 PDEC_MC_1 */ - .pfnADC0_0_Handler = (void*) ADC0_0_Handler, /* 118 ADC0_OVERRUN, ADC0_WINMON */ - .pfnADC0_1_Handler = (void*) ADC0_1_Handler, /* 119 ADC0_RESRDY */ - .pfnADC1_0_Handler = (void*) ADC1_0_Handler, /* 120 ADC1_OVERRUN, ADC1_WINMON */ - .pfnADC1_1_Handler = (void*) ADC1_1_Handler, /* 121 ADC1_RESRDY */ - .pfnAC_Handler = (void*) AC_Handler, /* 122 Analog Comparators */ - .pfnDAC_0_Handler = (void*) DAC_0_Handler, /* 123 DAC_OVERRUN_A_0, DAC_OVERRUN_A_1, DAC_UNDERRUN_A_0, DAC_UNDERRUN_A_1 */ - .pfnDAC_1_Handler = (void*) DAC_1_Handler, /* 124 DAC_EMPTY_0 */ - .pfnDAC_2_Handler = (void*) DAC_2_Handler, /* 125 DAC_EMPTY_1 */ - .pfnDAC_3_Handler = (void*) DAC_3_Handler, /* 126 DAC_RESRDY_0 */ - .pfnDAC_4_Handler = (void*) DAC_4_Handler, /* 127 DAC_RESRDY_1 */ -#ifdef ID_I2S - .pfnI2S_Handler = (void*) I2S_Handler, /* 128 Inter-IC Sound Interface */ -#else - .pvReserved128 = (void*) (0UL), /* 128 Reserved */ -#endif - .pfnPCC_Handler = (void*) PCC_Handler, /* 129 Parallel Capture Controller */ - .pfnAES_Handler = (void*) AES_Handler, /* 130 Advanced Encryption Standard */ - .pfnTRNG_Handler = (void*) TRNG_Handler, /* 131 True Random Generator */ -#ifdef ID_ICM - .pfnICM_Handler = (void*) ICM_Handler, /* 132 Integrity Check Monitor */ -#else - .pvReserved132 = (void*) (0UL), /* 132 Reserved */ -#endif -#ifdef ID_PUKCC - .pfnPUKCC_Handler = (void*) PUKCC_Handler, /* 133 PUblic-Key Cryptography Controller */ -#else - .pvReserved133 = (void*) (0UL), /* 133 Reserved */ -#endif - .pfnQSPI_Handler = (void*) QSPI_Handler, /* 134 Quad SPI interface */ -#ifdef ID_SDHC0 - .pfnSDHC0_Handler = (void*) SDHC0_Handler, /* 135 SD/MMC Host Controller 0 */ -#else - .pvReserved135 = (void*) (0UL), /* 135 Reserved */ -#endif -#ifdef ID_SDHC1 - .pfnSDHC1_Handler = (void*) SDHC1_Handler /* 136 SD/MMC Host Controller 1 */ -#else - .pvReserved136 = (void*) (0UL) /* 136 Reserved */ -#endif -}; - -/** - * \brief This is the code that gets called on processor reset. - * To initialize the device, and call the main() routine. - */ -void Reset_Handler(void) -{ - uint32_t *pSrc, *pDest; - - /* Initialize the relocate segment */ - pSrc = &_etext; - pDest = &_srelocate; - - if (pSrc != pDest) { - for (; pDest < &_erelocate;) { - *pDest++ = *pSrc++; - } - } - - /* Clear the zero segment */ - for (pDest = &_szero; pDest < &_ezero;) { - *pDest++ = 0; - } - - /* Set the vector table base address */ - pSrc = (uint32_t *) & _sfixed; - SCB->VTOR = ((uint32_t) pSrc & SCB_VTOR_TBLOFF_Msk); - -#if __FPU_USED - /* Enable FPU */ - SCB->CPACR |= (0xFu << 20); - __DSB(); - __ISB(); -#endif - - /* Initialize the C library */ - __libc_init_array(); - - /* Branch to main function */ - main(); - - /* Infinite loop */ - while (1); -} - -/** - * \brief Default interrupt handler for unused IRQs. - */ -void Dummy_Handler(void) -{ - while (1) { - } -} diff --git a/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/system_samd51.c b/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/system_samd51.c deleted file mode 100644 index 2df9920d50003b9db866e08fb232caf0e721145c..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011/Device_Startup/system_samd51.c +++ /dev/null @@ -1,64 +0,0 @@ -/** - * \file - * - * \brief Low-level initialization functions called upon chip startup. - * - * Copyright (c) 2017 Microchip Technology Inc. - * - * \asf_license_start - * - * \page License - * - * SPDX-License-Identifier: Apache-2.0 - * - * Licensed under the Apache License, Version 2.0 (the "License"); you may - * not use this file except in compliance with the License. - * You may obtain a copy of the Licence at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an AS IS BASIS, WITHOUT - * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - * - * \asf_license_stop - * - */ - -#include "samd51.h" - -/** - * Initial system clock frequency. The System RC Oscillator (RCSYS) provides - * the source for the main clock at chip startup. - */ -#define __SYSTEM_CLOCK (48000000) - -uint32_t SystemCoreClock = __SYSTEM_CLOCK;/*!< System Clock Frequency (Core Clock)*/ - -/** - * Initialize the system - * - * @brief Setup the microcontroller system. - * Initialize the System and update the SystemCoreClock variable. - */ -void SystemInit(void) -{ - // Keep the default device state after reset - SystemCoreClock = __SYSTEM_CLOCK; - return; -} - -/** - * Update SystemCoreClock variable - * - * @brief Updates the SystemCoreClock with current core Clock - * retrieved from cpu registers. - */ -void SystemCoreClockUpdate(void) -{ - // Not implemented - SystemCoreClock = __SYSTEM_CLOCK; - return; -} diff --git a/embedded/mkstepper-v011/mkstepper-v011/mkstepper-v011.componentinfo.xml b/embedded/mkstepper-v011/mkstepper-v011/mkstepper-v011.componentinfo.xml deleted file mode 100644 index 517a711ec4290c071de610dc1471e5cb9e8d7912..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011/mkstepper-v011.componentinfo.xml +++ /dev/null @@ -1,169 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Store xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="AtmelPackComponentManagement"> - <ProjectComponents> - <ProjectComponent z:Id="i1" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/"> - <CApiVersion></CApiVersion> - <CBundle></CBundle> - <CClass>CMSIS</CClass> - <CGroup>CORE</CGroup> - <CSub></CSub> - <CVariant></CVariant> - <CVendor>ARM</CVendor> - <CVersion>5.0.1</CVersion> - <DefaultRepoPath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs</DefaultRepoPath> - <DependentComponents xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" /> - <Description></Description> - <Files xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\arm\CMSIS\5.0.1\CMSIS\Documentation\Core\html\index.html</AbsolutePath> - <Attribute></Attribute> - <Category>doc</Category> - <Condition></Condition> - <FileContentHash>Cq3aNYyqgx20hdPs+CNSlQ==</FileContentHash> - <FileVersion></FileVersion> - <Name>CMSIS/Documentation/Core/html/index.html</Name> - <SelectString></SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\arm\CMSIS\5.0.1\CMSIS\Include\</AbsolutePath> - <Attribute></Attribute> - <Category>include</Category> - <Condition></Condition> - <FileContentHash i:nil="true" /> - <FileVersion></FileVersion> - <Name>CMSIS/Include/</Name> - <SelectString></SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - </Files> - <PackName>CMSIS</PackName> - <PackPath>C:/Program Files (x86)/Atmel/Studio/7.0/Packs/arm/CMSIS/5.0.1/ARM.CMSIS.pdsc</PackPath> - <PackVersion>5.0.1</PackVersion> - <PresentInProject>true</PresentInProject> - <ReferenceConditionId>ARMv6_7_8-M Device</ReferenceConditionId> - <RteComponents xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> - <d4p1:string></d4p1:string> - </RteComponents> - <Status>Resolved</Status> - <VersionMode>Fixed</VersionMode> - <IsComponentInAtProject>true</IsComponentInAtProject> - </ProjectComponent> - <ProjectComponent z:Id="i2" xmlns:z="http://schemas.microsoft.com/2003/10/Serialization/"> - <CApiVersion></CApiVersion> - <CBundle></CBundle> - <CClass>Device</CClass> - <CGroup>Startup</CGroup> - <CSub></CSub> - <CVariant></CVariant> - <CVendor>Atmel</CVendor> - <CVersion>1.0.0</CVersion> - <DefaultRepoPath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs</DefaultRepoPath> - <DependentComponents xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> - <d4p1:anyType z:Ref="i1" /> - </DependentComponents> - <Description></Description> - <Files xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\include</AbsolutePath> - <Attribute></Attribute> - <Category>include</Category> - <Condition>C</Condition> - <FileContentHash i:nil="true" /> - <FileVersion></FileVersion> - <Name>include</Name> - <SelectString></SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\include\sam.h</AbsolutePath> - <Attribute></Attribute> - <Category>header</Category> - <Condition>C</Condition> - <FileContentHash>vyFU01H27yMwm8jt09KCJw==</FileContentHash> - <FileVersion></FileVersion> - <Name>include/sam.h</Name> - <SelectString></SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\templates\main.c</AbsolutePath> - <Attribute>template</Attribute> - <Category>source</Category> - <Condition>C Exe</Condition> - <FileContentHash>o0ncidL5gR0Z0YwWJ1YroQ==</FileContentHash> - <FileVersion></FileVersion> - <Name>templates/main.c</Name> - <SelectString>Main file (.c)</SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\templates\main.cpp</AbsolutePath> - <Attribute>template</Attribute> - <Category>source</Category> - <Condition>C Exe</Condition> - <FileContentHash>nU+WlKcYaWh0AWBBS+WVpA==</FileContentHash> - <FileVersion></FileVersion> - <Name>templates/main.cpp</Name> - <SelectString>Main file (.cpp)</SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\gcc\system_samd51.c</AbsolutePath> - <Attribute>config</Attribute> - <Category>source</Category> - <Condition>GCC Exe</Condition> - <FileContentHash>48bRDDtXyAiZjWlKI3+D+A==</FileContentHash> - <FileVersion></FileVersion> - <Name>gcc/system_samd51.c</Name> - <SelectString></SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\gcc\gcc\startup_samd51.c</AbsolutePath> - <Attribute>config</Attribute> - <Category>source</Category> - <Condition>GCC Exe</Condition> - <FileContentHash>R2AbfQpzs4ooHNhxYaFLYA==</FileContentHash> - <FileVersion></FileVersion> - <Name>gcc/gcc/startup_samd51.c</Name> - <SelectString></SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\gcc\gcc\samd51j18a_flash.ld</AbsolutePath> - <Attribute>config</Attribute> - <Category>linkerScript</Category> - <Condition>GCC Exe</Condition> - <FileContentHash>CF4FN7Jc1GGlwWZRgaNJqA==</FileContentHash> - <FileVersion></FileVersion> - <Name>gcc/gcc/samd51j18a_flash.ld</Name> - <SelectString></SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - <d4p1:anyType i:type="FileInfo"> - <AbsolutePath>C:/Program Files (x86)\Atmel\Studio\7.0\Packs\atmel\SAMD51_DFP\1.0.70\gcc\gcc\samd51j18a_sram.ld</AbsolutePath> - <Attribute>config</Attribute> - <Category>other</Category> - <Condition>GCC Exe</Condition> - <FileContentHash>UCVgCIkMhtRrpTXgb0K8mg==</FileContentHash> - <FileVersion></FileVersion> - <Name>gcc/gcc/samd51j18a_sram.ld</Name> - <SelectString></SelectString> - <SourcePath></SourcePath> - </d4p1:anyType> - </Files> - <PackName>SAMD51_DFP</PackName> - <PackPath>C:/Program Files (x86)/Atmel/Studio/7.0/Packs/atmel/SAMD51_DFP/1.0.70/Atmel.SAMD51_DFP.pdsc</PackPath> - <PackVersion>1.0.70</PackVersion> - <PresentInProject>true</PresentInProject> - <ReferenceConditionId>ATSAMD51J18A</ReferenceConditionId> - <RteComponents xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays"> - <d4p1:string></d4p1:string> - </RteComponents> - <Status>Resolved</Status> - <VersionMode>Fixed</VersionMode> - <IsComponentInAtProject>true</IsComponentInAtProject> - </ProjectComponent> - </ProjectComponents> -</Store> \ No newline at end of file diff --git a/embedded/mkstepper-v011/mkstepper-v011/mkstepper-v011.cproj b/embedded/mkstepper-v011/mkstepper-v011/mkstepper-v011.cproj deleted file mode 100644 index c32fc679273ea028b6f7776a024c1e7fdd0133ea..0000000000000000000000000000000000000000 --- a/embedded/mkstepper-v011/mkstepper-v011/mkstepper-v011.cproj +++ /dev/null @@ -1,236 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="14.0"> - <PropertyGroup> - <SchemaVersion>2.0</SchemaVersion> - <ProjectVersion>7.0</ProjectVersion> - <ToolchainName>com.Atmel.ARMGCC.C</ToolchainName> - <ProjectGuid>dce6c7e3-ee26-4d79-826b-08594b9ad897</ProjectGuid> - <avrdevice>ATSAMD51J18A</avrdevice> - <avrdeviceseries>none</avrdeviceseries> - <OutputType>Executable</OutputType> - <Language>C</Language> - <OutputFileName>$(MSBuildProjectName)</OutputFileName> - <OutputFileExtension>.elf</OutputFileExtension> - <OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory> - <AssemblyName>mkstepper-v011</AssemblyName> - <Name>mkstepper-v011</Name> - <RootNamespace>mkstepper-v011</RootNamespace> - <ToolchainFlavour>Native</ToolchainFlavour> - <KeepTimersRunning>true</KeepTimersRunning> - <OverrideVtor>false</OverrideVtor> - <CacheFlash>true</CacheFlash> - <ProgFlashFromRam>true</ProgFlashFromRam> - <RamSnippetAddress>0x20000000</RamSnippetAddress> - <UncachedRange /> - <preserveEEPROM>true</preserveEEPROM> - <OverrideVtorValue>exception_table</OverrideVtorValue> - <BootSegment>2</BootSegment> - <ResetRule>0</ResetRule> - <eraseonlaunchrule>0</eraseonlaunchrule> - <EraseKey /> - <AsfFrameworkConfig> - <framework-data xmlns=""> - <options /> - <configurations /> - <files /> - <documentation help="" /> - <offline-documentation help="" /> - <dependencies> - <content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.36.2" /> - </dependencies> - </framework-data> - </AsfFrameworkConfig> - <avrtool>com.atmel.avrdbg.tool.atmelice</avrtool> - <avrtoolserialnumber>J41800087098</avrtoolserialnumber> - <avrdeviceexpectedsignature>0x60060006</avrdeviceexpectedsignature> - <avrtoolinterface>SWD</avrtoolinterface> - <com_atmel_avrdbg_tool_atmelice> - <ToolOptions> - <InterfaceProperties> - <SwdClock>2000000</SwdClock> - </InterfaceProperties> - <InterfaceName>SWD</InterfaceName> - </ToolOptions> - <ToolType>com.atmel.avrdbg.tool.atmelice</ToolType> - <ToolNumber>J41800087098</ToolNumber> - <ToolName>Atmel-ICE</ToolName> - </com_atmel_avrdbg_tool_atmelice> - <avrtoolinterfaceclock>2000000</avrtoolinterfaceclock> - </PropertyGroup> - <PropertyGroup Condition=" '$(Configuration)' == 'Release' "> - <ToolchainSettings> - <ArmGcc> - <armgcc.common.outputfiles.hex>True</armgcc.common.outputfiles.hex> - <armgcc.common.outputfiles.lss>True</armgcc.common.outputfiles.lss> - <armgcc.common.outputfiles.eep>True</armgcc.common.outputfiles.eep> - <armgcc.common.outputfiles.bin>True</armgcc.common.outputfiles.bin> - <armgcc.common.outputfiles.srec>True</armgcc.common.outputfiles.srec> - <armgcc.compiler.symbols.DefSymbols> - <ListValues> - <Value>NDEBUG</Value> - </ListValues> - </armgcc.compiler.symbols.DefSymbols> - <armgcc.compiler.directories.IncludePaths> - <ListValues> - <Value>%24(PackRepoDir)\arm\CMSIS\5.0.1\CMSIS\Include\</Value> - <Value>%24(PackRepoDir)\atmel\SAMD51_DFP\1.0.70\include</Value> - </ListValues> - </armgcc.compiler.directories.IncludePaths> - <armgcc.compiler.optimization.level>Optimize for size (-Os)</armgcc.compiler.optimization.level> - <armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection> - <armgcc.compiler.warnings.AllWarnings>True</armgcc.compiler.warnings.AllWarnings> - <armgcc.linker.libraries.Libraries> - <ListValues> - <Value>libm</Value> - </ListValues> - </armgcc.linker.libraries.Libraries> - <armgcc.linker.libraries.LibrarySearchPaths> - <ListValues> - <Value>%24(ProjectDir)\Device_Startup</Value> - </ListValues> - </armgcc.linker.libraries.LibrarySearchPaths> - <armgcc.linker.optimization.GarbageCollectUnusedSections>True</armgcc.linker.optimization.GarbageCollectUnusedSections> - <armgcc.linker.miscellaneous.LinkerFlags>-Tsamd51j18a_flash.ld</armgcc.linker.miscellaneous.LinkerFlags> - <armgcc.assembler.general.IncludePaths> - <ListValues> - <Value>%24(PackRepoDir)\arm\CMSIS\5.0.1\CMSIS\Include\</Value> - <Value>%24(PackRepoDir)\atmel\SAMD51_DFP\1.0.70\include</Value> - </ListValues> - </armgcc.assembler.general.IncludePaths> - <armgcc.preprocessingassembler.general.IncludePaths> - <ListValues> - <Value>%24(PackRepoDir)\arm\CMSIS\5.0.1\CMSIS\Include\</Value> - <Value>%24(PackRepoDir)\atmel\SAMD51_DFP\1.0.70\include</Value> - </ListValues> - </armgcc.preprocessingassembler.general.IncludePaths> -</ArmGcc> - </ToolchainSettings> - </PropertyGroup> - <PropertyGroup Condition=" '$(Configuration)' == 'Debug' "> - <ToolchainSettings> - <ArmGcc> - <armgcc.common.outputfiles.hex>True</armgcc.common.outputfiles.hex> - <armgcc.common.outputfiles.lss>True</armgcc.common.outputfiles.lss> - <armgcc.common.outputfiles.eep>True</armgcc.common.outputfiles.eep> - <armgcc.common.outputfiles.bin>True</armgcc.common.outputfiles.bin> - <armgcc.common.outputfiles.srec>True</armgcc.common.outputfiles.srec> - <armgcc.compiler.symbols.DefSymbols> - <ListValues> - <Value>DEBUG</Value> - </ListValues> - </armgcc.compiler.symbols.DefSymbols> - <armgcc.compiler.directories.IncludePaths> - <ListValues> - <Value>%24(PackRepoDir)\arm\CMSIS\5.0.1\CMSIS\Include\</Value> - <Value>%24(PackRepoDir)\atmel\SAMD51_DFP\1.0.70\include</Value> - </ListValues> - </armgcc.compiler.directories.IncludePaths> - <armgcc.compiler.optimization.level>Optimize (-O1)</armgcc.compiler.optimization.level> - <armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection> - <armgcc.compiler.optimization.DebugLevel>Maximum (-g3)</armgcc.compiler.optimization.DebugLevel> - <armgcc.compiler.warnings.AllWarnings>True</armgcc.compiler.warnings.AllWarnings> - <armgcc.linker.libraries.Libraries> - <ListValues> - <Value>libm</Value> - </ListValues> - </armgcc.linker.libraries.Libraries> - <armgcc.linker.libraries.LibrarySearchPaths> - <ListValues> - <Value>%24(ProjectDir)\Device_Startup</Value> - </ListValues> - </armgcc.linker.libraries.LibrarySearchPaths> - <armgcc.linker.optimization.GarbageCollectUnusedSections>True</armgcc.linker.optimization.GarbageCollectUnusedSections> - <armgcc.linker.memorysettings.ExternalRAM /> - <armgcc.linker.miscellaneous.LinkerFlags>-Tsamd51j18a_flash.ld</armgcc.linker.miscellaneous.LinkerFlags> - <armgcc.assembler.general.IncludePaths> - <ListValues> - <Value>%24(PackRepoDir)\arm\CMSIS\5.0.1\CMSIS\Include\</Value> - <Value>%24(PackRepoDir)\atmel\SAMD51_DFP\1.0.70\include</Value> - </ListValues> - </armgcc.assembler.general.IncludePaths> - <armgcc.assembler.debugging.DebugLevel>Default (-g)</armgcc.assembler.debugging.DebugLevel> - <armgcc.preprocessingassembler.general.IncludePaths> - <ListValues> - <Value>%24(PackRepoDir)\arm\CMSIS\5.0.1\CMSIS\Include\</Value> - <Value>%24(PackRepoDir)\atmel\SAMD51_DFP\1.0.70\include</Value> - </ListValues> - </armgcc.preprocessingassembler.general.IncludePaths> - <armgcc.preprocessingassembler.debugging.DebugLevel>Default (-Wa,-g)</armgcc.preprocessingassembler.debugging.DebugLevel> -</ArmGcc> - </ToolchainSettings> - </PropertyGroup> - <ItemGroup> - <Compile Include="apahandler.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="apahandler.h"> - <SubType>compile</SubType> - </Compile> - <Compile Include="apaport.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="apaport.h"> - <SubType>compile</SubType> - </Compile> - <Compile Include="Device_Startup\startup_samd51.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="Device_Startup\system_samd51.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="hardware.h"> - <SubType>compile</SubType> - </Compile> - <Compile Include="main.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="pin.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="pin.h"> - <SubType>compile</SubType> - </Compile> - <Compile Include="ringbuffer.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="ringbuffer.h"> - <SubType>compile</SubType> - </Compile> - <Compile Include="spiport.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="spiport.h"> - <SubType>compile</SubType> - </Compile> - <Compile Include="stepper.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="stepper.h"> - <SubType>compile</SubType> - </Compile> - <Compile Include="tmc26.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="tmc26.h"> - <SubType>compile</SubType> - </Compile> - <Compile Include="uartport.c"> - <SubType>compile</SubType> - </Compile> - <Compile Include="uartport.h"> - <SubType>compile</SubType> - </Compile> - </ItemGroup> - <ItemGroup> - <Folder Include="Device_Startup\" /> - </ItemGroup> - <ItemGroup> - <None Include="Device_Startup\samd51j18a_flash.ld"> - <SubType>compile</SubType> - </None> - <None Include="Device_Startup\samd51j18a_sram.ld"> - <SubType>compile</SubType> - </None> - </ItemGroup> - <Import Project="$(AVRSTUDIO_EXE_PATH)\\Vs\\Compiler.targets" /> -</Project> \ No newline at end of file