1
0
jhb 6 жил өмнө
parent
commit
e6d20e9120

+ 1 - 1
bsp/stm32/stm32l4r9-eval/README.md

@@ -2,7 +2,7 @@
 
 
 ## 简介
 ## 简介
 
 
-本文档为 RT-Thread 开发团队为 STM32L4R9I-EVAL 开发板提供的 BSP (板级支持包) 说明。
+STM32L4R9I-EVAL 开发板提供的 BSP (板级支持包) 说明。
 
 
 主要内容如下:
 主要内容如下:
 
 

+ 2 - 2
bsp/stm32/stm32l4r9-eval/SConstruct

@@ -15,7 +15,7 @@ except:
     print(RTT_ROOT)
     print(RTT_ROOT)
     exit(-1)
     exit(-1)
 
 
-TARGET = 'rt-thread.' + rtconfig.TARGET_EXT
+TARGET = 'rtthread.' + rtconfig.TARGET_EXT
 
 
 env = Environment(tools = ['mingw'],
 env = Environment(tools = ['mingw'],
     AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS,
     AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS,
@@ -28,7 +28,7 @@ env.PrependENVPath('PATH', rtconfig.EXEC_PATH)
 if rtconfig.PLATFORM == 'iar':
 if rtconfig.PLATFORM == 'iar':
     env.Replace(CCCOM = ['$CC $CCFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS -o $TARGET $SOURCES'])
     env.Replace(CCCOM = ['$CC $CCFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS -o $TARGET $SOURCES'])
     env.Replace(ARFLAGS = [''])
     env.Replace(ARFLAGS = [''])
-    env.Replace(LINKCOM = env["LINKCOM"] + ' --map rt-thread.map')
+    env.Replace(LINKCOM = env["LINKCOM"] + ' --map rtthread.map')
 
 
 Export('RTT_ROOT')
 Export('RTT_ROOT')
 Export('rtconfig')
 Export('rtconfig')

+ 1 - 0
bsp/stm32/stm32l4r9-eval/applications/main.c

@@ -6,6 +6,7 @@
  * Change Logs:
  * Change Logs:
  * Date           Author       Notes
  * Date           Author       Notes
  * 2018-11-06     SummerGift   first version
  * 2018-11-06     SummerGift   first version
+ * 2019-04-09     jhb   			  
  */
  */
 
 
 #include <rtthread.h>
 #include <rtthread.h>

+ 12 - 8
bsp/stm32/stm32l4r9-eval/board/CubeMX_Config/CubeMX_Config.ioc

@@ -2,19 +2,21 @@
 File.Version=6
 File.Version=6
 KeepUserPlacement=false
 KeepUserPlacement=false
 Mcu.Family=STM32L4
 Mcu.Family=STM32L4
-Mcu.IP0=NVIC
-Mcu.IP1=RCC
-Mcu.IP2=SYS
-Mcu.IP3=USART3
-Mcu.IPNb=4
+Mcu.IP0=LTDC
+Mcu.IP1=NVIC
+Mcu.IP2=RCC
+Mcu.IP3=SYS
+Mcu.IP4=USART3
+Mcu.IPNb=5
 Mcu.Name=STM32L4R9A(G-I)Ix
 Mcu.Name=STM32L4R9A(G-I)Ix
 Mcu.Package=UFBGA169
 Mcu.Package=UFBGA169
 Mcu.Pin0=PH0-OSC_IN (PH0)
 Mcu.Pin0=PH0-OSC_IN (PH0)
 Mcu.Pin1=PB11
 Mcu.Pin1=PB11
 Mcu.Pin2=PH1-OSC_OUT (PH1)
 Mcu.Pin2=PH1-OSC_OUT (PH1)
 Mcu.Pin3=PB10
 Mcu.Pin3=PB10
-Mcu.Pin4=VP_SYS_VS_Systick
-Mcu.PinsNb=5
+Mcu.Pin4=VP_LTDC_DSIMode
+Mcu.Pin5=VP_SYS_VS_Systick
+Mcu.PinsNb=6
 Mcu.ThirdPartyNb=0
 Mcu.ThirdPartyNb=0
 Mcu.UserConstants=
 Mcu.UserConstants=
 Mcu.UserName=STM32L4R9AIIx
 Mcu.UserName=STM32L4R9AIIx
@@ -76,7 +78,7 @@ ProjectManager.StackSize=0x400
 ProjectManager.TargetToolchain=MDK-ARM V5
 ProjectManager.TargetToolchain=MDK-ARM V5
 ProjectManager.ToolChainLocation=
 ProjectManager.ToolChainLocation=
 ProjectManager.UnderRoot=false
 ProjectManager.UnderRoot=false
-ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_USART3_UART_Init-USART3-false-HAL-true
+ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_USART3_UART_Init-USART3-false-HAL-true,4-MX_LTDC_Init-LTDC-false-HAL-true
 RCC.ADCFreq_Value=64000000
 RCC.ADCFreq_Value=64000000
 RCC.AHBFreq_Value=120000000
 RCC.AHBFreq_Value=120000000
 RCC.APB1Freq_Value=120000000
 RCC.APB1Freq_Value=120000000
@@ -145,6 +147,8 @@ RCC.VCOSAI1OutputFreq_Value=128000000
 RCC.VCOSAI2OutputFreq_Value=128000000
 RCC.VCOSAI2OutputFreq_Value=128000000
 USART3.IPParameters=VirtualMode-Asynchronous
 USART3.IPParameters=VirtualMode-Asynchronous
 USART3.VirtualMode-Asynchronous=VM_ASYNC
 USART3.VirtualMode-Asynchronous=VM_ASYNC
+VP_LTDC_DSIMode.Mode=RGB888
+VP_LTDC_DSIMode.Signal=LTDC_DSIMode
 VP_SYS_VS_Systick.Mode=SysTick
 VP_SYS_VS_Systick.Mode=SysTick
 VP_SYS_VS_Systick.Signal=SYS_VS_Systick
 VP_SYS_VS_Systick.Signal=SYS_VS_Systick
 board=custom
 board=custom

+ 0 - 133
bsp/stm32/stm32l4r9-eval/board/CubeMX_Config/MDK-ARM/CubeMX_Config.uvoptx

@@ -1,133 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<ProjectOpt xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="project_opt.xsd">
-  <Target>
-    <TargetName>CubeMX_Config</TargetName>
-    <ToolsetNumber>0x4</ToolsetNumber>
-    <ToolsetName>ARM-ADS</ToolsetName>
-    <TargetOption>
-      <CLKADS>120000000</CLKADS>
-      <OPTTT>
-        <gFlags>1</gFlags>
-        <BeepAtEnd>1</BeepAtEnd>
-        <RunSim>0</RunSim>
-        <RunTarget>1</RunTarget>
-      </OPTTT>
-      <OPTHX>
-        <HexSelection>1</HexSelection>
-        <FlashByte>65535</FlashByte>
-        <HexRangeLowAddress>0</HexRangeLowAddress>
-        <HexRangeHighAddress>0</HexRangeHighAddress>
-        <HexOffset>0</HexOffset>
-      </OPTHX>
-      <OPTLEX>
-        <PageWidth>79</PageWidth>
-        <PageLength>66</PageLength>
-        <TabStop>8</TabStop>
-        <ListingPath />
-      </OPTLEX>
-      <ListingPage>
-        <CreateCListing>1</CreateCListing>
-        <CreateAListing>1</CreateAListing>
-        <CreateLListing>1</CreateLListing>
-        <CreateIListing>0</CreateIListing>
-        <AsmCond>1</AsmCond>
-        <AsmSymb>1</AsmSymb>
-        <AsmXref>0</AsmXref>
-        <CCond>1</CCond>
-        <CCode>0</CCode>
-        <CListInc>0</CListInc>
-        <CSymb>0</CSymb>
-        <LinkerCodeListing>0</LinkerCodeListing>
-      </ListingPage>
-      <OPTXL>
-        <LMap>1</LMap>
-        <LComments>1</LComments>
-        <LGenerateSymbols>1</LGenerateSymbols>
-        <LLibSym>1</LLibSym>
-        <LLines>1</LLines>
-        <LLocSym>1</LLocSym>
-        <LPubSym>1</LPubSym>
-        <LXref>0</LXref>
-        <LExpSel>0</LExpSel>
-      </OPTXL>
-      <OPTFL>
-        <tvExp>0</tvExp>
-        <tvExpOptDlg>0</tvExpOptDlg>
-        <IsCurrentTarget>1</IsCurrentTarget>
-      </OPTFL>
-      <CpuCode>0</CpuCode>
-      <DebugOpt>
-        <uSim>0</uSim>
-        <uTrg>1</uTrg>
-        <sLdApp>1</sLdApp>
-        <sGomain>1</sGomain>
-        <sRbreak>1</sRbreak>
-        <sRwatch>1</sRwatch>
-        <sRmem>1</sRmem>
-        <sRfunc>1</sRfunc>
-        <sRbox>1</sRbox>
-        <tLdApp>1</tLdApp>
-        <tGomain>1</tGomain>
-        <tRbreak>1</tRbreak>
-        <tRwatch>1</tRwatch>
-        <tRmem>1</tRmem>
-        <tRfunc>1</tRfunc>
-        <tRbox>1</tRbox>
-        <sRunDeb>0</sRunDeb>
-        <sLrtime>0</sLrtime>
-        <nTsel>13</nTsel>
-        <sDll />
-        <sDllPa />
-        <sDlgDll />
-        <sDlgPa />
-        <sIfile />
-        <tDll />
-        <tDllPa />
-        <tDlgDll />
-        <tDlgPa />
-        <tIfile />
-        <pMon>STLink\ST-LINKIII-KEIL_SWO.dll</pMon>
-      </DebugOpt>
-	    <TargetDriverDllRegistry>
-        <SetRegEntry>
-		        <Number>0</Number>
-		        <Key>ST-LINKIII-KEIL_SWO</Key>
-		        <Name>-U-O142 -O2254 -S0 -C0 -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32L4Rx_2048.FLM -FS08000000 -FL0200000 -FP0($$Device:STM32L4R9AI$Flash\STM32L4Rx_2048.FLM)</Name>
-		</SetRegEntry>
-       <SetRegEntry>
-		        <Number>0</Number>
-		        <Key />
-		        <Name>-U-O142 -O2254 -S0 -C0 -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO7 -FD20000000 -FC1000 -FN1 -FF0STM32L4Rx_2048.FLM -FS08000000 -FL0200000 -FP0($$Device:STM32L4R9AI$Flash\STM32L4Rx_2048.FLM)</Name>
-		</SetRegEntry>
- </TargetDriverDllRegistry>
-      <DebugFlag>
-        <trace>0</trace>
-        <periodic>1</periodic>
-        <aLwin>0</aLwin>
-        <aCover>0</aCover>
-        <aSer1>0</aSer1>
-        <aSer2>0</aSer2>
-        <aPa>0</aPa>
-        <viewmode>0</viewmode>
-        <vrSel>0</vrSel>
-        <aSym>0</aSym>
-        <aTbox>0</aTbox>
-        <AscS1>0</AscS1>
-        <AscS2>0</AscS2>
-        <AscS3>0</AscS3>
-        <aSer3>0</aSer3>
-        <eProf>0</eProf>
-        <aLa>0</aLa>
-        <aPa1>0</aPa1>
-        <AscS4>0</AscS4>
-        <aSer4>0</aSer4>
-        <StkLoc>0</StkLoc>
-        <TrcWin>0</TrcWin>
-        <newCpu>0</newCpu>
-        <uProt>0</uProt>
-      </DebugFlag>
-      <LintExecutable />
-      <LintConfigFile />
-    </TargetOption>
-  </Target>
-</ProjectOpt>

Файлын зөрүү хэтэрхий том тул дарагдсан байна
+ 0 - 416
bsp/stm32/stm32l4r9-eval/board/CubeMX_Config/MDK-ARM/CubeMX_Config.uvprojx


+ 0 - 466
bsp/stm32/stm32l4r9-eval/board/CubeMX_Config/MDK-ARM/startup_stm32l4r9xx.s

@@ -1,466 +0,0 @@
-;********************** COPYRIGHT(c) 2017  STMicroelectronics ******************
-;* File Name          : startup_stm32l4r9xx.s
-;* Author             : MCD Application Team
-;* Description        : STM32L4R9xx Ultra Low Power devices vector table for MDK-ARM toolchain.
-;*                      This module performs:
-;*                      - Set the initial SP
-;*                      - Set the initial PC == Reset_Handler
-;*                      - Set the vector table entries with the exceptions ISR address
-;*                      - Branches to __main in the C library (which eventually
-;*                        calls main()).
-;*                      After Reset the Cortex-M4 processor is in Thread mode,
-;*                      priority is Privileged, and the Stack is set to Main.
-;* <<< Use Configuration Wizard in Context Menu >>>
-;*******************************************************************************
-;*
-;* 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. Neither the name of STMicroelectronics nor the names of its contributors
-;*      may be used to endorse or promote products derived from this software
-;*      without specific prior written permission.
-;*
-;* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-;* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-;* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
-;* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS 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.
-;*
-;*******************************************************************************
-;
-; Amount of memory (in bytes) allocated for Stack
-; Tailor this value to your application needs
-; <h> Stack Configuration
-;   <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
-; </h>
-
-Stack_Size		EQU     0x400
-
-                AREA    STACK, NOINIT, READWRITE, ALIGN=3
-Stack_Mem       SPACE   Stack_Size
-__initial_sp
-
-
-; <h> Heap Configuration
-;   <o>  Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
-; </h>
-
-Heap_Size      EQU     0x200
-
-                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     WWDG_IRQHandler                   ; Window WatchDog
-                DCD     PVD_PVM_IRQHandler                ; PVD/PVM1/PVM2/PVM3/PVM4 through EXTI Line detection
-                DCD     TAMP_STAMP_IRQHandler             ; Tamper and TimeStamps through the EXTI line
-                DCD     RTC_WKUP_IRQHandler               ; RTC Wakeup through the EXTI line
-                DCD     FLASH_IRQHandler                  ; FLASH
-                DCD     RCC_IRQHandler                    ; RCC
-                DCD     EXTI0_IRQHandler                  ; EXTI Line0
-                DCD     EXTI1_IRQHandler                  ; EXTI Line1
-                DCD     EXTI2_IRQHandler                  ; EXTI Line2
-                DCD     EXTI3_IRQHandler                  ; EXTI Line3
-                DCD     EXTI4_IRQHandler                  ; EXTI Line4
-                DCD     DMA1_Channel1_IRQHandler          ; DMA1 Channel 1
-                DCD     DMA1_Channel2_IRQHandler          ; DMA1 Channel 2
-                DCD     DMA1_Channel3_IRQHandler          ; DMA1 Channel 3
-                DCD     DMA1_Channel4_IRQHandler          ; DMA1 Channel 4
-                DCD     DMA1_Channel5_IRQHandler          ; DMA1 Channel 5
-                DCD     DMA1_Channel6_IRQHandler          ; DMA1 Channel 6
-                DCD     DMA1_Channel7_IRQHandler          ; DMA1 Channel 7
-                DCD     ADC1_IRQHandler                   ; ADC1
-                DCD     CAN1_TX_IRQHandler                ; CAN1 TX
-                DCD     CAN1_RX0_IRQHandler               ; CAN1 RX0
-                DCD     CAN1_RX1_IRQHandler               ; CAN1 RX1
-                DCD     CAN1_SCE_IRQHandler               ; CAN1 SCE
-                DCD     EXTI9_5_IRQHandler                ; External Line[9:5]s
-                DCD     TIM1_BRK_TIM15_IRQHandler         ; TIM1 Break and TIM15
-                DCD     TIM1_UP_TIM16_IRQHandler          ; TIM1 Update and TIM16
-                DCD     TIM1_TRG_COM_TIM17_IRQHandler     ; TIM1 Trigger and Commutation and TIM17
-                DCD     TIM1_CC_IRQHandler                ; TIM1 Capture Compare
-                DCD     TIM2_IRQHandler                   ; TIM2
-                DCD     TIM3_IRQHandler                   ; TIM3
-                DCD     TIM4_IRQHandler                   ; TIM4
-                DCD     I2C1_EV_IRQHandler                ; I2C1 Event
-                DCD     I2C1_ER_IRQHandler                ; I2C1 Error
-                DCD     I2C2_EV_IRQHandler                ; I2C2 Event
-                DCD     I2C2_ER_IRQHandler                ; I2C2 Error
-                DCD     SPI1_IRQHandler                   ; SPI1
-                DCD     SPI2_IRQHandler                   ; SPI2
-                DCD     USART1_IRQHandler                 ; USART1
-                DCD     USART2_IRQHandler                 ; USART2
-                DCD     USART3_IRQHandler                 ; USART3
-                DCD     EXTI15_10_IRQHandler              ; External Line[15:10]
-                DCD     RTC_Alarm_IRQHandler              ; RTC Alarm (A and B) through EXTI Line
-                DCD     DFSDM1_FLT3_IRQHandler            ; DFSDM1 Filter 3 global Interrupt
-                DCD     TIM8_BRK_IRQHandler               ; TIM8 Break Interrupt
-                DCD     TIM8_UP_IRQHandler                ; TIM8 Update Interrupt
-                DCD     TIM8_TRG_COM_IRQHandler           ; TIM8 Trigger and Commutation Interrupt
-                DCD     TIM8_CC_IRQHandler                ; TIM8 Capture Compare Interrupt
-                DCD     0                                 ; Reserved
-                DCD     FMC_IRQHandler                    ; FMC
-                DCD     SDMMC1_IRQHandler                 ; SDMMC1
-                DCD     TIM5_IRQHandler                   ; TIM5
-                DCD     SPI3_IRQHandler                   ; SPI3
-                DCD     UART4_IRQHandler                  ; UART4
-                DCD     UART5_IRQHandler                  ; UART5
-                DCD     TIM6_DAC_IRQHandler               ; TIM6 and DAC1&2 underrun errors
-                DCD     TIM7_IRQHandler                   ; TIM7
-                DCD     DMA2_Channel1_IRQHandler          ; DMA2 Channel 1
-                DCD     DMA2_Channel2_IRQHandler          ; DMA2 Channel 2
-                DCD     DMA2_Channel3_IRQHandler          ; DMA2 Channel 3
-                DCD     DMA2_Channel4_IRQHandler          ; DMA2 Channel 4
-                DCD     DMA2_Channel5_IRQHandler          ; DMA2 Channel 5
-                DCD     DFSDM1_FLT0_IRQHandler            ; DFSDM1 Filter 0 global Interrupt
-                DCD     DFSDM1_FLT1_IRQHandler            ; DFSDM1 Filter 1 global Interrupt
-                DCD     DFSDM1_FLT2_IRQHandler            ; DFSDM1 Filter 2 global Interrupt
-                DCD     COMP_IRQHandler                   ; COMP Interrupt
-                DCD     LPTIM1_IRQHandler                 ; LP TIM1 interrupt
-                DCD     LPTIM2_IRQHandler                 ; LP TIM2 interrupt
-                DCD     OTG_FS_IRQHandler                 ; USB OTG FS
-                DCD     DMA2_Channel6_IRQHandler          ; DMA2 Channel 6
-                DCD     DMA2_Channel7_IRQHandler          ; DMA2 Channel 7
-                DCD     LPUART1_IRQHandler                ; LP UART1 interrupt
-                DCD     OCTOSPI1_IRQHandler               ; OctoSPI1 global interrupt
-                DCD     I2C3_EV_IRQHandler                ; I2C3 event
-                DCD     I2C3_ER_IRQHandler                ; I2C3 error
-                DCD     SAI1_IRQHandler                   ; Serial Audio Interface 1 global interrupt
-                DCD     SAI2_IRQHandler                   ; Serial Audio Interface 2 global interrupt
-                DCD     OCTOSPI2_IRQHandler               ; OctoSPI2 global interrupt
-                DCD     TSC_IRQHandler                    ; Touch Sense Controller global interrupt
-                DCD     DSI_IRQHandler                    ; DSI global interrupt
-                DCD     0                                 ; Reserved
-                DCD     RNG_IRQHandler                    ; RNG global interrupt
-                DCD     FPU_IRQHandler                    ; FPU
-                DCD     CRS_IRQHandler                    ; CRS global interrupt
-                DCD     I2C4_ER_IRQHandler                ; I2C4 error
-                DCD     I2C4_EV_IRQHandler                ; I2C4 event
-                DCD     DCMI_IRQHandler                   ; DCMI global interrupt
-                DCD     0                                 ; Reserved
-                DCD     0                                 ; Reserved
-                DCD     0                                 ; Reserved
-                DCD     0                                 ; Reserved
-                DCD     DMA2D_IRQHandler                  ; DMA2D global interrupt
-                DCD     LTDC_IRQHandler                   ; LTDC global interrupt
-                DCD     LTDC_ER_IRQHandler                ; LTDC error global interrupt
-                DCD     GFXMMU_IRQHandler                 ; GFXMMU global interrupt
-                DCD     DMAMUX1_OVR_IRQHandler            ; DMAMUX1 overrun global interrupt
-
-__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     WWDG_IRQHandler                   [WEAK]
-        EXPORT     PVD_PVM_IRQHandler                [WEAK]
-        EXPORT     TAMP_STAMP_IRQHandler             [WEAK]
-        EXPORT     RTC_WKUP_IRQHandler               [WEAK]
-        EXPORT     FLASH_IRQHandler                  [WEAK]
-        EXPORT     RCC_IRQHandler                    [WEAK]
-        EXPORT     EXTI0_IRQHandler                  [WEAK]
-        EXPORT     EXTI1_IRQHandler                  [WEAK]
-        EXPORT     EXTI2_IRQHandler                  [WEAK]
-        EXPORT     EXTI3_IRQHandler                  [WEAK]
-        EXPORT     EXTI4_IRQHandler                  [WEAK]
-        EXPORT     DMA1_Channel1_IRQHandler          [WEAK]
-        EXPORT     DMA1_Channel2_IRQHandler          [WEAK]
-        EXPORT     DMA1_Channel3_IRQHandler          [WEAK]
-        EXPORT     DMA1_Channel4_IRQHandler          [WEAK]
-        EXPORT     DMA1_Channel5_IRQHandler          [WEAK]
-        EXPORT     DMA1_Channel6_IRQHandler          [WEAK]
-        EXPORT     DMA1_Channel7_IRQHandler          [WEAK]
-        EXPORT     ADC1_IRQHandler                   [WEAK]
-        EXPORT     CAN1_TX_IRQHandler                [WEAK]
-        EXPORT     CAN1_RX0_IRQHandler               [WEAK]
-        EXPORT     CAN1_RX1_IRQHandler               [WEAK]
-        EXPORT     CAN1_SCE_IRQHandler               [WEAK]
-        EXPORT     EXTI9_5_IRQHandler                [WEAK]
-        EXPORT     TIM1_BRK_TIM15_IRQHandler         [WEAK]
-        EXPORT     TIM1_UP_TIM16_IRQHandler          [WEAK]
-        EXPORT     TIM1_TRG_COM_TIM17_IRQHandler     [WEAK]
-        EXPORT     TIM1_CC_IRQHandler                [WEAK]
-        EXPORT     TIM2_IRQHandler                   [WEAK]
-        EXPORT     TIM3_IRQHandler                   [WEAK]
-        EXPORT     TIM4_IRQHandler                   [WEAK]
-        EXPORT     I2C1_EV_IRQHandler                [WEAK]
-        EXPORT     I2C1_ER_IRQHandler                [WEAK]
-        EXPORT     I2C2_EV_IRQHandler                [WEAK]
-        EXPORT     I2C2_ER_IRQHandler                [WEAK]
-        EXPORT     SPI1_IRQHandler                   [WEAK]
-        EXPORT     SPI2_IRQHandler                   [WEAK]
-        EXPORT     USART1_IRQHandler                 [WEAK]
-        EXPORT     USART2_IRQHandler                 [WEAK]
-        EXPORT     USART3_IRQHandler                 [WEAK]
-        EXPORT     EXTI15_10_IRQHandler              [WEAK]
-        EXPORT     RTC_Alarm_IRQHandler              [WEAK]
-        EXPORT     DFSDM1_FLT3_IRQHandler            [WEAK]
-        EXPORT     TIM8_BRK_IRQHandler               [WEAK]
-        EXPORT     TIM8_UP_IRQHandler                [WEAK]
-        EXPORT     TIM8_TRG_COM_IRQHandler           [WEAK]
-        EXPORT     TIM8_CC_IRQHandler                [WEAK]
-        EXPORT     FMC_IRQHandler                    [WEAK]
-        EXPORT     SDMMC1_IRQHandler                 [WEAK]
-        EXPORT     TIM5_IRQHandler                   [WEAK]
-        EXPORT     SPI3_IRQHandler                   [WEAK]
-        EXPORT     UART4_IRQHandler                  [WEAK]
-        EXPORT     UART5_IRQHandler                  [WEAK]
-        EXPORT     TIM6_DAC_IRQHandler               [WEAK]
-        EXPORT     TIM7_IRQHandler                   [WEAK]
-        EXPORT     DMA2_Channel1_IRQHandler          [WEAK]
-        EXPORT     DMA2_Channel2_IRQHandler          [WEAK]
-        EXPORT     DMA2_Channel3_IRQHandler          [WEAK]
-        EXPORT     DMA2_Channel4_IRQHandler          [WEAK]
-        EXPORT     DMA2_Channel5_IRQHandler          [WEAK]
-        EXPORT     DFSDM1_FLT0_IRQHandler            [WEAK]
-        EXPORT     DFSDM1_FLT1_IRQHandler            [WEAK]
-        EXPORT     DFSDM1_FLT2_IRQHandler            [WEAK]
-        EXPORT     COMP_IRQHandler                   [WEAK]
-        EXPORT     LPTIM1_IRQHandler                 [WEAK]
-        EXPORT     LPTIM2_IRQHandler                 [WEAK]
-        EXPORT     OTG_FS_IRQHandler                 [WEAK]
-        EXPORT     DMA2_Channel6_IRQHandler          [WEAK]
-        EXPORT     DMA2_Channel7_IRQHandler          [WEAK]
-        EXPORT     LPUART1_IRQHandler                [WEAK]
-        EXPORT     OCTOSPI1_IRQHandler               [WEAK]
-        EXPORT     I2C3_EV_IRQHandler                [WEAK]
-        EXPORT     I2C3_ER_IRQHandler                [WEAK]
-        EXPORT     SAI1_IRQHandler                   [WEAK]
-        EXPORT     SAI2_IRQHandler                   [WEAK]
-        EXPORT     OCTOSPI2_IRQHandler               [WEAK]
-        EXPORT     TSC_IRQHandler                    [WEAK]
-        EXPORT     DSI_IRQHandler                    [WEAK]
-        EXPORT     RNG_IRQHandler                    [WEAK]
-        EXPORT     FPU_IRQHandler                    [WEAK]
-        EXPORT     CRS_IRQHandler                    [WEAK]
-        EXPORT     I2C4_ER_IRQHandler                [WEAK]
-        EXPORT     I2C4_EV_IRQHandler                [WEAK]
-        EXPORT     DCMI_IRQHandler                   [WEAK]
-        EXPORT     DMA2D_IRQHandler                  [WEAK]
-        EXPORT     LTDC_IRQHandler                   [WEAK]
-        EXPORT     LTDC_ER_IRQHandler                [WEAK]
-        EXPORT     GFXMMU_IRQHandler                 [WEAK]
-        EXPORT     DMAMUX1_OVR_IRQHandler             [WEAK]
-
-WWDG_IRQHandler
-PVD_PVM_IRQHandler
-TAMP_STAMP_IRQHandler
-RTC_WKUP_IRQHandler
-FLASH_IRQHandler
-RCC_IRQHandler
-EXTI0_IRQHandler
-EXTI1_IRQHandler
-EXTI2_IRQHandler
-EXTI3_IRQHandler
-EXTI4_IRQHandler
-DMA1_Channel1_IRQHandler
-DMA1_Channel2_IRQHandler
-DMA1_Channel3_IRQHandler
-DMA1_Channel4_IRQHandler
-DMA1_Channel5_IRQHandler
-DMA1_Channel6_IRQHandler
-DMA1_Channel7_IRQHandler
-ADC1_IRQHandler
-CAN1_TX_IRQHandler
-CAN1_RX0_IRQHandler
-CAN1_RX1_IRQHandler
-CAN1_SCE_IRQHandler
-EXTI9_5_IRQHandler
-TIM1_BRK_TIM15_IRQHandler
-TIM1_UP_TIM16_IRQHandler
-TIM1_TRG_COM_TIM17_IRQHandler
-TIM1_CC_IRQHandler
-TIM2_IRQHandler
-TIM3_IRQHandler
-TIM4_IRQHandler
-I2C1_EV_IRQHandler
-I2C1_ER_IRQHandler
-I2C2_EV_IRQHandler
-I2C2_ER_IRQHandler
-SPI1_IRQHandler
-SPI2_IRQHandler
-USART1_IRQHandler
-USART2_IRQHandler
-USART3_IRQHandler
-EXTI15_10_IRQHandler
-RTC_Alarm_IRQHandler
-DFSDM1_FLT3_IRQHandler
-TIM8_BRK_IRQHandler
-TIM8_UP_IRQHandler
-TIM8_TRG_COM_IRQHandler
-TIM8_CC_IRQHandler
-FMC_IRQHandler
-SDMMC1_IRQHandler
-TIM5_IRQHandler
-SPI3_IRQHandler
-UART4_IRQHandler
-UART5_IRQHandler
-TIM6_DAC_IRQHandler
-TIM7_IRQHandler
-DMA2_Channel1_IRQHandler
-DMA2_Channel2_IRQHandler
-DMA2_Channel3_IRQHandler
-DMA2_Channel4_IRQHandler
-DMA2_Channel5_IRQHandler
-DFSDM1_FLT0_IRQHandler
-DFSDM1_FLT1_IRQHandler
-DFSDM1_FLT2_IRQHandler
-COMP_IRQHandler
-LPTIM1_IRQHandler
-LPTIM2_IRQHandler
-OTG_FS_IRQHandler
-DMA2_Channel6_IRQHandler
-DMA2_Channel7_IRQHandler
-LPUART1_IRQHandler
-OCTOSPI1_IRQHandler
-I2C3_EV_IRQHandler
-I2C3_ER_IRQHandler
-SAI1_IRQHandler
-SAI2_IRQHandler
-OCTOSPI2_IRQHandler
-TSC_IRQHandler
-DSI_IRQHandler
-RNG_IRQHandler
-FPU_IRQHandler
-CRS_IRQHandler
-I2C4_ER_IRQHandler
-I2C4_EV_IRQHandler
-DCMI_IRQHandler
-DMA2D_IRQHandler
-LTDC_IRQHandler
-LTDC_ER_IRQHandler
-GFXMMU_IRQHandler
-DMAMUX1_OVR_IRQHandler
-
-                B       .
-
-                ENDP
-
-                ALIGN
-
-;*******************************************************************************
-; User Stack and Heap initialization
-;*******************************************************************************
-                 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
-
-;************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE*****

+ 1 - 0
bsp/stm32/stm32l4r9-eval/board/board.c

@@ -6,6 +6,7 @@
  * Change Logs:
  * Change Logs:
  * Date           Author       Notes
  * Date           Author       Notes
  * 2018-11-06     SummerGift   first version
  * 2018-11-06     SummerGift   first version
+ * 2019-04-09     jhb  
  */
  */
 
 
 #include "board.h"
 #include "board.h"

+ 1 - 0
bsp/stm32/stm32l4r9-eval/board/board.h

@@ -6,6 +6,7 @@
  * Change Logs:
  * Change Logs:
  * Date           Author       Notes
  * Date           Author       Notes
  * 2018-11-5      SummerGift   first version
  * 2018-11-5      SummerGift   first version
+ * 2019-04-09	  jhb
  */
  */
 
 
 #ifndef __BOARD_H__
 #ifndef __BOARD_H__

+ 10 - 0
bsp/stm32/stm32l4r9-eval/board/linker_scripts/link.lds

@@ -47,6 +47,12 @@ SECTIONS
         KEEP(*(SORT(.rti_fn*)))
         KEEP(*(SORT(.rti_fn*)))
         __rt_init_end = .;
         __rt_init_end = .;
 
 
+        . = ALIGN(4);
+        PROVIDE(__ctors_start__ = .);
+        KEEP (*(SORT(.init_array.*)))
+        KEEP (*(.init_array))
+        PROVIDE(__ctors_end__ = .);
+
         . = ALIGN(4);
         . = ALIGN(4);
         _etext = .;
         _etext = .;
     } > ROM = 0
     } > ROM = 0
