Demo code only:
Add the IntQ standard test to the SAM4S project.
diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/CreateProjectDirectoryStructure.bat b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/CreateProjectDirectoryStructure.bat
index eec5266..26df7ce 100644
--- a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/CreateProjectDirectoryStructure.bat
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/CreateProjectDirectoryStructure.bat
@@ -47,6 +47,7 @@
     copy %COMMON_SOURCE%\countsem.c        src\Common-Demo-Source

     copy %COMMON_SOURCE%\integer.c         src\Common-Demo-Source

     copy %COMMON_SOURCE%\QueueSet.c        src\Common-Demo-Source

+    COPY %COMMON_SOURCE%\IntQueue.c        src\Common-Demo-Source

 

     REM Copy the common demo file headers.

     copy %COMMON_INCLUDE%\*.h              src\Common-Demo-Source\include

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.atsln b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.atsln
index cbafd97..d6af61e 100644
--- a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.atsln
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.atsln
@@ -6,10 +6,13 @@
 Global

 	GlobalSection(SolutionConfigurationPlatforms) = preSolution

 		Debug|ARM = Debug|ARM

+		Release|ARM = Release|ARM

 	EndGlobalSection

 	GlobalSection(ProjectConfigurationPlatforms) = postSolution

 		{3D8959CD-73CA-4147-9C1B-CFCF2EE40326}.Debug|ARM.ActiveCfg = Debug|ARM

 		{3D8959CD-73CA-4147-9C1B-CFCF2EE40326}.Debug|ARM.Build.0 = Debug|ARM

+		{3D8959CD-73CA-4147-9C1B-CFCF2EE40326}.Release|ARM.ActiveCfg = Release|ARM

+		{3D8959CD-73CA-4147-9C1B-CFCF2EE40326}.Release|ARM.Build.0 = Release|ARM

 	EndGlobalSection

 	GlobalSection(SolutionProperties) = preSolution

 		HideSolutionNode = FALSE

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.atsuo b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.atsuo
index 9e0627d..f2ad135 100644
--- a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.atsuo
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.atsuo
Binary files differ
diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.cproj b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.cproj
index 7a918c3..d97e4ff 100644
--- a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.cproj
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/RTOSDemo.cproj
@@ -2,7 +2,7 @@
 <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">

   <PropertyGroup>

     <SchemaVersion>2.0</SchemaVersion>

-    <ProjectVersion>6.0</ProjectVersion>

+    <ProjectVersion>6.2</ProjectVersion>

     <ProjectGuid>{3d8959cd-73ca-4147-9c1b-cfcf2ee40326}</ProjectGuid>

     <Name>$(MSBuildProjectName)</Name>

     <AssemblyName>$(MSBuildProjectName)</AssemblyName>

@@ -10,137 +10,146 @@
     <AsfVersion>2.11.1</AsfVersion>

     <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.basic.gpio" value="Add" config="" content-id="Atmel.ASF" />

-          <option id="sam.drivers.pio" value="Add" config="" content-id="Atmel.ASF" />

-          <option id="sam.drivers.usart" value="Add" config="" content-id="Atmel.ASF" />

-        </options>

-        <configurations />

-        <files>

-          <file path="src/asf.h" framework="" version="3.1.3" source="./common/applications/user_application/sam4s16c_sam4s_ek/as5_arm_template/asf.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/main.c" framework="" version="3.1.3" source="common/applications/user_application/main.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/config/conf_board.h" framework="" version="3.1.3" source="common/applications/user_application/sam4s16c_sam4s_ek/conf_board.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/boards/board.h" framework="" version="3.1.3" source="common/boards/board.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/gpio/gpio.h" framework="" version="3.1.3" source="common/services/gpio/gpio.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/gpio/sam_ioport/sam_gpio.h" framework="" version="3.1.3" source="common/services/gpio/sam_ioport/sam_gpio.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/utils/interrupt.h" framework="" version="3.1.3" source="common/utils/interrupt.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/utils/interrupt/interrupt_sam_nvic.c" framework="" version="3.1.3" 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="3.1.3" source="common/utils/interrupt/interrupt_sam_nvic.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/boards/sam4s_ek/init.c" framework="" version="3.1.3" source="sam/boards/sam4s_ek/init.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/boards/sam4s_ek/sam4s_ek.h" framework="" version="3.1.3" source="sam/boards/sam4s_ek/sam4s_ek.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/pio/pio.c" framework="" version="3.1.3" source="sam/drivers/pio/pio.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/pio/pio.h" framework="" version="3.1.3" source="sam/drivers/pio/pio.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/pio/pio_handler.c" framework="" version="3.1.3" source="sam/drivers/pio/pio_handler.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/pio/pio_handler.h" framework="" version="3.1.3" source="sam/drivers/pio/pio_handler.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_acc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_acc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_adc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_adc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_chipid.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_chipid.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_crccu.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_crccu.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_dacc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_dacc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_efc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_efc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_gpbr.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_gpbr.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_hsmci.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_hsmci.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_matrix.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_matrix.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_pdc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_pdc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_pio.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_pio.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_pmc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_pmc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_pwm.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_pwm.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_rstc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_rstc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_rtc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_rtc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_rtt.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_rtt.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_smc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_smc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_spi.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_spi.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_ssc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_ssc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_supc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_supc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_tc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_tc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_twi.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_twi.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_uart.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_uart.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_udp.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_udp.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_usart.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_usart.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_wdt.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_wdt.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_acc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_acc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_adc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_adc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_chipid.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_chipid.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_crccu.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_crccu.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_dacc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_dacc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_efc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_efc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_gpbr.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_gpbr.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_hsmci.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_hsmci.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_matrix.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_matrix.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_pioa.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_pioa.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_piob.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_piob.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_pioc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_pioc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_pmc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_pmc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_pwm.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_pwm.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_rstc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_rstc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_rtc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_rtc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_rtt.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_rtt.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_smc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_smc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_spi.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_spi.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_ssc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_ssc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_supc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_supc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_tc0.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_tc0.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_tc1.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_tc1.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_twi0.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_twi0.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_twi1.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_twi1.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_uart0.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_uart0.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_uart1.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_uart1.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_udp.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_udp.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_usart0.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_usart0.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_usart1.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_usart1.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_wdt.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_wdt.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/pio/pio_sam4s16c.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/pio/pio_sam4s16c.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/sam4s.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/sam4s.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/include/sam4s16c.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/sam4s16c.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/exceptions.c" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/exceptions.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/exceptions.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/exceptions.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/gcc/startup_sam4s.c" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/gcc/startup_sam4s.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/system_sam4s.c" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/system_sam4s.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/system_sam4s.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/system_sam4s.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/compiler.h" framework="" version="3.1.3" source="sam/utils/compiler.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/header_files/io.h" framework="" version="3.1.3" source="sam/utils/header_files/io.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/linker_scripts/sam4s/sam4s16/gcc/flash.ld" framework="" version="3.1.3" source="sam/utils/linker_scripts/sam4s/sam4s16/gcc/flash.ld" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/make/Makefile.in" framework="" version="3.1.3" source="sam/utils/make/Makefile.in" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/parts.h" framework="" version="3.1.3" source="sam/utils/parts.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/preprocessor/mrepeat.h" framework="" version="3.1.3" source="sam/utils/preprocessor/mrepeat.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/preprocessor/preprocessor.h" framework="" version="3.1.3" source="sam/utils/preprocessor/preprocessor.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/preprocessor/stringz.h" framework="" version="3.1.3" source="sam/utils/preprocessor/stringz.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/preprocessor/tpaste.h" framework="" version="3.1.3" source="sam/utils/preprocessor/tpaste.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/utils/status_codes.h" framework="" version="3.1.3" source="sam/utils/status_codes.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/thirdparty/CMSIS/CMSIS END USER LICENCE AGREEMENT.pdf" framework="" version="3.1.3" source="thirdparty/CMSIS/CMSIS END USER LICENCE AGREEMENT.pdf" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/thirdparty/CMSIS/Include/arm_math.h" framework="" version="3.1.3" source="thirdparty/CMSIS/Include/arm_math.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/thirdparty/CMSIS/Include/core_cm4.h" framework="" version="3.1.3" source="thirdparty/CMSIS/Include/core_cm4.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/thirdparty/CMSIS/Include/core_cm4_simd.h" framework="" version="3.1.3" source="thirdparty/CMSIS/Include/core_cm4_simd.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/thirdparty/CMSIS/Include/core_cmFunc.h" framework="" version="3.1.3" 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="3.1.3" source="thirdparty/CMSIS/Include/core_cmInstr.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/thirdparty/CMSIS/Lib/GCC/libarm_cortexM4l_math.a" framework="" version="3.1.3" source="thirdparty/CMSIS/Lib/GCC/libarm_cortexM4l_math.a" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/thirdparty/CMSIS/README.txt" framework="" version="3.1.3" source="thirdparty/CMSIS/README.txt" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/thirdparty/CMSIS/license.txt" framework="" version="3.1.3" source="thirdparty/CMSIS/license.txt" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/pmc/pmc.c" framework="" version="" source="sam\drivers\pmc\pmc.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/pmc/pmc.h" framework="" version="" source="sam\drivers\pmc\pmc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/pmc/sleep.h" framework="" version="" source="sam\drivers\pmc\sleep.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/sam4s/sysclk.c" framework="" version="" source="common\services\clock\sam4s\sysclk.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/sam4s/pll.h" framework="" version="" source="common\services\clock\sam4s\pll.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/sam4s/osc.h" framework="" version="" source="common\services\clock\sam4s\osc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/genclk.h" framework="" version="" source="common\services\clock\genclk.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/osc.h" framework="" version="" source="common\services\clock\osc.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/sam4s/sysclk.h" framework="" version="" source="common\services\clock\sam4s\sysclk.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/sam4s/genclk.h" framework="" version="" source="common\services\clock\sam4s\genclk.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/sysclk.h" framework="" version="" source="common\services\clock\sysclk.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/common/services/clock/pll.h" framework="" version="" source="common\services\clock\pll.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/config/conf_clock.h" framework="" version="" source="common\services\clock\sam4s\module_config\conf_clock.h" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/usart/usart.c" framework="" version="" source="sam\drivers\usart\usart.c" changed="False" content-id="Atmel.ASF" />

-          <file path="src/asf/sam/drivers/usart/usart.h" framework="" version="" source="sam\drivers\usart\usart.h" changed="False" content-id="Atmel.ASF" />

-        </files>

-        <documentation help="http://asf.atmel.com/docs/3.1.3/common.applications.user_application.sam4s_ek/html/index.html" />

-      </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.basic.gpio" value="Add" config="" content-id="Atmel.ASF" />

+    <option id="sam.drivers.pio" value="Add" config="" content-id="Atmel.ASF" />

+    <option id="sam.drivers.usart" value="Add" config="" content-id="Atmel.ASF" />

+    <option id="sam.drivers.tc" value="Add" config="" content-id="Atmel.ASF" />

+  </options>

