From e73b0b3848abaa25e4698a83c309b9d19500253c Mon Sep 17 00:00:00 2001 From: richardbarry Date: Thu, 28 Apr 2011 19:37:30 +0000 Subject: [PATCH] Add the Keil project to the SmartFusion demo directory, and update the source code so it compiles with both IAR and Keil. git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@1398 1d2547de-c912-0410-9cb9-b8ca96c0e9e2 --- .../FreeRTOSConfig.h | 2 +- .../CMSIS/startup_keil/startus_a2fxxxm3.s | 610 ++++++++ .../mss_ethernet_mac/mss_ethernet_mac_regs.h | 8 +- .../RTOSDemo_IAR.ewp | 1 + .../RTOSDemo_Keil.uvopt | 978 +++++++++++++ .../RTOSDemo_Keil.uvproj | 1298 +++++++++++++++++ .../WebServer/httpd-cgi.c | 3 +- Demo/CORTEX_A2F200_IAR_and_Keil/uIP_Task.c | 4 +- 8 files changed, 2898 insertions(+), 6 deletions(-) create mode 100644 Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/CMSIS/startup_keil/startus_a2fxxxm3.s create mode 100644 Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_Keil.uvopt create mode 100644 Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_Keil.uvproj diff --git a/Demo/CORTEX_A2F200_IAR_and_Keil/FreeRTOSConfig.h b/Demo/CORTEX_A2F200_IAR_and_Keil/FreeRTOSConfig.h index 17a636d40..3c23819f4 100644 --- a/Demo/CORTEX_A2F200_IAR_and_Keil/FreeRTOSConfig.h +++ b/Demo/CORTEX_A2F200_IAR_and_Keil/FreeRTOSConfig.h @@ -63,7 +63,7 @@ /* Use a guard to ensure the following few definitions are'nt included in assembly files that include this header file. */ -#ifdef __ICCARM__ +#ifndef __IASMARM__ #include #include extern uint32_t SystemFrequency; diff --git a/Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/CMSIS/startup_keil/startus_a2fxxxm3.s b/Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/CMSIS/startup_keil/startus_a2fxxxm3.s new file mode 100644 index 000000000..cdd3ebc82 --- /dev/null +++ b/Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/CMSIS/startup_keil/startus_a2fxxxm3.s @@ -0,0 +1,610 @@ +;/******************************************************************************* +; * SmartFusion startup code for Keil-MDK. +; * +; * This file is based on an ARM provided example. +; * +; * SVN $Revision: 2536 $ +; * SVN $Date: 2010-04-08 16:57:12 +0100 (Thu, 08 Apr 2010) $ +; */ + +; *------- <<< Use Configuration Wizard in Context Menu >>> ------------------ + + +; Stack Configuration +; Stack Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + +Stack_Size EQU 0x00002000 + + AREA STACK, NOINIT, READWRITE, ALIGN=3 +Stack_Mem SPACE Stack_Size +__initial_sp + + +; Heap Configuration +; Heap Size (in Bytes) <0x0-0xFFFFFFFF:8> +; + +Heap_Size EQU 0x00000000 + + AREA HEAP, NOINIT, READWRITE, ALIGN=3 +__heap_base +Heap_Mem SPACE Heap_Size +__heap_limit + + + PRESERVE8 + THUMB + + +;------------------------------------------------------------------------------- +; Vector Table Mapped to Address 0 at Reset + AREA RESET, DATA, READONLY + EXPORT __Vectors + EXPORT __Vectors_End + EXPORT __Vectors_Size + + +__Vectors DCD __initial_sp ; Top of Stack + DCD Reset_Handler ; Reset Handler + DCD NMI_Handler ; NMI Handler + DCD HardFault_Handler ; Hard Fault Handler + DCD MemManage_Handler ; MPU Fault Handler + DCD BusFault_Handler ; Bus Fault Handler + DCD UsageFault_Handler ; Usage Fault Handler + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD 0 ; Reserved + DCD SVC_Handler ; SVCall Handler + DCD DebugMon_Handler ; Debug Monitor Handler + DCD 0 ; Reserved + DCD PendSV_Handler ; PendSV Handler + DCD SysTick_Handler ; SysTick Handler + + ; External Interrupts + DCD WdogWakeup_IRQHandler + DCD BrownOut_1_5V_IRQHandler + DCD BrownOut_3_3V_IRQHandler + DCD RTC_Match_IRQHandler + DCD RTCIF_Pub_IRQHandler + DCD EthernetMAC_IRQHandler + DCD IAP_IRQHandler + DCD ENVM0_IRQHandler + DCD ENVM1_IRQHandler + DCD DMA_IRQHandler + DCD UART0_IRQHandler + DCD UART1_IRQHandler + DCD SPI0_IRQHandler + DCD SPI1_IRQHandler + DCD I2C0_IRQHandler + DCD I2C0_SMBAlert_IRQHandler + DCD I2C0_SMBus_IRQHandler + DCD I2C1_IRQHandler + DCD I2C1_SMBAlert_IRQHandler + DCD I2C1_SMBus_IRQHandler + DCD Timer1_IRQHandler + DCD Timer2_IRQHandler + DCD PLL_Lock_IRQHandler + DCD PLL_LockLost_IRQHandler + DCD CommError_IRQHandler + DCD 0 + DCD 0 + DCD 0 + DCD 0 + DCD 0 + DCD 0 + DCD Fabric_IRQHandler + DCD GPIO0_IRQHandler + DCD GPIO1_IRQHandler + DCD GPIO2_IRQHandler + DCD GPIO3_IRQHandler + DCD GPIO4_IRQHandler + DCD GPIO5_IRQHandler + DCD GPIO6_IRQHandler + DCD GPIO7_IRQHandler + DCD GPIO8_IRQHandler + DCD GPIO9_IRQHandler + DCD GPIO10_IRQHandler + DCD GPIO11_IRQHandler + DCD GPIO12_IRQHandler + DCD GPIO13_IRQHandler + DCD GPIO14_IRQHandler + DCD GPIO15_IRQHandler + DCD GPIO16_IRQHandler + DCD GPIO17_IRQHandler + DCD GPIO18_IRQHandler + DCD GPIO19_IRQHandler + DCD GPIO20_IRQHandler + DCD GPIO21_IRQHandler + DCD GPIO22_IRQHandler + DCD GPIO23_IRQHandler + DCD GPIO24_IRQHandler + DCD GPIO25_IRQHandler + DCD GPIO26_IRQHandler + DCD GPIO27_IRQHandler + DCD GPIO28_IRQHandler + DCD GPIO29_IRQHandler + DCD GPIO30_IRQHandler + DCD GPIO31_IRQHandler + DCD ACE_PC0_Flag0_IRQHandler + DCD ACE_PC0_Flag1_IRQHandler + DCD ACE_PC0_Flag2_IRQHandler + DCD ACE_PC0_Flag3_IRQHandler + DCD ACE_PC1_Flag0_IRQHandler + DCD ACE_PC1_Flag1_IRQHandler + DCD ACE_PC1_Flag2_IRQHandler + DCD ACE_PC1_Flag3_IRQHandler + DCD ACE_PC2_Flag0_IRQHandler + DCD ACE_PC2_Flag1_IRQHandler + DCD ACE_PC2_Flag2_IRQHandler + DCD ACE_PC2_Flag3_IRQHandler + DCD ACE_ADC0_DataValid_IRQHandler + DCD ACE_ADC1_DataValid_IRQHandler + DCD ACE_ADC2_DataValid_IRQHandler + DCD ACE_ADC0_CalDone_IRQHandler + DCD ACE_ADC1_CalDone_IRQHandler + DCD ACE_ADC2_CalDone_IRQHandler + DCD ACE_ADC0_CalStart_IRQHandler + DCD ACE_ADC1_CalStart_IRQHandler + DCD ACE_ADC2_CalStart_IRQHandler + DCD ACE_Comp0_Fall_IRQHandler + DCD ACE_Comp1_Fall_IRQHandler + DCD ACE_Comp2_Fall_IRQHandler + DCD ACE_Comp3_Fall_IRQHandler + DCD ACE_Comp4_Fall_IRQHandler + DCD ACE_Comp5_Fall_IRQHandler + DCD ACE_Comp6_Fall_IRQHandler + DCD ACE_Comp7_Fall_IRQHandler + DCD ACE_Comp8_Fall_IRQHandler + DCD ACE_Comp9_Fall_IRQHandler + DCD ACE_Comp10_Fall_IRQHandler + DCD ACE_Comp11_Fall_IRQHandler + DCD ACE_Comp0_Rise_IRQHandler + DCD ACE_Comp1_Rise_IRQHandler + DCD ACE_Comp2_Rise_IRQHandler + DCD ACE_Comp3_Rise_IRQHandler + DCD ACE_Comp4_Rise_IRQHandler + DCD ACE_Comp5_Rise_IRQHandler + DCD ACE_Comp6_Rise_IRQHandler + DCD ACE_Comp7_Rise_IRQHandler + DCD ACE_Comp8_Rise_IRQHandler + DCD ACE_Comp9_Rise_IRQHandler + DCD ACE_Comp10_Rise_IRQHandler + DCD ACE_Comp11_Rise_IRQHandler + DCD ACE_ADC0_FifoFull_IRQHandler + DCD ACE_ADC0_FifoAFull_IRQHandler + DCD ACE_ADC0_FifoEmpty_IRQHandler + DCD ACE_ADC1_FifoFull_IRQHandler + DCD ACE_ADC1_FifoAFull_IRQHandler + DCD ACE_ADC1_FifoEmpty_IRQHandler + DCD ACE_ADC2_FifoFull_IRQHandler + DCD ACE_ADC2_FifoAFull_IRQHandler + DCD ACE_ADC2_FifoEmpty_IRQHandler + DCD ACE_PPE_Flag0_IRQHandler + DCD ACE_PPE_Flag1_IRQHandler + DCD ACE_PPE_Flag2_IRQHandler + DCD ACE_PPE_Flag3_IRQHandler + DCD ACE_PPE_Flag4_IRQHandler + DCD ACE_PPE_Flag5_IRQHandler + DCD ACE_PPE_Flag6_IRQHandler + DCD ACE_PPE_Flag7_IRQHandler + DCD ACE_PPE_Flag8_IRQHandler + DCD ACE_PPE_Flag9_IRQHandler + DCD ACE_PPE_Flag10_IRQHandler + DCD ACE_PPE_Flag11_IRQHandler + DCD ACE_PPE_Flag12_IRQHandler + DCD ACE_PPE_Flag13_IRQHandler + DCD ACE_PPE_Flag14_IRQHandler + DCD ACE_PPE_Flag15_IRQHandler + DCD ACE_PPE_Flag16_IRQHandler + DCD ACE_PPE_Flag17_IRQHandler + DCD ACE_PPE_Flag18_IRQHandler + DCD ACE_PPE_Flag19_IRQHandler + DCD ACE_PPE_Flag20_IRQHandler + DCD ACE_PPE_Flag21_IRQHandler + DCD ACE_PPE_Flag22_IRQHandler + DCD ACE_PPE_Flag23_IRQHandler + DCD ACE_PPE_Flag24_IRQHandler + DCD ACE_PPE_Flag25_IRQHandler + DCD ACE_PPE_Flag26_IRQHandler + DCD ACE_PPE_Flag27_IRQHandler + DCD ACE_PPE_Flag28_IRQHandler + DCD ACE_PPE_Flag29_IRQHandler + DCD ACE_PPE_Flag30_IRQHandler + DCD ACE_PPE_Flag31_IRQHandler + +__Vectors_End + +__Vectors_Size EQU __Vectors_End - __Vectors + + AREA |.text|, CODE, READONLY + + + +;------------------------------------------------------------------------------- +; Reset Handler +; +Reset_Handler PROC + EXPORT Reset_Handler [WEAK] + IMPORT SystemInit + IMPORT __main + LDR R0, =SystemInit + BLX R0 + LDR R0, =__main + BX R0 + ENDP + +;------------------------------------------------------------------------------- +; Dummy Exception Handlers (infinite loops which can be modified) + +NMI_Handler PROC + EXPORT NMI_Handler [WEAK] + B . + ENDP +HardFault_Handler\ + PROC + EXPORT HardFault_Handler [WEAK] + B . + ENDP +MemManage_Handler\ + PROC + EXPORT MemManage_Handler [WEAK] + B . + ENDP +BusFault_Handler\ + PROC + EXPORT BusFault_Handler [WEAK] + B . + ENDP +UsageFault_Handler\ + PROC + EXPORT UsageFault_Handler [WEAK] + B . + ENDP +SVC_Handler PROC + EXPORT SVC_Handler [WEAK] + B . + ENDP +DebugMon_Handler\ + PROC + EXPORT DebugMon_Handler [WEAK] + B . + ENDP +PendSV_Handler PROC + EXPORT PendSV_Handler [WEAK] + B . + ENDP +SysTick_Handler PROC + EXPORT SysTick_Handler [WEAK] + B . + ENDP + +Default_Handler PROC + + EXPORT WdogWakeup_IRQHandler [WEAK] + EXPORT BrownOut_1_5V_IRQHandler [WEAK] + EXPORT BrownOut_3_3V_IRQHandler [WEAK] + EXPORT RTC_Match_IRQHandler [WEAK] + EXPORT RTCIF_Pub_IRQHandler [WEAK] + EXPORT EthernetMAC_IRQHandler [WEAK] + EXPORT IAP_IRQHandler [WEAK] + EXPORT ENVM0_IRQHandler [WEAK] + EXPORT ENVM1_IRQHandler [WEAK] + EXPORT DMA_IRQHandler [WEAK] + EXPORT UART0_IRQHandler [WEAK] + EXPORT UART1_IRQHandler [WEAK] + EXPORT SPI0_IRQHandler [WEAK] + EXPORT SPI1_IRQHandler [WEAK] + EXPORT I2C0_IRQHandler [WEAK] + EXPORT I2C0_SMBAlert_IRQHandler [WEAK] + EXPORT I2C0_SMBus_IRQHandler [WEAK] + EXPORT I2C1_IRQHandler [WEAK] + EXPORT I2C1_SMBAlert_IRQHandler [WEAK] + EXPORT I2C1_SMBus_IRQHandler [WEAK] + EXPORT Timer1_IRQHandler [WEAK] + EXPORT Timer2_IRQHandler [WEAK] + EXPORT PLL_Lock_IRQHandler [WEAK] + EXPORT PLL_LockLost_IRQHandler [WEAK] + EXPORT CommError_IRQHandler [WEAK] + EXPORT Fabric_IRQHandler [WEAK] + EXPORT GPIO0_IRQHandler [WEAK] + EXPORT GPIO1_IRQHandler [WEAK] + EXPORT GPIO2_IRQHandler [WEAK] + EXPORT GPIO3_IRQHandler [WEAK] + EXPORT GPIO4_IRQHandler [WEAK] + EXPORT GPIO5_IRQHandler [WEAK] + EXPORT GPIO6_IRQHandler [WEAK] + EXPORT GPIO7_IRQHandler [WEAK] + EXPORT GPIO8_IRQHandler [WEAK] + EXPORT GPIO9_IRQHandler [WEAK] + EXPORT GPIO10_IRQHandler [WEAK] + EXPORT GPIO11_IRQHandler [WEAK] + EXPORT GPIO12_IRQHandler [WEAK] + EXPORT GPIO13_IRQHandler [WEAK] + EXPORT GPIO14_IRQHandler [WEAK] + EXPORT GPIO15_IRQHandler [WEAK] + EXPORT GPIO16_IRQHandler [WEAK] + EXPORT GPIO17_IRQHandler [WEAK] + EXPORT GPIO18_IRQHandler [WEAK] + EXPORT GPIO19_IRQHandler [WEAK] + EXPORT GPIO20_IRQHandler [WEAK] + EXPORT GPIO21_IRQHandler [WEAK] + EXPORT GPIO22_IRQHandler [WEAK] + EXPORT GPIO23_IRQHandler [WEAK] + EXPORT GPIO24_IRQHandler [WEAK] + EXPORT GPIO25_IRQHandler [WEAK] + EXPORT GPIO26_IRQHandler [WEAK] + EXPORT GPIO27_IRQHandler [WEAK] + EXPORT GPIO28_IRQHandler [WEAK] + EXPORT GPIO29_IRQHandler [WEAK] + EXPORT GPIO30_IRQHandler [WEAK] + EXPORT GPIO31_IRQHandler [WEAK] + EXPORT ACE_PC0_Flag0_IRQHandler [WEAK] + EXPORT ACE_PC0_Flag1_IRQHandler [WEAK] + EXPORT ACE_PC0_Flag2_IRQHandler [WEAK] + EXPORT ACE_PC0_Flag3_IRQHandler [WEAK] + EXPORT ACE_PC1_Flag0_IRQHandler [WEAK] + EXPORT ACE_PC1_Flag1_IRQHandler [WEAK] + EXPORT ACE_PC1_Flag2_IRQHandler [WEAK] + EXPORT ACE_PC1_Flag3_IRQHandler [WEAK] + EXPORT ACE_PC2_Flag0_IRQHandler [WEAK] + EXPORT ACE_PC2_Flag1_IRQHandler [WEAK] + EXPORT ACE_PC2_Flag2_IRQHandler [WEAK] + EXPORT ACE_PC2_Flag3_IRQHandler [WEAK] + EXPORT ACE_ADC0_DataValid_IRQHandler [WEAK] + EXPORT ACE_ADC1_DataValid_IRQHandler [WEAK] + EXPORT ACE_ADC2_DataValid_IRQHandler [WEAK] + EXPORT ACE_ADC0_CalDone_IRQHandler [WEAK] + EXPORT ACE_ADC1_CalDone_IRQHandler [WEAK] + EXPORT ACE_ADC2_CalDone_IRQHandler [WEAK] + EXPORT ACE_ADC0_CalStart_IRQHandler [WEAK] + EXPORT ACE_ADC1_CalStart_IRQHandler [WEAK] + EXPORT ACE_ADC2_CalStart_IRQHandler [WEAK] + EXPORT ACE_Comp0_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp1_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp2_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp3_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp4_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp5_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp6_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp7_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp8_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp9_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp10_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp11_Fall_IRQHandler [WEAK] + EXPORT ACE_Comp0_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp1_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp2_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp3_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp4_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp5_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp6_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp7_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp8_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp9_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp10_Rise_IRQHandler [WEAK] + EXPORT ACE_Comp11_Rise_IRQHandler [WEAK] + EXPORT ACE_ADC0_FifoFull_IRQHandler [WEAK] + EXPORT ACE_ADC0_FifoAFull_IRQHandler [WEAK] + EXPORT ACE_ADC0_FifoEmpty_IRQHandler [WEAK] + EXPORT ACE_ADC1_FifoFull_IRQHandler [WEAK] + EXPORT ACE_ADC1_FifoAFull_IRQHandler [WEAK] + EXPORT ACE_ADC1_FifoEmpty_IRQHandler [WEAK] + EXPORT ACE_ADC2_FifoFull_IRQHandler [WEAK] + EXPORT ACE_ADC2_FifoAFull_IRQHandler [WEAK] + EXPORT ACE_ADC2_FifoEmpty_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag0_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag1_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag2_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag3_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag4_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag5_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag6_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag7_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag8_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag9_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag10_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag11_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag12_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag13_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag14_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag15_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag16_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag17_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag18_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag19_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag20_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag21_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag22_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag23_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag24_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag25_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag26_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag27_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag28_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag29_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag30_IRQHandler [WEAK] + EXPORT ACE_PPE_Flag31_IRQHandler [WEAK] + + +WdogWakeup_IRQHandler +BrownOut_1_5V_IRQHandler +BrownOut_3_3V_IRQHandler +RTC_Match_IRQHandler +RTCIF_Pub_IRQHandler +EthernetMAC_IRQHandler +IAP_IRQHandler +ENVM0_IRQHandler +ENVM1_IRQHandler +DMA_IRQHandler +UART0_IRQHandler +UART1_IRQHandler +SPI0_IRQHandler +SPI1_IRQHandler +I2C0_IRQHandler +I2C0_SMBAlert_IRQHandler +I2C0_SMBus_IRQHandler +I2C1_IRQHandler +I2C1_SMBAlert_IRQHandler +I2C1_SMBus_IRQHandler +Timer1_IRQHandler +Timer2_IRQHandler +PLL_Lock_IRQHandler +PLL_LockLost_IRQHandler +CommError_IRQHandler +Fabric_IRQHandler +GPIO0_IRQHandler +GPIO1_IRQHandler +GPIO2_IRQHandler +GPIO3_IRQHandler +GPIO4_IRQHandler +GPIO5_IRQHandler +GPIO6_IRQHandler +GPIO7_IRQHandler +GPIO8_IRQHandler +GPIO9_IRQHandler +GPIO10_IRQHandler +GPIO11_IRQHandler +GPIO12_IRQHandler +GPIO13_IRQHandler +GPIO14_IRQHandler +GPIO15_IRQHandler +GPIO16_IRQHandler +GPIO17_IRQHandler +GPIO18_IRQHandler +GPIO19_IRQHandler +GPIO20_IRQHandler +GPIO21_IRQHandler +GPIO22_IRQHandler +GPIO23_IRQHandler +GPIO24_IRQHandler +GPIO25_IRQHandler +GPIO26_IRQHandler +GPIO27_IRQHandler +GPIO28_IRQHandler +GPIO29_IRQHandler +GPIO30_IRQHandler +GPIO31_IRQHandler +ACE_PC0_Flag0_IRQHandler +ACE_PC0_Flag1_IRQHandler +ACE_PC0_Flag2_IRQHandler +ACE_PC0_Flag3_IRQHandler +ACE_PC1_Flag0_IRQHandler +ACE_PC1_Flag1_IRQHandler +ACE_PC1_Flag2_IRQHandler +ACE_PC1_Flag3_IRQHandler +ACE_PC2_Flag0_IRQHandler +ACE_PC2_Flag1_IRQHandler +ACE_PC2_Flag2_IRQHandler +ACE_PC2_Flag3_IRQHandler +ACE_ADC0_DataValid_IRQHandler +ACE_ADC1_DataValid_IRQHandler +ACE_ADC2_DataValid_IRQHandler +ACE_ADC0_CalDone_IRQHandler +ACE_ADC1_CalDone_IRQHandler +ACE_ADC2_CalDone_IRQHandler +ACE_ADC0_CalStart_IRQHandler +ACE_ADC1_CalStart_IRQHandler +ACE_ADC2_CalStart_IRQHandler +ACE_Comp0_Fall_IRQHandler +ACE_Comp1_Fall_IRQHandler +ACE_Comp2_Fall_IRQHandler +ACE_Comp3_Fall_IRQHandler +ACE_Comp4_Fall_IRQHandler +ACE_Comp5_Fall_IRQHandler +ACE_Comp6_Fall_IRQHandler +ACE_Comp7_Fall_IRQHandler +ACE_Comp8_Fall_IRQHandler +ACE_Comp9_Fall_IRQHandler +ACE_Comp10_Fall_IRQHandler +ACE_Comp11_Fall_IRQHandler +ACE_Comp0_Rise_IRQHandler +ACE_Comp1_Rise_IRQHandler +ACE_Comp2_Rise_IRQHandler +ACE_Comp3_Rise_IRQHandler +ACE_Comp4_Rise_IRQHandler +ACE_Comp5_Rise_IRQHandler +ACE_Comp6_Rise_IRQHandler +ACE_Comp7_Rise_IRQHandler +ACE_Comp8_Rise_IRQHandler +ACE_Comp9_Rise_IRQHandler +ACE_Comp10_Rise_IRQHandler +ACE_Comp11_Rise_IRQHandler +ACE_ADC0_FifoFull_IRQHandler +ACE_ADC0_FifoAFull_IRQHandler +ACE_ADC0_FifoEmpty_IRQHandler +ACE_ADC1_FifoFull_IRQHandler +ACE_ADC1_FifoAFull_IRQHandler +ACE_ADC1_FifoEmpty_IRQHandler +ACE_ADC2_FifoFull_IRQHandler +ACE_ADC2_FifoAFull_IRQHandler +ACE_ADC2_FifoEmpty_IRQHandler +ACE_PPE_Flag0_IRQHandler +ACE_PPE_Flag1_IRQHandler +ACE_PPE_Flag2_IRQHandler +ACE_PPE_Flag3_IRQHandler +ACE_PPE_Flag4_IRQHandler +ACE_PPE_Flag5_IRQHandler +ACE_PPE_Flag6_IRQHandler +ACE_PPE_Flag7_IRQHandler +ACE_PPE_Flag8_IRQHandler +ACE_PPE_Flag9_IRQHandler +ACE_PPE_Flag10_IRQHandler +ACE_PPE_Flag11_IRQHandler +ACE_PPE_Flag12_IRQHandler +ACE_PPE_Flag13_IRQHandler +ACE_PPE_Flag14_IRQHandler +ACE_PPE_Flag15_IRQHandler +ACE_PPE_Flag16_IRQHandler +ACE_PPE_Flag17_IRQHandler +ACE_PPE_Flag18_IRQHandler +ACE_PPE_Flag19_IRQHandler +ACE_PPE_Flag20_IRQHandler +ACE_PPE_Flag21_IRQHandler +ACE_PPE_Flag22_IRQHandler +ACE_PPE_Flag23_IRQHandler +ACE_PPE_Flag24_IRQHandler +ACE_PPE_Flag25_IRQHandler +ACE_PPE_Flag26_IRQHandler +ACE_PPE_Flag27_IRQHandler +ACE_PPE_Flag28_IRQHandler +ACE_PPE_Flag29_IRQHandler +ACE_PPE_Flag30_IRQHandler +ACE_PPE_Flag31_IRQHandler + + B . + + ENDP + + + ALIGN + + +;------------------------------------------------------------------------------- +; User Initial Stack & Heap + + IF :DEF:__MICROLIB + + EXPORT __initial_sp + EXPORT __heap_base + EXPORT __heap_limit + + ELSE + + IMPORT __use_two_region_memory + EXPORT __user_initial_stackheap +__user_initial_stackheap + + LDR R0, = Heap_Mem + LDR R1, =(Stack_Mem + Stack_Size) + LDR R2, = (Heap_Mem + Heap_Size) + LDR R3, = Stack_Mem + BX LR + + ALIGN + + ENDIF + + + END diff --git a/Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/drivers/mss_ethernet_mac/mss_ethernet_mac_regs.h b/Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/drivers/mss_ethernet_mac/mss_ethernet_mac_regs.h index 0578c4e0d..0a8578f97 100644 --- a/Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/drivers/mss_ethernet_mac/mss_ethernet_mac_regs.h +++ b/Demo/CORTEX_A2F200_IAR_and_Keil/MicroSemi_Code/drivers/mss_ethernet_mac/mss_ethernet_mac_regs.h @@ -31,12 +31,14 @@ typedef uint32_t addr_t; /***************************************************************************//** * Descriptor structure */ +#include "pack_struct_start.h" typedef struct { volatile uint32_t descriptor_0; volatile uint32_t descriptor_1; volatile uint32_t buffer_1; volatile uint32_t buffer_2; -} MAC_descriptor_t; +} MAC_descriptor_t +#include "pack_struct_end.h" /***************************************************************************//** @@ -74,6 +76,7 @@ typedef struct { uint8_t phy_address; /**< MII address of the connected PHY*/ + #include "pack_struct_start.h" struct { uint32_t rx_interrupts; /**< Number of receive interrupts occurred.*/ uint32_t rx_filtering_fail; /**< Number of received frames which did not pass @@ -111,7 +114,8 @@ typedef struct { uint32_t tx_collision_count; /**< Number of collisions occurred.*/ uint32_t tx_underflow_error; /**< Number of occurrences of; the FIFO was empty during the frame transmission.*/ - } statistics; + } statistics + #include "pack_struct_end.h" } MAC_instance_t #include "net/pack_struct_end.h" diff --git a/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_IAR.ewp b/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_IAR.ewp index 72f633045..25a9ca018 100644 --- a/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_IAR.ewp +++ b/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_IAR.ewp @@ -1147,6 +1147,7 @@ $PROJ_DIR$/WebServer $PROJ_DIR$/../Common/ethernet/FreeTCPIP/apps/httpd $PROJ_DIR$/../Common/ethernet/FreeTCPIP + $PROJ_DIR$/../Common/ethernet/FreeTCPIP/net $PROJ_DIR$/../Common/include $PROJ_DIR$/MicroSemi_Code/drivers/I2C $PROJ_DIR$/MicroSemi_Code/drivers/mss_ethernet_mac diff --git a/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_Keil.uvopt b/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_Keil.uvopt new file mode 100644 index 000000000..4cbfb25da --- /dev/null +++ b/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_Keil.uvopt @@ -0,0 +1,978 @@ + + + + 1.0 + +
### uVision Project, (C) Keil Software
+ + + *.c + *.s*; *.src; *.a* + *.obj + *.lib + *.txt; *.h; *.inc + *.plm + *.cpp + + + + 0 + 0 + + + + Blinky + 0x4 + ARM-ADS + + 20000000 + + 1 + 1 + 1 + 0 + + + 1 + 65535 + 0 + 0 + 0 + + + 79 + 66 + 8 + .\ + + + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + + + 1 + 0 + 0 + + 255 + + SARMCM3.DLL + + DLM.DLL + -pEMBER + SARMCM3.DLL + + TLM.DLL + -pEMBER + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 0 + 0 + 1 + + + + + + + + + + + BIN\UL2CM3.DLL + + + + 0 + DLGTARM + (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0) + + + 0 + ARMDBGFLAGS + + + + 0 + DLGUARM + (105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0) + + + 0 + UL2CM3 + -UM1129BUE -O14 -S0 -C0 -N00("ARM CoreSight JTAG-DP") -D00(3BA00477) -L00(4) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0A2FxxxM3_256 -FS00 -FL040000 + + + + 0 + 1 + 1 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + Full + 0x4 + ARM-ADS + + 20000000 + + 1 + 1 + 1 + 0 + + + 1 + 65535 + 0 + 0 + 0 + + + 79 + 66 + 8 + .\ + + + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 0 + 0 + 0 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + + + 1 + 0 + 1 + + 255 + + SARMCM3.DLL + + DLM.DLL + -pEMBER + SARMCM3.DLL + + TLM.DLL + -pEMBER + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 0 + 0 + 1 + + + + + + + + + + + BIN\UL2CM3.DLL + + + + 0 + DLGTARM + (1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0) + + + 0 + ARMDBGFLAGS + + + + 0 + DLGUARM + (105=-1,-1,-1,-1,0)(106=-1,-1,-1,-1,0)(107=-1,-1,-1,-1,0) + + + 0 + UL2CM3 + -UM1129BUE -O14 -S0 -C0 -N00("ARM CoreSight JTAG-DP") -D00(3BA00477) -L00(4) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC800 -FN1 -FF0A2FxxxM3_256 -FS00 -FL040000 + + + + 0 + 1 + 1 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + System + 0 + 0 + 0 + + 1 + 1 + 2 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\CMSIS\startup_keil\startus_a2fxxxm3.s + startus_a2fxxxm3.s + + + + + Common_Demo_Source + 0 + 0 + 0 + + 2 + 2 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\TimerDemo.c + TimerDemo.c + + + 2 + 3 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\BlockQ.c + BlockQ.c + + + 2 + 4 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\blocktim.c + blocktim.c + + + 2 + 5 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\death.c + death.c + + + 2 + 6 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\dynamic.c + dynamic.c + + + 2 + 7 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\flash.c + flash.c + + + 2 + 8 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\GenQTest.c + GenQTest.c + + + 2 + 9 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\QPeek.c + QPeek.c + + + 2 + 10 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\recmutex.c + recmutex.c + + + 2 + 11 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\Minimal\semtest.c + semtest.c + + + + + FreeRTOS_Source + 0 + 0 + 0 + + 3 + 12 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\..\Source\timers.c + timers.c + + + 3 + 13 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\..\Source\list.c + list.c + + + 3 + 14 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\..\Source\queue.c + queue.c + + + 3 + 15 + 1 + 0 + 0 + 0 + 0 + 2378 + 2387 + 0 + ..\..\Source\tasks.c + tasks.c + + + 3 + 16 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\..\Source\portable\RVDS\ARM_CM3\port.c + port.c + + + 3 + 17 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\..\Source\portable\MemMang\heap_2.c + heap_2.c + + + + + FreeTCPIP(based on uIP) + 0 + 0 + 0 + + 4 + 18 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\ethernet\FreeTCPIP\uip_arp.c + uip_arp.c + + + 4 + 19 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\ethernet\FreeTCPIP\psock.c + psock.c + + + 4 + 20 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\ethernet\FreeTCPIP\timer.c + timer.c + + + 4 + 21 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\ethernet\FreeTCPIP\uip.c + uip.c + + + + + Microsemi_Drivers + 1 + 0 + 0 + + 5 + 22 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers\mss_gpio\mss_gpio.c + mss_gpio.c + + + 5 + 23 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers\I2C\i2c.c + i2c.c + + + 5 + 24 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers\mss_ace\ace_convert.c + ace_convert.c + + + 5 + 25 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers\mss_ace\mss_ace.c + mss_ace.c + + + 5 + 26 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers\mss_ethernet_mac\crc32.c + crc32.c + + + 5 + 27 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers\mss_ethernet_mac\mss_ethernet_mac.c + mss_ethernet_mac.c + + + 5 + 28 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers\mss_ethernet_mac\phy.c + phy.c + + + 5 + 29 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers\OLED\oled.c + oled.c + + + 5 + 30 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\drivers_config\mss_ace\ace_config.c + ace_config.c + + + + + Main + 1 + 0 + 0 + + 6 + 31 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\main-blinky.c + main-blinky.c + + + 6 + 32 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\printf-stdarg.c + printf-stdarg.c + + + 6 + 33 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\ParTest.c + ParTest.c + + + 6 + 34 + 1 + 0 + 0 + 24 + 0 + 280 + 280 + 0 + .\main-full.c + main-full.c + + + 6 + 35 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\uIP_Task.c + uIP_Task.c + + + + + CMSIS + 0 + 0 + 0 + + 7 + 36 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\CMSIS\system_a2fxxxm3.c + system_a2fxxxm3.c + + + 7 + 37 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\MicroSemi_Code\CMSIS\core_cm3.c + core_cm3.c + + + + + Web_Server + 0 + 0 + 0 + + 8 + 38 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + .\WebServer\httpd-cgi.c + httpd-cgi.c + + + 8 + 39 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c + http-strings.c + + + 8 + 40 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c + httpd.c + + + 8 + 41 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + ..\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c + httpd-fs.c + + + + + 1 + 0 + + 100 + 1 + + + ..\..\Source\tasks.c + 0 + 2378 + 2387 + + + .\main-full.c + 24 + 280 + 280 + + + + + +
diff --git a/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_Keil.uvproj b/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_Keil.uvproj new file mode 100644 index 000000000..9be1519f9 --- /dev/null +++ b/Demo/CORTEX_A2F200_IAR_and_Keil/RTOSDemo_Keil.uvproj @@ -0,0 +1,1298 @@ + + + + 1.1 + +
### uVision Project, (C) Keil Software
+ + + + Blinky + 0x4 + ARM-ADS + + + A2F200M3F + Actel + IRAM(0x20000000-0x2000FFFF) IROM(0x00000000-0x0003FFFF) CLOCK(20000000) CPUTYPE("Cortex-M3") + + "Startup\Actel\A2FxxxM3\startup_a2fxxxm3.s" ("SmartFusion A2FxxxM3 Startup Code") + UL2CM3(-O14 -S0 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0A2FxxxM3_256 -FS00 -FL040000) + 5028 + a2fxxxm3.h + + + + + + + + + + + 0 + + + + Actel\A2FxxxM3\ + Actel\A2FxxxM3\ + + 0 + 0 + 0 + 0 + 1 + + .\Keil_output\ + RTOSDemo_Keil + 1 + 0 + 0 + 1 + 1 + .\ + 1 + 0 + 0 + + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + 0 + + + + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 3 + + + + + SARMCM3.DLL + + DLM.DLL + -pEMBER + SARMCM3.DLL + + TLM.DLL + -pEMBER + + + + 1 + 0 + 0 + 0 + 16 + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + + 0 + 1 + + + + + + + + + + + + + + BIN\UL2CM3.DLL + + + + + 1 + 0 + 0 + 1 + 0 + -1 + + BIN\UL2CM3.DLL + + + + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 1 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + "Cortex-M3" + + 0 + 0 + 0 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 8 + 0 + 0 + 0 + 3 + 3 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 1 + 0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x20000000 + 0x10000 + + + 1 + 0x0 + 0x40000 + + + 0 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x40000 + + + 1 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x20000000 + 0x10000 + + + 0 + 0x0 + 0x0 + + + + + + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + ..\CORTEX_A2F200_IAR_and_Keil;.\MicroSemi_Code\CMSIS;..\..\Source\include;..\..\Source\portable\RVDS\ARM_CM3;.\MicroSemi_Code\drivers\mss_gpio;.\MicroSemi_Code\drivers\mss_watchdog + + + + 1 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + + 1 + 0 + 0 + 0 + 1 + 0 + 0x00000000 + 0x20000000 + + + + + + + + + + + + System + + + startus_a2fxxxm3.s + 2 + .\MicroSemi_Code\CMSIS\startup_keil\startus_a2fxxxm3.s + + + + + Common_Demo_Source + + + TimerDemo.c + 1 + ..\Common\Minimal\TimerDemo.c + + + BlockQ.c + 1 + ..\Common\Minimal\BlockQ.c + + + blocktim.c + 1 + ..\Common\Minimal\blocktim.c + + + death.c + 1 + ..\Common\Minimal\death.c + + + dynamic.c + 1 + ..\Common\Minimal\dynamic.c + + + flash.c + 1 + ..\Common\Minimal\flash.c + + + GenQTest.c + 1 + ..\Common\Minimal\GenQTest.c + + + QPeek.c + 1 + ..\Common\Minimal\QPeek.c + + + recmutex.c + 1 + ..\Common\Minimal\recmutex.c + + + semtest.c + 1 + ..\Common\Minimal\semtest.c + + + + + FreeRTOS_Source + + + timers.c + 1 + ..\..\Source\timers.c + + + list.c + 1 + ..\..\Source\list.c + + + queue.c + 1 + ..\..\Source\queue.c + + + tasks.c + 1 + ..\..\Source\tasks.c + + + port.c + 1 + ..\..\Source\portable\RVDS\ARM_CM3\port.c + + + heap_2.c + 1 + ..\..\Source\portable\MemMang\heap_2.c + + + + + FreeTCPIP(based on uIP) + + + uip_arp.c + 1 + ..\Common\ethernet\FreeTCPIP\uip_arp.c + + + psock.c + 1 + ..\Common\ethernet\FreeTCPIP\psock.c + + + timer.c + 1 + ..\Common\ethernet\FreeTCPIP\timer.c + + + uip.c + 1 + ..\Common\ethernet\FreeTCPIP\uip.c + + + + + Microsemi_Drivers + + + mss_gpio.c + 1 + .\MicroSemi_Code\drivers\mss_gpio\mss_gpio.c + + + i2c.c + 1 + .\MicroSemi_Code\drivers\I2C\i2c.c + + + ace_convert.c + 1 + .\MicroSemi_Code\drivers\mss_ace\ace_convert.c + + + mss_ace.c + 1 + .\MicroSemi_Code\drivers\mss_ace\mss_ace.c + + + crc32.c + 1 + .\MicroSemi_Code\drivers\mss_ethernet_mac\crc32.c + + + mss_ethernet_mac.c + 1 + .\MicroSemi_Code\drivers\mss_ethernet_mac\mss_ethernet_mac.c + + + phy.c + 1 + .\MicroSemi_Code\drivers\mss_ethernet_mac\phy.c + + + oled.c + 1 + .\MicroSemi_Code\drivers\OLED\oled.c + + + ace_config.c + 1 + .\MicroSemi_Code\drivers_config\mss_ace\ace_config.c + + + + + Main + + + main-blinky.c + 1 + .\main-blinky.c + + + printf-stdarg.c + 1 + .\printf-stdarg.c + + + ParTest.c + 1 + .\ParTest.c + + + main-full.c + 1 + .\main-full.c + + + uIP_Task.c + 1 + .\uIP_Task.c + + + + + CMSIS + + + system_a2fxxxm3.c + 1 + .\MicroSemi_Code\CMSIS\system_a2fxxxm3.c + + + core_cm3.c + 1 + .\MicroSemi_Code\CMSIS\core_cm3.c + + + + + Web_Server + + + httpd-cgi.c + 1 + .\WebServer\httpd-cgi.c + + + http-strings.c + 1 + ..\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c + + + httpd.c + 1 + ..\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c + + + httpd-fs.c + 1 + ..\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c + + + + + + + Full + 0x4 + ARM-ADS + + + A2F200M3F + Actel + IRAM(0x20000000-0x2000FFFF) IROM(0x00000000-0x0003FFFF) CLOCK(20000000) CPUTYPE("Cortex-M3") + + "Startup\Actel\A2FxxxM3\startup_a2fxxxm3.s" ("SmartFusion A2FxxxM3 Startup Code") + UL2CM3(-O14 -S0 -C0 -FO7 -FD20000000 -FC800 -FN1 -FF0A2FxxxM3_256 -FS00 -FL040000) + 5028 + a2fxxxm3.h + + + + + + + + + + + 0 + + + + Actel\A2FxxxM3\ + Actel\A2FxxxM3\ + + 0 + 0 + 0 + 0 + 1 + + .\Keil_output\ + RTOSDemo_Keil + 1 + 0 + 0 + 1 + 1 + .\ + 1 + 0 + 0 + + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + + 0 + 0 + + 0 + + + + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 3 + + + + + SARMCM3.DLL + + DLM.DLL + -pEMBER + SARMCM3.DLL + + TLM.DLL + -pEMBER + + + + 1 + 0 + 0 + 0 + 16 + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + + + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + + 0 + 1 + + + + + + + + + + + + + + BIN\UL2CM3.DLL + + + + + 1 + 0 + 0 + 1 + 0 + -1 + + BIN\UL2CM3.DLL + + + + + + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 1 + 1 + 0 + 1 + 1 + 0 + 0 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 1 + 0 + 0 + "Cortex-M3" + + 0 + 0 + 0 + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 8 + 0 + 0 + 0 + 3 + 3 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 1 + 0 + 0 + 0 + 0 + 1 + 0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x20000000 + 0x10000 + + + 1 + 0x0 + 0x40000 + + + 0 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x0 + + + 1 + 0x0 + 0x40000 + + + 1 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x0 + 0x0 + + + 0 + 0x20000000 + 0x10000 + + + 0 + 0x0 + 0x0 + + + + + + 1 + 1 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + 0 + + --diag_suppress 2770 + + + ..\CORTEX_A2F200_IAR_and_Keil;.\MicroSemi_Code\CMSIS;..\..\Source\include;..\..\Source\portable\RVDS\ARM_CM3;.\MicroSemi_Code\drivers\mss_gpio;.\MicroSemi_Code\drivers\mss_watchdog;..\Common\include;..\Common\ethernet\FreeTCPIP;..\Common\ethernet\FreeTCPIP\apps\httpd;.\MicroSemi_Code\drivers_config\mss_ace;.\MicroSemi_Code\drivers\I2C;.\MicroSemi_Code\drivers\mss_ace;.\MicroSemi_Code\drivers\mss_ethernet_mac;.\MicroSemi_Code\drivers\OLED;.\WebServer;.\MicroSemi_Code\drivers\mss_timer;..\Common\ethernet\FreeTCPIP\net + + + + 1 + 0 + 0 + 0 + 0 + 0 + 0 + + + + + + + + + 1 + 0 + 0 + 0 + 1 + 0 + 0x00000000 + 0x20000000 + + + + + + + + + + + + System + + + startus_a2fxxxm3.s + 2 + .\MicroSemi_Code\CMSIS\startup_keil\startus_a2fxxxm3.s + + + + + Common_Demo_Source + + + TimerDemo.c + 1 + ..\Common\Minimal\TimerDemo.c + + + BlockQ.c + 1 + ..\Common\Minimal\BlockQ.c + + + blocktim.c + 1 + ..\Common\Minimal\blocktim.c + + + death.c + 1 + ..\Common\Minimal\death.c + + + dynamic.c + 1 + ..\Common\Minimal\dynamic.c + + + flash.c + 1 + ..\Common\Minimal\flash.c + + + GenQTest.c + 1 + ..\Common\Minimal\GenQTest.c + + + QPeek.c + 1 + ..\Common\Minimal\QPeek.c + + + recmutex.c + 1 + ..\Common\Minimal\recmutex.c + + + semtest.c + 1 + ..\Common\Minimal\semtest.c + + + + + FreeRTOS_Source + + + timers.c + 1 + ..\..\Source\timers.c + + + list.c + 1 + ..\..\Source\list.c + + + queue.c + 1 + ..\..\Source\queue.c + + + tasks.c + 1 + ..\..\Source\tasks.c + + + port.c + 1 + ..\..\Source\portable\RVDS\ARM_CM3\port.c + + + heap_2.c + 1 + ..\..\Source\portable\MemMang\heap_2.c + + + + + FreeTCPIP(based on uIP) + + + uip_arp.c + 1 + ..\Common\ethernet\FreeTCPIP\uip_arp.c + + + psock.c + 1 + ..\Common\ethernet\FreeTCPIP\psock.c + + + timer.c + 1 + ..\Common\ethernet\FreeTCPIP\timer.c + + + uip.c + 1 + ..\Common\ethernet\FreeTCPIP\uip.c + + + + + Microsemi_Drivers + + + mss_gpio.c + 1 + .\MicroSemi_Code\drivers\mss_gpio\mss_gpio.c + + + i2c.c + 1 + .\MicroSemi_Code\drivers\I2C\i2c.c + + + ace_convert.c + 1 + .\MicroSemi_Code\drivers\mss_ace\ace_convert.c + + + mss_ace.c + 1 + .\MicroSemi_Code\drivers\mss_ace\mss_ace.c + + + crc32.c + 1 + .\MicroSemi_Code\drivers\mss_ethernet_mac\crc32.c + + + mss_ethernet_mac.c + 1 + .\MicroSemi_Code\drivers\mss_ethernet_mac\mss_ethernet_mac.c + + + phy.c + 1 + .\MicroSemi_Code\drivers\mss_ethernet_mac\phy.c + + + oled.c + 1 + .\MicroSemi_Code\drivers\OLED\oled.c + + + ace_config.c + 1 + .\MicroSemi_Code\drivers_config\mss_ace\ace_config.c + + + + + Main + + + main-blinky.c + 1 + .\main-blinky.c + + + 2 + 0 + 0 + 0 + 0 + 0 + 2 + 2 + 2 + 2 + 11 + + + + + + 2 + 0 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 2 + 0 + 2 + + + + + + + + + + + + printf-stdarg.c + 1 + .\printf-stdarg.c + + + ParTest.c + 1 + .\ParTest.c + + + main-full.c + 1 + .\main-full.c + + + uIP_Task.c + 1 + .\uIP_Task.c + + + + + CMSIS + + + system_a2fxxxm3.c + 1 + .\MicroSemi_Code\CMSIS\system_a2fxxxm3.c + + + core_cm3.c + 1 + .\MicroSemi_Code\CMSIS\core_cm3.c + + + + + Web_Server + + + httpd-cgi.c + 1 + .\WebServer\httpd-cgi.c + + + http-strings.c + 1 + ..\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c + + + httpd.c + 1 + ..\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c + + + httpd-fs.c + 1 + ..\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c + + + + + + + +
diff --git a/Demo/CORTEX_A2F200_IAR_and_Keil/WebServer/httpd-cgi.c b/Demo/CORTEX_A2F200_IAR_and_Keil/WebServer/httpd-cgi.c index ab3facf0a..4fb459b25 100644 --- a/Demo/CORTEX_A2F200_IAR_and_Keil/WebServer/httpd-cgi.c +++ b/Demo/CORTEX_A2F200_IAR_and_Keil/WebServer/httpd-cgi.c @@ -210,10 +210,11 @@ unsigned long ulString; static unsigned short generate_io_state( void *arg ) { extern long lParTestGetLEDState( unsigned long ulLED ); - ( void ) arg; unsigned short usRawVoltage; const ace_channel_handle_t xVoltageChannel = ( ace_channel_handle_t ) 0; + ( void ) arg; + /* Are the dynamically setable LEDs currently on or off? */ if( lParTestGetLEDState( 3 ) ) { diff --git a/Demo/CORTEX_A2F200_IAR_and_Keil/uIP_Task.c b/Demo/CORTEX_A2F200_IAR_and_Keil/uIP_Task.c index b3e150b7f..2df6fffbe 100644 --- a/Demo/CORTEX_A2F200_IAR_and_Keil/uIP_Task.c +++ b/Demo/CORTEX_A2F200_IAR_and_Keil/uIP_Task.c @@ -288,14 +288,14 @@ xTimerHandle xARPTimer, xPeriodicTimer; xEMACEventQueue = xQueueCreate( uipEVENT_QUEUE_LENGTH, sizeof( unsigned long ) ); /* Create and start the uIP timers. */ - xARPTimer = xTimerCreate( ( const signed char * const ) "ARPTimer", /* Just a name that is helpful for debugging, not used by the kernel. */ + xARPTimer = xTimerCreate( ( signed char * ) "ARPTimer", /* Just a name that is helpful for debugging, not used by the kernel. */ ( 10000UL / portTICK_RATE_MS ), /* Timer period. */ pdTRUE, /* Autor-reload. */ ( void * ) uipARP_TIMER, prvUIPTimerCallback ); - xPeriodicTimer = xTimerCreate( ( const signed char * const ) "PeriodicTimer", + xPeriodicTimer = xTimerCreate( ( signed char * ) "PeriodicTimer", ( 500UL / portTICK_RATE_MS ), pdTRUE, /* Autor-reload. */ ( void * ) uipPERIODIC_TIMER, -- 2.39.5