@@ -73,6 +79,10 @@ SECTIONS
         *(.data)
         *(.data)
         *(.data.*)
         *(.data.*)
         *(.gnu.linkonce.d*)
         *(.gnu.linkonce.d*)
+        PROVIDE(__dtors_start__ = .);
+        KEEP(*(SORT(.dtors.*)))
+        KEEP(*(.dtors))
+        PROVIDE(__dtors_end__ = .);
 
 
         . = ALIGN(4);
         . = ALIGN(4);
         /* This is used by the startup in order to initialize the .data secion */
         /* This is used by the startup in order to initialize the .data secion */

+ 27 - 7
bsp/stm32/stm32l4r9-eval/project.uvoptx

@@ -73,7 +73,7 @@
         <LExpSel>0</LExpSel>
         <LExpSel>0</LExpSel>
       </OPTXL>
       </OPTXL>
       <OPTFL>
       <OPTFL>
-        <tvExp>0</tvExp>
+        <tvExp>1</tvExp>
         <tvExpOptDlg>0</tvExpOptDlg>
         <tvExpOptDlg>0</tvExpOptDlg>
         <IsCurrentTarget>1</IsCurrentTarget>
         <IsCurrentTarget>1</IsCurrentTarget>
       </OPTFL>
       </OPTFL>