+  <configurations>

+    <configuration key="config.sam.pio.pio_handler" value="yes" default="yes" content-id="Atmel.ASF" />

+  </configurations>

+  <files>

+    <file path="src/asf.h" framework="" version="3.1.3" source="./common/applications/user_application/sam4s16c_sam4s_ek/as5_arm_template/asf.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/main.c" framework="" version="3.1.3" source="common/applications/user_application/main.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/config/conf_board.h" framework="" version="3.1.3" source="common/applications/user_application/sam4s16c_sam4s_ek/conf_board.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/boards/board.h" framework="" version="3.1.3" source="common/boards/board.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/gpio/gpio.h" framework="" version="3.1.3" source="common/services/gpio/gpio.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/gpio/sam_ioport/sam_gpio.h" framework="" version="3.1.3" source="common/services/gpio/sam_ioport/sam_gpio.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/utils/interrupt.h" framework="" version="3.1.3" source="common/utils/interrupt.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/utils/interrupt/interrupt_sam_nvic.c" framework="" version="3.1.3" 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="3.1.3" source="common/utils/interrupt/interrupt_sam_nvic.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/boards/sam4s_ek/init.c" framework="" version="3.1.3" source="sam/boards/sam4s_ek/init.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/boards/sam4s_ek/sam4s_ek.h" framework="" version="3.1.3" source="sam/boards/sam4s_ek/sam4s_ek.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/pio/pio.c" framework="" version="3.1.3" source="sam/drivers/pio/pio.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/pio/pio.h" framework="" version="3.1.3" source="sam/drivers/pio/pio.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/pio/pio_handler.c" framework="" version="3.1.3" source="sam/drivers/pio/pio_handler.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/pio/pio_handler.h" framework="" version="3.1.3" source="sam/drivers/pio/pio_handler.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_acc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_acc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_adc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_adc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_chipid.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_chipid.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_crccu.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_crccu.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_dacc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_dacc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_efc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_efc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_gpbr.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_gpbr.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_hsmci.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_hsmci.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_matrix.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_matrix.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_pdc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_pdc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_pio.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_pio.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_pmc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_pmc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_pwm.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_pwm.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_rstc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_rstc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_rtc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_rtc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_rtt.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_rtt.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_smc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_smc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_spi.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_spi.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_ssc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_ssc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_supc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_supc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_tc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_tc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_twi.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_twi.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_uart.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_uart.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_udp.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_udp.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_usart.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_usart.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/component/component_wdt.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/component/component_wdt.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_acc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_acc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_adc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_adc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_chipid.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_chipid.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_crccu.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_crccu.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_dacc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_dacc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_efc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_efc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_gpbr.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_gpbr.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_hsmci.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_hsmci.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_matrix.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_matrix.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_pioa.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_pioa.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_piob.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_piob.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_pioc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_pioc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_pmc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_pmc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_pwm.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_pwm.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_rstc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_rstc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_rtc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_rtc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_rtt.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_rtt.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_smc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_smc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_spi.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_spi.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_ssc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_ssc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_supc.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_supc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_tc0.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_tc0.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_tc1.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_tc1.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_twi0.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_twi0.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_twi1.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_twi1.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_uart0.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_uart0.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_uart1.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_uart1.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_udp.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_udp.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_usart0.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_usart0.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_usart1.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_usart1.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/instance/instance_wdt.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/instance/instance_wdt.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/pio/pio_sam4s16c.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/pio/pio_sam4s16c.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/sam4s.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/sam4s.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/include/sam4s16c.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/include/sam4s16c.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/exceptions.c" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/exceptions.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/exceptions.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/exceptions.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/gcc/startup_sam4s.c" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/gcc/startup_sam4s.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/system_sam4s.c" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/system_sam4s.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/cmsis/sam4s/source/templates/system_sam4s.h" framework="" version="3.1.3" source="sam/utils/cmsis/sam4s/source/templates/system_sam4s.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/compiler.h" framework="" version="3.1.3" source="sam/utils/compiler.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/header_files/io.h" framework="" version="3.1.3" source="sam/utils/header_files/io.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/linker_scripts/sam4s/sam4s16/gcc/flash.ld" framework="" version="3.1.3" source="sam/utils/linker_scripts/sam4s/sam4s16/gcc/flash.ld" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/make/Makefile.in" framework="" version="3.1.3" source="sam/utils/make/Makefile.in" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/parts.h" framework="" version="3.1.3" source="sam/utils/parts.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/preprocessor/mrepeat.h" framework="" version="3.1.3" source="sam/utils/preprocessor/mrepeat.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/preprocessor/preprocessor.h" framework="" version="3.1.3" source="sam/utils/preprocessor/preprocessor.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/preprocessor/stringz.h" framework="" version="3.1.3" source="sam/utils/preprocessor/stringz.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/preprocessor/tpaste.h" framework="" version="3.1.3" source="sam/utils/preprocessor/tpaste.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/utils/status_codes.h" framework="" version="3.1.3" source="sam/utils/status_codes.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/thirdparty/CMSIS/CMSIS END USER LICENCE AGREEMENT.pdf" framework="" version="3.1.3" source="thirdparty/CMSIS/CMSIS END USER LICENCE AGREEMENT.pdf" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/thirdparty/CMSIS/Include/arm_math.h" framework="" version="3.1.3" source="thirdparty/CMSIS/Include/arm_math.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/thirdparty/CMSIS/Include/core_cm4.h" framework="" version="3.1.3" source="thirdparty/CMSIS/Include/core_cm4.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/thirdparty/CMSIS/Include/core_cm4_simd.h" framework="" version="3.1.3" source="thirdparty/CMSIS/Include/core_cm4_simd.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/thirdparty/CMSIS/Include/core_cmFunc.h" framework="" version="3.1.3" 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="3.1.3" source="thirdparty/CMSIS/Include/core_cmInstr.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/thirdparty/CMSIS/Lib/GCC/libarm_cortexM4l_math.a" framework="" version="3.1.3" source="thirdparty/CMSIS/Lib/GCC/libarm_cortexM4l_math.a" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/thirdparty/CMSIS/README.txt" framework="" version="3.1.3" source="thirdparty/CMSIS/README.txt" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/thirdparty/CMSIS/license.txt" framework="" version="3.1.3" source="thirdparty/CMSIS/license.txt" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/pmc/pmc.c" framework="" version="" source="sam\drivers\pmc\pmc.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/pmc/pmc.h" framework="" version="" source="sam\drivers\pmc\pmc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/pmc/sleep.h" framework="" version="" source="sam\drivers\pmc\sleep.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/sam4s/sysclk.c" framework="" version="" source="common\services\clock\sam4s\sysclk.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/sam4s/pll.h" framework="" version="" source="common\services\clock\sam4s\pll.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/sam4s/osc.h" framework="" version="" source="common\services\clock\sam4s\osc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/genclk.h" framework="" version="" source="common\services\clock\genclk.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/osc.h" framework="" version="" source="common\services\clock\osc.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/sam4s/sysclk.h" framework="" version="" source="common\services\clock\sam4s\sysclk.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/sam4s/genclk.h" framework="" version="" source="common\services\clock\sam4s\genclk.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/sysclk.h" framework="" version="" source="common\services\clock\sysclk.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/common/services/clock/pll.h" framework="" version="" source="common\services\clock\pll.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/config/conf_clock.h" framework="" version="" source="common\services\clock\sam4s\module_config\conf_clock.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/usart/usart.c" framework="" version="" source="sam\drivers\usart\usart.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/asf/sam/drivers/usart/usart.h" framework="" version="" source="sam\drivers\usart\usart.h" changed="False" content-id="Atmel.ASF" />

+    <file path="src/ASF/sam/drivers/tc/tc.c" framework="" version="3.6.0" source="sam\drivers\tc\tc.c" changed="False" content-id="Atmel.ASF" />

+    <file path="src/ASF/sam/drivers/tc/tc.h" framework="" version="3.6.0" source="sam\drivers\tc\tc.h" changed="False" content-id="Atmel.ASF" />

+  </files>

+  <documentation help="" />

+  <offline-documentation help="" />

+  <dependencies>

+    <content-extension eid="atmel.asf" uuidref="Atmel.ASF" version="3.6.0" />

+  </dependencies>

+</framework-data>

     </AsfFrameworkConfig>

     <avrdevice>ATSAM4S16C</avrdevice>

     <avrdeviceseries>sam4s</avrdeviceseries>

     <Language>C</Language>

-    <ToolchainName>com.Atmel.ARMGCC</ToolchainName>

+    <ToolchainName>com.Atmel.ARMGCC.C</ToolchainName>

     <ArmGccProjectExtensions />

     <OutputDirectory>$(MSBuildProjectDirectory)\$(Configuration)</OutputDirectory>

     <OutputFileName>$(MSBuildProjectName)</OutputFileName>

@@ -149,18 +158,14 @@
     <ToolchainFlavour>Native</ToolchainFlavour>

     <KeepTimersRunning>true</KeepTimersRunning>

     <OverrideVtor>false</OverrideVtor>

-    <OverrideVtorValue />

+    <OverrideVtorValue>exception_table</OverrideVtorValue>

     <eraseonlaunchrule>1</eraseonlaunchrule>

     <avrtoolinterface>JTAG</avrtoolinterface>

     <avrtool>com.atmel.avrdbg.tool.samice</avrtool>

     <com_atmel_avrdbg_tool_samice>

       <ToolType>com.atmel.avrdbg.tool.samice</ToolType>

       <ToolName>J-Link</ToolName>

-      <ToolNumber>000158008149</ToolNumber>

-      <KeepTimersRunning>true</KeepTimersRunning>

-      <OverrideVtor>false</OverrideVtor>

-      <OverrideVtorValue>

-      </OverrideVtorValue>

+      <ToolNumber>158002654</ToolNumber>

       <Channel>

         <host>127.0.0.1</host>

         <port>1637</port>

@@ -169,250 +174,249 @@
       <ToolOptions>

         <InterfaceName>JTAG</InterfaceName>

         <InterfaceProperties>

-          <JtagDbgClock>4000000</JtagDbgClock>

+          <JtagDbgClock>0</JtagDbgClock>

           <JtagProgClock>1000000</JtagProgClock>

           <IspClock>150000</IspClock>

           <JtagInChain>false</JtagInChain>

-          <JtagEnableExtResetOnStartSession>false</JtagEnableExtResetOnStartSession>

+          <JtagEnableExtResetOnStartSession>true</JtagEnableExtResetOnStartSession>

           <JtagDevicesBefore>0</JtagDevicesBefore>

           <JtagDevicesAfter>0</JtagDevicesAfter>

           <JtagInstrBitsBefore>0</JtagInstrBitsBefore>

           <JtagInstrBitsAfter>0</JtagInstrBitsAfter>

+          <JtagSelectedDeviceIndexInChain>

+          </JtagSelectedDeviceIndexInChain>

+          <JtagDaisyChainDevices>

