Merge pull request #2914 from tyustli/master
fix 429 uart2/3 hardware init and add can1
This commit is contained in:
commit
0ed24743c7
|
@ -557,9 +557,9 @@ static rt_err_t drv_control(struct rt_can_device *can, int cmd, void *arg)
|
||||||
break;
|
break;
|
||||||
case RT_CAN_CMD_SET_MODE:
|
case RT_CAN_CMD_SET_MODE:
|
||||||
argval = (rt_uint32_t) arg;
|
argval = (rt_uint32_t) arg;
|
||||||
if (argval != RT_CAN_MODE_NORMAL ||
|
if (argval != RT_CAN_MODE_NORMAL &&
|
||||||
argval != RT_CAN_MODE_LISEN ||
|
argval != RT_CAN_MODE_LISEN &&
|
||||||
argval != RT_CAN_MODE_LOOPBACK ||
|
argval != RT_CAN_MODE_LOOPBACK &&
|
||||||
argval != RT_CAN_MODE_LOOPBACKANLISEN)
|
argval != RT_CAN_MODE_LOOPBACKANLISEN)
|
||||||
{
|
{
|
||||||
return RT_ERROR;
|
return RT_ERROR;
|
||||||
|
@ -592,7 +592,7 @@ static rt_err_t drv_control(struct rt_can_device *can, int cmd, void *arg)
|
||||||
break;
|
break;
|
||||||
case RT_CAN_CMD_SET_PRIV:
|
case RT_CAN_CMD_SET_PRIV:
|
||||||
argval = (rt_uint32_t) arg;
|
argval = (rt_uint32_t) arg;
|
||||||
if (argval != RT_CAN_MODE_PRIV ||
|
if (argval != RT_CAN_MODE_PRIV &&
|
||||||
argval != RT_CAN_MODE_NOPRIV)
|
argval != RT_CAN_MODE_NOPRIV)
|
||||||
{
|
{
|
||||||
return RT_ERROR;
|
return RT_ERROR;
|
||||||
|
|
|
@ -53,6 +53,7 @@
|
||||||
| UART | 支持 | UART1/2/3 |
|
| UART | 支持 | UART1/2/3 |
|
||||||
| SPI | 支持 | SPI1/2/5 |
|
| SPI | 支持 | SPI1/2/5 |
|
||||||
| I2C | 支持 | 软件 I2C |
|
| I2C | 支持 | 软件 I2C |
|
||||||
|
| CAN | 支持 | PA12->TX, PA11->RX |
|
||||||
| ADC | 支持 | |
|
| ADC | 支持 | |
|
||||||
| RTC | 支持 | 支持外部晶振和内部低速时钟 |
|
| RTC | 支持 | 支持外部晶振和内部低速时钟 |
|
||||||
| WDT | 支持 | |
|
| WDT | 支持 | |
|
||||||
|
|
File diff suppressed because one or more lines are too long
|
@ -1,33 +1,20 @@
|
||||||
/**
|
/**
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
* @file stm32f4xx_hal_conf.h
|
* @file stm32f4xx_hal_conf_template.h
|
||||||
* @brief HAL configuration file.
|
* @author MCD Application Team
|
||||||
|
* @brief HAL configuration template file.
|
||||||
|
* This file should be copied to the application folder and renamed
|
||||||
|
* to stm32f4xx_hal_conf.h.
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
* @attention
|
* @attention
|
||||||
*
|
*
|
||||||
* <h2><center>© COPYRIGHT(c) 2018 STMicroelectronics</center></h2>
|
* <h2><center>© Copyright (c) 2017 STMicroelectronics.
|
||||||
|
* All rights reserved.</center></h2>
|
||||||
*
|
*
|
||||||
* Redistribution and use in source and binary forms, with or without modification,
|
* This software component is licensed by ST under BSD 3-Clause license,
|
||||||
* are permitted provided that the following conditions are met:
|
* the "License"; You may not use this file except in compliance with the
|
||||||
* 1. Redistributions of source code must retain the above copyright notice,
|
* License. You may obtain a copy of the License at:
|
||||||
* this list of conditions and the following disclaimer.
|
* opensource.org/licenses/BSD-3-Clause
|
||||||
* 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.
|
|
||||||
*
|
*
|
||||||
******************************************************************************
|
******************************************************************************
|
||||||
*/
|
*/
|
||||||
|
@ -49,9 +36,9 @@
|
||||||
*/
|
*/
|
||||||
#define HAL_MODULE_ENABLED
|
#define HAL_MODULE_ENABLED
|
||||||
|
|
||||||
#define HAL_ADC_MODULE_ENABLED
|
#define HAL_ADC_MODULE_ENABLED
|
||||||
/* #define HAL_CRYP_MODULE_ENABLED */
|
/* #define HAL_CRYP_MODULE_ENABLED */
|
||||||
/* #define HAL_CAN_MODULE_ENABLED */
|
#define HAL_CAN_MODULE_ENABLED
|
||||||
/* #define HAL_CRC_MODULE_ENABLED */
|
/* #define HAL_CRC_MODULE_ENABLED */
|
||||||
/* #define HAL_CRYP_MODULE_ENABLED */
|
/* #define HAL_CRYP_MODULE_ENABLED */
|
||||||
/* #define HAL_DAC_MODULE_ENABLED */
|
/* #define HAL_DAC_MODULE_ENABLED */
|
||||||
|
@ -92,6 +79,7 @@
|
||||||
/* #define HAL_LPTIM_MODULE_ENABLED */
|
/* #define HAL_LPTIM_MODULE_ENABLED */
|
||||||
/* #define HAL_EXTI_MODULE_ENABLED */
|
/* #define HAL_EXTI_MODULE_ENABLED */
|
||||||
#define HAL_GPIO_MODULE_ENABLED
|
#define HAL_GPIO_MODULE_ENABLED
|
||||||
|
#define HAL_EXTI_MODULE_ENABLED
|
||||||
#define HAL_DMA_MODULE_ENABLED
|
#define HAL_DMA_MODULE_ENABLED
|
||||||
#define HAL_RCC_MODULE_ENABLED
|
#define HAL_RCC_MODULE_ENABLED
|
||||||
#define HAL_FLASH_MODULE_ENABLED
|
#define HAL_FLASH_MODULE_ENABLED
|
||||||
|
@ -221,12 +209,12 @@
|
||||||
#define PHY_JABBER_DETECTION ((uint16_t)0x0002U) /*!< Jabber condition detected */
|
#define PHY_JABBER_DETECTION ((uint16_t)0x0002U) /*!< Jabber condition detected */
|
||||||
|
|
||||||
/* Section 4: Extended PHY Registers */
|
/* Section 4: Extended PHY Registers */
|
||||||
#define PHY_SR ((uint16_t)0x10U) /*!< PHY status register Offset */
|
#define PHY_SR ((uint16_t)0x1FU) /*!< PHY status register Offset */
|
||||||
|
|
||||||
#define PHY_SPEED_STATUS ((uint16_t)0x0002U) /*!< PHY Speed mask */
|
#define PHY_SPEED_STATUS ((uint16_t)0x0004U) /*!< PHY Speed mask */
|
||||||
#define PHY_DUPLEX_STATUS ((uint16_t)0x0004U) /*!< PHY Duplex mask */
|
#define PHY_DUPLEX_STATUS ((uint16_t)0x0010U) /*!< PHY Duplex mask */
|
||||||
|
|
||||||
#define PHY_ISFR ((uint16_t)0x000BU) /*!< PHY Interrupt Source Flag register Offset */
|
#define PHY_ISFR ((uint16_t)0x001DU) /*!< PHY Interrupt Source Flag register Offset */
|
||||||
#define PHY_ISFR_INT4 ((uint16_t)0x000BU) /*!< PHY Link down inturrupt */
|
#define PHY_ISFR_INT4 ((uint16_t)0x000BU) /*!< PHY Link down inturrupt */
|
||||||
|
|
||||||
/* ################## SPI peripheral configuration ########################## */
|
/* ################## SPI peripheral configuration ########################## */
|
||||||
|
|
|
@ -5,29 +5,34 @@ ADC1.NbrOfConversionFlag=1
|
||||||
ADC1.Rank-0\#ChannelRegularConversion=1
|
ADC1.Rank-0\#ChannelRegularConversion=1
|
||||||
ADC1.SamplingTime-0\#ChannelRegularConversion=ADC_SAMPLETIME_3CYCLES
|
ADC1.SamplingTime-0\#ChannelRegularConversion=ADC_SAMPLETIME_3CYCLES
|
||||||
ADC1.master=1
|
ADC1.master=1
|
||||||
|
CAN1.CalculateTimeQuantum=355.55555555555554
|
||||||
|
CAN1.IPParameters=CalculateTimeQuantum
|
||||||
ETH.IPParameters=MediaInterface
|
ETH.IPParameters=MediaInterface
|
||||||
ETH.MediaInterface=ETH_MEDIA_INTERFACE_RMII
|
ETH.MediaInterface=ETH_MEDIA_INTERFACE_RMII
|
||||||
File.Version=6
|
File.Version=6
|
||||||
KeepUserPlacement=false
|
KeepUserPlacement=false
|
||||||
Mcu.Family=STM32F4
|
Mcu.Family=STM32F4
|
||||||
Mcu.IP0=ADC1
|
Mcu.IP0=ADC1
|
||||||
Mcu.IP1=ETH
|
Mcu.IP1=CAN1
|
||||||
Mcu.IP10=SPI5
|
Mcu.IP10=SPI2
|
||||||
Mcu.IP11=SYS
|
Mcu.IP11=SPI5
|
||||||
Mcu.IP12=TIM2
|
Mcu.IP12=SYS
|
||||||
Mcu.IP13=TIM11
|
Mcu.IP13=TIM2
|
||||||
Mcu.IP14=TIM13
|
Mcu.IP14=TIM11
|
||||||
Mcu.IP15=TIM14
|
Mcu.IP15=TIM13
|
||||||
Mcu.IP16=USART1
|
Mcu.IP16=TIM14
|
||||||
Mcu.IP2=FMC
|
Mcu.IP17=USART1
|
||||||
Mcu.IP3=IWDG
|
Mcu.IP18=USART2
|
||||||
Mcu.IP4=NVIC
|
Mcu.IP19=USART3
|
||||||
Mcu.IP5=RCC
|
Mcu.IP2=ETH
|
||||||
Mcu.IP6=RTC
|
Mcu.IP3=FMC
|
||||||
Mcu.IP7=SDIO
|
Mcu.IP4=IWDG
|
||||||
Mcu.IP8=SPI1
|
Mcu.IP5=NVIC
|
||||||
Mcu.IP9=SPI2
|
Mcu.IP6=RCC
|
||||||
Mcu.IPNb=17
|
Mcu.IP7=RTC
|
||||||
|
Mcu.IP8=SDIO
|
||||||
|
Mcu.IP9=SPI1
|
||||||
|
Mcu.IPNb=20
|
||||||
Mcu.Name=STM32F429I(E-G)Tx
|
Mcu.Name=STM32F429I(E-G)Tx
|
||||||
Mcu.Package=LQFP176
|
Mcu.Package=LQFP176
|
||||||
Mcu.Pin0=PC14/OSC32_IN
|
Mcu.Pin0=PC14/OSC32_IN
|
||||||
|
@ -68,69 +73,80 @@ Mcu.Pin4=PF2
|
||||||
Mcu.Pin40=PE15
|
Mcu.Pin40=PE15
|
||||||
Mcu.Pin41=PB10
|
Mcu.Pin41=PB10
|
||||||
Mcu.Pin42=PB11
|
Mcu.Pin42=PB11
|
||||||
Mcu.Pin43=PB14
|
Mcu.Pin43=PB13
|
||||||
Mcu.Pin44=PB15
|
Mcu.Pin44=PB14
|
||||||
Mcu.Pin45=PD8
|
Mcu.Pin45=PB15
|
||||||
Mcu.Pin46=PD9
|
Mcu.Pin46=PD8
|
||||||
Mcu.Pin47=PD10
|
Mcu.Pin47=PD9
|
||||||
Mcu.Pin48=PD14
|
Mcu.Pin48=PD10
|
||||||
Mcu.Pin49=PD15
|
Mcu.Pin49=PD14
|
||||||
Mcu.Pin5=PF3
|
Mcu.Pin5=PF3
|
||||||
Mcu.Pin50=PG2
|
Mcu.Pin50=PD15
|
||||||
Mcu.Pin51=PG4
|
Mcu.Pin51=PG2
|
||||||
Mcu.Pin52=PG5
|
Mcu.Pin52=PG4
|
||||||
Mcu.Pin53=PG8
|
Mcu.Pin53=PG5
|
||||||
Mcu.Pin54=PC8
|
Mcu.Pin54=PG8
|
||||||
Mcu.Pin55=PC9
|
Mcu.Pin55=PC8
|
||||||
Mcu.Pin56=PA9
|
Mcu.Pin56=PC9
|
||||||
Mcu.Pin57=PA10
|
Mcu.Pin57=PA9
|
||||||
Mcu.Pin58=PA13
|
Mcu.Pin58=PA10
|
||||||
Mcu.Pin59=PA14
|
Mcu.Pin59=PA11
|
||||||
Mcu.Pin6=PF4
|
Mcu.Pin6=PF4
|
||||||
Mcu.Pin60=PC10
|
Mcu.Pin60=PA12
|
||||||
Mcu.Pin61=PC11
|
Mcu.Pin61=PA13
|
||||||
Mcu.Pin62=PC12
|
Mcu.Pin62=PA14
|
||||||
Mcu.Pin63=PD0
|
Mcu.Pin63=PC10
|
||||||
Mcu.Pin64=PD1
|
Mcu.Pin64=PC11
|
||||||
Mcu.Pin65=PD2
|
Mcu.Pin65=PC12
|
||||||
Mcu.Pin66=PG13
|
Mcu.Pin66=PD0
|
||||||
Mcu.Pin67=PG14
|
Mcu.Pin67=PD1
|
||||||
Mcu.Pin68=PG15
|
Mcu.Pin68=PD2
|
||||||
Mcu.Pin69=PB3
|
Mcu.Pin69=PD5
|
||||||
Mcu.Pin7=PF5
|
Mcu.Pin7=PF5
|
||||||
Mcu.Pin70=PB5
|
Mcu.Pin70=PD6
|
||||||
Mcu.Pin71=PE0
|
Mcu.Pin71=PG11
|
||||||
Mcu.Pin72=PE1
|
Mcu.Pin72=PG13
|
||||||
Mcu.Pin73=VP_IWDG_VS_IWDG
|
Mcu.Pin73=PG14
|
||||||
Mcu.Pin74=VP_RTC_VS_RTC_Activate
|
Mcu.Pin74=PG15
|
||||||
Mcu.Pin75=VP_SYS_VS_Systick
|
Mcu.Pin75=PB3
|
||||||
Mcu.Pin76=VP_TIM2_VS_ClockSourceINT
|
Mcu.Pin76=PB5
|
||||||
Mcu.Pin77=VP_TIM11_VS_ClockSourceINT
|
Mcu.Pin77=PE0
|
||||||
Mcu.Pin78=VP_TIM13_VS_ClockSourceINT
|
Mcu.Pin78=PE1
|
||||||
Mcu.Pin79=VP_TIM14_VS_ClockSourceINT
|
Mcu.Pin79=VP_IWDG_VS_IWDG
|
||||||
Mcu.Pin8=PF7
|
Mcu.Pin8=PF7
|
||||||
|
Mcu.Pin80=VP_RTC_VS_RTC_Activate
|
||||||
|
Mcu.Pin81=VP_SYS_VS_Systick
|
||||||
|
Mcu.Pin82=VP_TIM2_VS_ClockSourceINT
|
||||||
|
Mcu.Pin83=VP_TIM11_VS_ClockSourceINT
|
||||||
|
Mcu.Pin84=VP_TIM13_VS_ClockSourceINT
|
||||||
|
Mcu.Pin85=VP_TIM14_VS_ClockSourceINT
|
||||||
Mcu.Pin9=PF8
|
Mcu.Pin9=PF8
|
||||||
Mcu.PinsNb=80
|
Mcu.PinsNb=86
|
||||||
Mcu.ThirdPartyNb=0
|
Mcu.ThirdPartyNb=0
|
||||||
Mcu.UserConstants=
|
Mcu.UserConstants=
|
||||||
Mcu.UserName=STM32F429IGTx
|
Mcu.UserName=STM32F429IGTx
|
||||||
MxCube.Version=5.0.0
|
MxCube.Version=5.3.0
|
||||||
MxDb.Version=DB.5.0.0
|
MxDb.Version=DB.5.0.30
|
||||||
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false
|
||||||
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false
|
||||||
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false
|
||||||
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false
|
||||||
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false
|
||||||
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false
|
||||||
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4
|
NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4
|
||||||
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false
|
||||||
NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:false\:true
|
||||||
NVIC.USART1_IRQn=true\:0\:0\:true\:false\:true\:true
|
NVIC.USART1_IRQn=true\:0\:0\:true\:false\:true\:true\:true
|
||||||
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false
|
NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false
|
||||||
PA1.Mode=RMII
|
PA1.Mode=RMII
|
||||||
PA1.Signal=ETH_REF_CLK
|
PA1.Signal=ETH_REF_CLK
|
||||||
PA10.Mode=Asynchronous
|
PA10.Mode=Asynchronous
|
||||||
PA10.Signal=USART1_RX
|
PA10.Signal=USART1_RX
|
||||||
|
PA11.Locked=true
|
||||||
|
PA11.Mode=Master
|
||||||
|
PA11.Signal=CAN1_RX
|
||||||
|
PA12.Mode=Master
|
||||||
|
PA12.Signal=CAN1_TX
|
||||||
PA13.Mode=Serial_Wire
|
PA13.Mode=Serial_Wire
|
||||||
PA13.Signal=SYS_JTMS-SWDIO
|
PA13.Signal=SYS_JTMS-SWDIO
|
||||||
PA14.Mode=Serial_Wire
|
PA14.Mode=Serial_Wire
|
||||||
|
@ -146,10 +162,12 @@ PA7.Mode=RMII
|
||||||
PA7.Signal=ETH_CRS_DV
|
PA7.Signal=ETH_CRS_DV
|
||||||
PA9.Mode=Asynchronous
|
PA9.Mode=Asynchronous
|
||||||
PA9.Signal=USART1_TX
|
PA9.Signal=USART1_TX
|
||||||
PB10.Mode=Full_Duplex_Master
|
PB10.Mode=Asynchronous
|
||||||
PB10.Signal=SPI2_SCK
|
PB10.Signal=USART3_TX
|
||||||
PB11.Mode=RMII
|
PB11.Mode=Asynchronous
|
||||||
PB11.Signal=ETH_TX_EN
|
PB11.Signal=USART3_RX
|
||||||
|
PB13.Mode=Full_Duplex_Master
|
||||||
|
PB13.Signal=SPI2_SCK
|
||||||
PB14.Mode=Full_Duplex_Master
|
PB14.Mode=Full_Duplex_Master
|
||||||
PB14.Signal=SPI2_MISO
|
PB14.Signal=SPI2_MISO
|
||||||
PB15.Mode=Full_Duplex_Master
|
PB15.Mode=Full_Duplex_Master
|
||||||
|
@ -190,7 +208,7 @@ PCC.PartNumber=STM32F429IGTx
|
||||||
PCC.Seq0=0
|
PCC.Seq0=0
|
||||||
PCC.Series=STM32F4
|
PCC.Series=STM32F4
|
||||||
PCC.Temperature=25
|
PCC.Temperature=25
|
||||||
PCC.Vdd=null
|
PCC.Vdd=3.3
|
||||||
PD0.Signal=FMC_D2_DA2
|
PD0.Signal=FMC_D2_DA2
|
||||||
PD1.Signal=FMC_D3_DA3
|
PD1.Signal=FMC_D3_DA3
|
||||||
PD10.Signal=FMC_D15_DA15
|
PD10.Signal=FMC_D15_DA15
|
||||||
|
@ -198,6 +216,10 @@ PD14.Signal=FMC_D0_DA0
|
||||||
PD15.Signal=FMC_D1_DA1
|
PD15.Signal=FMC_D1_DA1
|
||||||
PD2.Mode=SD_4_bits_Wide_bus
|
PD2.Mode=SD_4_bits_Wide_bus
|
||||||
PD2.Signal=SDIO_CMD
|
PD2.Signal=SDIO_CMD
|
||||||
|
PD5.Mode=Asynchronous
|
||||||
|
PD5.Signal=USART2_TX
|
||||||
|
PD6.Mode=Asynchronous
|
||||||
|
PD6.Signal=USART2_RX
|
||||||
PD8.Signal=FMC_D13_DA13
|
PD8.Signal=FMC_D13_DA13
|
||||||
PD9.Signal=FMC_D14_DA14
|
PD9.Signal=FMC_D14_DA14
|
||||||
PE0.Signal=FMC_NBL0
|
PE0.Signal=FMC_NBL0
|
||||||
|
@ -230,6 +252,8 @@ PF9.Mode=Full_Duplex_Master
|
||||||
PF9.Signal=SPI5_MOSI
|
PF9.Signal=SPI5_MOSI
|
||||||
PG0.Signal=FMC_A10
|
PG0.Signal=FMC_A10
|
||||||
PG1.Signal=FMC_A11
|
PG1.Signal=FMC_A11
|
||||||
|
PG11.Mode=RMII
|
||||||
|
PG11.Signal=ETH_TX_EN
|
||||||
PG13.Locked=true
|
PG13.Locked=true
|
||||||
PG13.Mode=RMII
|
PG13.Mode=RMII
|
||||||
PG13.Signal=ETH_TXD0
|
PG13.Signal=ETH_TXD0
|
||||||
|
@ -255,12 +279,12 @@ ProjectManager.CustomerFirmwarePackage=
|
||||||
ProjectManager.DefaultFWLocation=true
|
ProjectManager.DefaultFWLocation=true
|
||||||
ProjectManager.DeletePrevious=true
|
ProjectManager.DeletePrevious=true
|
||||||
ProjectManager.DeviceId=STM32F429IGTx
|
ProjectManager.DeviceId=STM32F429IGTx
|
||||||
ProjectManager.FirmwarePackage=STM32Cube FW_F4 V1.22.0
|
ProjectManager.FirmwarePackage=STM32Cube FW_F4 V1.24.1
|
||||||
ProjectManager.FreePins=false
|
ProjectManager.FreePins=false
|
||||||
ProjectManager.HalAssertFull=false
|
ProjectManager.HalAssertFull=false
|
||||||
ProjectManager.HeapSize=0x200
|
ProjectManager.HeapSize=0x200
|
||||||
ProjectManager.KeepUserCode=true
|
ProjectManager.KeepUserCode=true
|
||||||
ProjectManager.LastFirmware=false
|
ProjectManager.LastFirmware=true
|
||||||
ProjectManager.LibraryCopy=0
|
ProjectManager.LibraryCopy=0
|
||||||
ProjectManager.MainLocation=Src
|
ProjectManager.MainLocation=Src
|
||||||
ProjectManager.NoMain=false
|
ProjectManager.NoMain=false
|
||||||
|
@ -412,6 +436,10 @@ TIM2.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4
|
||||||
TIM2.IPParameters=Channel-PWM Generation4 CH4
|
TIM2.IPParameters=Channel-PWM Generation4 CH4
|
||||||
USART1.IPParameters=VirtualMode
|
USART1.IPParameters=VirtualMode
|
||||||
USART1.VirtualMode=VM_ASYNC
|
USART1.VirtualMode=VM_ASYNC
|
||||||
|
USART2.IPParameters=VirtualMode
|
||||||
|
USART2.VirtualMode=VM_ASYNC
|
||||||
|
USART3.IPParameters=VirtualMode
|
||||||
|
USART3.VirtualMode=VM_ASYNC
|
||||||
VP_IWDG_VS_IWDG.Mode=IWDG_Activate
|
VP_IWDG_VS_IWDG.Mode=IWDG_Activate
|
||||||
VP_IWDG_VS_IWDG.Signal=IWDG_VS_IWDG
|
VP_IWDG_VS_IWDG.Signal=IWDG_VS_IWDG
|
||||||
VP_RTC_VS_RTC_Activate.Mode=RTC_Enabled
|
VP_RTC_VS_RTC_Activate.Mode=RTC_Enabled
|
||||||
|
|
|
@ -64,6 +64,8 @@
|
||||||
/* Private variables ---------------------------------------------------------*/
|
/* Private variables ---------------------------------------------------------*/
|
||||||
ADC_HandleTypeDef hadc1;
|
ADC_HandleTypeDef hadc1;
|
||||||
|
|
||||||
|
CAN_HandleTypeDef hcan1;
|
||||||
|
|
||||||
ETH_HandleTypeDef heth;
|
ETH_HandleTypeDef heth;
|
||||||
|
|
||||||
IWDG_HandleTypeDef hiwdg;
|
IWDG_HandleTypeDef hiwdg;
|
||||||
|
@ -82,6 +84,8 @@ TIM_HandleTypeDef htim13;
|
||||||
TIM_HandleTypeDef htim14;
|
TIM_HandleTypeDef htim14;
|
||||||
|
|
||||||
UART_HandleTypeDef huart1;
|
UART_HandleTypeDef huart1;
|
||||||
|
UART_HandleTypeDef huart2;
|
||||||
|
UART_HandleTypeDef huart3;
|
||||||
|
|
||||||
SDRAM_HandleTypeDef hsdram1;
|
SDRAM_HandleTypeDef hsdram1;
|
||||||
|
|
||||||
|
@ -107,6 +111,9 @@ static void MX_TIM2_Init(void);
|
||||||
static void MX_SPI1_Init(void);
|
static void MX_SPI1_Init(void);
|
||||||
static void MX_SPI2_Init(void);
|
static void MX_SPI2_Init(void);
|
||||||
static void MX_SPI5_Init(void);
|
static void MX_SPI5_Init(void);
|
||||||
|
static void MX_CAN1_Init(void);
|
||||||
|
static void MX_USART2_UART_Init(void);
|
||||||
|
static void MX_USART3_UART_Init(void);
|
||||||
/* USER CODE BEGIN PFP */
|
/* USER CODE BEGIN PFP */
|
||||||
/* Private function prototypes -----------------------------------------------*/
|
/* Private function prototypes -----------------------------------------------*/
|
||||||
|
|
||||||
|
@ -126,6 +133,7 @@ int main(void)
|
||||||
/* USER CODE BEGIN 1 */
|
/* USER CODE BEGIN 1 */
|
||||||
|
|
||||||
/* USER CODE END 1 */
|
/* USER CODE END 1 */
|
||||||
|
|
||||||
|
|
||||||
/* MCU Configuration--------------------------------------------------------*/
|
/* MCU Configuration--------------------------------------------------------*/
|
||||||
|
|
||||||
|
@ -159,6 +167,9 @@ int main(void)
|
||||||
MX_SPI1_Init();
|
MX_SPI1_Init();
|
||||||
MX_SPI2_Init();
|
MX_SPI2_Init();
|
||||||
MX_SPI5_Init();
|
MX_SPI5_Init();
|
||||||
|
MX_CAN1_Init();
|
||||||
|
MX_USART2_UART_Init();
|
||||||
|
MX_USART3_UART_Init();
|
||||||
/* USER CODE BEGIN 2 */
|
/* USER CODE BEGIN 2 */
|
||||||
|
|
||||||
/* USER CODE END 2 */
|
/* USER CODE END 2 */
|
||||||
|
@ -186,11 +197,11 @@ void SystemClock_Config(void)
|
||||||
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
|
RCC_ClkInitTypeDef RCC_ClkInitStruct = {0};
|
||||||
RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0};
|
RCC_PeriphCLKInitTypeDef PeriphClkInitStruct = {0};
|
||||||
|
|
||||||
/**Configure the main internal regulator output voltage
|
/** Configure the main internal regulator output voltage
|
||||||
*/
|
*/
|
||||||
__HAL_RCC_PWR_CLK_ENABLE();
|
__HAL_RCC_PWR_CLK_ENABLE();
|
||||||
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
|
__HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE1);
|
||||||
/**Initializes the CPU, AHB and APB busses clocks
|
/** Initializes the CPU, AHB and APB busses clocks
|
||||||
*/
|
*/
|
||||||
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_LSI|RCC_OSCILLATORTYPE_HSE
|
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_LSI|RCC_OSCILLATORTYPE_HSE
|
||||||
|RCC_OSCILLATORTYPE_LSE;
|
|RCC_OSCILLATORTYPE_LSE;
|
||||||
|
@ -207,13 +218,13 @@ void SystemClock_Config(void)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
}
|
}
|
||||||
/**Activate the Over-Drive mode
|
/** Activate the Over-Drive mode
|
||||||
*/
|
*/
|
||||||
if (HAL_PWREx_EnableOverDrive() != HAL_OK)
|
if (HAL_PWREx_EnableOverDrive() != HAL_OK)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
}
|
}
|
||||||
/**Initializes the CPU, AHB and APB busses clocks
|
/** Initializes the CPU, AHB and APB busses clocks
|
||||||
*/
|
*/
|
||||||
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|
RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK|RCC_CLOCKTYPE_SYSCLK
|
||||||
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
|
|RCC_CLOCKTYPE_PCLK1|RCC_CLOCKTYPE_PCLK2;
|
||||||
|
@ -251,7 +262,7 @@ static void MX_ADC1_Init(void)
|
||||||
/* USER CODE BEGIN ADC1_Init 1 */
|
/* USER CODE BEGIN ADC1_Init 1 */
|
||||||
|
|
||||||
/* USER CODE END ADC1_Init 1 */
|
/* USER CODE END ADC1_Init 1 */
|
||||||
/**Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)
|
/** Configure the global features of the ADC (Clock, Resolution, Data Alignment and number of conversion)
|
||||||
*/
|
*/
|
||||||
hadc1.Instance = ADC1;
|
hadc1.Instance = ADC1;
|
||||||
hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;
|
hadc1.Init.ClockPrescaler = ADC_CLOCK_SYNC_PCLK_DIV4;
|
||||||
|
@ -269,7 +280,7 @@ static void MX_ADC1_Init(void)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
}
|
}
|
||||||
/**Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.
|
/** Configure for the selected ADC regular channel its corresponding rank in the sequencer and its sample time.
|
||||||
*/
|
*/
|
||||||
sConfig.Channel = ADC_CHANNEL_5;
|
sConfig.Channel = ADC_CHANNEL_5;
|
||||||
sConfig.Rank = 1;
|
sConfig.Rank = 1;
|
||||||
|
@ -284,6 +295,43 @@ static void MX_ADC1_Init(void)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief CAN1 Initialization Function
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
static void MX_CAN1_Init(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
/* USER CODE BEGIN CAN1_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE END CAN1_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE BEGIN CAN1_Init 1 */
|
||||||
|
|
||||||
|
/* USER CODE END CAN1_Init 1 */
|
||||||
|
hcan1.Instance = CAN1;
|
||||||
|
hcan1.Init.Prescaler = 16;
|
||||||
|
hcan1.Init.Mode = CAN_MODE_NORMAL;
|
||||||
|
hcan1.Init.SyncJumpWidth = CAN_SJW_1TQ;
|
||||||
|
hcan1.Init.TimeSeg1 = CAN_BS1_1TQ;
|
||||||
|
hcan1.Init.TimeSeg2 = CAN_BS2_1TQ;
|
||||||
|
hcan1.Init.TimeTriggeredMode = DISABLE;
|
||||||
|
hcan1.Init.AutoBusOff = DISABLE;
|
||||||
|
hcan1.Init.AutoWakeUp = DISABLE;
|
||||||
|
hcan1.Init.AutoRetransmission = DISABLE;
|
||||||
|
hcan1.Init.ReceiveFifoLocked = DISABLE;
|
||||||
|
hcan1.Init.TransmitFifoPriority = DISABLE;
|
||||||
|
if (HAL_CAN_Init(&hcan1) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
/* USER CODE BEGIN CAN1_Init 2 */
|
||||||
|
|
||||||
|
/* USER CODE END CAN1_Init 2 */
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief ETH Initialization Function
|
* @brief ETH Initialization Function
|
||||||
* @param None
|
* @param None
|
||||||
|
@ -372,7 +420,7 @@ static void MX_RTC_Init(void)
|
||||||
/* USER CODE BEGIN RTC_Init 1 */
|
/* USER CODE BEGIN RTC_Init 1 */
|
||||||
|
|
||||||
/* USER CODE END RTC_Init 1 */
|
/* USER CODE END RTC_Init 1 */
|
||||||
/**Initialize RTC Only
|
/** Initialize RTC Only
|
||||||
*/
|
*/
|
||||||
hrtc.Instance = RTC;
|
hrtc.Instance = RTC;
|
||||||
hrtc.Init.HourFormat = RTC_HOURFORMAT_24;
|
hrtc.Init.HourFormat = RTC_HOURFORMAT_24;
|
||||||
|
@ -565,6 +613,7 @@ static void MX_TIM2_Init(void)
|
||||||
htim2.Init.CounterMode = TIM_COUNTERMODE_UP;
|
htim2.Init.CounterMode = TIM_COUNTERMODE_UP;
|
||||||
htim2.Init.Period = 0;
|
htim2.Init.Period = 0;
|
||||||
htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
htim2.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
||||||
|
htim2.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
||||||
if (HAL_TIM_Base_Init(&htim2) != HAL_OK)
|
if (HAL_TIM_Base_Init(&htim2) != HAL_OK)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
|
@ -619,6 +668,7 @@ static void MX_TIM11_Init(void)
|
||||||
htim11.Init.CounterMode = TIM_COUNTERMODE_UP;
|
htim11.Init.CounterMode = TIM_COUNTERMODE_UP;
|
||||||
htim11.Init.Period = 0;
|
htim11.Init.Period = 0;
|
||||||
htim11.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
htim11.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
||||||
|
htim11.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
||||||
if (HAL_TIM_Base_Init(&htim11) != HAL_OK)
|
if (HAL_TIM_Base_Init(&htim11) != HAL_OK)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
|
@ -649,6 +699,7 @@ static void MX_TIM13_Init(void)
|
||||||
htim13.Init.CounterMode = TIM_COUNTERMODE_UP;
|
htim13.Init.CounterMode = TIM_COUNTERMODE_UP;
|
||||||
htim13.Init.Period = 0;
|
htim13.Init.Period = 0;
|
||||||
htim13.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
htim13.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
||||||
|
htim13.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
||||||
if (HAL_TIM_Base_Init(&htim13) != HAL_OK)
|
if (HAL_TIM_Base_Init(&htim13) != HAL_OK)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
|
@ -679,6 +730,7 @@ static void MX_TIM14_Init(void)
|
||||||
htim14.Init.CounterMode = TIM_COUNTERMODE_UP;
|
htim14.Init.CounterMode = TIM_COUNTERMODE_UP;
|
||||||
htim14.Init.Period = 0;
|
htim14.Init.Period = 0;
|
||||||
htim14.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
htim14.Init.ClockDivision = TIM_CLOCKDIVISION_DIV1;
|
||||||
|
htim14.Init.AutoReloadPreload = TIM_AUTORELOAD_PRELOAD_DISABLE;
|
||||||
if (HAL_TIM_Base_Init(&htim14) != HAL_OK)
|
if (HAL_TIM_Base_Init(&htim14) != HAL_OK)
|
||||||
{
|
{
|
||||||
Error_Handler();
|
Error_Handler();
|
||||||
|
@ -722,10 +774,85 @@ static void MX_USART1_UART_Init(void)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief USART2 Initialization Function
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
static void MX_USART2_UART_Init(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
/* USER CODE BEGIN USART2_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE END USART2_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE BEGIN USART2_Init 1 */
|
||||||
|
|
||||||
|
/* USER CODE END USART2_Init 1 */
|
||||||
|
huart2.Instance = USART2;
|
||||||
|
huart2.Init.BaudRate = 115200;
|
||||||
|
huart2.Init.WordLength = UART_WORDLENGTH_8B;
|
||||||
|
huart2.Init.StopBits = UART_STOPBITS_1;
|
||||||
|
huart2.Init.Parity = UART_PARITY_NONE;
|
||||||
|
huart2.Init.Mode = UART_MODE_TX_RX;
|
||||||
|
huart2.Init.HwFlowCtl = UART_HWCONTROL_NONE;
|
||||||
|
huart2.Init.OverSampling = UART_OVERSAMPLING_16;
|
||||||
|
if (HAL_UART_Init(&huart2) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
/* USER CODE BEGIN USART2_Init 2 */
|
||||||
|
|
||||||
|
/* USER CODE END USART2_Init 2 */
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief USART3 Initialization Function
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
static void MX_USART3_UART_Init(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
/* USER CODE BEGIN USART3_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE END USART3_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE BEGIN USART3_Init 1 */
|
||||||
|
|
||||||
|
/* USER CODE END USART3_Init 1 */
|
||||||
|
huart3.Instance = USART3;
|
||||||
|
huart3.Init.BaudRate = 115200;
|
||||||
|
huart3.Init.WordLength = UART_WORDLENGTH_8B;
|
||||||
|
huart3.Init.StopBits = UART_STOPBITS_1;
|
||||||
|
huart3.Init.Parity = UART_PARITY_NONE;
|
||||||
|
huart3.Init.Mode = UART_MODE_TX_RX;
|
||||||
|
huart3.Init.HwFlowCtl = UART_HWCONTROL_NONE;
|
||||||
|
huart3.Init.OverSampling = UART_OVERSAMPLING_16;
|
||||||
|
if (HAL_UART_Init(&huart3) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
/* USER CODE BEGIN USART3_Init 2 */
|
||||||
|
|
||||||
|
/* USER CODE END USART3_Init 2 */
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/* FMC initialization function */
|
/* FMC initialization function */
|
||||||
static void MX_FMC_Init(void)
|
static void MX_FMC_Init(void)
|
||||||
{
|
{
|
||||||
FMC_SDRAM_TimingTypeDef SdramTiming;
|
|
||||||
|
/* USER CODE BEGIN FMC_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE END FMC_Init 0 */
|
||||||
|
|
||||||
|
FMC_SDRAM_TimingTypeDef SdramTiming = {0};
|
||||||
|
|
||||||
|
/* USER CODE BEGIN FMC_Init 1 */
|
||||||
|
|
||||||
|
/* USER CODE END FMC_Init 1 */
|
||||||
|
|
||||||
/** Perform the SDRAM1 memory initialization sequence
|
/** Perform the SDRAM1 memory initialization sequence
|
||||||
*/
|
*/
|
||||||
|
@ -755,6 +882,9 @@ static void MX_FMC_Init(void)
|
||||||
Error_Handler( );
|
Error_Handler( );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* USER CODE BEGIN FMC_Init 2 */
|
||||||
|
|
||||||
|
/* USER CODE END FMC_Init 2 */
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -107,7 +107,6 @@ void HAL_MspInit(void)
|
||||||
*/
|
*/
|
||||||
void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
|
void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
|
||||||
{
|
{
|
||||||
|
|
||||||
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
||||||
if(hadc->Instance==ADC1)
|
if(hadc->Instance==ADC1)
|
||||||
{
|
{
|
||||||
|
@ -139,10 +138,8 @@ void HAL_ADC_MspInit(ADC_HandleTypeDef* hadc)
|
||||||
* @param hadc: ADC handle pointer
|
* @param hadc: ADC handle pointer
|
||||||
* @retval None
|
* @retval None
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
|
void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(hadc->Instance==ADC1)
|
if(hadc->Instance==ADC1)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN ADC1_MspDeInit 0 */
|
/* USER CODE BEGIN ADC1_MspDeInit 0 */
|
||||||
|
@ -163,6 +160,71 @@ void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief CAN MSP Initialization
|
||||||
|
* This function configures the hardware resources used in this example
|
||||||
|
* @param hcan: CAN handle pointer
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void HAL_CAN_MspInit(CAN_HandleTypeDef* hcan)
|
||||||
|
{
|
||||||
|
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
||||||
|
if(hcan->Instance==CAN1)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN CAN1_MspInit 0 */
|
||||||
|
|
||||||
|
/* USER CODE END CAN1_MspInit 0 */
|
||||||
|
/* Peripheral clock enable */
|
||||||
|
__HAL_RCC_CAN1_CLK_ENABLE();
|
||||||
|
|
||||||
|
__HAL_RCC_GPIOA_CLK_ENABLE();
|
||||||
|
/**CAN1 GPIO Configuration
|
||||||
|
PA11 ------> CAN1_RX
|
||||||
|
PA12 ------> CAN1_TX
|
||||||
|
*/
|
||||||
|
GPIO_InitStruct.Pin = GPIO_PIN_11|GPIO_PIN_12;
|
||||||
|
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
||||||
|
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||||
|
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
||||||
|
GPIO_InitStruct.Alternate = GPIO_AF9_CAN1;
|
||||||
|
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN CAN1_MspInit 1 */
|
||||||
|
|
||||||
|
/* USER CODE END CAN1_MspInit 1 */
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief CAN MSP De-Initialization
|
||||||
|
* This function freeze the hardware resources used in this example
|
||||||
|
* @param hcan: CAN handle pointer
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void HAL_CAN_MspDeInit(CAN_HandleTypeDef* hcan)
|
||||||
|
{
|
||||||
|
if(hcan->Instance==CAN1)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN CAN1_MspDeInit 0 */
|
||||||
|
|
||||||
|
/* USER CODE END CAN1_MspDeInit 0 */
|
||||||
|
/* Peripheral clock disable */
|
||||||
|
__HAL_RCC_CAN1_CLK_DISABLE();
|
||||||
|
|
||||||
|
/**CAN1 GPIO Configuration
|
||||||
|
PA11 ------> CAN1_RX
|
||||||
|
PA12 ------> CAN1_TX
|
||||||
|
*/
|
||||||
|
HAL_GPIO_DeInit(GPIOA, GPIO_PIN_11|GPIO_PIN_12);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN CAN1_MspDeInit 1 */
|
||||||
|
|
||||||
|
/* USER CODE END CAN1_MspDeInit 1 */
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief ETH MSP Initialization
|
* @brief ETH MSP Initialization
|
||||||
* This function configures the hardware resources used in this example
|
* This function configures the hardware resources used in this example
|
||||||
|
@ -171,7 +233,6 @@ void HAL_ADC_MspDeInit(ADC_HandleTypeDef* hadc)
|
||||||
*/
|
*/
|
||||||
void HAL_ETH_MspInit(ETH_HandleTypeDef* heth)
|
void HAL_ETH_MspInit(ETH_HandleTypeDef* heth)
|
||||||
{
|
{
|
||||||
|
|
||||||
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
||||||
if(heth->Instance==ETH)
|
if(heth->Instance==ETH)
|
||||||
{
|
{
|
||||||
|
@ -183,7 +244,6 @@ void HAL_ETH_MspInit(ETH_HandleTypeDef* heth)
|
||||||
|
|
||||||
__HAL_RCC_GPIOC_CLK_ENABLE();
|
__HAL_RCC_GPIOC_CLK_ENABLE();
|
||||||
__HAL_RCC_GPIOA_CLK_ENABLE();
|
__HAL_RCC_GPIOA_CLK_ENABLE();
|
||||||
__HAL_RCC_GPIOB_CLK_ENABLE();
|
|
||||||
__HAL_RCC_GPIOG_CLK_ENABLE();
|
__HAL_RCC_GPIOG_CLK_ENABLE();
|
||||||
/**ETH GPIO Configuration
|
/**ETH GPIO Configuration
|
||||||
PC1 ------> ETH_MDC
|
PC1 ------> ETH_MDC
|
||||||
|
@ -192,7 +252,7 @@ void HAL_ETH_MspInit(ETH_HandleTypeDef* heth)
|
||||||
PA7 ------> ETH_CRS_DV
|
PA7 ------> ETH_CRS_DV
|
||||||
PC4 ------> ETH_RXD0
|
PC4 ------> ETH_RXD0
|
||||||
PC5 ------> ETH_RXD1
|
PC5 ------> ETH_RXD1
|
||||||
PB11 ------> ETH_TX_EN
|
PG11 ------> ETH_TX_EN
|
||||||
PG13 ------> ETH_TXD0
|
PG13 ------> ETH_TXD0
|
||||||
PG14 ------> ETH_TXD1
|
PG14 ------> ETH_TXD1
|
||||||
*/
|
*/
|
||||||
|
@ -210,14 +270,7 @@ void HAL_ETH_MspInit(ETH_HandleTypeDef* heth)
|
||||||
GPIO_InitStruct.Alternate = GPIO_AF11_ETH;
|
GPIO_InitStruct.Alternate = GPIO_AF11_ETH;
|
||||||
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
HAL_GPIO_Init(GPIOA, &GPIO_InitStruct);
|
||||||
|
|
||||||
GPIO_InitStruct.Pin = GPIO_PIN_11;
|
GPIO_InitStruct.Pin = GPIO_PIN_11|GPIO_PIN_13|GPIO_PIN_14;
|
||||||
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
|
||||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
|
||||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
|
||||||
GPIO_InitStruct.Alternate = GPIO_AF11_ETH;
|
|
||||||
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
|
||||||
|
|
||||||
GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_14;
|
|
||||||
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
||||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
||||||
|
@ -237,10 +290,8 @@ void HAL_ETH_MspInit(ETH_HandleTypeDef* heth)
|
||||||
* @param heth: ETH handle pointer
|
* @param heth: ETH handle pointer
|
||||||
* @retval None
|
* @retval None
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void HAL_ETH_MspDeInit(ETH_HandleTypeDef* heth)
|
void HAL_ETH_MspDeInit(ETH_HandleTypeDef* heth)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(heth->Instance==ETH)
|
if(heth->Instance==ETH)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN ETH_MspDeInit 0 */
|
/* USER CODE BEGIN ETH_MspDeInit 0 */
|
||||||
|
@ -256,7 +307,7 @@ void HAL_ETH_MspDeInit(ETH_HandleTypeDef* heth)
|
||||||
PA7 ------> ETH_CRS_DV
|
PA7 ------> ETH_CRS_DV
|
||||||
PC4 ------> ETH_RXD0
|
PC4 ------> ETH_RXD0
|
||||||
PC5 ------> ETH_RXD1
|
PC5 ------> ETH_RXD1
|
||||||
PB11 ------> ETH_TX_EN
|
PG11 ------> ETH_TX_EN
|
||||||
PG13 ------> ETH_TXD0
|
PG13 ------> ETH_TXD0
|
||||||
PG14 ------> ETH_TXD1
|
PG14 ------> ETH_TXD1
|
||||||
*/
|
*/
|
||||||
|
@ -264,9 +315,7 @@ void HAL_ETH_MspDeInit(ETH_HandleTypeDef* heth)
|
||||||
|
|
||||||
HAL_GPIO_DeInit(GPIOA, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_7);
|
HAL_GPIO_DeInit(GPIOA, GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_7);
|
||||||
|
|
||||||
HAL_GPIO_DeInit(GPIOB, GPIO_PIN_11);
|
HAL_GPIO_DeInit(GPIOG, GPIO_PIN_11|GPIO_PIN_13|GPIO_PIN_14);
|
||||||
|
|
||||||
HAL_GPIO_DeInit(GPIOG, GPIO_PIN_13|GPIO_PIN_14);
|
|
||||||
|
|
||||||
/* USER CODE BEGIN ETH_MspDeInit 1 */
|
/* USER CODE BEGIN ETH_MspDeInit 1 */
|
||||||
|
|
||||||
|
@ -283,7 +332,6 @@ void HAL_ETH_MspDeInit(ETH_HandleTypeDef* heth)
|
||||||
*/
|
*/
|
||||||
void HAL_RTC_MspInit(RTC_HandleTypeDef* hrtc)
|
void HAL_RTC_MspInit(RTC_HandleTypeDef* hrtc)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(hrtc->Instance==RTC)
|
if(hrtc->Instance==RTC)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN RTC_MspInit 0 */
|
/* USER CODE BEGIN RTC_MspInit 0 */
|
||||||
|
@ -304,10 +352,8 @@ void HAL_RTC_MspInit(RTC_HandleTypeDef* hrtc)
|
||||||
* @param hrtc: RTC handle pointer
|
* @param hrtc: RTC handle pointer
|
||||||
* @retval None
|
* @retval None
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void HAL_RTC_MspDeInit(RTC_HandleTypeDef* hrtc)
|
void HAL_RTC_MspDeInit(RTC_HandleTypeDef* hrtc)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(hrtc->Instance==RTC)
|
if(hrtc->Instance==RTC)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN RTC_MspDeInit 0 */
|
/* USER CODE BEGIN RTC_MspDeInit 0 */
|
||||||
|
@ -330,7 +376,6 @@ void HAL_RTC_MspDeInit(RTC_HandleTypeDef* hrtc)
|
||||||
*/
|
*/
|
||||||
void HAL_SD_MspInit(SD_HandleTypeDef* hsd)
|
void HAL_SD_MspInit(SD_HandleTypeDef* hsd)
|
||||||
{
|
{
|
||||||
|
|
||||||
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
||||||
if(hsd->Instance==SDIO)
|
if(hsd->Instance==SDIO)
|
||||||
{
|
{
|
||||||
|
@ -378,10 +423,8 @@ void HAL_SD_MspInit(SD_HandleTypeDef* hsd)
|
||||||
* @param hsd: SD handle pointer
|
* @param hsd: SD handle pointer
|
||||||
* @retval None
|
* @retval None
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void HAL_SD_MspDeInit(SD_HandleTypeDef* hsd)
|
void HAL_SD_MspDeInit(SD_HandleTypeDef* hsd)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(hsd->Instance==SDIO)
|
if(hsd->Instance==SDIO)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN SDIO_MspDeInit 0 */
|
/* USER CODE BEGIN SDIO_MspDeInit 0 */
|
||||||
|
@ -418,7 +461,6 @@ void HAL_SD_MspDeInit(SD_HandleTypeDef* hsd)
|
||||||
*/
|
*/
|
||||||
void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
|
void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
|
||||||
{
|
{
|
||||||
|
|
||||||
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
||||||
if(hspi->Instance==SPI1)
|
if(hspi->Instance==SPI1)
|
||||||
{
|
{
|
||||||
|
@ -463,11 +505,11 @@ void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
|
||||||
|
|
||||||
__HAL_RCC_GPIOB_CLK_ENABLE();
|
__HAL_RCC_GPIOB_CLK_ENABLE();
|
||||||
/**SPI2 GPIO Configuration
|
/**SPI2 GPIO Configuration
|
||||||
PB10 ------> SPI2_SCK
|
PB13 ------> SPI2_SCK
|
||||||
PB14 ------> SPI2_MISO
|
PB14 ------> SPI2_MISO
|
||||||
PB15 ------> SPI2_MOSI
|
PB15 ------> SPI2_MOSI
|
||||||
*/
|
*/
|
||||||
GPIO_InitStruct.Pin = GPIO_PIN_10|GPIO_PIN_14|GPIO_PIN_15;
|
GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15;
|
||||||
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
||||||
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
GPIO_InitStruct.Pull = GPIO_NOPULL;
|
||||||
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
||||||
|
@ -512,10 +554,8 @@ void HAL_SPI_MspInit(SPI_HandleTypeDef* hspi)
|
||||||
* @param hspi: SPI handle pointer
|
* @param hspi: SPI handle pointer
|
||||||
* @retval None
|
* @retval None
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
|
void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(hspi->Instance==SPI1)
|
if(hspi->Instance==SPI1)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN SPI1_MspDeInit 0 */
|
/* USER CODE BEGIN SPI1_MspDeInit 0 */
|
||||||
|
@ -546,11 +586,11 @@ void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
|
||||||
__HAL_RCC_SPI2_CLK_DISABLE();
|
__HAL_RCC_SPI2_CLK_DISABLE();
|
||||||
|
|
||||||
/**SPI2 GPIO Configuration
|
/**SPI2 GPIO Configuration
|
||||||
PB10 ------> SPI2_SCK
|
PB13 ------> SPI2_SCK
|
||||||
PB14 ------> SPI2_MISO
|
PB14 ------> SPI2_MISO
|
||||||
PB15 ------> SPI2_MOSI
|
PB15 ------> SPI2_MOSI
|
||||||
*/
|
*/
|
||||||
HAL_GPIO_DeInit(GPIOB, GPIO_PIN_10|GPIO_PIN_14|GPIO_PIN_15);
|
HAL_GPIO_DeInit(GPIOB, GPIO_PIN_13|GPIO_PIN_14|GPIO_PIN_15);
|
||||||
|
|
||||||
/* USER CODE BEGIN SPI2_MspDeInit 1 */
|
/* USER CODE BEGIN SPI2_MspDeInit 1 */
|
||||||
|
|
||||||
|
@ -586,7 +626,6 @@ void HAL_SPI_MspDeInit(SPI_HandleTypeDef* hspi)
|
||||||
*/
|
*/
|
||||||
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
|
void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(htim_base->Instance==TIM2)
|
if(htim_base->Instance==TIM2)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN TIM2_MspInit 0 */
|
/* USER CODE BEGIN TIM2_MspInit 0 */
|
||||||
|
@ -636,7 +675,6 @@ void HAL_TIM_Base_MspInit(TIM_HandleTypeDef* htim_base)
|
||||||
|
|
||||||
void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)
|
void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)
|
||||||
{
|
{
|
||||||
|
|
||||||
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
||||||
if(htim->Instance==TIM2)
|
if(htim->Instance==TIM2)
|
||||||
{
|
{
|
||||||
|
@ -667,10 +705,8 @@ void HAL_TIM_MspPostInit(TIM_HandleTypeDef* htim)
|
||||||
* @param htim_base: TIM_Base handle pointer
|
* @param htim_base: TIM_Base handle pointer
|
||||||
* @retval None
|
* @retval None
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base)
|
void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(htim_base->Instance==TIM2)
|
if(htim_base->Instance==TIM2)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN TIM2_MspDeInit 0 */
|
/* USER CODE BEGIN TIM2_MspDeInit 0 */
|
||||||
|
@ -726,7 +762,6 @@ void HAL_TIM_Base_MspDeInit(TIM_HandleTypeDef* htim_base)
|
||||||
*/
|
*/
|
||||||
void HAL_UART_MspInit(UART_HandleTypeDef* huart)
|
void HAL_UART_MspInit(UART_HandleTypeDef* huart)
|
||||||
{
|
{
|
||||||
|
|
||||||
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
GPIO_InitTypeDef GPIO_InitStruct = {0};
|
||||||
if(huart->Instance==USART1)
|
if(huart->Instance==USART1)
|
||||||
{
|
{
|
||||||
|
@ -756,6 +791,54 @@ void HAL_UART_MspInit(UART_HandleTypeDef* huart)
|
||||||
|
|
||||||
/* USER CODE END USART1_MspInit 1 */
|
/* USER CODE END USART1_MspInit 1 */
|
||||||
}
|
}
|
||||||
|
else if(huart->Instance==USART2)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN USART2_MspInit 0 */
|
||||||
|
|
||||||
|
/* USER CODE END USART2_MspInit 0 */
|
||||||
|
/* Peripheral clock enable */
|
||||||
|
__HAL_RCC_USART2_CLK_ENABLE();
|
||||||
|
|
||||||
|
__HAL_RCC_GPIOD_CLK_ENABLE();
|
||||||
|
/**USART2 GPIO Configuration
|
||||||
|
PD5 ------> USART2_TX
|
||||||
|
PD6 ------> USART2_RX
|
||||||
|
*/
|
||||||
|
GPIO_InitStruct.Pin = GPIO_PIN_5|GPIO_PIN_6;
|
||||||
|
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
||||||
|
GPIO_InitStruct.Pull = GPIO_PULLUP;
|
||||||
|
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
||||||
|
GPIO_InitStruct.Alternate = GPIO_AF7_USART2;
|
||||||
|
HAL_GPIO_Init(GPIOD, &GPIO_InitStruct);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN USART2_MspInit 1 */
|
||||||
|
|
||||||
|
/* USER CODE END USART2_MspInit 1 */
|
||||||
|
}
|
||||||
|
else if(huart->Instance==USART3)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN USART3_MspInit 0 */
|
||||||
|
|
||||||
|
/* USER CODE END USART3_MspInit 0 */
|
||||||
|
/* Peripheral clock enable */
|
||||||
|
__HAL_RCC_USART3_CLK_ENABLE();
|
||||||
|
|
||||||
|
__HAL_RCC_GPIOB_CLK_ENABLE();
|
||||||
|
/**USART3 GPIO Configuration
|
||||||
|
PB10 ------> USART3_TX
|
||||||
|
PB11 ------> USART3_RX
|
||||||
|
*/
|
||||||
|
GPIO_InitStruct.Pin = GPIO_PIN_10|GPIO_PIN_11;
|
||||||
|
GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
|
||||||
|
GPIO_InitStruct.Pull = GPIO_PULLUP;
|
||||||
|
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_VERY_HIGH;
|
||||||
|
GPIO_InitStruct.Alternate = GPIO_AF7_USART3;
|
||||||
|
HAL_GPIO_Init(GPIOB, &GPIO_InitStruct);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN USART3_MspInit 1 */
|
||||||
|
|
||||||
|
/* USER CODE END USART3_MspInit 1 */
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -765,10 +848,8 @@ void HAL_UART_MspInit(UART_HandleTypeDef* huart)
|
||||||
* @param huart: UART handle pointer
|
* @param huart: UART handle pointer
|
||||||
* @retval None
|
* @retval None
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void HAL_UART_MspDeInit(UART_HandleTypeDef* huart)
|
void HAL_UART_MspDeInit(UART_HandleTypeDef* huart)
|
||||||
{
|
{
|
||||||
|
|
||||||
if(huart->Instance==USART1)
|
if(huart->Instance==USART1)
|
||||||
{
|
{
|
||||||
/* USER CODE BEGIN USART1_MspDeInit 0 */
|
/* USER CODE BEGIN USART1_MspDeInit 0 */
|
||||||
|
@ -789,6 +870,42 @@ void HAL_UART_MspDeInit(UART_HandleTypeDef* huart)
|
||||||
|
|
||||||
/* USER CODE END USART1_MspDeInit 1 */
|
/* USER CODE END USART1_MspDeInit 1 */
|
||||||
}
|
}
|
||||||
|
else if(huart->Instance==USART2)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN USART2_MspDeInit 0 */
|
||||||
|
|
||||||
|
/* USER CODE END USART2_MspDeInit 0 */
|
||||||
|
/* Peripheral clock disable */
|
||||||
|
__HAL_RCC_USART2_CLK_DISABLE();
|
||||||
|
|
||||||
|
/**USART2 GPIO Configuration
|
||||||
|
PD5 ------> USART2_TX
|
||||||
|
PD6 ------> USART2_RX
|
||||||
|
*/
|
||||||
|
HAL_GPIO_DeInit(GPIOD, GPIO_PIN_5|GPIO_PIN_6);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN USART2_MspDeInit 1 */
|
||||||
|
|
||||||
|
/* USER CODE END USART2_MspDeInit 1 */
|
||||||
|
}
|
||||||
|
else if(huart->Instance==USART3)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN USART3_MspDeInit 0 */
|
||||||
|
|
||||||
|
/* USER CODE END USART3_MspDeInit 0 */
|
||||||
|
/* Peripheral clock disable */
|
||||||
|
__HAL_RCC_USART3_CLK_DISABLE();
|
||||||
|
|
||||||
|
/**USART3 GPIO Configuration
|
||||||
|
PB10 ------> USART3_TX
|
||||||
|
PB11 ------> USART3_RX
|
||||||
|
*/
|
||||||
|
HAL_GPIO_DeInit(GPIOB, GPIO_PIN_10|GPIO_PIN_11);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN USART3_MspDeInit 1 */
|
||||||
|
|
||||||
|
/* USER CODE END USART3_MspDeInit 1 */
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -798,7 +915,7 @@ static void HAL_FMC_MspInit(void){
|
||||||
/* USER CODE BEGIN FMC_MspInit 0 */
|
/* USER CODE BEGIN FMC_MspInit 0 */
|
||||||
|
|
||||||
/* USER CODE END FMC_MspInit 0 */
|
/* USER CODE END FMC_MspInit 0 */
|
||||||
GPIO_InitTypeDef GPIO_InitStruct;
|
GPIO_InitTypeDef GPIO_InitStruct ={0};
|
||||||
if (FMC_Initialized) {
|
if (FMC_Initialized) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,7 +15,7 @@ menu "Onboard Peripheral Drivers"
|
||||||
|
|
||||||
config BSP_USING_COM2
|
config BSP_USING_COM2
|
||||||
bool "Enable COM2 (uart2 pin conflict with Ethernet and PWM)"
|
bool "Enable COM2 (uart2 pin conflict with Ethernet and PWM)"
|
||||||
select BSP_USING_UART
|
select BSP_USING_UART
|
||||||
select BSP_USING_UART2
|
select BSP_USING_UART2
|
||||||
default n
|
default n
|
||||||
|
|
||||||
|
@ -106,6 +106,15 @@ menu "On-chip Peripheral Drivers"
|
||||||
config BSP_USING_ON_CHIP_FLASH
|
config BSP_USING_ON_CHIP_FLASH
|
||||||
bool "Enable on-chip FLASH"
|
bool "Enable on-chip FLASH"
|
||||||
default n
|
default n
|
||||||
|
menuconfig BSP_USING_CAN
|
||||||
|
bool "Enable CAN"
|
||||||
|
default n
|
||||||
|
select RT_USING_CAN
|
||||||
|
if BSP_USING_CAN
|
||||||
|
config BSP_USING_CAN1
|
||||||
|
bool "Enable CAN1"
|
||||||
|
default n
|
||||||
|
endif
|
||||||
|
|
||||||
menuconfig BSP_USING_SPI
|
menuconfig BSP_USING_SPI
|
||||||
bool "Enable SPI BUS"
|
bool "Enable SPI BUS"
|
||||||
|
|
Loading…
Reference in New Issue