@@ -117,6 +117,26 @@
         <pMon>STLink\ST-LINKIII-KEIL_SWO.dll</pMon>
         <pMon>STLink\ST-LINKIII-KEIL_SWO.dll</pMon>
       </DebugOpt>
       </DebugOpt>
       <TargetDriverDllRegistry>
       <TargetDriverDllRegistry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>ARMRTXEVENTFLAGS</Key>
+          <Name>-L70 -Z18 -C0 -M0 -T1</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>DLGTARM</Key>
+          <Name>(1010=-1,-1,-1,-1,0)(1007=-1,-1,-1,-1,0)(1008=-1,-1,-1,-1,0)(1009=-1,-1,-1,-1,0)(1012=-1,-1,-1,-1,0)</Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>ARMDBGFLAGS</Key>
+          <Name></Name>
+        </SetRegEntry>
+        <SetRegEntry>
+          <Number>0</Number>
+          <Key>DLGUARM</Key>
+          <Name>(105=-1,-1,-1,-1,0)</Name>
+        </SetRegEntry>
         <SetRegEntry>
         <SetRegEntry>
           <Number>0</Number>
           <Number>0</Number>
           <Key>UL2CM3</Key>
           <Key>UL2CM3</Key>
@@ -125,14 +145,14 @@
         <SetRegEntry>
         <SetRegEntry>
           <Number>0</Number>
           <Number>0</Number>
           <Key>ST-LINKIII-KEIL_SWO</Key>
           <Key>ST-LINKIII-KEIL_SWO</Key>