+          </JtagDaisyChainDevices>

         </InterfaceProperties>

       </ToolOptions>

     </com_atmel_avrdbg_tool_samice>

+    <CacheFlash>true</CacheFlash>

+    <ProgFlashFromRam>true</ProgFlashFromRam>

+    <RamSnippetAddress>0x20000000</RamSnippetAddress>

+    <UncachedRange />

+    <BootSegment>2</BootSegment>

   </PropertyGroup>

   <PropertyGroup Condition=" '$(Configuration)' == 'Release' ">

-    <ToolchainSettings>

-      <ArmGcc>

-        <armgcc.common.general.symbols>__SAM4S16C__</armgcc.common.general.symbols>

-        <armgcc.common.outputfiles.hex>True</armgcc.common.outputfiles.hex>

-        <armgcc.common.outputfiles.lss>True</armgcc.common.outputfiles.lss>

-        <armgcc.common.outputfiles.eep>True</armgcc.common.outputfiles.eep>

-        <armgcc.common.outputfiles.bin>True</armgcc.common.outputfiles.bin>

-        <armgcc.compiler.symbols.DefSymbols>

-          <ListValues>

-            <Value>ARM_MATH_CM4=true</Value>

-            <Value>BOARD=SAM4S_EK</Value>

-            <Value>__SAM4S16C__</Value>

-          </ListValues>

-        </armgcc.compiler.symbols.DefSymbols>

-        <armgcc.compiler.directories.IncludePaths>

-          <ListValues>

-            <Value>../src</Value>

-            <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

-            <Value>../src/asf/common/boards</Value>

-            <Value>../src/asf/common/services/gpio</Value>

-            <Value>../src/asf/common/utils</Value>

-            <Value>../src/asf/sam/boards</Value>

-            <Value>../src/asf/sam/boards/sam4s_ek</Value>

-            <Value>../src/asf/sam/drivers/pio</Value>

-            <Value>../src/asf/sam/utils</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

-            <Value>../src/asf/sam/utils/header_files</Value>

-            <Value>../src/asf/sam/utils/preprocessor</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Include</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

-            <Value>../src/config</Value>

-            <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles</Value>

-            <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\CMSIS\Include</Value>

-            <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\Device\ATMEL</Value>

-            <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\Device\ATMEL\sam4s\include</Value>

-            <Value>../src/asf/sam/drivers/pmc</Value>

-            <Value>../src/asf/common/services/clock</Value>

-            <Value>../src/asf/sam/drivers/usart</Value>

-          </ListValues>

-        </armgcc.compiler.directories.IncludePaths>

-        <armgcc.compiler.optimization.level>Optimize for size (-Os)</armgcc.compiler.optimization.level>

-        <armgcc.compiler.optimization.OtherFlags>-fdata-sections</armgcc.compiler.optimization.OtherFlags>

-        <armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>

-        <armgcc.compiler.warnings.AllWarnings>True</armgcc.compiler.warnings.AllWarnings>

-        <armgcc.compiler.miscellaneous.OtherFlags>-pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Werror-implicit-function-declaration -Wpointer-arith -std=gnu99 -ffunction-sections -fdata-sections -Wchar-subscripts -Wcomment -Wformat=2 -Wimplicit-int -Wmain -Wparentheses -Wsequence-point -Wreturn-type -Wswitch -Wtrigraphs -Wunused -Wuninitialized -Wunknown-pragmas -Wfloat-equal -Wundef -Wshadow -Wbad-function-cast -Wwrite-strings -Wsign-compare -Waggregate-return  -Wmissing-declarations -Wformat -Wmissing-format-attribute -Wno-deprecated-declarations -Wpacked -Wredundant-decls -Wnested-externs -Winline -Wlong-long -Wunreachable-code -Wcast-align --param max-inline-insns-single=500 -Dprintf=iprintf</armgcc.compiler.miscellaneous.OtherFlags>

-        <armgcc.linker.general.DoNotUseStandardStartFiles />

-        <armgcc.linker.general.DoNotUseDefaultLibraries />

-        <armgcc.linker.general.NoStartupOrDefaultLibs />

-        <armgcc.linker.libraries.Libraries>

-          <ListValues>

-            <Value>arm_cortexM4l_math</Value>

-          </ListValues>

-        </armgcc.linker.libraries.Libraries>

-        <armgcc.linker.libraries.LibrarySearchPaths>

-          <ListValues>

-            <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

-          </ListValues>

-        </armgcc.linker.libraries.LibrarySearchPaths>

-        <armgcc.linker.optimization.GarbageCollectUnusedSections>True</armgcc.linker.optimization.GarbageCollectUnusedSections>

-        <armgcc.linker.miscellaneous.LinkerFlags>-T../src/asf/sam/utils/linker_scripts/sam4s/sam4s16/gcc/flash.ld -Wl,--cref -Wl,--entry=Reset_Handler -mthumb</armgcc.linker.miscellaneous.LinkerFlags>

-        <armgcc.assembler.general.IncludePaths>

-          <ListValues>

-            <Value>../src</Value>

-            <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

-            <Value>../src/asf/common/boards</Value>

-            <Value>../src/asf/common/services/gpio</Value>

-            <Value>../src/asf/common/utils</Value>

-            <Value>../src/asf/sam/boards</Value>

-            <Value>../src/asf/sam/boards/sam4s_ek</Value>

-            <Value>../src/asf/sam/drivers/pio</Value>

-            <Value>../src/asf/sam/utils</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

-            <Value>../src/asf/sam/utils/header_files</Value>

-            <Value>../src/asf/sam/utils/preprocessor</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Include</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

-            <Value>../src/config</Value>

-            <Value>../src/asf/sam/drivers/pmc</Value>

-            <Value>../src/asf/common/services/clock</Value>

-            <Value>../src/asf/sam/drivers/usart</Value>

-          </ListValues>

-        </armgcc.assembler.general.IncludePaths>

-        <armgcc.preprocessingassembler.general.AssemblerFlags>-DARM_MATH_CM4=true -DBOARD=SAM4S_EK -D__SAM4S16C__</armgcc.preprocessingassembler.general.AssemblerFlags>

-        <armgcc.preprocessingassembler.general.IncludePaths>

-          <ListValues>

-            <Value>../src</Value>

-            <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

-            <Value>../src/asf/common/boards</Value>

-            <Value>../src/asf/common/services/gpio</Value>

-            <Value>../src/asf/common/utils</Value>

-            <Value>../src/asf/sam/boards</Value>

-            <Value>../src/asf/sam/boards/sam4s_ek</Value>

-            <Value>../src/asf/sam/drivers/pio</Value>

-            <Value>../src/asf/sam/utils</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

-            <Value>../src/asf/sam/utils/header_files</Value>

-            <Value>../src/asf/sam/utils/preprocessor</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Include</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

-            <Value>../src/config</Value>

-            <Value>../src/asf/sam/drivers/pmc</Value>

-            <Value>../src/asf/common/services/clock</Value>

-            <Value>../src/asf/sam/drivers/usart</Value>

-          </ListValues>

-        </armgcc.preprocessingassembler.general.IncludePaths>

-      </ArmGcc>

-    </ToolchainSettings>

     <GenerateHexFile>True</GenerateHexFile>

     <GenerateMapFile>True</GenerateMapFile>

     <GenerateListFile>True</GenerateListFile>

     <GenerateEepFile>True</GenerateEepFile>

+    <ToolchainSettings>

+      <ArmGcc>

+  <armgcc.common.outputfiles.hex>True</armgcc.common.outputfiles.hex>

+  <armgcc.common.outputfiles.lss>True</armgcc.common.outputfiles.lss>

+  <armgcc.common.outputfiles.eep>True</armgcc.common.outputfiles.eep>

+  <armgcc.common.outputfiles.bin>True</armgcc.common.outputfiles.bin>

+  <armgcc.common.outputfiles.srec>True</armgcc.common.outputfiles.srec>

+  <armgcc.compiler.symbols.DefSymbols>

+    <ListValues>

+      <Value>ARM_MATH_CM4=true</Value>

+      <Value>BOARD=SAM4S_EK</Value>

+      <Value>__SAM4S16C__</Value>

+    </ListValues>

+  </armgcc.compiler.symbols.DefSymbols>

+  <armgcc.compiler.directories.IncludePaths>

+    <ListValues>

+      <Value>../src</Value>

+      <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

+      <Value>../src/asf/common/boards</Value>

+      <Value>../src/asf/common/services/gpio</Value>

+      <Value>../src/asf/common/utils</Value>

+      <Value>../src/asf/sam/boards</Value>

+      <Value>../src/asf/sam/boards/sam4s_ek</Value>

+      <Value>../src/asf/sam/drivers/pio</Value>

+      <Value>../src/asf/sam/utils</Value>

+      <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

+      <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

+      <Value>../src/asf/sam/utils/header_files</Value>

+      <Value>../src/asf/sam/utils/preprocessor</Value>

+      <Value>../src/asf/thirdparty/CMSIS/Include</Value>

+      <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

+      <Value>../src/config</Value>

+      <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles</Value>

+      <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\CMSIS\Include</Value>

+      <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\Device\ATMEL</Value>

+      <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\Device\ATMEL\sam4s\include</Value>

+      <Value>../src/asf/sam/drivers/pmc</Value>

+      <Value>../src/asf/common/services/clock</Value>

+      <Value>../src/asf/sam/drivers/usart</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\Device\ATMEL\sam4s\include</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\CMSIS\Include</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\Device\ATMEL</Value>

+      <Value>../src/ASF/sam/drivers/tc</Value>

+    </ListValues>

+  </armgcc.compiler.directories.IncludePaths>

+  <armgcc.compiler.optimization.level>Optimize for size (-Os)</armgcc.compiler.optimization.level>

+  <armgcc.compiler.optimization.OtherFlags>-fdata-sections</armgcc.compiler.optimization.OtherFlags>

+  <armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>

+  <armgcc.compiler.warnings.AllWarnings>True</armgcc.compiler.warnings.AllWarnings>

+  <armgcc.compiler.miscellaneous.OtherFlags>-pipe -Wall -Wstrict-prototypes -Wmissing-prototypes -Werror-implicit-function-declaration -Wpointer-arith -std=gnu99 -ffunction-sections -fdata-sections -Wchar-subscripts -Wcomment -Wformat=2 -Wimplicit-int -Wmain -Wparentheses -Wsequence-point -Wreturn-type -Wswitch -Wtrigraphs -Wunused -Wuninitialized -Wunknown-pragmas -Wfloat-equal -Wundef -Wshadow -Wbad-function-cast -Wwrite-strings -Wsign-compare -Waggregate-return  -Wmissing-declarations -Wformat -Wmissing-format-attribute -Wno-deprecated-declarations -Wpacked -Wredundant-decls -Wnested-externs -Winline -Wlong-long -Wunreachable-code -Wcast-align --param max-inline-insns-single=500 -Dprintf=iprintf</armgcc.compiler.miscellaneous.OtherFlags>

