diff --git a/circuit/mkrouter/eagle.epf b/circuit/mkrouter/eagle.epf index 393fdf7a7c6b086a4310a8102dedf9d9fe4af02d..5b8087795e27b886c6430c4f5eb519593eef4866 100644 --- a/circuit/mkrouter/eagle.epf +++ b/circuit/mkrouter/eagle.epf @@ -8,8 +8,6 @@ Desktop="Desktop" AutoSaveProject=1 UsedLibraryUrn="urn:adsk.eagle:library:371" UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/transistor-power.lbr" -UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries/eagle/BC832.lbr" -UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries/eagle/atsam.lbr" UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries/eagle/fab.lbr" UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries/eagle/motors.lbr" UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries/eagle/power.lbr" @@ -20,19 +18,19 @@ UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/sparkfun/SparkFu UsedLibrary="D:/Dropbox (Personal)/CBA/doc/libraries_jake/eagle/marekr/borkedlabs-passives.lbr" [Win_1] -Type="Schematic Editor" +Type="Board Editor" Loc="0 0 1919 1016" State=1 -Number=1 -File="mkrouter.sch" -View="-37.3431 65.3764 184.551 208.023" -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" +Number=2 +File="mkrouter.brd" +View="2.78266 15.3697 62.859 48.8939" +WireWidths=" 0.0762 0.1016 0.127 0.15 0.2 0.4064 0.508 0.6096 0.8128 1.016 1.27 2.54 0.254 0.3048 0.2032 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" +PadDrills=" 0.2 0.25 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 0.3" 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.27 1.4224 1.6764 1.9304 2.1844 2.54 3.81 5.08 6.4516 1.778" +ViaDrills=" 0.2 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 0.25 0.3" +HoleDrills=" 0.2 0.25 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 0.3" +TextSizes=" 0.254 0.3048 0.4064 0.8128 1.27 1.9304 2.1844 2.54 3.81 5.08 6.4516 1.778 1.016 0.6096 1.4224 1.6764" 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" @@ -41,14 +39,14 @@ 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=31 +WireBend=4 +WireBendSet=0 WireCap=1 MiterStyle=0 PadShape=0 ViaShape=1 PolygonPour=0 -PolygonRank=0 +PolygonRank=1 PolygonThermals=1 PolygonOrphans=0 TextRatio=8 @@ -63,24 +61,22 @@ SwapLevel=0 ArcDirection=0 AddLevel=2 PadsSameType=0 -Layer=91 -Views=" 1: -37.3431 65.3764 184.551 208.023" -Sheet="1" +Layer=48 [Win_2] -Type="Board Editor" -Loc="0 0 1919 1016" +Type="Schematic Editor" +Loc="-8 -8 1911 1008" State=1 -Number=2 -File="mkrouter.brd" -View="-17.6895 10.0557 68.8204 58.3304" -WireWidths=" 0.0762 0.1016 0.127 0.15 0.2 0.4064 0.508 0.6096 0.8128 1.016 1.27 2.54 0.254 0.3048 0.2032 0.1524" +Number=1 +File="mkrouter.sch" +View="-38.8736 18.8994 146.038 137.772" +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.35 0.4 0.45 0.5 0.55 0.65 0.7 0.75 0.8 0.85 0.9 1 0.6 0.3" +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.4 0.45 0.5 0.55 0.6 0.65 0.7 0.75 0.8 0.85 0.9 1 0.35 0.25 0.3" -HoleDrills=" 0.2 0.25 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 0.3" -TextSizes=" 0.254 0.3048 0.4064 0.8128 1.27 1.9304 2.1844 2.54 3.81 5.08 6.4516 1.778 1.016 0.6096 1.4224 1.6764" +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.27 1.4224 1.6764 1.9304 2.1844 2.54 3.81 5.08 6.4516 1.778" 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" @@ -89,14 +85,14 @@ 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=4 -WireBendSet=0 +WireBend=0 +WireBendSet=31 WireCap=1 MiterStyle=0 PadShape=0 ViaShape=1 PolygonPour=0 -PolygonRank=1 +PolygonRank=0 PolygonThermals=1 PolygonOrphans=0 TextRatio=8 @@ -111,7 +107,9 @@ SwapLevel=0 ArcDirection=0 AddLevel=2 PadsSameType=0 -Layer=48 +Layer=91 +Views=" 1: -38.8736 18.8994 146.038 137.772" +Sheet="1" [Win_3] Type="Control Panel" @@ -120,7 +118,7 @@ State=1 Number=0 [Desktop] -Screen="1920 1080" +Screen="3840 1080" Window="Win_1" Window="Win_2" Window="Win_3" diff --git a/embedded/mkrouter-v04/.vs/mkrouter-v04/v14/.atsuo b/embedded/mkrouter-v04/.vs/mkrouter-v04/v14/.atsuo index dfcfd088ad4adb7233fe54d43453da49d15671a5..07adfb5871f44f430c24eb74dfa487801033f9c2 100644 Binary files a/embedded/mkrouter-v04/.vs/mkrouter-v04/v14/.atsuo and b/embedded/mkrouter-v04/.vs/mkrouter-v04/v14/.atsuo differ diff --git a/embedded/mkrouter-v04/mkrouter-v04/Debug/Makefile b/embedded/mkrouter-v04/mkrouter-v04/Debug/Makefile index 2164a291f1c4af6b1a794525c683d9246b700647..551e8aa5d5b90a9b5cae4750b1439ba27de4cdc8 100644 --- a/embedded/mkrouter-v04/mkrouter-v04/Debug/Makefile +++ b/embedded/mkrouter-v04/mkrouter-v04/Debug/Makefile @@ -79,6 +79,8 @@ SUBDIRS := \ # Add inputs and outputs from these tool invocations to the build variables C_SRCS += \ ../src/pin.c \ +../src/ringbuffer.c \ +../src/uartport.c \ ../src/ASF/common/services/delay/sam/cycle_counter.c \ ../src/ASF/common/services/clock/sams70/sysclk.c \ ../src/ASF/sam/drivers/pmc/pmc.c \ @@ -99,6 +101,8 @@ ASM_SRCS += OBJS += \ src/pin.o \ +src/ringbuffer.o \ +src/uartport.o \ src/ASF/common/services/delay/sam/cycle_counter.o \ src/ASF/common/services/clock/sams70/sysclk.o \ src/ASF/sam/drivers/pmc/pmc.o \ @@ -112,6 +116,8 @@ src/main.o OBJS_AS_ARGS += \ src/pin.o \ +src/ringbuffer.o \ +src/uartport.o \ src/ASF/common/services/delay/sam/cycle_counter.o \ src/ASF/common/services/clock/sams70/sysclk.o \ src/ASF/sam/drivers/pmc/pmc.o \ @@ -125,6 +131,8 @@ src/main.o C_DEPS += \ src/pin.d \ +src/ringbuffer.d \ +src/uartport.d \ src/ASF/common/services/delay/sam/cycle_counter.d \ src/ASF/common/services/clock/sams70/sysclk.d \ src/ASF/sam/drivers/pmc/pmc.d \ @@ -138,6 +146,8 @@ src/main.d C_DEPS_AS_ARGS += \ src/pin.d \ +src/ringbuffer.d \ +src/uartport.d \ src/ASF/common/services/delay/sam/cycle_counter.d \ src/ASF/common/services/clock/sams70/sysclk.d \ src/ASF/sam/drivers/pmc/pmc.d \ @@ -182,6 +192,10 @@ LINKER_SCRIPT_DEP+= \ + + + + diff --git a/embedded/mkrouter-v04/mkrouter-v04/Debug/makedep.mk b/embedded/mkrouter-v04/mkrouter-v04/Debug/makedep.mk index 5510f4941bcc59bb46c8b10c35383dd67f2377e9..036b3dcffcc7d01f1e2e3c1e81b8bc4a4f7e78c9 100644 --- a/embedded/mkrouter-v04/mkrouter-v04/Debug/makedep.mk +++ b/embedded/mkrouter-v04/mkrouter-v04/Debug/makedep.mk @@ -4,6 +4,10 @@ src\pin.c +src\ringbuffer.c + +src\uartport.c + src\ASF\common\services\delay\sam\cycle_counter.c src\ASF\common\services\clock\sams70\sysclk.c diff --git a/embedded/mkrouter-v04/mkrouter-v04/mkrouter-v04.cproj b/embedded/mkrouter-v04/mkrouter-v04/mkrouter-v04.cproj index d234417386804555576f952c38e83646996ebedc..c432f1957ed4154f0c62779ce3559c5e10d8364e 100644 --- a/embedded/mkrouter-v04/mkrouter-v04/mkrouter-v04.cproj +++ b/embedded/mkrouter-v04/mkrouter-v04/mkrouter-v04.cproj @@ -30,187 +30,187 @@ <EraseKey /> <AsfFrameworkConfig> <framework-data> - <options> - <option id="common.boards" value="Add" config="" content-id="Atmel.ASF" /> - <option id="common.services.basic.clock" value="Add" config="" content-id="Atmel.ASF" /> - <option id="common.services.delay" value="Add" config="" content-id="Atmel.ASF" /> - <option id="sam.utils.linker_scripts" value="Add" config="" content-id="Atmel.ASF" /> - </options> - <configurations> - <configuration key="config.compiler.armgcc.fpu_used" value="yes" default="yes" content-id="Atmel.ASF" /> - <configuration key="config.compiler.armgcc.printf" value="iprintf" default="iprintf" content-id="Atmel.ASF" /> - <configuration key="config.compiler.armgcc.scanf" value="iscanf" default="iscanf" content-id="Atmel.ASF" /> - </configurations> - <files> - <file path="src/main.c" framework="" version="" source="common/applications/user_application/main.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/config/conf_board.h" framework="" version="" source="common/applications/user_application/user_board/config/conf_board.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/boards/board.h" framework="" version="" source="common/boards/board.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/boards/user_board/init.c" framework="" version="" source="common/boards/user_board/init.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/boards/user_board/user_board.h" framework="" version="" source="common/boards/user_board/user_board.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/utils/interrupt.h" framework="" version="" source="common/utils/interrupt.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/utils/interrupt/interrupt_sam_nvic.c" framework="" version="" source="common/utils/interrupt/interrupt_sam_nvic.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/utils/interrupt/interrupt_sam_nvic.h" framework="" version="" source="common/utils/interrupt/interrupt_sam_nvic.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/utils/parts.h" framework="" version="" source="common/utils/parts.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/acc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/acc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/aes.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/aes.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/afec.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/afec.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/chipid.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/chipid.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/dacc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/dacc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/efc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/efc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/gpbr.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/gpbr.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/hsmci.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/hsmci.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/i2sc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/i2sc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/icm.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/icm.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/isi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/isi.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/matrix.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/matrix.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/pio.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/pio.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/pmc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/pmc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/pwm.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/pwm.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/qspi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/qspi.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/rstc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/rstc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/rswdt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/rswdt.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/rtc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/rtc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/rtt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/rtt.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/sdramc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/sdramc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/smc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/smc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/spi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/spi.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/ssc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/ssc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/supc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/supc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/tc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/tc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/trng.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/trng.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/twihs.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/twihs.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/uart.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/uart.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/usart.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/usart.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/usbhs.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/usbhs.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/utmi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/utmi.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/wdt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/wdt.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/component/xdmac.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/xdmac.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/acc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/acc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/aes.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/aes.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/afec0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/afec0.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/afec1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/afec1.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/chipid.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/chipid.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/dacc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/dacc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/efc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/efc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/gpbr.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/gpbr.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/hsmci.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/hsmci.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/i2sc0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/i2sc0.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/i2sc1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/i2sc1.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/icm.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/icm.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/isi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/isi.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/matrix.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/matrix.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pioa.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pioa.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/piob.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/piob.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pioc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pioc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/piod.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/piod.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pioe.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pioe.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pmc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pmc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pwm0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pwm0.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pwm1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pwm1.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/qspi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/qspi.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/rstc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/rstc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/rswdt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/rswdt.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/rtc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/rtc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/rtt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/rtt.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/sdramc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/sdramc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/smc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/smc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/spi0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/spi0.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/spi1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/spi1.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/ssc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/ssc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/supc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/supc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/tc0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/tc0.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/tc1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/tc1.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/tc2.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/tc2.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/tc3.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/tc3.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/trng.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/trng.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/twihs0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/twihs0.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/twihs1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/twihs1.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/twihs2.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/twihs2.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart0.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart1.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart2.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart2.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart3.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart3.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart4.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart4.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/usart0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/usart0.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/usart1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/usart1.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/usart2.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/usart2.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/usbhs.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/usbhs.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/utmi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/utmi.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/wdt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/wdt.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/xdmac.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/xdmac.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70j19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70j19.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70j20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70j20.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70j21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70j21.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70n19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70n19.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70n20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70n20.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70n21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70n21.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70q19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70q19.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70q20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70q20.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70q21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70q21.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70j19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70j19.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70j20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70j20.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70j21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70j21.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70n19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70n19.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70n20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70n20.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70n21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70n21.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70q19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70q19.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70q20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70q20.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70q21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70q21.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/source/templates/gcc/startup_sams70.c" framework="" version="" source="sam/utils/cmsis/sams70/source/templates/gcc/startup_sams70.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/source/templates/system_sams70.c" framework="" version="" source="sam/utils/cmsis/sams70/source/templates/system_sams70.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/cmsis/sams70/source/templates/system_sams70.h" framework="" version="" source="sam/utils/cmsis/sams70/source/templates/system_sams70.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/compiler.h" framework="" version="" source="sam/utils/compiler.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/fpu/fpu.h" framework="" version="" source="sam/utils/fpu/fpu.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/header_files/io.h" framework="" version="" source="sam/utils/header_files/io.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/linker_scripts/sams70/sams70n20/gcc/flash.ld" framework="" version="" source="sam/utils/linker_scripts/sams70/sams70n20/gcc/flash.ld" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/make/Makefile.sam.in" framework="" version="" source="sam/utils/make/Makefile.sam.in" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/preprocessor/mrepeat.h" framework="" version="" source="sam/utils/preprocessor/mrepeat.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/preprocessor/preprocessor.h" framework="" version="" source="sam/utils/preprocessor/preprocessor.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/preprocessor/stringz.h" framework="" version="" source="sam/utils/preprocessor/stringz.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/preprocessor/tpaste.h" framework="" version="" source="sam/utils/preprocessor/tpaste.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/status_codes.h" framework="" version="" source="sam/utils/status_codes.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/utils/syscalls/gcc/syscalls.c" framework="" version="" source="sam/utils/syscalls/gcc/syscalls.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/ATMEL-disclaimer.txt" framework="" version="" source="thirdparty/CMSIS/ATMEL-disclaimer.txt" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf" framework="" version="" source="thirdparty/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Include/arm_common_tables.h" framework="" version="" source="thirdparty/CMSIS/Include/arm_common_tables.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Include/arm_const_structs.h" framework="" version="" source="thirdparty/CMSIS/Include/arm_const_structs.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Include/arm_math.h" framework="" version="" source="thirdparty/CMSIS/Include/arm_math.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Include/core_cm7.h" framework="" version="" source="thirdparty/CMSIS/Include/core_cm7.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Include/core_cmFunc.h" framework="" version="" source="thirdparty/CMSIS/Include/core_cmFunc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Include/core_cmInstr.h" framework="" version="" source="thirdparty/CMSIS/Include/core_cmInstr.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Include/core_cmSimd.h" framework="" version="" source="thirdparty/CMSIS/Include/core_cmSimd.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Lib/GCC/libarm_cortexM7lfsp_math.a" framework="" version="" source="thirdparty/CMSIS/Lib/GCC/libarm_cortexM7lfsp_math.a" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Lib/GCC/libarm_cortexM7lfsp_math_softfp.a" framework="" version="" source="thirdparty/CMSIS/Lib/GCC/libarm_cortexM7lfsp_math_softfp.a" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/Lib/license.txt" framework="" version="" source="thirdparty/CMSIS/Lib/license.txt" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/README.txt" framework="" version="" source="thirdparty/CMSIS/README.txt" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/thirdparty/CMSIS/license.txt" framework="" version="" source="thirdparty/CMSIS/license.txt" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/drivers/pmc/pmc.c" framework="" version="3.36.2" source="sam\drivers\pmc\pmc.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/drivers/pmc/sleep.c" framework="" version="3.36.2" source="sam\drivers\pmc\sleep.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/drivers/pmc/pmc.h" framework="" version="3.36.2" source="sam\drivers\pmc\pmc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/sam/drivers/pmc/sleep.h" framework="" version="3.36.2" source="sam\drivers\pmc\sleep.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/sams70/sysclk.c" framework="" version="3.36.2" source="common\services\clock\sams70\sysclk.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/sams70/pll.h" framework="" version="3.36.2" source="common\services\clock\sams70\pll.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/genclk.h" framework="" version="3.36.2" source="common\services\clock\genclk.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/osc.h" framework="" version="3.36.2" source="common\services\clock\osc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/sams70/sysclk.h" framework="" version="3.36.2" source="common\services\clock\sams70\sysclk.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/sams70/genclk.h" framework="" version="3.36.2" source="common\services\clock\sams70\genclk.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/sams70/osc.h" framework="" version="3.36.2" source="common\services\clock\sams70\osc.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/sysclk.h" framework="" version="3.36.2" source="common\services\clock\sysclk.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/clock/pll.h" framework="" version="3.36.2" source="common\services\clock\pll.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/Config/conf_clock.h" framework="" version="3.36.2" source="common\services\clock\sams70\module_config\conf_clock.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/delay/sam/cycle_counter.c" framework="" version="3.36.2" source="common\services\delay\sam\cycle_counter.c" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/delay/sam/cycle_counter.h" framework="" version="3.36.2" source="common\services\delay\sam\cycle_counter.h" changed="False" content-id="Atmel.ASF" /> - <file path="src/ASF/common/services/delay/delay.h" framework="" version="3.36.2" source="common\services\delay\delay.h" changed="False" content-id="Atmel.ASF" /> - </files> - <documentation help="http://asf.atmel.com/docs/3.36.2/common.applications.user_application.user_board.sams70n20/html/index.html" /> - <offline-documentation help="" /> - <dependencies> - <content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.36.2" /> - </dependencies> - <project id="common.applications.user_application.user_board.sams70n20" value="Add" config="" content-id="Atmel.ASF" /> - <board id="board.user_board.sams70n20" value="Add" config="" content-id="Atmel.ASF" /> -</framework-data> + <options> + <option id="common.boards" value="Add" config="" content-id="Atmel.ASF" /> + <option id="common.services.basic.clock" value="Add" config="" content-id="Atmel.ASF" /> + <option id="common.services.delay" value="Add" config="" content-id="Atmel.ASF" /> + <option id="sam.utils.linker_scripts" value="Add" config="" content-id="Atmel.ASF" /> + </options> + <configurations> + <configuration key="config.compiler.armgcc.fpu_used" value="yes" default="yes" content-id="Atmel.ASF" /> + <configuration key="config.compiler.armgcc.printf" value="iprintf" default="iprintf" content-id="Atmel.ASF" /> + <configuration key="config.compiler.armgcc.scanf" value="iscanf" default="iscanf" content-id="Atmel.ASF" /> + </configurations> + <files> + <file path="src/main.c" framework="" version="" source="common/applications/user_application/main.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/config/conf_board.h" framework="" version="" source="common/applications/user_application/user_board/config/conf_board.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/boards/board.h" framework="" version="" source="common/boards/board.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/boards/user_board/init.c" framework="" version="" source="common/boards/user_board/init.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/boards/user_board/user_board.h" framework="" version="" source="common/boards/user_board/user_board.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/utils/interrupt.h" framework="" version="" source="common/utils/interrupt.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/utils/interrupt/interrupt_sam_nvic.c" framework="" version="" source="common/utils/interrupt/interrupt_sam_nvic.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/utils/interrupt/interrupt_sam_nvic.h" framework="" version="" source="common/utils/interrupt/interrupt_sam_nvic.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/utils/parts.h" framework="" version="" source="common/utils/parts.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/acc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/acc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/aes.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/aes.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/afec.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/afec.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/chipid.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/chipid.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/dacc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/dacc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/efc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/efc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/gpbr.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/gpbr.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/hsmci.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/hsmci.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/i2sc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/i2sc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/icm.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/icm.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/isi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/isi.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/matrix.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/matrix.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/pio.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/pio.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/pmc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/pmc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/pwm.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/pwm.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/qspi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/qspi.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/rstc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/rstc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/rswdt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/rswdt.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/rtc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/rtc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/rtt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/rtt.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/sdramc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/sdramc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/smc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/smc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/spi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/spi.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/ssc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/ssc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/supc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/supc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/tc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/tc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/trng.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/trng.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/twihs.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/twihs.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/uart.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/uart.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/usart.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/usart.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/usbhs.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/usbhs.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/utmi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/utmi.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/wdt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/wdt.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/component/xdmac.h" framework="" version="" source="sam/utils/cmsis/sams70/include/component/xdmac.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/acc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/acc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/aes.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/aes.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/afec0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/afec0.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/afec1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/afec1.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/chipid.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/chipid.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/dacc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/dacc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/efc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/efc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/gpbr.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/gpbr.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/hsmci.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/hsmci.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/i2sc0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/i2sc0.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/i2sc1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/i2sc1.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/icm.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/icm.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/isi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/isi.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/matrix.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/matrix.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pioa.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pioa.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/piob.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/piob.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pioc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pioc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/piod.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/piod.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pioe.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pioe.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pmc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pmc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pwm0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pwm0.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/pwm1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/pwm1.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/qspi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/qspi.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/rstc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/rstc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/rswdt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/rswdt.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/rtc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/rtc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/rtt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/rtt.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/sdramc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/sdramc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/smc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/smc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/spi0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/spi0.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/spi1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/spi1.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/ssc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/ssc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/supc.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/supc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/tc0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/tc0.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/tc1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/tc1.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/tc2.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/tc2.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/tc3.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/tc3.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/trng.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/trng.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/twihs0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/twihs0.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/twihs1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/twihs1.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/twihs2.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/twihs2.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart0.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart1.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart2.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart2.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart3.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart3.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/uart4.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/uart4.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/usart0.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/usart0.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/usart1.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/usart1.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/usart2.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/usart2.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/usbhs.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/usbhs.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/utmi.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/utmi.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/wdt.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/wdt.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/instance/xdmac.h" framework="" version="" source="sam/utils/cmsis/sams70/include/instance/xdmac.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70j19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70j19.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70j20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70j20.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70j21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70j21.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70n19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70n19.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70n20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70n20.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70n21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70n21.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70q19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70q19.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70q20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70q20.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/pio/sams70q21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/pio/sams70q21.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70j19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70j19.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70j20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70j20.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70j21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70j21.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70n19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70n19.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70n20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70n20.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70n21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70n21.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70q19.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70q19.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70q20.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70q20.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/include/sams70q21.h" framework="" version="" source="sam/utils/cmsis/sams70/include/sams70q21.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/source/templates/gcc/startup_sams70.c" framework="" version="" source="sam/utils/cmsis/sams70/source/templates/gcc/startup_sams70.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/source/templates/system_sams70.c" framework="" version="" source="sam/utils/cmsis/sams70/source/templates/system_sams70.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/cmsis/sams70/source/templates/system_sams70.h" framework="" version="" source="sam/utils/cmsis/sams70/source/templates/system_sams70.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/compiler.h" framework="" version="" source="sam/utils/compiler.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/fpu/fpu.h" framework="" version="" source="sam/utils/fpu/fpu.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/header_files/io.h" framework="" version="" source="sam/utils/header_files/io.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/linker_scripts/sams70/sams70n20/gcc/flash.ld" framework="" version="" source="sam/utils/linker_scripts/sams70/sams70n20/gcc/flash.ld" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/make/Makefile.sam.in" framework="" version="" source="sam/utils/make/Makefile.sam.in" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/preprocessor/mrepeat.h" framework="" version="" source="sam/utils/preprocessor/mrepeat.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/preprocessor/preprocessor.h" framework="" version="" source="sam/utils/preprocessor/preprocessor.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/preprocessor/stringz.h" framework="" version="" source="sam/utils/preprocessor/stringz.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/preprocessor/tpaste.h" framework="" version="" source="sam/utils/preprocessor/tpaste.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/status_codes.h" framework="" version="" source="sam/utils/status_codes.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/utils/syscalls/gcc/syscalls.c" framework="" version="" source="sam/utils/syscalls/gcc/syscalls.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/ATMEL-disclaimer.txt" framework="" version="" source="thirdparty/CMSIS/ATMEL-disclaimer.txt" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf" framework="" version="" source="thirdparty/CMSIS/CMSIS_END_USER_LICENCE_AGREEMENT.pdf" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Include/arm_common_tables.h" framework="" version="" source="thirdparty/CMSIS/Include/arm_common_tables.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Include/arm_const_structs.h" framework="" version="" source="thirdparty/CMSIS/Include/arm_const_structs.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Include/arm_math.h" framework="" version="" source="thirdparty/CMSIS/Include/arm_math.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Include/core_cm7.h" framework="" version="" source="thirdparty/CMSIS/Include/core_cm7.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Include/core_cmFunc.h" framework="" version="" source="thirdparty/CMSIS/Include/core_cmFunc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Include/core_cmInstr.h" framework="" version="" source="thirdparty/CMSIS/Include/core_cmInstr.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Include/core_cmSimd.h" framework="" version="" source="thirdparty/CMSIS/Include/core_cmSimd.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Lib/GCC/libarm_cortexM7lfsp_math.a" framework="" version="" source="thirdparty/CMSIS/Lib/GCC/libarm_cortexM7lfsp_math.a" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Lib/GCC/libarm_cortexM7lfsp_math_softfp.a" framework="" version="" source="thirdparty/CMSIS/Lib/GCC/libarm_cortexM7lfsp_math_softfp.a" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/Lib/license.txt" framework="" version="" source="thirdparty/CMSIS/Lib/license.txt" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/README.txt" framework="" version="" source="thirdparty/CMSIS/README.txt" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/thirdparty/CMSIS/license.txt" framework="" version="" source="thirdparty/CMSIS/license.txt" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/drivers/pmc/pmc.c" framework="" version="3.36.2" source="sam\drivers\pmc\pmc.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/drivers/pmc/sleep.c" framework="" version="3.36.2" source="sam\drivers\pmc\sleep.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/drivers/pmc/pmc.h" framework="" version="3.36.2" source="sam\drivers\pmc\pmc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/sam/drivers/pmc/sleep.h" framework="" version="3.36.2" source="sam\drivers\pmc\sleep.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/sams70/sysclk.c" framework="" version="3.36.2" source="common\services\clock\sams70\sysclk.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/sams70/pll.h" framework="" version="3.36.2" source="common\services\clock\sams70\pll.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/genclk.h" framework="" version="3.36.2" source="common\services\clock\genclk.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/osc.h" framework="" version="3.36.2" source="common\services\clock\osc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/sams70/sysclk.h" framework="" version="3.36.2" source="common\services\clock\sams70\sysclk.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/sams70/genclk.h" framework="" version="3.36.2" source="common\services\clock\sams70\genclk.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/sams70/osc.h" framework="" version="3.36.2" source="common\services\clock\sams70\osc.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/sysclk.h" framework="" version="3.36.2" source="common\services\clock\sysclk.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/clock/pll.h" framework="" version="3.36.2" source="common\services\clock\pll.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/Config/conf_clock.h" framework="" version="3.36.2" source="common\services\clock\sams70\module_config\conf_clock.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/delay/sam/cycle_counter.c" framework="" version="3.36.2" source="common\services\delay\sam\cycle_counter.c" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/delay/sam/cycle_counter.h" framework="" version="3.36.2" source="common\services\delay\sam\cycle_counter.h" changed="False" content-id="Atmel.ASF" /> + <file path="src/ASF/common/services/delay/delay.h" framework="" version="3.36.2" source="common\services\delay\delay.h" changed="False" content-id="Atmel.ASF" /> + </files> + <documentation help="http://asf.atmel.com/docs/3.36.2/common.applications.user_application.user_board.sams70n20/html/index.html" /> + <offline-documentation help="" /> + <dependencies> + <content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.36.2" /> + </dependencies> + <project id="common.applications.user_application.user_board.sams70n20" value="Add" config="" content-id="Atmel.ASF" /> + <board id="board.user_board.sams70n20" value="Add" config="" content-id="Atmel.ASF" /> + </framework-data> </AsfFrameworkConfig> <avrtool>com.atmel.avrdbg.tool.atmelice</avrtool> <avrtoolserialnumber>J41800087098</avrtoolserialnumber> @@ -483,6 +483,18 @@ <Compile Include="src\pin.h"> <SubType>compile</SubType> </Compile> + <Compile Include="src\ringbuffer.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\ringbuffer.h"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\uartport.c"> + <SubType>compile</SubType> + </Compile> + <Compile Include="src\uartport.h"> + <SubType>compile</SubType> + </Compile> <None Include="src\ASF\common\services\delay\delay.h"> <SubType>compile</SubType> </None> diff --git a/embedded/mkrouter-v04/mkrouter-v04/src/config/conf_clock.h b/embedded/mkrouter-v04/mkrouter-v04/src/config/conf_clock.h index 36761cd93157b7d69412f653290c69df1ec812dd..fc7bc759d7d31e3568625fdd0207c1e01068f728 100644 --- a/embedded/mkrouter-v04/mkrouter-v04/src/config/conf_clock.h +++ b/embedded/mkrouter-v04/mkrouter-v04/src/config/conf_clock.h @@ -52,11 +52,11 @@ //#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_SLCK_XTAL //#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_SLCK_BYPASS //#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_4M_RC -#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_8M_RC +//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_8M_RC //#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_12M_RC //#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_XTAL //#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_MAINCK_BYPASS -//#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLLACK +#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_PLLACK //#define CONFIG_SYSCLK_SOURCE SYSCLK_SRC_UPLLCK // ===== Processor Clock (HCLK) Prescaler Options (Fhclk = Fsys / (SYSCLK_PRES)) @@ -70,11 +70,11 @@ //#define CONFIG_SYSCLK_PRES SYSCLK_PRES_3 // ===== System Clock (MCK) Division Options (Fmck = Fhclk / (SYSCLK_DIV)) -#define CONFIG_SYSCLK_DIV 1 +#define CONFIG_SYSCLK_DIV 2 // ===== PLL0 (A) Options (Fpll = (Fclk * PLL_mul) / PLL_div) // Use mul and div effective values here. -#define CONFIG_PLL0_SOURCE PLL_SRC_MAINCK_XTAL +#define CONFIG_PLL0_SOURCE PLL_SRC_MAINCK_12M_RC #define CONFIG_PLL0_MUL 25 #define CONFIG_PLL0_DIV 1 diff --git a/embedded/mkrouter-v04/mkrouter-v04/src/hardware.h b/embedded/mkrouter-v04/mkrouter-v04/src/hardware.h index c1c4333db559d34726982579cae927662b1a722b..f35e5f0853ae794bac1efc284ca65f1db282c2cd 100644 --- a/embedded/mkrouter-v04/mkrouter-v04/src/hardware.h +++ b/embedded/mkrouter-v04/mkrouter-v04/src/hardware.h @@ -10,10 +10,29 @@ #define HARDWARE_H_ #include "pin.h" +#include "ringbuffer.h" +#include "uartport.h" +// status lights pin_t np1stlr; -pin_t np1stlg; pin_t np1stlb; +pin_t np2stlr; +pin_t np2stlb; +pin_t np3stlr; +pin_t np3stlb; +pin_t np4stlr; +pin_t np4stlb; +pin_t np5stlr; +pin_t np5stlb; +pin_t *lights[] = {&np1stlr, &np1stlb, &np2stlr, &np2stlb, &np3stlr, &np3stlb, &np4stlr, &np4stlb, &np5stlr, &np5stlb}; + +// ringbuffers +ringbuffer_t np1rbrx; +ringbuffer_t np1rbtx; + +// uartports +uartport_t up1; +uartport_t up2; #endif /* HARDWARE_H_ */ \ No newline at end of file diff --git a/embedded/mkrouter-v04/mkrouter-v04/src/main.c b/embedded/mkrouter-v04/mkrouter-v04/src/main.c index 08546a6b937e2fa69868c265e77c9a44d175bf0c..9bd05942d1e48f812cb5000916bfe403c9f21554 100644 --- a/embedded/mkrouter-v04/mkrouter-v04/src/main.c +++ b/embedded/mkrouter-v04/mkrouter-v04/src/main.c @@ -32,13 +32,59 @@ #include "hardware.h" -void messysetup(void){ +void setupperipherals(void){ // kill the watchdog WDT->WDT_MR = WDT_MR_WDDIS; // start relevant peripheral clocks PMC->PMC_PCER0 = 1 << ID_PIOA; PMC->PMC_PCER0 = 1 << ID_PIOD; + + // start uart clocks + PMC->PMC_PCER0 = 1 << ID_UART0; + //PMC->PMC_PCER0 = 1 << ID_UART1; + //PMC->PMC_PCER1 = 1 << (ID_UART2 - 32); +} + +void setupinterrupts(void){ + NVIC_DisableIRQ(UART0_IRQn); + NVIC_ClearPendingIRQ(UART0_IRQn); + NVIC_SetPriority(UART0_IRQn, 8); + NVIC_EnableIRQ(UART0_IRQn); +} + +void lightsetup(void){ + np1stlr = pin_new(PIOD, PIO_PER_P12); + pin_output(&np1stlr); + np1stlb = pin_new(PIOA, PIO_PER_P2); + pin_output(&np1stlb); + + np2stlr = pin_new(PIOA, PIO_PER_P11); + pin_output(&np2stlr); + np2stlb = pin_new(PIOD, PIO_PER_P20); + pin_output(&np2stlb); + + np3stlr = pin_new(PIOA, PIO_PER_P15); + pin_output(&np3stlr); + np3stlb = pin_new(PIOD, PIO_PER_P27); + pin_output(&np3stlb); + + np4stlr = pin_new(PIOA, PIO_PER_P22); + pin_output(&np4stlr); + np4stlb = pin_new(PIOA, PIO_PER_P8); + pin_output(&np4stlb); + + np5stlr = pin_new(PIOB, PIO_PER_P0); + pin_output(&np5stlr); + np5stlb = pin_new(PIOB, PIO_PER_P1); + pin_output(&np5stlb); +} + +void lightstoggle(void){ + for(int i = 0; i < 10; i++){ + pin_toggle(lights[i]); + } + } int main (void) @@ -47,28 +93,38 @@ int main (void) // I think we can do 300, are at 150 board_init(); - //NP1 (0) - // STLR PD12 - // STLG PA3 - // STLB PA2 + setupperipherals(); + setupinterrupts(); - messysetup(); + lightsetup(); + + rb_init(&np1rbrx); + rb_init(&np1rbtx); + + // UP1 on UART0, RX 9 TX 10 on PIOA + up1 = uart_new(UART0, PIOA, 9, 10, &np1rbrx, &np1rbtx); + uart_init(&up1, 81); + + /* + // UP2 on UART1, RX 5 TX 4 on PIOA + up2 = uart_new(UART1, PIOA, 5, 4, &np1rbrx, &np1rbtx); + uart_init(&up2, 81); // 81 for FTDI 115200 :| + */ - np1stlr = pin_new(PIOA, PIO_PER_P11); - pin_output(&np1stlr); - np1stlg = pin_new(PIOD, PIO_PER_P21); - pin_output(&np1stlg); - np1stlb = pin_new(PIOD, PIO_PER_P20); - pin_output(&np1stlb); - while(1){ - pin_set(&np1stlr); - pin_set(&np1stlg); - pin_set(&np1stlb); - delay_ms(100); - pin_clear(&np1stlr); - pin_clear(&np1stlg); - pin_clear(&np1stlb); - delay_ms(100); + lightstoggle(); + /* + uint8_t hello[] = {'h', 'e', 'l', 'l', 'o'}; + if(!rb_empty(up1.rbrx)){ + uart_sendchars_buffered(&up1, hello, 5); + uart_sendchar_buffered(&up1, rb_get(up1.rbrx)); + } + */ + delay_ms(75); } -} \ No newline at end of file +} + +void UART0_Handler(void){ + uart_handler(&up1); +} + diff --git a/embedded/mkrouter-v04/mkrouter-v04/src/ringbuffer.c b/embedded/mkrouter-v04/mkrouter-v04/src/ringbuffer.c new file mode 100644 index 0000000000000000000000000000000000000000..8166854f1cf4f710b61dd4f0fc0f041857492635 --- /dev/null +++ b/embedded/mkrouter-v04/mkrouter-v04/src/ringbuffer.c @@ -0,0 +1,67 @@ +/* + * ringbuffer.c + * + * Created: 2/7/2018 11:39:44 AM + * Author: Jake + */ + +#include "ringbuffer.h" + +uint8_t rb_init(ringbuffer_t *rb){ + rb->size = RINGBUFFER_SIZE; // stuck with this, due to not having malloc, wall of skill + //rb->buffer = malloc(size); + rb_reset(rb); + return 1; +} + +uint8_t rb_reset(ringbuffer_t *rb){ + if(rb){ + rb->head = 0; + rb->tail = 0; + return 1; + } else { + return 0; + } +} + +uint8_t rb_empty(ringbuffer_t *rb){ + return (rb->head == rb->tail); +} + +uint8_t rb_full(ringbuffer_t *rb){ + return ((rb->head + 1) % rb->size) == rb->tail; +} + +uint8_t rb_freespace(ringbuffer_t *rb){ + if(rb->head >= rb->tail){ + return rb->size - (rb->head - rb->tail); + } else { + return rb->tail - rb->head - 1; + } +} + +uint8_t rb_putchar(ringbuffer_t *rb, uint8_t data){ + rb->buffer[rb->head] = data; + rb->head = (rb->head + 1) % rb->size; // increment and loop about + return 1; +} + +uint8_t rb_putdata(ringbuffer_t *rb, uint8_t *data, uint8_t size){ + if(rb_freespace(rb) >= size){ + return 0; + } else { + uint8_t i = 0; + while(i < size){ + rb_putchar(rb, data[i]); + i ++; + } + return 1; + } +} + +uint8_t rb_get(ringbuffer_t *rb){ + uint8_t data = rb->buffer[rb->tail]; + rb->tail = (rb->tail + 1) % rb->size; + return data; +} + diff --git a/embedded/mkrouter-v04/mkrouter-v04/src/ringbuffer.h b/embedded/mkrouter-v04/mkrouter-v04/src/ringbuffer.h new file mode 100644 index 0000000000000000000000000000000000000000..9e27fd59543df219411ddda54b658c7b38c6e724 --- /dev/null +++ b/embedded/mkrouter-v04/mkrouter-v04/src/ringbuffer.h @@ -0,0 +1,43 @@ +/* + * ringbuffer.h + * + * Created: 2/7/2018 11:39:54 AM + * Author: Jake + */ + +#ifndef RINGBUFFER_H_ +#define RINGBUFFER_H_ + +/* +a ringbuffer, +s/o https://github.com/dhess/c-ringbuf +s/o https://embeddedartistry.com/blog/2017/4/6/circular-buffers-in-cc +s/o https://www.downtowndougbrown.com/2013/01/microcontrollers-interrupt-safe-ring-buffers/ +*/ + +#include <stdlib.h> // for size_t +#include <asf.h> + +#define RINGBUFFER_SIZE 256 + +typedef struct{ + uint8_t buffer[256]; // static! big enough + size_t head; + size_t tail; + size_t size; +} ringbuffer_t; + +uint8_t rb_init(ringbuffer_t *rb); + +uint8_t rb_reset(ringbuffer_t *rb); + +uint8_t rb_empty(ringbuffer_t *rb); +uint8_t rb_full(ringbuffer_t *rb); +uint8_t rb_freespace(ringbuffer_t *rb); + +uint8_t rb_putchar(ringbuffer_t *rb, uint8_t data); +uint8_t rb_putdata(ringbuffer_t *rb, uint8_t *data, uint8_t size); + +uint8_t rb_get(ringbuffer_t *rb); + +#endif /* RINGBUFFER_H_ */ \ No newline at end of file diff --git a/embedded/mkrouter-v04/mkrouter-v04/src/uartport.c b/embedded/mkrouter-v04/mkrouter-v04/src/uartport.c new file mode 100644 index 0000000000000000000000000000000000000000..25828915b60e22e26eebf75d897794a0f6cd2d8f --- /dev/null +++ b/embedded/mkrouter-v04/mkrouter-v04/src/uartport.c @@ -0,0 +1,81 @@ +/* + * uartport.c + * + * Created: 2/22/2018 11:17:00 AM + * Author: Jake + */ + +#include "uartport.h" + +uartport_t uart_new(Uart *com, Pio *port, uint32_t pinrx, uint32_t pintx, ringbuffer_t *rbrx, ringbuffer_t *rbtx){ + uartport_t uart; + + uart.com = com; + uart.port = port; + + uart.pinrx = pinrx; + uart.pinrx_bm = 1 << pinrx; + uart.pintx = pintx; + uart.pintx_bm = 1 << pintx; + + uart.rbrx = rbrx; + uart.rbtx = rbtx; + + return uart; +} + +void uart_init(uartport_t *uart, uint32_t baud){ + // PIO disable + uart->port->PIO_PDR = uart->pinrx_bm | uart->pintx_bm; + + // abcdsr (global, do later) + + // UART Registers + // mode register + uart->com->UART_MR = UART_MR_BRSRCCK_PERIPH_CLK | UART_MR_CHMODE_NORMAL | UART_MR_PAR_NO | UART_MR_FILTER_DISABLED; + // baud: freq ? + uart->com->UART_BRGR = baud; + // channel enable + uart->com->UART_CR = UART_CR_TXEN | UART_CR_RXEN; + // interrupt enable (rx only, tx on data) + uart->com->UART_IER = UART_IER_RXRDY; + + rb_reset(uart->rbrx); + rb_reset(uart->rbtx); +} + +void uart_sendchar_polled(uartport_t *uart, uint8_t data){ + while(!(uart->com->UART_SR & UART_SR_TXRDY)); + uart->com->UART_THR = data; +} + +void uart_sendchar_buffered(uartport_t *uart, uint8_t data){ + rb_putchar(uart->rbtx, data); + uart->com->UART_IER = UART_IER_TXRDY; +} + +void uart_sendchars_buffered(uartport_t *uart, uint8_t *data, uint8_t length){ + rb_putdata(uart->rbtx, data, length); + uart->com->UART_IER = UART_IER_TXRDY; +} + +void uart_handler(uartport_t *uart){ + if(uart->com->UART_SR & UART_SR_RXRDY){ + uart_rxhandler(uart); + } + if((uart->com->UART_SR & UART_SR_TXRDY) && (uart->com->UART_IMR & UART_IMR_TXRDY)){ + uart_txhandler(uart); + } +} + +void uart_rxhandler(uartport_t *uart){ + rb_putchar(uart->rbrx, uart->com->UART_RHR); +} + +void uart_txhandler(uartport_t *uart){ + if(!rb_empty(uart->rbtx)){ + uart->com->UART_THR = rb_get(uart->rbtx); // transmit if non-empty + } else { + uart->com->UART_IDR = UART_IDR_TXRDY; // or turn this interrupt off + } +} \ No newline at end of file diff --git a/embedded/mkrouter-v04/mkrouter-v04/src/uartport.h b/embedded/mkrouter-v04/mkrouter-v04/src/uartport.h new file mode 100644 index 0000000000000000000000000000000000000000..d38ecd0cb12d622bd79aca2cb6fde7093434cd36 --- /dev/null +++ b/embedded/mkrouter-v04/mkrouter-v04/src/uartport.h @@ -0,0 +1,45 @@ +/* + * uartport.h + * + * Created: 2/22/2018 11:16:41 AM + * Author: Jake + */ + + +#ifndef UARTPORT_H_ +#define UARTPORT_H_ + +#include <asf.h> +#include "ringbuffer.h" + +#define UART_IS_PERIPHERAL_A 0x01 +#define UART_IS_PERIPHERAL_B 0x02 +#define UART_IS_PERIPHERAL_C 0x03 +#define UART_IS_PERIPHERAL_D 0x04 + +typedef struct{ + Uart *com; + Pio *port; + + uint32_t pinrx; + uint32_t pinrx_bm; + uint32_t pintx; + uint32_t pintx_bm; + + ringbuffer_t *rbrx; + ringbuffer_t *rbtx; +}uartport_t; + +uartport_t uart_new(Uart *uart, Pio *port, uint32_t pinrx, uint32_t pintx, ringbuffer_t *rbrx, ringbuffer_t *rbtx); + +void uart_init(uartport_t *uart, uint32_t baud); + +void uart_sendchar_polled(uartport_t *uart, uint8_t data); +void uart_sendchar_buffered(uartport_t *uart, uint8_t data); +void uart_sendchars_buffered(uartport_t *uart, uint8_t *data, uint8_t length); + +void uart_handler(uartport_t *uart); +void uart_rxhandler(uartport_t *uart); +void uart_txhandler(uartport_t *uart); + +#endif /* UARTPORT_H_ */ \ No newline at end of file