-          <Name>-U0668FF504955857567074018 -O206 -SF4000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P2 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32L4Rx_2048 -FS08000000 -FL0200000 -FP0($$Device:STM32L4R9AIIx$CMSIS\Flash\STM32L4Rx_2048.FLM)</Name>
+          <Name>-U0668FF504955857567074018 -O206 -SF4000 -C0 -A0 -I0 -HNlocalhost -HP7184 -P2 -N00("ARM CoreSight SW-DP") -D00(2BA01477) -L00(0) -TO18 -TC10000000 -TP21 -TDS8007 -TDT0 -TDC1F -TIEFFFFFFFF -TIP8 -FO15 -FD20000000 -FC1000 -FN1 -FF0STM32L4Rx_2048.FLM -FS08000000 -FL0200000 -FP0($$Device:STM32L4R9AIIx$CMSIS\Flash\STM32L4Rx_2048.FLM)</Name>
         </SetRegEntry>
         </SetRegEntry>
       </TargetDriverDllRegistry>
       </TargetDriverDllRegistry>
       <Breakpoint>
       <Breakpoint>
         <Bp>
         <Bp>
           <Number>0</Number>
           <Number>0</Number>
           <Type>0</Type>
           <Type>0</Type>
-          <LineNumber>24</LineNumber>
+          <LineNumber>22</LineNumber>
           <EnabledFlag>0</EnabledFlag>
           <EnabledFlag>0</EnabledFlag>
           <Address>0</Address>
           <Address>0</Address>
           <ByteObject>0</ByteObject>
           <ByteObject>0</ByteObject>