+  <armgcc.linker.general.DoNotUseStandardStartFiles />

+  <armgcc.linker.general.DoNotUseDefaultLibraries />

+  <armgcc.linker.general.NoStartupOrDefaultLibs />

+  <armgcc.linker.libraries.Libraries>

+    <ListValues>

+      <Value>arm_cortexM4l_math</Value>

+    </ListValues>

+  </armgcc.linker.libraries.Libraries>

+  <armgcc.linker.libraries.LibrarySearchPaths>

+    <ListValues>

+      <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

+    </ListValues>

+  </armgcc.linker.libraries.LibrarySearchPaths>

+  <armgcc.linker.optimization.GarbageCollectUnusedSections>True</armgcc.linker.optimization.GarbageCollectUnusedSections>

+  <armgcc.linker.miscellaneous.LinkerFlags>-T../src/asf/sam/utils/linker_scripts/sam4s/sam4s16/gcc/flash.ld -Wl,--cref -Wl,--entry=Reset_Handler -mthumb</armgcc.linker.miscellaneous.LinkerFlags>

+  <armgcc.assembler.general.IncludePaths>

+    <ListValues>

+      <Value>../src/ASF/sam/drivers/tc</Value>

+    </ListValues>

+  </armgcc.assembler.general.IncludePaths>

+  <armgcc.preprocessingassembler.general.AssemblerFlags>-DARM_MATH_CM4=true -DBOARD=SAM4S_EK -D__SAM4S16C__</armgcc.preprocessingassembler.general.AssemblerFlags>

+  <armgcc.preprocessingassembler.general.IncludePaths>

+    <ListValues>

+      <Value>../src</Value>

+      <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

+      <Value>../src/asf/common/boards</Value>

+      <Value>../src/asf/common/services/gpio</Value>

+      <Value>../src/asf/common/utils</Value>

+      <Value>../src/asf/sam/boards</Value>

+      <Value>../src/asf/sam/boards/sam4s_ek</Value>

+      <Value>../src/asf/sam/drivers/pio</Value>

+      <Value>../src/asf/sam/utils</Value>

+      <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

+      <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

+      <Value>../src/asf/sam/utils/header_files</Value>

+      <Value>../src/asf/sam/utils/preprocessor</Value>

+      <Value>../src/asf/thirdparty/CMSIS/Include</Value>

+      <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

+      <Value>../src/config</Value>

+      <Value>../src/asf/sam/drivers/pmc</Value>

+      <Value>../src/asf/common/services/clock</Value>

+      <Value>../src/asf/sam/drivers/usart</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\Device\ATMEL\sam4s\include</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\CMSIS\Include</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\Device\ATMEL</Value>

+      <Value>../src/ASF/sam/drivers/tc</Value>

+    </ListValues>

+  </armgcc.preprocessingassembler.general.IncludePaths>

+</ArmGcc>

+    </ToolchainSettings>

   </PropertyGroup>

   <PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">

-    <ToolchainSettings>

-      <ArmGcc>

-        <armgcc.common.general.symbols>__SAM4S16C__</armgcc.common.general.symbols>

-        <armgcc.common.outputfiles.hex>True</armgcc.common.outputfiles.hex>

-        <armgcc.common.outputfiles.lss>True</armgcc.common.outputfiles.lss>

-        <armgcc.common.outputfiles.eep>True</armgcc.common.outputfiles.eep>

-        <armgcc.common.outputfiles.bin>True</armgcc.common.outputfiles.bin>

-        <armgcc.compiler.symbols.DefSymbols>

-          <ListValues>

-            <Value>ARM_MATH_CM4=true</Value>

-            <Value>BOARD=SAM4S_EK</Value>

-            <Value>__SAM4S16C__</Value>

-            <Value>XMEGA=0</Value>

-            <Value>MEGA=0</Value>

-            <Value>UC3=0</Value>

-          </ListValues>

-        </armgcc.compiler.symbols.DefSymbols>

-        <armgcc.compiler.directories.IncludePaths>

-          <ListValues>

-            <Value>../src</Value>

-            <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

-            <Value>../src/asf/common/boards</Value>

-            <Value>../src/asf/common/services/gpio</Value>

-            <Value>../src/asf/common/utils</Value>

-            <Value>../src/asf/sam/boards</Value>

-            <Value>../src/asf/sam/boards/sam4s_ek</Value>

-            <Value>../src/asf/sam/drivers/pio</Value>

-            <Value>../src/asf/sam/utils</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

-            <Value>../src/asf/sam/utils/header_files</Value>

-            <Value>../src/asf/sam/utils/preprocessor</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Include</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

-            <Value>../src/config</Value>

-            <Value>../src/asf/thirdparty/FreeRTOS/include</Value>

-            <Value>../src/asf/thirdparty/FreeRTOS/portable/GCC/ARM_CM3</Value>

-            <Value>../src/Common-Demo-Source/include</Value>

-            <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles</Value>

-            <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\CMSIS\Include</Value>

-            <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\Device\ATMEL</Value>

-            <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\Device\ATMEL\sam4s\include</Value>

-            <Value>../src/asf/sam/drivers/pmc</Value>

-            <Value>../src/asf/common/services/clock</Value>

-            <Value>../src/asf/sam/drivers/usart</Value>

-          </ListValues>

-        </armgcc.compiler.directories.IncludePaths>

-        <armgcc.compiler.optimization.OtherFlags>-fdata-sections</armgcc.compiler.optimization.OtherFlags>

-        <armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>

-        <armgcc.compiler.optimization.DebugLevel>Maximum (-g3)</armgcc.compiler.optimization.DebugLevel>

-        <armgcc.compiler.warnings.AllWarnings>True</armgcc.compiler.warnings.AllWarnings>

-        <armgcc.compiler.miscellaneous.OtherFlags>-pipe -Wall -Wextra -std=gnu99 -ffunction-sections -fdata-sections --param max-inline-insns-single=500 -Dprintf=iprintf</armgcc.compiler.miscellaneous.OtherFlags>

-        <armgcc.linker.libraries.LibrarySearchPaths>

-          <ListValues>

-            <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

-          </ListValues>

-        </armgcc.linker.libraries.LibrarySearchPaths>

-        <armgcc.linker.optimization.GarbageCollectUnusedSections>True</armgcc.linker.optimization.GarbageCollectUnusedSections>

-        <armgcc.linker.miscellaneous.LinkerFlags>-T../src/asf/sam/utils/linker_scripts/sam4s/sam4s16/gcc/flash.ld -Wl,--cref -Wl,--entry=Reset_Handler -mthumb</armgcc.linker.miscellaneous.LinkerFlags>

-        <armgcc.assembler.general.IncludePaths>

-          <ListValues>

-            <Value>../src</Value>

-            <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

-            <Value>../src/asf/common/boards</Value>

-            <Value>../src/asf/common/services/gpio</Value>

-            <Value>../src/asf/common/utils</Value>

-            <Value>../src/asf/sam/boards</Value>

-            <Value>../src/asf/sam/boards/sam4s_ek</Value>

-            <Value>../src/asf/sam/drivers/pio</Value>

-            <Value>../src/asf/sam/utils</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

-            <Value>../src/asf/sam/utils/header_files</Value>

-            <Value>../src/asf/sam/utils/preprocessor</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Include</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

-            <Value>../src/config</Value>

-            <Value>../src/asf/sam/drivers/pmc</Value>

-            <Value>../src/asf/common/services/clock</Value>

-            <Value>../src/asf/sam/drivers/usart</Value>

-          </ListValues>

-        </armgcc.assembler.general.IncludePaths>

-        <armgcc.preprocessingassembler.general.AssemblerFlags>-DARM_MATH_CM4=true -DBOARD=SAM4S_EK -D__SAM4S16C__</armgcc.preprocessingassembler.general.AssemblerFlags>

-        <armgcc.preprocessingassembler.general.IncludePaths>

-          <ListValues>

-            <Value>../src</Value>

-            <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

-            <Value>../src/asf/common/boards</Value>

-            <Value>../src/asf/common/services/gpio</Value>

-            <Value>../src/asf/common/utils</Value>

-            <Value>../src/asf/sam/boards</Value>

-            <Value>../src/asf/sam/boards/sam4s_ek</Value>

-            <Value>../src/asf/sam/drivers/pio</Value>

-            <Value>../src/asf/sam/utils</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

-            <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

-            <Value>../src/asf/sam/utils/header_files</Value>

-            <Value>../src/asf/sam/utils/preprocessor</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Include</Value>

-            <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

-            <Value>../src/config</Value>

-            <Value>../src/asf/sam/drivers/pmc</Value>

-            <Value>../src/asf/common/services/clock</Value>

-            <Value>../src/asf/sam/drivers/usart</Value>

-          </ListValues>

-        </armgcc.preprocessingassembler.general.IncludePaths>

-      </ArmGcc>

-    </ToolchainSettings>

     <GenerateHexFile>True</GenerateHexFile>

     <GenerateMapFile>True</GenerateMapFile>

     <GenerateListFile>True</GenerateListFile>

     <GenerateEepFile>True</GenerateEepFile>

+    <ToolchainSettings>

+      <ArmGcc>

+  <armgcc.common.outputfiles.hex>True</armgcc.common.outputfiles.hex>

+  <armgcc.common.outputfiles.lss>True</armgcc.common.outputfiles.lss>

+  <armgcc.common.outputfiles.eep>True</armgcc.common.outputfiles.eep>

+  <armgcc.common.outputfiles.bin>True</armgcc.common.outputfiles.bin>

+  <armgcc.common.outputfiles.srec>True</armgcc.common.outputfiles.srec>

+  <armgcc.compiler.symbols.DefSymbols>

+    <ListValues>

+      <Value>ARM_MATH_CM4=true</Value>

+      <Value>BOARD=SAM4S_EK</Value>

+      <Value>__SAM4S16C__</Value>

+      <Value>XMEGA=0</Value>

+      <Value>MEGA=0</Value>

+      <Value>UC3=0</Value>

+    </ListValues>

+  </armgcc.compiler.symbols.DefSymbols>

+  <armgcc.compiler.directories.IncludePaths>

+    <ListValues>

+      <Value>../src</Value>

+      <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

+      <Value>../src/asf/common/boards</Value>

+      <Value>../src/asf/common/services/gpio</Value>

+      <Value>../src/asf/common/utils</Value>

+      <Value>../src/asf/sam/boards</Value>

+      <Value>../src/asf/sam/boards/sam4s_ek</Value>

+      <Value>../src/asf/sam/drivers/pio</Value>

+      <Value>../src/asf/sam/utils</Value>

+      <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

+      <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

+      <Value>../src/asf/sam/utils/header_files</Value>

+      <Value>../src/asf/sam/utils/preprocessor</Value>

+      <Value>../src/asf/thirdparty/CMSIS/Include</Value>

+      <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

+      <Value>../src/config</Value>

+      <Value>../src/asf/thirdparty/FreeRTOS/include</Value>

