From e1e6cc210ce15a067104480676792d14271467fb Mon Sep 17 00:00:00 2001 From: Jake <jake.read@cba.mit.edu> Date: Thu, 22 Feb 2018 18:45:36 -0500 Subject: [PATCH] working atsams70 uartport port --- circuit/mkrouter/eagle.epf | 62 ++- .../mkrouter-v04/.vs/mkrouter-v04/v14/.atsuo | Bin 17408 -> 50688 bytes .../mkrouter-v04/mkrouter-v04/Debug/Makefile | 14 + .../mkrouter-v04/Debug/makedep.mk | 4 + .../mkrouter-v04/mkrouter-v04.cproj | 374 +++++++++--------- .../mkrouter-v04/src/config/conf_clock.h | 8 +- .../mkrouter-v04/mkrouter-v04/src/hardware.h | 21 +- embedded/mkrouter-v04/mkrouter-v04/src/main.c | 100 +++-- .../mkrouter-v04/src/ringbuffer.c | 67 ++++ .../mkrouter-v04/src/ringbuffer.h | 43 ++ .../mkrouter-v04/mkrouter-v04/src/uartport.c | 81 ++++ .../mkrouter-v04/mkrouter-v04/src/uartport.h | 45 +++ 12 files changed, 579 insertions(+), 240 deletions(-) create mode 100644 embedded/mkrouter-v04/mkrouter-v04/src/ringbuffer.c create mode 100644 embedded/mkrouter-v04/mkrouter-v04/src/ringbuffer.h create mode 100644 embedded/mkrouter-v04/mkrouter-v04/src/uartport.c create mode 100644 embedded/mkrouter-v04/mkrouter-v04/src/uartport.h diff --git a/circuit/mkrouter/eagle.epf b/circuit/mkrouter/eagle.epf index 393fdf7..5b80877 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 GIT binary patch literal 50688 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 delta 948 zcmZqZVQ%PP+~C8+$UIq*NuJN(Q~QeK)t4Fh7#J8Bcqdmec}_meY{+Ol`74t@hd2WR zgBSw?!{h~O3X=_(cqUgc`*46%aw7ye*o+t$7&sUv|6*23<zQf7;ACK6;9_840IA^t z8Op%G@bCZs|NIOL3<3-c41x>{3_=VH48jZy3?fiDkR>3?Bp4VNBpDbOq!<_&q!}0( zWEdD2WEmJ3<QNzj<QW(k6hP`X2G%o9V)9{R1bg5^jo&hm2Ur;x7#tWu9^hpB|NsAg zCL||Lb_i#g{DaAR@?j>!$p%a;j29+f6!V^ZM9fAMq!fffF8urd|9=quZ)4zk#)%0w zlek1ShOA+nnBcG|h;i}(d6UTjE6z-A2xXbf!qp-QR{8(`e^mws1~mo-26YAo293#c zS;QqlGWsBw!pwuw8v~6QC-GD;H8W1G;_>3(Wnf@nM{*{k=;W_F!7QKvf`&K;qv7OI zUO!ew7Lc+zYATZrm^fGsKmk7ar@YtX!vXe_n-rWlK;aDvFPJtqJq8AbFowy$6udY< zVGaswnB3$N#Q+Xa=zt;$Cdj73z`zj4H2IgL*W@G228_y+OQnJ*d$?Ill6K}~WMg1p z0EI71_2d%io=MUQlNH>QCp$~qPHu2>;SgnDU;sroT+J7^0FY6WOWZF^c5$<r+#uq@ z0*cGYP;X5B;t|3EifFiw643w-P|5(M0+=8h$XrnB^7rBZ#S<uXz~m-7#IQ`R2sjOn z){?*g4p4FeB^9`Wh6ol$j>$iry&y_l&T}$?k`ySJ!qqs0voP|&(!-)4c1Fj^jFGC$ zj0_T!6Qd-U-ZD&n9eIfn%$ZyneSES36Zd9^m<A^QFlZuXU|?imU}R)?CHZpgJdbn- z21W)a-QW-_11kfo>SRlE6EpMFBwb4jb8}r2qtsO0#5BWX-Q=VsLkr`SWOE}6gIZ9y fF;BiIW;iLnWugJ+<hx?VpyakWU<D83qE!+Afx-)@ diff --git a/embedded/mkrouter-v04/mkrouter-v04/Debug/Makefile b/embedded/mkrouter-v04/mkrouter-v04/Debug/Makefile index 2164a29..551e8aa 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 5510f49..036b3dc 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 d234417..c432f19 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 36761cd..fc7bc75 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 c1c4333..f35e5f0 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 08546a6..9bd0594 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 0000000..8166854 --- /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 0000000..9e27fd5 --- /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 0000000..2582891 --- /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 0000000..d38ecd0 --- /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 -- GitLab