@@ -148,7 +168,7 @@
         <Bp>
         <Bp>
           <Number>1</Number>
           <Number>1</Number>
           <Type>0</Type>
           <Type>0</Type>
-          <LineNumber>22</LineNumber>
+          <LineNumber>24</LineNumber>
           <EnabledFlag>0</EnabledFlag>
           <EnabledFlag>0</EnabledFlag>
           <Address>0</Address>
           <Address>0</Address>
           <ByteObject>0</ByteObject>
           <ByteObject>0</ByteObject>
@@ -168,12 +188,12 @@
       <DebugFlag>
       <DebugFlag>
         <trace>0</trace>
         <trace>0</trace>
         <periodic>0</periodic>
         <periodic>0</periodic>
-        <aLwin>0</aLwin>
+        <aLwin>1</aLwin>
         <aCover>0</aCover>
         <aCover>0</aCover>
         <aSer1>0</aSer1>
         <aSer1>0</aSer1>
         <aSer2>0</aSer2>
         <aSer2>0</aSer2>
         <aPa>0</aPa>
         <aPa>0</aPa>
-        <viewmode>0</viewmode>
+        <viewmode>1</viewmode>
         <vrSel>0</vrSel>
         <vrSel>0</vrSel>
         <aSym>0</aSym>
         <aSym>0</aSym>
         <aTbox>0</aTbox>
         <aTbox>0</aTbox>