+      <Value>../src/asf/thirdparty/FreeRTOS/portable/GCC/ARM_CM3</Value>

+      <Value>../src/Common-Demo-Source/include</Value>

+      <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles</Value>

+      <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\CMSIS\Include</Value>

+      <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\Device\ATMEL</Value>

+      <Value>C:\devtools\Atmel\Atmel Studio 6.0\extensions\Atmel\ARMGCC\3.3.1.83\ARMSupportFiles\Device\ATMEL\sam4s\include</Value>

+      <Value>../src/asf/sam/drivers/pmc</Value>

+      <Value>../src/asf/common/services/clock</Value>

+      <Value>../src/asf/sam/drivers/usart</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\Device\ATMEL\sam4s\include</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\CMSIS\Include</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\Device\ATMEL</Value>

+      <Value>../src/ASF/sam/drivers/tc</Value>

+    </ListValues>

+  </armgcc.compiler.directories.IncludePaths>

+  <armgcc.compiler.optimization.OtherFlags>-fdata-sections</armgcc.compiler.optimization.OtherFlags>

+  <armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>True</armgcc.compiler.optimization.PrepareFunctionsForGarbageCollection>

+  <armgcc.compiler.optimization.DebugLevel>Maximum (-g3)</armgcc.compiler.optimization.DebugLevel>

+  <armgcc.compiler.warnings.AllWarnings>True</armgcc.compiler.warnings.AllWarnings>

+  <armgcc.compiler.miscellaneous.OtherFlags>-pipe -Wall -Wextra -std=gnu99 -ffunction-sections -fdata-sections --param max-inline-insns-single=500 -Dprintf=iprintf</armgcc.compiler.miscellaneous.OtherFlags>

+  <armgcc.linker.libraries.LibrarySearchPaths>

+    <ListValues>

+      <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

+    </ListValues>

+  </armgcc.linker.libraries.LibrarySearchPaths>

+  <armgcc.linker.optimization.GarbageCollectUnusedSections>True</armgcc.linker.optimization.GarbageCollectUnusedSections>

+  <armgcc.linker.miscellaneous.LinkerFlags>-T../src/asf/sam/utils/linker_scripts/sam4s/sam4s16/gcc/flash.ld -Wl,--cref -Wl,--entry=Reset_Handler -mthumb</armgcc.linker.miscellaneous.LinkerFlags>

+  <armgcc.assembler.general.IncludePaths>

+    <ListValues>

+      <Value>../src/ASF/sam/drivers/tc</Value>

+    </ListValues>

+  </armgcc.assembler.general.IncludePaths>

+  <armgcc.preprocessingassembler.general.AssemblerFlags>-DARM_MATH_CM4=true -DBOARD=SAM4S_EK -D__SAM4S16C__</armgcc.preprocessingassembler.general.AssemblerFlags>

+  <armgcc.preprocessingassembler.general.IncludePaths>

+    <ListValues>

+      <Value>../src</Value>

+      <Value>../src/asf/common/applications/user_application/sam4s16c_sam4s_ek</Value>

+      <Value>../src/asf/common/boards</Value>

+      <Value>../src/asf/common/services/gpio</Value>

+      <Value>../src/asf/common/utils</Value>

+      <Value>../src/asf/sam/boards</Value>

+      <Value>../src/asf/sam/boards/sam4s_ek</Value>

+      <Value>../src/asf/sam/drivers/pio</Value>

+      <Value>../src/asf/sam/utils</Value>

+      <Value>../src/asf/sam/utils/cmsis/sam4s/include</Value>

+      <Value>../src/asf/sam/utils/cmsis/sam4s/source/templates</Value>

+      <Value>../src/asf/sam/utils/header_files</Value>

+      <Value>../src/asf/sam/utils/preprocessor</Value>

+      <Value>../src/asf/thirdparty/CMSIS/Include</Value>

+      <Value>../src/asf/thirdparty/CMSIS/Lib/GCC</Value>

+      <Value>../src/config</Value>

+      <Value>../src/asf/sam/drivers/pmc</Value>

+      <Value>../src/asf/common/services/clock</Value>

+      <Value>../src/asf/sam/drivers/usart</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\Device\ATMEL\sam4s\include</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\CMSIS\Include</Value>

+      <Value>%24(ToolchainDir)\..\..\CMSIS_Atmel\Device\ATMEL</Value>

+      <Value>../src/ASF/sam/drivers/tc</Value>

+    </ListValues>

+  </armgcc.preprocessingassembler.general.IncludePaths>

+</ArmGcc>

+    </ToolchainSettings>

   </PropertyGroup>

   <ItemGroup>

+    <Compile Include="src\asf\sam\drivers\tc\tc.c">

+      <SubType>compile</SubType>

+    </Compile>

+    <None Include="src\asf\sam\drivers\tc\tc.h">

+      <SubType>compile</SubType>

+    </None>

     <Compile Include="src\asf\sam\drivers\usart\usart.c">

       <SubType>compile</SubType>

     </Compile>

@@ -425,9 +429,15 @@
     <Compile Include="src\Common-Demo-Source\include\demo_serial.h">

       <SubType>compile</SubType>

     </Compile>

+    <Compile Include="src\Common-Demo-Source\IntQueue.c">

+      <SubType>compile</SubType>

+    </Compile>

     <Compile Include="src\Common-Demo-Source\QueueSet.c">

       <SubType>compile</SubType>

     </Compile>

+    <Compile Include="src\IntQueueTimer.c">

+      <SubType>compile</SubType>

+    </Compile>

     <Compile Include="src\serial.c">

       <SubType>compile</SubType>

     </Compile>

@@ -893,9 +903,6 @@
     <None Include="src\asf\thirdparty\CMSIS\Include\core_cmInstr.h">

       <SubType>compile</SubType>

     </None>

-    <None Include="src\asf\thirdparty\CMSIS\Lib\GCC\libarm_cortexM4l_math.a">

-      <SubType>compile</SubType>

-    </None>

     <None Include="src\asf\thirdparty\CMSIS\README.txt">

       <SubType>compile</SubType>

     </None>

@@ -924,6 +931,7 @@
     <Folder Include="src\asf\sam\drivers\" />

     <Folder Include="src\asf\sam\drivers\pio\" />

     <Folder Include="src\asf\sam\drivers\pmc\" />

+    <Folder Include="src\asf\sam\drivers\tc\" />

     <Folder Include="src\asf\sam\drivers\usart\" />

     <Folder Include="src\asf\sam\utils\" />

     <Folder Include="src\asf\sam\utils\cmsis\" />

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/FreeRTOSConfig.h b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/FreeRTOSConfig.h
index 459baff..57383f6 100644
--- a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/FreeRTOSConfig.h
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/FreeRTOSConfig.h
@@ -131,6 +131,7 @@
 #define INCLUDE_vTaskSuspend			1

 #define INCLUDE_vTaskDelayUntil			1

 #define INCLUDE_vTaskDelay				1

+#define INCLUDE_eTaskGetState			1

 

 /* Cortex-M specific definitions. */

 #ifdef __NVIC_PRIO_BITS

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/IntQueueTimer.c b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/IntQueueTimer.c
new file mode 100644
index 0000000..b3534fd
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/IntQueueTimer.c
@@ -0,0 +1,198 @@
+/*

+    FreeRTOS V8.1.1 - Copyright (C) 2014 Real Time Engineers Ltd.

+    All rights reserved

+

+    VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.

+

+    ***************************************************************************

+     *                                                                       *

+     *    FreeRTOS provides completely free yet professionally developed,    *

+     *    robust, strictly quality controlled, supported, and cross          *

+     *    platform software that has become a de facto standard.             *

+     *                                                                       *

+     *    Help yourself get started quickly and support the FreeRTOS         *

+     *    project by purchasing a FreeRTOS tutorial book, reference          *

+     *    manual, or both from: http://www.FreeRTOS.org/Documentation        *

+     *                                                                       *

+     *    Thank you!                                                         *

+     *                                                                       *

+    ***************************************************************************

+

+    This file is part of the FreeRTOS distribution.

+

+    FreeRTOS is free software; you can redistribute it and/or modify it under

+    the terms of the GNU General Public License (version 2) as published by the

+    Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.

+

+    >>!   NOTE: The modification to the GPL is included to allow you to     !<<

+    >>!   distribute a combined work that includes FreeRTOS without being   !<<

+    >>!   obliged to provide the source code for proprietary components     !<<

+    >>!   outside of the FreeRTOS kernel.                                   !<<

+

+    FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY

+    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS

+    FOR A PARTICULAR PURPOSE.  Full license text is available from the following

+    link: http://www.freertos.org/a00114.html

+

+    1 tab == 4 spaces!

+

+    ***************************************************************************

+     *                                                                       *

+     *    Having a problem?  Start by reading the FAQ "My application does   *

+     *    not run, what could be wrong?"                                     *

+     *                                                                       *

+     *    http://www.FreeRTOS.org/FAQHelp.html                               *

+     *                                                                       *

+    ***************************************************************************

+

+    http://www.FreeRTOS.org - Documentation, books, training, latest versions,

+    license and Real Time Engineers Ltd. contact details.

+

+    http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,

+    including FreeRTOS+Trace - an indispensable productivity tool, a DOS

+    compatible FAT file system, and our tiny thread aware UDP/IP stack.

+

+    http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High

+    Integrity Systems to sell under the OpenRTOS brand.  Low cost OpenRTOS

+    licenses offer ticketed support, indemnification and middleware.

+

+    http://www.SafeRTOS.com - High Integrity Systems also provide a safety

+    engineered and independently SIL3 certified version for use in safety and

+    mission critical applications that require provable dependability.

+

+    1 tab == 4 spaces!

+*/

+

+/*

+ * Provides the two timers sources for the standard demo IntQueue test.  Also

+ * includes a high frequency timer to maximise the interrupt nesting achieved.

+ */

+

+/* Standard includes. */

+#include <limits.h>

+

+/* Scheduler includes. */

+#include "FreeRTOS.h"

+#include "task.h"

+

+/* Demo includes. */

+#include "IntQueueTimer.h"

+#include "IntQueue.h"

+

+/* System includes. */

+#include "board.h"

+#include "asf.h"

+

+/* The frequencies at which the first two timers expire are slightly offset to

+ensure they don't remain synchronised.  The frequency of the highest priority

+interrupt is 20 times faster so really hammers the interrupt entry and exit

+code. */

+#define tmrTIMER_0_FREQUENCY	( 2000UL )

+#define tmrTIMER_1_FREQUENCY	( 1003UL )

+#define tmrTIMER_2_FREQUENCY	( 20000UL )

+

+/* Priorities used by the timer interrupts - these are set differently to make

+nesting likely/common.  The high frequency timer operates above the max

+system call interrupt priority, but does not use the RTOS API. */

+#define tmrTIMER_0_PRIORITY		( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY )

+#define tmrTIMER_1_PRIORITY		( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY + 1 )

+#define tmrTIMER_2_PRIORITY		( configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY - 1 )

