diff --git a/.mxproject b/.mxproject index ad06715..1ad7f84 100644 --- a/.mxproject +++ b/.mxproject @@ -9,17 +9,17 @@ CDefines=USE_HAL_DRIVER;STM32F412Rx;USE_HAL_DRIVER;USE_HAL_DRIVER; [PreviousGenFiles] AdvancedFolderStructure=true HeaderFileListSize=3 -HeaderFiles#0=/home/jasper/dev/ams-slave/Core/Inc/stm32f4xx_it.h -HeaderFiles#1=/home/jasper/dev/ams-slave/Core/Inc/stm32f4xx_hal_conf.h -HeaderFiles#2=/home/jasper/dev/ams-slave/Core/Inc/main.h +HeaderFiles#0=../Core/Inc/stm32f4xx_it.h +HeaderFiles#1=../Core/Inc/stm32f4xx_hal_conf.h +HeaderFiles#2=../Core/Inc/main.h HeaderFolderListSize=1 -HeaderPath#0=/home/jasper/dev/ams-slave/Core/Inc +HeaderPath#0=../Core/Inc HeaderFiles=; SourceFileListSize=3 -SourceFiles#0=/home/jasper/dev/ams-slave/Core/Src/stm32f4xx_it.c -SourceFiles#1=/home/jasper/dev/ams-slave/Core/Src/stm32f4xx_hal_msp.c -SourceFiles#2=/home/jasper/dev/ams-slave/Core/Src/main.c +SourceFiles#0=../Core/Src/stm32f4xx_it.c +SourceFiles#1=../Core/Src/stm32f4xx_hal_msp.c +SourceFiles#2=../Core/Src/main.c SourceFolderListSize=1 -SourcePath#0=/home/jasper/dev/ams-slave/Core/Src +SourcePath#0=../Core/Src SourceFiles=; diff --git a/Core/Src/main.c b/Core/Src/main.c index b261eee..b9ca712 100644 --- a/Core/Src/main.c +++ b/Core/Src/main.c @@ -236,9 +236,8 @@ void SystemClock_Config(void) { /** Initializes the RCC Oscillators according to the specified parameters * in the RCC_OscInitTypeDef structure. */ - RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; - RCC_OscInitStruct.HSIState = RCC_HSI_ON; - RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; + RCC_OscInitStruct.HSEState = RCC_HSE_ON; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE; if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) { Error_Handler(); @@ -248,7 +247,7 @@ void SystemClock_Config(void) { */ RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; - RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSI; + RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_HSE; RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV1; RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; @@ -256,6 +255,10 @@ void SystemClock_Config(void) { if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_0) != HAL_OK) { Error_Handler(); } + + /** Enables the Clock Security System + */ + HAL_RCC_EnableCSS(); } /** @@ -548,6 +551,7 @@ static void MX_GPIO_Init(void) { GPIO_InitTypeDef GPIO_InitStruct = {0}; /* GPIO Ports Clock Enable */ + __HAL_RCC_GPIOH_CLK_ENABLE(); __HAL_RCC_GPIOC_CLK_ENABLE(); __HAL_RCC_GPIOA_CLK_ENABLE(); __HAL_RCC_GPIOB_CLK_ENABLE(); diff --git a/Core/Src/stm32f4xx_it.c b/Core/Src/stm32f4xx_it.c index e7b7766..f531eec 100644 --- a/Core/Src/stm32f4xx_it.c +++ b/Core/Src/stm32f4xx_it.c @@ -77,6 +77,7 @@ void NMI_Handler(void) /* USER CODE BEGIN NonMaskableInt_IRQn 0 */ /* USER CODE END NonMaskableInt_IRQn 0 */ + HAL_RCC_NMI_IRQHandler(); /* USER CODE BEGIN NonMaskableInt_IRQn 1 */ while (1) { } diff --git a/Makefile b/Makefile index 9a70037..e4f01fd 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,5 @@ ########################################################################################################################## -# File automatically-generated by tool: [projectgenerator] version: [3.16.0] date: [Fri Jun 24 05:32:32 CEST 2022] +# File automatically-generated by tool: [projectgenerator] version: [3.17.1] date: [Fri Jul 29 01:30:23 CEST 2022] ########################################################################################################################## # ------------------------------------------------ diff --git a/ams-slave.ioc b/ams-slave.ioc index b8ef07a..27e589c 100644 --- a/ams-slave.ioc +++ b/ams-slave.ioc @@ -57,39 +57,41 @@ Mcu.IP9=USART2 Mcu.IPNb=12 Mcu.Name=STM32F412R(E-G)Tx Mcu.Package=LQFP64 -Mcu.Pin0=PC0 -Mcu.Pin1=PC1 -Mcu.Pin10=PB13 -Mcu.Pin11=PC6 -Mcu.Pin12=PC7 -Mcu.Pin13=PC9 -Mcu.Pin14=PA10 -Mcu.Pin15=PA11 -Mcu.Pin16=PA12 -Mcu.Pin17=PA13 -Mcu.Pin18=PA14 -Mcu.Pin19=PA15 -Mcu.Pin2=PC2 -Mcu.Pin20=PB3 -Mcu.Pin21=PB4 -Mcu.Pin22=PB5 -Mcu.Pin23=PB6 -Mcu.Pin24=PB7 -Mcu.Pin25=VP_SYS_VS_Systick -Mcu.Pin3=PC3 -Mcu.Pin4=PA2 -Mcu.Pin5=PA3 -Mcu.Pin6=PC5 -Mcu.Pin7=PB0 -Mcu.Pin8=PB2 -Mcu.Pin9=PB10 -Mcu.PinsNb=26 +Mcu.Pin0=PH0 - OSC_IN +Mcu.Pin1=PH1 - OSC_OUT +Mcu.Pin10=PB2 +Mcu.Pin11=PB10 +Mcu.Pin12=PB13 +Mcu.Pin13=PC6 +Mcu.Pin14=PC7 +Mcu.Pin15=PC9 +Mcu.Pin16=PA10 +Mcu.Pin17=PA11 +Mcu.Pin18=PA12 +Mcu.Pin19=PA13 +Mcu.Pin2=PC0 +Mcu.Pin20=PA14 +Mcu.Pin21=PA15 +Mcu.Pin22=PB3 +Mcu.Pin23=PB4 +Mcu.Pin24=PB5 +Mcu.Pin25=PB6 +Mcu.Pin26=PB7 +Mcu.Pin27=VP_SYS_VS_Systick +Mcu.Pin3=PC1 +Mcu.Pin4=PC2 +Mcu.Pin5=PC3 +Mcu.Pin6=PA2 +Mcu.Pin7=PA3 +Mcu.Pin8=PC5 +Mcu.Pin9=PB0 +Mcu.PinsNb=28 Mcu.ThirdPartyNb=0 Mcu.UserConstants= Mcu.UserName=STM32F412RETx MxCube.Version=6.5.0 MxDb.Version=DB.6.0.50 -NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.CAN1_RX0_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true NVIC.CAN1_RX1_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true NVIC.CAN2_RX0_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true @@ -97,19 +99,19 @@ NVIC.CAN2_RX1_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true NVIC.CAN2_SCE_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true NVIC.DMA1_Stream1_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:true NVIC.DMA2_Stream2_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:true -NVIC.DebugMonitor_IRQn=true\:1\:0\:true\:false\:true\:false\:false\:true +NVIC.DebugMonitor_IRQn=true\:1\:0\:true\:false\:true\:false\:false\:false NVIC.ForceEnableDMAVector=true -NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.I2C1_EV_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true -NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true -NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true -NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:false +NVIC.PendSV_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 -NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true -NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:true +NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +NVIC.SysTick_IRQn=true\:0\:0\:false\:false\:true\:false\:true\:false NVIC.USART1_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true NVIC.USART3_IRQn=true\:0\:0\:false\:false\:true\:true\:true\:true -NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true +NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false PA10.Mode=Asynchronous PA10.Signal=USART1_RX PA11.Mode=CAN_Activate @@ -181,6 +183,10 @@ PC9.GPIOParameters=GPIO_Label PC9.GPIO_Label=FAN_PWM PC9.Locked=true PC9.Signal=S_TIM3_CH4 +PH0\ -\ OSC_IN.Mode=HSE-External-Oscillator +PH0\ -\ OSC_IN.Signal=RCC_OSC_IN +PH1\ -\ OSC_OUT.Mode=HSE-External-Oscillator +PH1\ -\ OSC_OUT.Signal=RCC_OSC_OUT PinOutPanel.RotationAngle=0 ProjectManager.AskForMigrate=true ProjectManager.BackupPrevious=false @@ -212,9 +218,10 @@ ProjectManager.UnderRoot=false ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_CAN1_Init-CAN1-false-HAL-true,4-MX_CAN2_Init-CAN2-false-HAL-true,5-MX_I2C1_Init-I2C1-false-HAL-true,6-MX_USART1_UART_Init-USART1-false-HAL-true,7-MX_USART2_UART_Init-USART2-false-HAL-true,8-MX_USART3_UART_Init-USART3-false-HAL-true,9-MX_DMA_Init-DMA-false-HAL-true,10-MX_TIM3_Init-TIM3-false-HAL-true,11-MX_USART6_UART_Init-USART6-false-HAL-true RCC.CortexFreq_Value=16000000 RCC.DFSDMFreq_Value=16000000 +RCC.EnbaleCSS=true RCC.FamilyName=M RCC.HSE_VALUE=16000000 -RCC.IPParameters=CortexFreq_Value,DFSDMFreq_Value,FamilyName,HSE_VALUE,PLLCLKFreq_Value,PLLI2SPCLKFreq_Value,PLLI2SQCLKFreq_Value,PLLI2SRCLKFreq_Value,PLLM,PLLN,PLLQCLKFreq_Value,PLLQoutputFreq_Value,PLLRCLKFreq_Value,PLLRoutputFreq_Value,RNGFreq_Value,SDIOFreq_Value,USBFreq_Value,VCOI2SInputFreq_Value,VCOI2SOutputFreq_Value,VCOInputFreq_Value,VCOOutputFreq_Value +RCC.IPParameters=CortexFreq_Value,DFSDMFreq_Value,EnbaleCSS,FamilyName,HSE_VALUE,PLLCLKFreq_Value,PLLI2SPCLKFreq_Value,PLLI2SQCLKFreq_Value,PLLI2SRCLKFreq_Value,PLLM,PLLN,PLLQCLKFreq_Value,PLLQoutputFreq_Value,PLLRCLKFreq_Value,PLLRoutputFreq_Value,PLLSourceVirtual,RNGFreq_Value,SDIOFreq_Value,SYSCLKSource,USBFreq_Value,VCOI2SInputFreq_Value,VCOI2SOutputFreq_Value,VCOInputFreq_Value,VCOOutputFreq_Value RCC.PLLCLKFreq_Value=50000000 RCC.PLLI2SPCLKFreq_Value=96000000 RCC.PLLI2SQCLKFreq_Value=96000000 @@ -225,8 +232,10 @@ RCC.PLLQCLKFreq_Value=50000000 RCC.PLLQoutputFreq_Value=50000000 RCC.PLLRCLKFreq_Value=50000000 RCC.PLLRoutputFreq_Value=50000000 +RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE RCC.RNGFreq_Value=50000000 RCC.SDIOFreq_Value=50000000 +RCC.SYSCLKSource=RCC_SYSCLKSOURCE_HSE RCC.USBFreq_Value=50000000 RCC.VCOI2SInputFreq_Value=1000000 RCC.VCOI2SOutputFreq_Value=192000000