@@ -432,7 +452,7 @@
       <GroupNumber>3</GroupNumber>
       <GroupNumber>3</GroupNumber>
       <FileNumber>17</FileNumber>
       <FileNumber>17</FileNumber>
       <FileType>1</FileType>
       <FileType>1</FileType>
-      <tvExp>0</tvExp>
+      <tvExp>1</tvExp>
       <tvExpOptDlg>0</tvExpOptDlg>
       <tvExpOptDlg>0</tvExpOptDlg>
       <bDave2>0</bDave2>
       <bDave2>0</bDave2>
       <PathWithFileName>board\board.c</PathWithFileName>
       <PathWithFileName>board\board.c</PathWithFileName>

+ 2 - 2
bsp/stm32/stm32l4r9-eval/rtconfig.py

@@ -46,7 +46,7 @@ if PLATFORM == 'gcc':
     DEVICE = ' -mcpu=cortex-m4 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard -ffunction-sections -fdata-sections'
     DEVICE = ' -mcpu=cortex-m4 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard -ffunction-sections -fdata-sections'
     CFLAGS = DEVICE + ' -Dgcc'
     CFLAGS = DEVICE + ' -Dgcc'
     AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb '
     AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb '
-    LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rt-thread.map,-cref,-u,Reset_Handler -T board/linker_scripts/link.lds'
+    LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rtthread.map,-cref,-u,Reset_Handler -T board/linker_scripts/link.lds'
 
 
     CPATH = ''
     CPATH = ''
     LPATH = ''
     LPATH = ''