+

+/* The channels used within the TC0 timer. */

+#define tmrTIMER_0_CHANNEL		( 0 )

+#define tmrTIMER_1_CHANNEL		( 1 )

+#define tmrTIMER_2_CHANNEL		( 2 )

+

+/* TC register bit specifics. */

+#define tmrTRIGGER_ON_RC		( 1UL << 4UL )

+#define trmDIVIDER				( 128 )

+

+/*-----------------------------------------------------------*/

+

+/* Handers for the timer interrupts. */

+void TC0_Handler( void );

+void TC1_Handler( void );

+void TC2_Handler( void );

+

+/*-----------------------------------------------------------*/

+

+/* Incremented by the high frequency timer, which operates above the max

+syscall interrupt priority.  This is just for inspection. */

+volatile uint32_t ulHighFrequencyTimerInterrupts = 0;

+

+/*-----------------------------------------------------------*/

+

+void vInitialiseTimerForIntQueueTest( void )

+{

+uint32_t ulInputFrequency;

+

+	/* Calculate the frequency of the clock that feeds the TC. */

+	ulInputFrequency = configCPU_CLOCK_HZ;

+	ulInputFrequency /= trmDIVIDER;

+

+	/* Three channels are used - two that run at or under 

+	configMAX_SYSCALL_INTERRUPT_PRIORITY, and one that runs over

+	configMAX_SYSCALL_INTERRUPT_PRIORITY. */

+	sysclk_enable_peripheral_clock( ID_TC0 );

+	sysclk_enable_peripheral_clock( ID_TC1 );

+	sysclk_enable_peripheral_clock( ID_TC2 );

+	

+	/* Init TC channels to waveform mode - up mode clean on RC match. */

+	tc_init( TC0, tmrTIMER_0_CHANNEL, TC_CMR_TCCLKS_TIMER_CLOCK4 | TC_CMR_WAVE | TC_CMR_ACPC_CLEAR | TC_CMR_CPCTRG );

+	tc_init( TC0, tmrTIMER_1_CHANNEL, TC_CMR_TCCLKS_TIMER_CLOCK4 | TC_CMR_WAVE | TC_CMR_ACPC_CLEAR | TC_CMR_CPCTRG );

+	tc_init( TC0, tmrTIMER_2_CHANNEL, TC_CMR_TCCLKS_TIMER_CLOCK4 | TC_CMR_WAVE | TC_CMR_ACPC_CLEAR | TC_CMR_CPCTRG );

+	

+	tc_enable_interrupt( TC0, tmrTIMER_0_CHANNEL, tmrTRIGGER_ON_RC );

+	tc_enable_interrupt( TC0, tmrTIMER_1_CHANNEL, tmrTRIGGER_ON_RC );

+	tc_enable_interrupt( TC0, tmrTIMER_2_CHANNEL, tmrTRIGGER_ON_RC );

+	

+	tc_write_rc( TC0, tmrTIMER_0_CHANNEL, ( ulInputFrequency / tmrTIMER_0_FREQUENCY ) );

+	tc_write_rc( TC0, tmrTIMER_1_CHANNEL, ( ulInputFrequency / tmrTIMER_1_FREQUENCY ) );

+	tc_write_rc( TC0, tmrTIMER_2_CHANNEL, ( ulInputFrequency / tmrTIMER_2_FREQUENCY ) );

+

+	NVIC_SetPriority( TC0_IRQn, tmrTIMER_0_PRIORITY );

+	NVIC_SetPriority( TC1_IRQn, tmrTIMER_1_PRIORITY );

+	NVIC_SetPriority( TC2_IRQn, tmrTIMER_2_PRIORITY );

+

+	NVIC_EnableIRQ( TC0_IRQn );

+	NVIC_EnableIRQ( TC1_IRQn );

+	NVIC_EnableIRQ( TC2_IRQn );

+

+	tc_start( TC0, tmrTIMER_0_CHANNEL );

+	tc_start( TC0, tmrTIMER_1_CHANNEL );

+	tc_start( TC0, tmrTIMER_2_CHANNEL );

+}

+/*-----------------------------------------------------------*/

+

+void TC0_Handler( void )

+{

+	/* Handler for the first timer in the IntQueue test.  Was the interrupt

+	caused by a compare on RC? */

+	if( ( tc_get_status( TC0, tmrTIMER_0_CHANNEL ) & ~TC_SR_CPCS ) != 0 )

+	{

+		portYIELD_FROM_ISR( xFirstTimerHandler() );	

+	}

+}

+/*-----------------------------------------------------------*/

+

+void TC1_Handler( void )

+{

+	/* Handler for the second timer in the IntQueue test.  Was the interrupt

+	caused by a compare on RC? */

+	if( ( tc_get_status( TC0, tmrTIMER_1_CHANNEL ) & ~TC_SR_CPCS ) != 0 )

+	{

+		portYIELD_FROM_ISR( xSecondTimerHandler() );

+	}

+}

+/*-----------------------------------------------------------*/

+

+void TC2_Handler( void )

+{

+	/* Handler for the high frequency timer that does nothing but increment a

+	variable to give an indication that it is running.  Was the interrupt caused

+	by a compare on RC? */

+	if( ( tc_get_status( TC0, tmrTIMER_2_CHANNEL ) & ~TC_SR_CPCS ) != 0 )

+	{

+		ulHighFrequencyTimerInterrupts++;

+	}

+}

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/IntQueueTimer.h b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/IntQueueTimer.h
new file mode 100644
index 0000000..df2b822
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/IntQueueTimer.h
@@ -0,0 +1,74 @@
+/*

+    FreeRTOS V8.1.1 - Copyright (C) 2014 Real Time Engineers Ltd.

+    All rights reserved

+

+    VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION.

+

+    ***************************************************************************

+     *                                                                       *

+     *    FreeRTOS provides completely free yet professionally developed,    *

+     *    robust, strictly quality controlled, supported, and cross          *

+     *    platform software that has become a de facto standard.             *

+     *                                                                       *

+     *    Help yourself get started quickly and support the FreeRTOS         *

+     *    project by purchasing a FreeRTOS tutorial book, reference          *

+     *    manual, or both from: http://www.FreeRTOS.org/Documentation        *

+     *                                                                       *

+     *    Thank you!                                                         *

+     *                                                                       *

+    ***************************************************************************

+

+    This file is part of the FreeRTOS distribution.

+

+    FreeRTOS is free software; you can redistribute it and/or modify it under

+    the terms of the GNU General Public License (version 2) as published by the

+    Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception.

+

+    >>!   NOTE: The modification to the GPL is included to allow you to     !<<

+    >>!   distribute a combined work that includes FreeRTOS without being   !<<

+    >>!   obliged to provide the source code for proprietary components     !<<

+    >>!   outside of the FreeRTOS kernel.                                   !<<

+

+    FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY

+    WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS

+    FOR A PARTICULAR PURPOSE.  Full license text is available from the following

+    link: http://www.freertos.org/a00114.html

+

+    1 tab == 4 spaces!

+

+    ***************************************************************************

+     *                                                                       *

+     *    Having a problem?  Start by reading the FAQ "My application does   *

+     *    not run, what could be wrong?"                                     *

+     *                                                                       *

+     *    http://www.FreeRTOS.org/FAQHelp.html                               *

+     *                                                                       *

+    ***************************************************************************

+

+    http://www.FreeRTOS.org - Documentation, books, training, latest versions,

+    license and Real Time Engineers Ltd. contact details.

+

+    http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,

+    including FreeRTOS+Trace - an indispensable productivity tool, a DOS

+    compatible FAT file system, and our tiny thread aware UDP/IP stack.

+

+    http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High

+    Integrity Systems to sell under the OpenRTOS brand.  Low cost OpenRTOS

+    licenses offer ticketed support, indemnification and middleware.

+

+    http://www.SafeRTOS.com - High Integrity Systems also provide a safety

+    engineered and independently SIL3 certified version for use in safety and

+    mission critical applications that require provable dependability.

+

+    1 tab == 4 spaces!

+*/

+

+#ifndef INT_QUEUE_TIMER_H

+#define INT_QUEUE_TIMER_H

+

+void vInitialiseTimerForIntQueueTest( void );

+BaseType_t xTimer0Handler( void );

+BaseType_t xTimer1Handler( void );

+

+#endif

+

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf.h b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf.h
index 3021332..902796e 100644
--- a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf.h
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf.h
@@ -1,54 +1,56 @@
-/**
- * \file
- *
- * \brief Autogenerated API include file for the Atmel Software Framework (ASF)
- *
- * Copyright (c) 2012 Atmel Corporation. All rights reserved.
- *
- * \asf_license_start
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *
- * 1. Redistributions of source code must retain the above copyright notice,
- *    this list of conditions and the following disclaimer.
- *
- * 2. Redistributions in binary form must reproduce the above copyright notice,
- *    this list of conditions and the following disclaimer in the documentation
- *    and/or other materials provided with the distribution.
- *
- * 3. The name of Atmel may not be used to endorse or promote products derived
- *    from this software without specific prior written permission.
- *
- * 4. This software may only be redistributed and used in connection with an
- *    Atmel microcontroller product.
- *
- * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED
- * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
- * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE
- * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR
- * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
- * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
- * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
- * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
- * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
- * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
- * POSSIBILITY OF SUCH DAMAGE.
- *
- * \asf_license_stop
- *
- */
-
-#ifndef ASF_H
-#define ASF_H
-
-/*
- * This file includes all API header files for the selected drivers from ASF.
- * Note: There might be duplicate includes required by more than one driver.
- *
- * The file is automatically generated and will be re-written when
- * running the ASF driver selector tool. Any changes will be discarded.
- */
+/**

+ * \file

+ *

+ * \brief Autogenerated API include file for the Atmel Software Framework (ASF)

+ *

+ * Copyright (c) 2012 Atmel Corporation. All rights reserved.

+ *

+ * \asf_license_start

+ *

+ * \page License

+ *

+ * Redistribution and use in source and binary forms, with or without

+ * modification, are permitted provided that the following conditions are met:

+ *

+ * 1. Redistributions of source code must retain the above copyright notice,

+ *    this list of conditions and the following disclaimer.

+ *

+ * 2. Redistributions in binary form must reproduce the above copyright notice,

+ *    this list of conditions and the following disclaimer in the documentation

+ *    and/or other materials provided with the distribution.

+ *

+ * 3. The name of Atmel may not be used to endorse or promote products derived

+ *    from this software without specific prior written permission.

+ *

+ * 4. This software may only be redistributed and used in connection with an

+ *    Atmel microcontroller product.

+ *

+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED

+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF

+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE

+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR

+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL

+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS

+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)

+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,

+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN

+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE

+ * POSSIBILITY OF SUCH DAMAGE.

+ *

+ * \asf_license_stop

+ *

+ */

+

+#ifndef ASF_H

+#define ASF_H

+

+/*

+ * This file includes all API header files for the selected drivers from ASF.

+ * Note: There might be duplicate includes required by more than one driver.

+ *

+ * The file is automatically generated and will be re-written when

+ * running the ASF driver selector tool. Any changes will be discarded.

+ */

 

 // From module: Common SAM compiler driver

 #include <compiler.h>

@@ -60,21 +62,32 @@
 // From module: Generic board support

 #include <board.h>

 

-// From module: Interrupt management - SAM3 implementation

+// From module: Interrupt management - SAM implementation

 #include <interrupt.h>

 

 // From module: PIO - Parallel Input/Output Controller

 #include <pio.h>

-#include <pio_handler.h>

 

 // From module: PMC - Power Management Controller

 #include <pmc.h>

 #include <sleep.h>

 

+// From module: Part identification macros

+#include <parts.h>

+

+// From module: SAM4S startup code

+#include <exceptions.h>

+

 // From module: System Clock Control - SAM4S implementation

 #include <sysclk.h>

 

+// From module: TC - Timer Counter

+#include <tc.h>

+

 // From module: USART - Univ. Syn Async Rec/Trans

 #include <usart.h>

-
-#endif // ASF_H
+

+// From module: pio_handler support enabled

+#include <pio_handler.h>

+

+#endif // ASF_H

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf/sam/drivers/tc/tc.c b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf/sam/drivers/tc/tc.c
new file mode 100644
index 0000000..d2bf3ae
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf/sam/drivers/tc/tc.c
@@ -0,0 +1,580 @@
+/**

+ * \file

+ *

+ * \brief Timer Counter (TC) driver for SAM.

+ *

+ * Copyright (c) 2011-2012 Atmel Corporation. All rights reserved.

+ *

+ * \asf_license_start

+ *

+ * \page License

+ *

+ * Redistribution and use in source and binary forms, with or without

+ * modification, are permitted provided that the following conditions are met:

+ *

+ * 1. Redistributions of source code must retain the above copyright notice,

+ *    this list of conditions and the following disclaimer.

+ *

+ * 2. Redistributions in binary form must reproduce the above copyright notice,

+ *    this list of conditions and the following disclaimer in the documentation

+ *    and/or other materials provided with the distribution.

+ *

+ * 3. The name of Atmel may not be used to endorse or promote products derived

+ *    from this software without specific prior written permission.

+ *

+ * 4. This software may only be redistributed and used in connection with an

+ *    Atmel microcontroller product.

+ *

+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED

+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF

+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE

+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR

+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL

+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS

+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)

+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,

+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN

+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE

+ * POSSIBILITY OF SUCH DAMAGE.

+ *

+ * \asf_license_stop

+ *

+ */

+

+#include <assert.h>

+#include "tc.h"

+

+/// @cond 0

+/**INDENT-OFF**/

+#ifdef __cplusplus

+extern "C" {

+#endif

+/**INDENT-ON**/

+/// @endcond

+

+#define TC_WPMR_WPKEY_VALUE TC_WPMR_WPKEY((uint32_t)0x54494D)

+

+/**

+ * \defgroup sam_drivers_tc_group Timer Counter (TC)

+ *

+ * The Timer Counter (TC) includes three identical 32-bit Timer Counter

+ * channels. Each channel can be independently programmed to perform a wide

+ * range of functions including frequency measurement, event counting,

+ * interval measurement, pulse generation, delay timing and pulse width

+ * modulation.

+ *

+ * @{

+ */

+

+/**

+ * \brief Configure TC for timer, waveform generation or capture.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ * \param ul_mode Control mode register value to set.

+ *

+ * \attention If the TC is configured for waveform generation, the external

+ * event selection (EEVT) should only be set to \c TC_CMR_EEVT_TIOB or the

+ * equivalent value \c 0 if it really is the intention to use TIOB as an

+ * external event trigger.\n

+ * This is because the setting forces TIOB to be an input even if the

+ * external event trigger has not been enabled with \c TC_CMR_ENETRG, and

+ * thus prevents normal operation of TIOB.

+ */

+void tc_init(Tc *p_tc, uint32_t ul_channel, uint32_t ul_mode)

+{

+	TcChannel *tc_channel;

+

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+	tc_channel = p_tc->TC_CHANNEL + ul_channel;

+

+	/*  Disable TC clock. */

+	tc_channel->TC_CCR = TC_CCR_CLKDIS;

+

+	/*  Disable interrupts. */

+	tc_channel->TC_IDR = 0xFFFFFFFF;

+

+	/*  Clear status register. */

+	tc_channel->TC_SR;

+

+	/*  Set mode. */

+	tc_channel->TC_CMR = ul_mode;

+}

+

+/**

+ * \brief Asserts a SYNC signal to generate a software trigger to

+ * all channels.

+ *

+ * \param p_tc Pointer to a TC instance.

+ *

+ */

+void tc_sync_trigger(Tc *p_tc)

+{

+  p_tc->TC_BCR = TC_BCR_SYNC;

+}

+

+/**

+ * \brief Configure TC Block mode.

+ * \note tc_init() must be called first.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_blockmode Block mode register value to set.

+ *

+ */

+void tc_set_block_mode(Tc *p_tc, uint32_t ul_blockmode)

+{

+	p_tc->TC_BMR = ul_blockmode;

+}

+

+#if (!SAM3U)

+

+/**

+ * \brief Configure TC for 2-bit Gray Counter for Stepper Motor.

+ * \note tc_init() must be called first.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ * \param ul_steppermode Stepper motor mode register value to set.

+ *

+ * \return 0 for OK.

+ */

+uint32_t tc_init_2bit_gray(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_steppermode)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	p_tc->TC_CHANNEL[ul_channel].TC_SMMR = ul_steppermode;

+	return 0;

+}

+

+#endif

+

+/**

+ * \brief Start TC clock counter on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ */

+void tc_start(Tc *p_tc, uint32_t ul_channel)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	p_tc->TC_CHANNEL[ul_channel].TC_CCR = TC_CCR_CLKEN | TC_CCR_SWTRG;

+}

+

+/**

+ * \brief Stop TC clock counter on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ */

+void tc_stop(Tc *p_tc, uint32_t ul_channel)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	p_tc->TC_CHANNEL[ul_channel].TC_CCR = TC_CCR_CLKDIS;

+}

+

+/**

+ * \brief Read RA TC counter on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ *

+ * \return RA value.

+ */

+int tc_read_ra(Tc *p_tc, uint32_t ul_channel)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	return p_tc->TC_CHANNEL[ul_channel].TC_RA;

+}

+

+/**

+ * \brief Read RB TC counter on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ *

+ * \return RB value.

+ */

+int tc_read_rb(Tc *p_tc, uint32_t ul_channel)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	return p_tc->TC_CHANNEL[ul_channel].TC_RB;

+}

+

+/**

+ * \brief Read RC TC counter on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ *

+ * \return RC value.

+ */

+int tc_read_rc(Tc *p_tc, uint32_t ul_channel)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	return p_tc->TC_CHANNEL[ul_channel].TC_RC;

+}

+

+/**

+ * \brief Write RA TC counter on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ * \param ul_value Value to set in register.

+ */

+void tc_write_ra(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_value)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	p_tc->TC_CHANNEL[ul_channel].TC_RA = ul_value;

+}

+

+/**

+ * \brief Write RB TC counter on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ * \param ul_value Value to set in register.

+ */

+void tc_write_rb(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_value)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	p_tc->TC_CHANNEL[ul_channel].TC_RB = ul_value;

+}

+

+/**

+ * \brief Write RC TC counter on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ * \param ul_value Value to set in register.

+ */

+void tc_write_rc(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_value)

+{

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+

+	p_tc->TC_CHANNEL[ul_channel].TC_RC = ul_value;

+}

+

+/**

+ * \brief Enable TC interrupts on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ * \param ul_sources Interrupt sources bit map.

+ */

+void tc_enable_interrupt(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_sources)

+{

+	TcChannel *tc_channel;

+

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+	tc_channel = p_tc->TC_CHANNEL + ul_channel;

+	tc_channel->TC_IER = ul_sources;

+}

+

+/**

+ * \brief Disable TC interrupts on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ * \param ul_sources Interrupt sources bit map.

+ */

+void tc_disable_interrupt(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_sources)

+{

+	TcChannel *tc_channel;

+

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+	tc_channel = p_tc->TC_CHANNEL + ul_channel;

+	tc_channel->TC_IDR = ul_sources;

+}

+

+/**

+ * \brief Read TC interrupt mask on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ *

+ * \return The interrupt mask value.

+ */

+uint32_t tc_get_interrupt_mask(Tc *p_tc, uint32_t ul_channel)

+{

+	TcChannel *tc_channel;

+

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+	tc_channel = p_tc->TC_CHANNEL + ul_channel;

+	return tc_channel->TC_IMR;

+}

+

+/**

+ * \brief Get current status on the selected channel.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_channel Channel to configure.

+ *

+ * \return The current TC status.

+ */

+uint32_t tc_get_status(Tc *p_tc, uint32_t ul_channel)

+{

+	TcChannel *tc_channel;

+

+	Assert(ul_channel <

+			(sizeof(p_tc->TC_CHANNEL) / sizeof(p_tc->TC_CHANNEL[0])));

+	tc_channel = p_tc->TC_CHANNEL + ul_channel;

+	return tc_channel->TC_SR;

+}

+

+/* TC divisor used to find the lowest acceptable timer frequency */

+#define TC_DIV_FACTOR 65536

+

+#if (!SAM4L)

+

+#ifndef FREQ_SLOW_CLOCK_EXT

+#define FREQ_SLOW_CLOCK_EXT 32768 /* External slow clock frequency (hz) */

+#endif

+

+/**

+ * \brief Find the best MCK divisor.

+ *

+ * Finds the best MCK divisor given the timer frequency and MCK. The result

+ * is guaranteed to satisfy the following equation:

+ * \code

+ *   (MCK / (DIV * 65536)) <= freq <= (MCK / DIV)

+ * \endcode

+ * with DIV being the lowest possible value,

+ * to maximize timing adjust resolution.

+ *

+ * \param ul_freq  Desired timer frequency.

+ * \param ul_mck  Master clock frequency.

+ * \param p_uldiv  Divisor value.

+ * \param p_ultcclks  TCCLKS field value for divisor.

+ * \param ul_boardmck  Board clock frequency.

+ *

+ * \return 1 if a proper divisor has been found, otherwise 0.

+ */

+uint32_t tc_find_mck_divisor(uint32_t ul_freq, uint32_t ul_mck,

+		uint32_t *p_uldiv, uint32_t *p_ultcclks, uint32_t ul_boardmck)