@@ -73,7 +73,7 @@ elif PLATFORM == 'armcc':
     DEVICE = ' --cpu Cortex-M4.fp '
     DEVICE = ' --cpu Cortex-M4.fp '
     CFLAGS = '-c ' + DEVICE + ' --apcs=interwork --c99'
     CFLAGS = '-c ' + DEVICE + ' --apcs=interwork --c99'
     AFLAGS = DEVICE + ' --apcs=interwork '
     AFLAGS = DEVICE + ' --apcs=interwork '
-    LFLAGS = DEVICE + ' --info sizes --info totals --info unused --info veneers --list rt-thread.map --strict --scatter "board\linker_scripts\link.sct"'
+    LFLAGS = DEVICE + ' --info sizes --info totals --info unused --info veneers --list rtthread.map --strict --scatter "board\linker_scripts\link.sct"'
     CFLAGS += ' -I' + EXEC_PATH + '/ARM/ARMCC/include'
     CFLAGS += ' -I' + EXEC_PATH + '/ARM/ARMCC/include'
     LFLAGS += ' --libpath=' + EXEC_PATH + '/ARM/ARMCC/lib'
     LFLAGS += ' --libpath=' + EXEC_PATH + '/ARM/ARMCC/lib'
 
 

Энэ ялгаанд хэт олон файл өөрчлөгдсөн тул зарим файлыг харуулаагүй болно