+{

+	const uint32_t divisors[5] = { 2, 8, 32, 128,

+			ul_boardmck / FREQ_SLOW_CLOCK_EXT };

+	uint32_t ul_index;

+	uint32_t ul_high, ul_low;

+

+	/*  Satisfy frequency bound. */

+	for (ul_index = 0;

+			ul_index < (sizeof(divisors) / sizeof(divisors[0]));

+			ul_index++) {

+		ul_high = ul_mck / divisors[ul_index];

+		ul_low  = ul_high / TC_DIV_FACTOR;

+		if (ul_freq > ul_high) {

+			return 0;

+		} else if (ul_freq >= ul_low) {

+			break;

+		}

+	}

+	if (ul_index >= (sizeof(divisors) / sizeof(divisors[0]))) {

+		return 0;

+	}

+

+	/*  Store results. */

+	if (p_uldiv) {

+		*p_uldiv = divisors[ul_index];

+	}

+

+	if (p_ultcclks) {

+		*p_ultcclks = ul_index;

+	}

+

+	return 1;

+}

+

+#endif

+

+#if (SAM4L)

+/**

+ * \brief Find the best PBA clock divisor.

+ *

+ * Finds the best divisor given the timer frequency and PBA clock. The result

+ * is guaranteed to satisfy the following equation:

+ * \code

+ *   (ul_pbaclk / (2* DIV * 65536)) <= freq <= (ul_pbaclk / (2* DIV))

+ * \endcode

+ * with DIV being the lowest possible value,

+ * to maximize timing adjust resolution.

+ *

+ * \param ul_freq  Desired timer frequency.

+ * \param ul_mck  PBA clock frequency.

+ * \param p_uldiv  Divisor value.

+ * \param p_ultcclks  TCCLKS field value for divisor.

+ * \param ul_boardmck  useless here.

+ *

+ * \return 1 if a proper divisor has been found, otherwise 0.

+ */

+uint32_t tc_find_mck_divisor(uint32_t ul_freq, uint32_t ul_mck,

+		uint32_t *p_uldiv, uint32_t *p_ultcclks, uint32_t ul_boardmck)

+{

+	const uint32_t divisors[5] = { 0, 2, 8, 32, 128};

+	uint32_t ul_index;

+	uint32_t ul_high, ul_low;

+

+	UNUSED(ul_boardmck);

+

+	/*  Satisfy frequency bound. */

+	for (ul_index = 1;

+			ul_index < (sizeof(divisors) / sizeof(divisors[0]));

+			ul_index++) {

+		ul_high = ul_mck / divisors[ul_index];

+		ul_low  = ul_high / TC_DIV_FACTOR;

+		if (ul_freq > ul_high) {

+			return 0;

+		} else if (ul_freq >= ul_low) {

+			break;

+		}

+	}

+	if (ul_index >= (sizeof(divisors) / sizeof(divisors[0]))) {

+		return 0;

+	}

+

+	/*  Store results. */

+	if (p_uldiv) {

+		*p_uldiv = divisors[ul_index];

+	}

+

+	if (p_ultcclks) {

+		*p_ultcclks = ul_index;

+	}

+

+	return 1;

+}

+

+#endif

+

+#if (!SAM4L)

+

+/**

+ * \brief Enable TC QDEC interrupts.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_sources Interrupts to be enabled.

+ */

+void tc_enable_qdec_interrupt(Tc *p_tc, uint32_t ul_sources)

+{

+	p_tc->TC_QIER = ul_sources;

+}

+

+/**

+ * \brief Disable TC QDEC interrupts.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_sources Interrupts to be disabled.

+ */

+void tc_disable_qdec_interrupt(Tc *p_tc, uint32_t ul_sources)

+{

+	p_tc->TC_QIDR = ul_sources;

+}

+

+/**

+ * \brief Read TC QDEC interrupt mask.

+ *

+ * \param p_tc Pointer to a TC instance.

+ *

+ * \return The interrupt mask value.

+ */

+uint32_t tc_get_qdec_interrupt_mask(Tc *p_tc)

+{

+	return p_tc->TC_QIMR;

+}

+

+/**

+ * \brief Get current QDEC status.

+ *

+ * \param p_tc Pointer to a TC instance.

+ *

+ * \return The current TC status.

+ */

+uint32_t tc_get_qdec_interrupt_status(Tc *p_tc)

+{

+	return p_tc->TC_QISR;

+}

+

+#endif

+

+#if (!SAM3U)

+

+/**

+ * \brief Enable or disable write protection of TC registers.

+ *

+ * \param p_tc Pointer to a TC instance.

+ * \param ul_enable 1 to enable, 0 to disable.

+ */

+void tc_set_writeprotect(Tc *p_tc, uint32_t ul_enable)

+{

+	if (ul_enable) {

+		p_tc->TC_WPMR = TC_WPMR_WPKEY_VALUE | TC_WPMR_WPEN;

+	} else {

+		p_tc->TC_WPMR = TC_WPMR_WPKEY_VALUE;

+	}

+}

+

+#endif

+

+#if SAM4L

+

+/**

+ * \brief Indicate features.

+ *

+ * \param p_tc Pointer to a TC instance.

+ *

+ * \return TC_FEATURES value.

+ */

+uint32_t tc_get_feature(Tc *p_tc)

+{

+	return p_tc->TC_FEATURES;

+}

+

+/**

+ * \brief Indicate version.

+ *

+ * \param p_tc Pointer to a TC instance.

+ *

+ * \return TC_VERSION value.

+ */

+uint32_t tc_get_version(Tc *p_tc)

+{

+	return p_tc->TC_VERSION;

+}

+

+#endif

+

+//@}

+

+/// @cond 0

+/**INDENT-OFF**/

+#ifdef __cplusplus

+}

+#endif

+/**INDENT-ON**/

+/// @endcond

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf/sam/drivers/tc/tc.h b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf/sam/drivers/tc/tc.h
new file mode 100644
index 0000000..05cdd10
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/asf/sam/drivers/tc/tc.h
@@ -0,0 +1,113 @@
+/**

+ * \file

+ *

+ * \brief Timer Counter (TC) driver for SAM.

+ *

+ * Copyright (c) 2011-2012 Atmel Corporation. All rights reserved.

+ *

+ * \asf_license_start

+ *

+ * \page License

+ *

+ * Redistribution and use in source and binary forms, with or without

+ * modification, are permitted provided that the following conditions are met:

+ *

+ * 1. Redistributions of source code must retain the above copyright notice,

+ *    this list of conditions and the following disclaimer.

+ *

+ * 2. Redistributions in binary form must reproduce the above copyright notice,

+ *    this list of conditions and the following disclaimer in the documentation

+ *    and/or other materials provided with the distribution.

+ *

+ * 3. The name of Atmel may not be used to endorse or promote products derived

+ *    from this software without specific prior written permission.

+ *

+ * 4. This software may only be redistributed and used in connection with an

+ *    Atmel microcontroller product.

+ *

+ * THIS SOFTWARE IS PROVIDED BY ATMEL "AS IS" AND ANY EXPRESS OR IMPLIED

+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF

+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT ARE

+ * EXPRESSLY AND SPECIFICALLY DISCLAIMED. IN NO EVENT SHALL ATMEL BE LIABLE FOR

+ * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL

+ * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS

+ * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)

+ * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,

+ * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN

+ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE

+ * POSSIBILITY OF SUCH DAMAGE.

+ *

+ * \asf_license_stop

+ *

+ */

+

+#ifndef TC_H_INCLUDED

+#define TC_H_INCLUDED

+

+#include "compiler.h"

+

+/// @cond 0

+/**INDENT-OFF**/

+#ifdef __cplusplus

+extern "C" {

+#endif

+/**INDENT-ON**/

+/// @endcond

+

+void tc_init(Tc *p_tc, uint32_t ul_Channel, uint32_t ul_Mode);

+void tc_sync_trigger(Tc *p_tc);

+void tc_set_block_mode(Tc *p_tc, uint32_t ul_blockmode);

+

+#if (!SAM3U)

+uint32_t tc_init_2bit_gray(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_steppermode);

+#endif

+

+void tc_start(Tc *p_tc, uint32_t ul_channel);

+void tc_stop(Tc *p_tc, uint32_t ul_channel);

+

+int tc_read_ra(Tc *p_tc, uint32_t ul_channel);

+int tc_read_rb(Tc *p_tc, uint32_t ul_channel);

+int tc_read_rc(Tc *p_tc, uint32_t ul_channel);

+

+void tc_write_ra(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_value);

+void tc_write_rb(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_value);

+void tc_write_rc(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_value);

+

+uint32_t tc_find_mck_divisor(uint32_t ul_freq, uint32_t ul_mck,

+		uint32_t *p_uldiv, uint32_t *ul_tcclks, uint32_t ul_boardmck);

+void tc_enable_interrupt(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_sources);

+void tc_disable_interrupt(Tc *p_tc, uint32_t ul_channel,

+		uint32_t ul_sources);

+uint32_t tc_get_interrupt_mask(Tc *p_tc, uint32_t ul_channel);

+uint32_t tc_get_status(Tc *p_tc, uint32_t ul_channel);

+#if (!SAM4L)

+void tc_enable_qdec_interrupt(Tc *p_tc, uint32_t ul_sources);

+void tc_disable_qdec_interrupt(Tc *p_tc, uint32_t ul_sources);

+uint32_t tc_get_qdec_interrupt_mask(Tc *p_tc);

+uint32_t tc_get_qdec_interrupt_status(Tc *p_tc);

+#endif

+

+#if (!SAM3U)

+void tc_set_writeprotect(Tc *p_tc, uint32_t ul_enable);

+#endif

+

+#if SAM4L

+uint32_t tc_get_feature(Tc *p_tc);

+uint32_t tc_get_version(Tc *p_tc);

+

+#endif

+

+/// @cond 0

+/**INDENT-OFF**/

+#ifdef __cplusplus

+}

+#endif

+/**INDENT-ON**/

+/// @endcond

+

+#endif /* TC_H_INCLUDED */

diff --git a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/main_full.c b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/main_full.c
index 6cc81b7..3f48aee 100644
--- a/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/main_full.c
+++ b/FreeRTOS/Demo/CORTEX_M4_ATSAM4S_Atmel_Studio/src/main_full.c
@@ -123,6 +123,7 @@
 #include "partest.h"

 #include "comtest2.h"

 #include "QueueSet.h"

+#include "IntQueue.h"

 

 /* Atmel library includes. */

 #include "asf.h"

@@ -180,6 +181,7 @@
 	/* Start all the other standard demo/test tasks.  The have not particular

 	functionality, but do demonstrate how to use the FreeRTOS API and test the

 	kernel port. */

+	vStartInterruptQueueTasks();

 	vStartIntegerMathTasks( tskIDLE_PRIORITY );

 	vStartDynamicPriorityTasks();

 	vStartBlockingQueueTasks( mainBLOCK_Q_PRIORITY );

@@ -232,6 +234,11 @@
 	/* Check all the demo tasks (other than the flash tasks) to ensure

 	they are all still running, and that none have detected an error. */

 

+	if( xAreIntQueueTasksStillRunning() != pdTRUE )

+	{

+		ulErrorFound = pdTRUE;

+	}

+

 	if( xAreIntegerMathsTaskStillRunning() != pdTRUE )

 	{

 		ulErrorFound = pdTRUE;