From 758e37e2941cf616c215866993a174330f5b280c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E3=81=82=E3=81=8F?= Date: Mon, 23 Nov 2020 16:26:19 +0300 Subject: [PATCH] Enable RTC for all platforms and add cli date command (#252) * F2: enable RTC. Cli: add date command. --- applications/cli/cli_commands.c | 24 +- firmware/targets/f2/Inc/rtc.h | 58 ++ firmware/targets/f2/Inc/stm32l4xx_hal_conf.h | 2 +- firmware/targets/f2/Src/main.c | 14 +- firmware/targets/f2/Src/rtc.c | 113 +++ firmware/targets/f2/Src/stm32l4xx_it.c | 6 +- firmware/targets/f2/cube.ioc | 979 ++++++++++--------- firmware/targets/f2/target.mk | 1 + 8 files changed, 708 insertions(+), 489 deletions(-) create mode 100644 firmware/targets/f2/Inc/rtc.h create mode 100644 firmware/targets/f2/Src/rtc.c diff --git a/applications/cli/cli_commands.c b/applications/cli/cli_commands.c index 46c08723..f845bc10 100644 --- a/applications/cli/cli_commands.c +++ b/applications/cli/cli_commands.c @@ -1,5 +1,6 @@ #include "cli_commands.h" #include +#include void cli_command_help(string_t args, void* context) { (void)args; @@ -45,10 +46,31 @@ void cli_command_uuid(string_t args, void* context) { cli_print(string_get_cstr(byte_str)); } +void cli_command_date(string_t args, void* context) { + RTC_DateTypeDef date; + RTC_TimeTypeDef time; + + // TODO add get_datetime to core, not use HAL here + // READ ORDER MATTERS! Time then date. + HAL_RTC_GetTime(&hrtc, &time, RTC_FORMAT_BIN); + HAL_RTC_GetDate(&hrtc, &date, RTC_FORMAT_BIN); + + string_t datetime_str; + string_init(datetime_str); + + string_cat_printf(datetime_str, "%.2d:%.2d:%.2d ", time.Hours, time.Minutes, time.Seconds); + string_cat_printf(datetime_str, "%.2d-%.2d-%.2d", date.Month, date.Date, 2000 + date.Year); + + cli_print(string_get_cstr(datetime_str)); + + string_clear(datetime_str); +} + void cli_commands_init(Cli* cli) { cli_add_command(cli, "help", cli_command_help, cli); cli_add_command(cli, "?", cli_command_help, cli); cli_add_command(cli, "version", cli_command_version, cli); cli_add_command(cli, "!", cli_command_version, cli); cli_add_command(cli, "uid", cli_command_uuid, cli); -} \ No newline at end of file + cli_add_command(cli, "date", cli_command_date, cli); +} diff --git a/firmware/targets/f2/Inc/rtc.h b/firmware/targets/f2/Inc/rtc.h new file mode 100644 index 00000000..9c1d66eb --- /dev/null +++ b/firmware/targets/f2/Inc/rtc.h @@ -0,0 +1,58 @@ +/** + ****************************************************************************** + * File Name : RTC.h + * Description : This file provides code for the configuration + * of the RTC instances. + ****************************************************************************** + * @attention + * + *

© Copyright (c) 2020 STMicroelectronics. + * All rights reserved.

+ * + * This software component is licensed by ST under Ultimate Liberty license + * SLA0044, the "License"; You may not use this file except in compliance with + * the License. You may obtain a copy of the License at: + * www.st.com/SLA0044 + * + ****************************************************************************** + */ +/* Define to prevent recursive inclusion -------------------------------------*/ +#ifndef __rtc_H +#define __rtc_H +#ifdef __cplusplus + extern "C" { +#endif + +/* Includes ------------------------------------------------------------------*/ +#include "main.h" + +/* USER CODE BEGIN Includes */ + +/* USER CODE END Includes */ + +extern RTC_HandleTypeDef hrtc; + +/* USER CODE BEGIN Private defines */ + +/* USER CODE END Private defines */ + +void MX_RTC_Init(void); + +/* USER CODE BEGIN Prototypes */ + +/* USER CODE END Prototypes */ + +#ifdef __cplusplus +} +#endif +#endif /*__ rtc_H */ + +/** + * @} + */ + +/** + * @} + */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/firmware/targets/f2/Inc/stm32l4xx_hal_conf.h b/firmware/targets/f2/Inc/stm32l4xx_hal_conf.h index 006183bd..cdc782c8 100644 --- a/firmware/targets/f2/Inc/stm32l4xx_hal_conf.h +++ b/firmware/targets/f2/Inc/stm32l4xx_hal_conf.h @@ -67,7 +67,7 @@ /*#define HAL_QSPI_MODULE_ENABLED */ /*#define HAL_QSPI_MODULE_ENABLED */ /*#define HAL_RNG_MODULE_ENABLED */ -/*#define HAL_RTC_MODULE_ENABLED */ +#define HAL_RTC_MODULE_ENABLED /*#define HAL_SAI_MODULE_ENABLED */ /*#define HAL_SD_MODULE_ENABLED */ /*#define HAL_SMBUS_MODULE_ENABLED */ diff --git a/firmware/targets/f2/Src/main.c b/firmware/targets/f2/Src/main.c index d5a5d06b..fae39500 100644 --- a/firmware/targets/f2/Src/main.c +++ b/firmware/targets/f2/Src/main.c @@ -22,6 +22,7 @@ #include "cmsis_os.h" #include "adc.h" #include "comp.h" +#include "rtc.h" #include "spi.h" #include "tim.h" #include "usart.h" @@ -101,6 +102,7 @@ int main(void) MX_USART1_UART_Init(); MX_TIM8_Init(); MX_TIM2_Init(); + MX_RTC_Init(); /* USER CODE BEGIN 2 */ MX_FATFS_Init(); delay_us_init_DWT(); @@ -135,11 +137,16 @@ void SystemClock_Config(void) RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; RCC_PeriphCLKInitTypeDef PeriphClkInit = {0}; + /** Configure LSE Drive Capability + */ + HAL_PWR_EnableBkUpAccess(); + __HAL_RCC_LSEDRIVE_CONFIG(RCC_LSEDRIVE_LOW); /** Initializes the RCC Oscillators according to the specified parameters * in the RCC_OscInitTypeDef structure. */ - RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE|RCC_OSCILLATORTYPE_LSE; RCC_OscInitStruct.HSEState = RCC_HSE_ON; + RCC_OscInitStruct.LSEState = RCC_LSE_ON; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; RCC_OscInitStruct.PLL.PLLM = 2; @@ -164,10 +171,11 @@ void SystemClock_Config(void) { Error_Handler(); } - PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_USART1|RCC_PERIPHCLK_USB - |RCC_PERIPHCLK_ADC; + PeriphClkInit.PeriphClockSelection = RCC_PERIPHCLK_RTC|RCC_PERIPHCLK_USART1 + |RCC_PERIPHCLK_USB|RCC_PERIPHCLK_ADC; PeriphClkInit.Usart1ClockSelection = RCC_USART1CLKSOURCE_PCLK2; PeriphClkInit.AdcClockSelection = RCC_ADCCLKSOURCE_SYSCLK; + PeriphClkInit.RTCClockSelection = RCC_RTCCLKSOURCE_LSE; PeriphClkInit.UsbClockSelection = RCC_USBCLKSOURCE_PLLSAI1; PeriphClkInit.PLLSAI1.PLLSAI1Source = RCC_PLLSOURCE_HSE; PeriphClkInit.PLLSAI1.PLLSAI1M = 2; diff --git a/firmware/targets/f2/Src/rtc.c b/firmware/targets/f2/Src/rtc.c new file mode 100644 index 00000000..b916a876 --- /dev/null +++ b/firmware/targets/f2/Src/rtc.c @@ -0,0 +1,113 @@ +/** + ****************************************************************************** + * File Name : RTC.c + * Description : This file provides code for the configuration + * of the RTC instances. + ****************************************************************************** + * @attention + * + *

© Copyright (c) 2020 STMicroelectronics. + * All rights reserved.

+ * + * This software component is licensed by ST under Ultimate Liberty license + * SLA0044, the "License"; You may not use this file except in compliance with + * the License. You may obtain a copy of the License at: + * www.st.com/SLA0044 + * + ****************************************************************************** + */ + +/* Includes ------------------------------------------------------------------*/ +#include "rtc.h" + +/* USER CODE BEGIN 0 */ + +/* USER CODE END 0 */ + +RTC_HandleTypeDef hrtc; + +/* RTC init function */ +void MX_RTC_Init(void) +{ + RTC_TimeTypeDef sTime = {0}; + RTC_DateTypeDef sDate = {0}; + + /** Initialize RTC Only + */ + hrtc.Instance = RTC; + hrtc.Init.HourFormat = RTC_HOURFORMAT_24; + hrtc.Init.AsynchPrediv = 127; + hrtc.Init.SynchPrediv = 255; + hrtc.Init.OutPut = RTC_OUTPUT_DISABLE; + hrtc.Init.OutPutRemap = RTC_OUTPUT_REMAP_NONE; + hrtc.Init.OutPutPolarity = RTC_OUTPUT_POLARITY_HIGH; + hrtc.Init.OutPutType = RTC_OUTPUT_TYPE_OPENDRAIN; + if (HAL_RTC_Init(&hrtc) != HAL_OK) + { + Error_Handler(); + } + + /* USER CODE BEGIN Check_RTC_BKUP */ + + /* USER CODE END Check_RTC_BKUP */ + + /** Initialize RTC and set the Time and Date + */ + sTime.Hours = 0x0; + sTime.Minutes = 0x0; + sTime.Seconds = 0x0; + sTime.DayLightSaving = RTC_DAYLIGHTSAVING_NONE; + sTime.StoreOperation = RTC_STOREOPERATION_RESET; + if (HAL_RTC_SetTime(&hrtc, &sTime, RTC_FORMAT_BCD) != HAL_OK) + { + Error_Handler(); + } + sDate.WeekDay = RTC_WEEKDAY_MONDAY; + sDate.Month = RTC_MONTH_NOVEMBER; + sDate.Date = 0x20; + sDate.Year = 0x20; + + if (HAL_RTC_SetDate(&hrtc, &sDate, RTC_FORMAT_BCD) != HAL_OK) + { + Error_Handler(); + } + +} + +void HAL_RTC_MspInit(RTC_HandleTypeDef* rtcHandle) +{ + + if(rtcHandle->Instance==RTC) + { + /* USER CODE BEGIN RTC_MspInit 0 */ + + /* USER CODE END RTC_MspInit 0 */ + /* RTC clock enable */ + __HAL_RCC_RTC_ENABLE(); + /* USER CODE BEGIN RTC_MspInit 1 */ + + /* USER CODE END RTC_MspInit 1 */ + } +} + +void HAL_RTC_MspDeInit(RTC_HandleTypeDef* rtcHandle) +{ + + if(rtcHandle->Instance==RTC) + { + /* USER CODE BEGIN RTC_MspDeInit 0 */ + + /* USER CODE END RTC_MspDeInit 0 */ + /* Peripheral clock disable */ + __HAL_RCC_RTC_DISABLE(); + /* USER CODE BEGIN RTC_MspDeInit 1 */ + + /* USER CODE END RTC_MspDeInit 1 */ + } +} + +/* USER CODE BEGIN 1 */ + +/* USER CODE END 1 */ + +/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/ diff --git a/firmware/targets/f2/Src/stm32l4xx_it.c b/firmware/targets/f2/Src/stm32l4xx_it.c index 5d4e13f9..3cd3363d 100644 --- a/firmware/targets/f2/Src/stm32l4xx_it.c +++ b/firmware/targets/f2/Src/stm32l4xx_it.c @@ -239,8 +239,9 @@ void EXTI9_5_IRQHandler(void) void TIM1_TRG_COM_TIM17_IRQHandler(void) { /* USER CODE BEGIN TIM1_TRG_COM_TIM17_IRQn 0 */ - HAL_TIM_IRQHandler(&htim17); + /* USER CODE END TIM1_TRG_COM_TIM17_IRQn 0 */ + HAL_TIM_IRQHandler(&htim17); /* USER CODE BEGIN TIM1_TRG_COM_TIM17_IRQn 1 */ /* USER CODE END TIM1_TRG_COM_TIM17_IRQn 1 */ @@ -281,8 +282,9 @@ void TIM8_CC_IRQHandler(void) void OTG_FS_IRQHandler(void) { /* USER CODE BEGIN OTG_FS_IRQn 0 */ - HAL_PCD_IRQHandler(&hpcd_USB_OTG_FS); + /* USER CODE END OTG_FS_IRQn 0 */ + HAL_PCD_IRQHandler(&hpcd_USB_OTG_FS); /* USER CODE BEGIN OTG_FS_IRQn 1 */ /* USER CODE END OTG_FS_IRQn 1 */ diff --git a/firmware/targets/f2/cube.ioc b/firmware/targets/f2/cube.ioc index 718ed2b2..67fbf109 100644 --- a/firmware/targets/f2/cube.ioc +++ b/firmware/targets/f2/cube.ioc @@ -1,506 +1,521 @@ #MicroXplorer Configuration settings - do not modify -ADC1.Channel-0\#ChannelRegularConversion=ADC_CHANNEL_4 -ADC1.IPParameters=Rank-0\#ChannelRegularConversion,Channel-0\#ChannelRegularConversion,SamplingTime-0\#ChannelRegularConversion,OffsetNumber-0\#ChannelRegularConversion,NbrOfConversionFlag,master,NbrOfConversion -ADC1.master=1 -ADC1.NbrOfConversion=1 -ADC1.NbrOfConversionFlag=1 -ADC1.OffsetNumber-0\#ChannelRegularConversion=ADC_OFFSET_NONE -ADC1.Rank-0\#ChannelRegularConversion=1 -ADC1.SamplingTime-0\#ChannelRegularConversion=ADC_SAMPLETIME_2CYCLES_5 -board=NUCLEO-L476RG -boardIOC=true -File.Version=6 -FREERTOS.configCHECK_FOR_STACK_OVERFLOW=1 -FREERTOS.configGENERATE_RUN_TIME_STATS=1 -FREERTOS.configRECORD_STACK_HIGH_ADDRESS=1 -FREERTOS.configTOTAL_HEAP_SIZE=40960 -FREERTOS.configUSE_IDLE_HOOK=1 -FREERTOS.configUSE_TIMERS=1 -FREERTOS.FootprintOK=true +PB13.GPIOParameters=GPIO_Label +PC7.GPIOParameters=GPIO_ModeDefaultPP,GPIO_Speed,GPIO_PuPd,GPIO_Label +PA15\ (JTDI).GPIOParameters=PinState,GPIO_Label +RCC.USART1Freq_Value=64000000 +TIM8.ICPolarity_CH2=TIM_INPUTCHANNELPOLARITY_BOTHEDGE +SPI3.Direction=SPI_DIRECTION_2LINES +PC10.GPIO_PuPd=GPIO_PULLDOWN +SPI3.VirtualType=VM_MASTER +SPI1.VirtualType=VM_MASTER +VP_ADC1_TempSens_Input.Mode=IN-TempSens +PC12.Locked=true +SH.GPXTI9.0=GPIO_EXTI9 +PC12.Signal=SPI3_MOSI +PB14.GPIO_Label=LED_GREEN +PC7.Locked=true +PA13\ (JTMS-SWDIO).Locked=true +PC6.GPIO_Label=VIBRO +VP_RTC_VS_RTC_Activate.Mode=RTC_Enabled +PC3.Locked=true +RCC.RTCFreq_Value=32768 +PA3.GPIOParameters=GPIO_Label +PB6.GPIO_Label=DISPLAY_BACKLIGHT +PA15\ (JTDI).Signal=GPIO_Output +PC15-OSC32_OUT\ (PC15).Mode=LSE-External-Oscillator +PC5.Mode=INP +USART1.IPParameters=VirtualMode-Asynchronous +PB13.Signal=TIM15_CH1N +VP_TIM8_VS_ClockSourceINT.Signal=TIM8_VS_ClockSourceINT +PA2.GPIOParameters=GPIO_Label +PinOutPanel.RotationAngle=0 +RCC.MCO1PinFreq_Value=64000000 +RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK +TIM15.Channel-Output\ Compare1\ CH1N=TIM_CHANNEL_1 +PC14-OSC32_IN\ (PC14).Mode=LSE-External-Oscillator +SH.GPXTI13.0=GPIO_EXTI13 +PA14\ (JTCK-SWCLK).Signal=SYS_JTCK-SWCLK +RCC.LPTIM1Freq_Value=64000000 +NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:false\:false\:false\:false +NVIC.EXTI1_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true +PB4\ (NJTRST).GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING +RCC.ADCCLockSelection=RCC_ADCCLKSOURCE_SYSCLK +SPI1.Direction=SPI_DIRECTION_2LINES +RCC.APB2TimFreq_Value=64000000 +PB6.Signal=GPIO_Output +PC7.Signal=S_TIM8_CH2 +RTC.IPParameters=Year,Month,Date +SPI1.CalculateBaudRate=4.0 MBits/s +PC3.Signal=ADCx_IN4 +RCC.SAI2Freq_Value=13714285.714285715 +FREERTOS.configMINIMAL_STACK_SIZE=128 +PA1.GPIO_PuPd=GPIO_PULLDOWN +RCC.PREFETCH_ENABLE=1 +PB13.Locked=true +RCC.USART3Freq_Value=64000000 +NVIC.EXTI15_10_IRQn=true\:5\:0\:true\:false\:true\:false\:true\:true +ProjectManager.ProjectBuild=false +NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +PA0.Locked=true +PB2.Signal=GPIO_Analog +PA8.Locked=true +PA4.Locked=true +RCC.RTCClockSelection=RCC_RTCCLKSOURCE_LSE +ProjectManager.FirmwarePackage=STM32Cube FW_L4 V1.16.0 +VP_ADC1_Vref_Input.Mode=IN-Vrefint +MxDb.Version=DB.6.0.0 +PB0.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI +PA1.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI +ProjectManager.BackupPrevious=false +VP_SYS_VS_tim17.Signal=SYS_VS_tim17 +PC4.GPIO_Label=NFC_CS +PB1.GPIO_Speed=GPIO_SPEED_FREQ_MEDIUM FREERTOS.HEAP_NUMBER=4 -FREERTOS.IPParameters=Tasks01,configTOTAL_HEAP_SIZE,HEAP_NUMBER,configUSE_TIMERS,configUSE_IDLE_HOOK,FootprintOK,configCHECK_FOR_STACK_OVERFLOW,configRECORD_STACK_HIGH_ADDRESS,configGENERATE_RUN_TIME_STATS -FREERTOS.Tasks01=defaultTask,24,1024,StartDefaultTask,Default,NULL,Dynamic,NULL,NULL;app_main,8,128,app,As external,NULL,Dynamic,NULL,NULL -GPIO.groupedBy=Group By Peripherals -KeepUserPlacement=false -Mcu.Family=STM32L4 -Mcu.IP0=ADC1 -Mcu.IP10=TIM15 -Mcu.IP11=USART1 -Mcu.IP12=USB_DEVICE -Mcu.IP13=USB_OTG_FS -Mcu.IP1=COMP1 -Mcu.IP2=FREERTOS -Mcu.IP3=NVIC -Mcu.IP4=RCC -Mcu.IP5=SPI1 -Mcu.IP6=SPI3 -Mcu.IP7=SYS -Mcu.IP8=TIM5 -Mcu.IP9=TIM8 -Mcu.IPNb=14 -Mcu.Name=STM32L476R(C-E-G)Tx +PB1.GPIO_Label=LED_BLUE +SPI1.DataSize=SPI_DATASIZE_8BIT +PC7.GPIO_ModeDefaultPP=GPIO_MODE_AF_OD +PA8.Signal=GPIO_Output +PA8.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_OD +RCC.PLLRCLKFreq_Value=64000000 +SH.ADCx_IN4.ConfNb=1 +PB6.Locked=true +NVIC.PendSV_IRQn=true\:15\:0\:false\:false\:false\:true\:false\:false +ProjectManager.HalAssertFull=false +ADC1.SamplingTime-0\#ChannelRegularConversion=ADC_SAMPLETIME_2CYCLES_5 +PA0.Signal=ADCx_IN5 +PC8.GPIOParameters=GPIO_Label Mcu.Package=LQFP64 -Mcu.Pin0=PC13 -Mcu.Pin10=PA1 -Mcu.Pin11=PA2 -Mcu.Pin12=PA3 -Mcu.Pin13=PA4 -Mcu.Pin14=PA5 -Mcu.Pin15=PA6 -Mcu.Pin16=PA7 -Mcu.Pin17=PC4 -Mcu.Pin18=PC5 -Mcu.Pin19=PB0 -Mcu.Pin1=PC14-OSC32_IN (PC14) -Mcu.Pin20=PB1 -Mcu.Pin21=PB2 -Mcu.Pin22=PB10 -Mcu.Pin23=PB11 -Mcu.Pin24=PB12 -Mcu.Pin25=PB13 -Mcu.Pin26=PB14 -Mcu.Pin27=PB15 -Mcu.Pin28=PC6 -Mcu.Pin29=PC7 -Mcu.Pin2=PC15-OSC32_OUT (PC15) -Mcu.Pin30=PC8 -Mcu.Pin31=PC9 -Mcu.Pin32=PA8 -Mcu.Pin33=PA9 -Mcu.Pin34=PA10 -Mcu.Pin35=PA11 -Mcu.Pin36=PA12 -Mcu.Pin37=PA13 (JTMS-SWDIO) -Mcu.Pin38=PA14 (JTCK-SWCLK) -Mcu.Pin39=PA15 (JTDI) -Mcu.Pin3=PH0-OSC_IN (PH0) -Mcu.Pin40=PC10 -Mcu.Pin41=PC11 -Mcu.Pin42=PC12 -Mcu.Pin43=PD2 -Mcu.Pin44=PB3 (JTDO-TRACESWO) -Mcu.Pin45=PB4 (NJTRST) -Mcu.Pin46=PB5 -Mcu.Pin47=PB6 -Mcu.Pin48=PB7 -Mcu.Pin49=PB8 -Mcu.Pin4=PH1-OSC_OUT (PH1) -Mcu.Pin50=PB9 +PB9.Signal=GPXTI9 +PB1.Signal=GPIO_Output +PA5.Locked=true +NVIC.TimeBase=TIM1_TRG_COM_TIM17_IRQn +SPI3.Mode=SPI_MODE_MASTER +SH.GPXTI8.0=GPIO_EXTI8 +SH.GPXTI8.ConfNb=1 +NVIC.TimeBaseIP=TIM17 +RCC.LSCOPinFreq_Value=32000 +PA10.Signal=USART1_RX +PB9.GPIO_PuPd=GPIO_PULLDOWN +VP_RTC_VS_RTC_Calendar.Mode=RTC_Calendar +FREERTOS.FootprintOK=true +RCC.DFSDMFreq_Value=64000000 +PC11.Mode=Full_Duplex_Master +PB14.GPIOParameters=GPIO_Speed,PinState,GPIO_Label,GPIO_ModeDefaultOutputPP +NVIC.EXTI2_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true +RCC.PLLPoutputFreq_Value=18285714.285714287 +RCC.APB1TimFreq_Value=64000000 +FREERTOS.configGENERATE_RUN_TIME_STATS=1 +NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +RCC.LPUART1Freq_Value=64000000 +USB_OTG_FS.IPParameters=VirtualMode +PB13.Mode=Output Compare1 CH1N +PB10.GPIOParameters=GPIO_Label +PC12.GPIO_PuPd=GPIO_PULLDOWN +PA13\ (JTMS-SWDIO).Signal=SYS_JTMS-SWDIO +PA13\ (JTMS-SWDIO).GPIOParameters=GPIO_Label +PH0-OSC_IN\ (PH0).Mode=HSE-External-Oscillator +PA8.GPIO_Speed=GPIO_SPEED_FREQ_HIGH +ProjectManager.CustomerFirmwarePackage=../../../lib/STM32CubeL4 +PC4.GPIOParameters=PinState,GPIO_Label +PC2.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING +NVIC.EXTI4_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true +RCC.PLLQoutputFreq_Value=64000000 +ProjectManager.ProjectFileName=cube.ioc +FREERTOS.Tasks01=defaultTask,24,1024,StartDefaultTask,Default,NULL,Dynamic,NULL,NULL;app_main,8,1024,app,As external,NULL,Dynamic,NULL,NULL +ADC1.Rank-0\#ChannelRegularConversion=1 +TIM5.IPParameters=Prescaler,Period,Channel-PWM Generation4 CH4,Pulse-PWM Generation4 CH4 +Mcu.PinsNb=60 +PC4.PinState=GPIO_PIN_SET +PC11.Locked=true +VP_SYS_VS_tim17.Mode=TIM17 +ADC1.IPParameters=Rank-0\#ChannelRegularConversion,Channel-0\#ChannelRegularConversion,SamplingTime-0\#ChannelRegularConversion,OffsetNumber-0\#ChannelRegularConversion,NbrOfConversionFlag,master,NbrOfConversion +PC13.Locked=true +ADC1.OffsetNumber-0\#ChannelRegularConversion=ADC_OFFSET_NONE +PC13.Signal=GPXTI13 +RCC.SWPMI1Freq_Value=64000000 +FREERTOS.configCHECK_FOR_STACK_OVERFLOW=1 +PB8.GPIO_PuPd=GPIO_PULLDOWN +PC6.Signal=GPIO_Output +PC2.Signal=GPXTI2 +PB11.GPIO_Label=IR_TX +PC9.PinState=GPIO_PIN_SET +SH.GPXTI0.ConfNb=1 +SPI1.CLKPhase=SPI_PHASE_1EDGE +PC0.Signal=GPIO_Analog +PB14.Locked=true +PC11.GPIOParameters=GPIO_PuPd +SH.S_TIM8_CH2.0=TIM8_CH2,Input_Capture2_from_TI2 +PC3.GPIOParameters=GPIO_Label +PB8.GPIO_Label=BUTTON_RIGHT +PA11.Locked=true +PA8.GPIO_Label=LED_RED +Mcu.Pin59=VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS +SH.GPXTI2.ConfNb=1 +Mcu.Pin57=VP_SYS_VS_tim17 +Mcu.Pin58=VP_TIM8_VS_ClockSourceINT +PB14.GPIO_Speed=GPIO_SPEED_FREQ_MEDIUM Mcu.Pin51=VP_ADC1_TempSens_Input +RTC.Year=20 Mcu.Pin52=VP_ADC1_Vref_Input +Mcu.Pin50=PB9 +Mcu.Pin55=VP_RTC_VS_RTC_Activate +Mcu.Pin56=VP_RTC_VS_RTC_Calendar Mcu.Pin53=VP_COMP1_VS_VREFINT12 Mcu.Pin54=VP_FREERTOS_VS_CMSIS_V2 -Mcu.Pin55=VP_SYS_VS_tim17 -Mcu.Pin56=VP_TIM8_VS_ClockSourceINT -Mcu.Pin57=VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS -Mcu.Pin5=PC0 +PC6.Locked=true +PA9.Signal=USART1_TX +PB11.GPIOParameters=GPIO_Label +PB5.Locked=true +PB9.Locked=true +VP_TIM8_VS_ClockSourceINT.Mode=Internal +PC7.GPIO_PuPd=GPIO_NOPULL +Mcu.Pin48=PB7 +Mcu.Pin49=PB8 +RCC.PLLSAI1PoutputFreq_Value=13714285.714285715 +Mcu.Pin46=PB5 +Mcu.Pin47=PB6 +PB10.Signal=GPIO_Output +PB14.Signal=GPIO_Output +RCC.PLLSAI2RoutputFreq_Value=32000000 +PA5.Signal=GPIO_Analog +Mcu.Pin40=PC10 +Mcu.Pin41=PC11 +PC12.Mode=Full_Duplex_Master +Mcu.Pin44=PB3 (JTDO-TRACESWO) +Mcu.Pin45=PB4 (NJTRST) +Mcu.Pin42=PC12 +Mcu.Pin43=PD2 +ProjectManager.LastFirmware=true +Mcu.Pin37=PA13 (JTMS-SWDIO) +Mcu.Pin38=PA14 (JTCK-SWCLK) +PB15.GPIO_Label=RFID_PULL +Mcu.Pin35=PA11 +RCC.I2C1Freq_Value=64000000 +Mcu.Pin36=PA12 +SPI1.Mode=SPI_MODE_MASTER +Mcu.Pin39=PA15 (JTDI) +PB3\ (JTDO-TRACESWO).Mode=TX_Only_Simplex_Unidirect_Master +RCC.RNGFreq_Value=48000000 +RCC.LCDFreq_Value=32768 +PC2.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI +VP_ADC1_TempSens_Input.Signal=ADC1_TempSens_Input +Mcu.Pin30=PC8 +PA1.GPIO_Label=BUTTON_DOWN +Mcu.Pin33=PA9 +Mcu.Pin34=PA10 +Mcu.Pin31=PC9 +SH.ADCx_IN4.0=ADC1_IN4,IN4-Single-Ended +Mcu.Pin32=PA8 +PA9.Locked=true +NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +PC10.GPIOParameters=GPIO_PuPd +SH.S_TIM5_CH4.ConfNb=1 +ProjectManager.FreePins=false +PC9.GPIOParameters=PinState,GPIO_Label +RCC.LPTIM2Freq_Value=64000000 +Mcu.Pin26=PB14 +Mcu.Pin27=PB15 +Mcu.Pin24=PB12 +ProjectManager.UnderRoot=false +Mcu.Pin25=PB13 +TIM8.Period=32768-1 +Mcu.Pin28=PC6 +PC7.GPIO_Label=iButton +Mcu.Pin29=PC7 +PA13\ (JTMS-SWDIO).Mode=Serial_Wire +PA4.Signal=GPIO_Analog +Mcu.Pin22=PB10 +PB5.Signal=SPI1_MOSI +Mcu.Pin23=PB11 +Mcu.Pin20=PB1 +ADC1.master=1 +PA3.Locked=true +Mcu.Pin21=PB2 +PA10.Locked=true +PA14\ (JTCK-SWCLK).Locked=true +NVIC.ForceEnableDMAVector=true +NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +ProjectManager.CompilerOptimize=6 +PA11.Signal=USB_OTG_FS_DM +ProjectManager.HeapSize=0x200 +PA0.GPIOParameters=GPIO_Label +Mcu.Pin15=PA6 +NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +Mcu.Pin16=PA7 +Mcu.Pin13=PA4 +Mcu.Pin14=PA5 +Mcu.Pin19=PB0 +SH.GPXTI15.ConfNb=1 +ProjectManager.ComputerToolchain=false +Mcu.Pin17=PC4 +Mcu.Pin18=PC5 +SH.ADCx_IN5.0=ADC1_IN5,IN5-Single-Ended +NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 +Mcu.Pin11=PA2 +Mcu.Pin12=PA3 +Mcu.Pin10=PA1 +PC3.GPIO_Label=BATT_V +RCC.PWRFreq_Value=64000000 +PA15\ (JTDI).PinState=GPIO_PIN_SET +SH.ADCx_IN5.ConfNb=1 +PB4\ (NJTRST).GPIO_Label=BUTTON_LEFT +PB1.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_OD +SH.GPXTI1.ConfNb=1 +PD2.Signal=GPIO_Analog +PB6.GPIO_Speed=GPIO_SPEED_FREQ_LOW +RCC.I2C2Freq_Value=64000000 +PB0.Signal=GPXTI0 +PB4\ (NJTRST).GPIO_PuPd=GPIO_PULLDOWN +RTC.Date=20 +PC0.Locked=true +PC1.Signal=GPIO_Analog +Mcu.Family=STM32L4 +SH.GPXTI1.0=GPIO_EXTI1 +ProjectManager.MainLocation=Src +USB_DEVICE.CLASS_NAME_FS=CDC +RCC.SAI1Freq_Value=13714285.714285715 +RCC.CortexFreq_Value=64000000 +ProjectManager.KeepUserCode=true +Mcu.UserName=STM32L476RGTx +PH0-OSC_IN\ (PH0).Signal=RCC_OSC_IN +PH0-OSC_IN\ (PH0).Locked=true +PC10.Locked=true +PC10.Signal=SPI3_SCK +RCC.PLLSAI1RoutputFreq_Value=48000000 +PA0.GPIO_Label=IR_RX +ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_SPI1_Init-SPI1-false-HAL-true,4-MX_SPI3_Init-SPI3-false-HAL-true,5-MX_ADC1_Init-ADC1-false-HAL-true,6-MX_COMP1_Init-COMP1-false-HAL-true,7-MX_TIM5_Init-TIM5-false-HAL-true,8-MX_TIM15_Init-TIM15-false-HAL-true,9-MX_USART1_UART_Init-USART1-false-HAL-true,10-MX_USB_DEVICE_Init-USB_DEVICE-false-HAL-false,11-MX_TIM8_Init-TIM8-false-HAL-true,12-MX_RTC_Init-RTC-false-HAL-true +PA11.Mode=Device_Only +PC9.Locked=true +TIM5.Pulse-PWM\ Generation4\ CH4=145 +PB0.GPIO_Label=BUTTON_UP +RCC.USART2Freq_Value=64000000 +PD2.Locked=true +VP_RTC_VS_RTC_Calendar.Signal=RTC_VS_RTC_Calendar +VP_COMP1_VS_VREFINT12.Signal=COMP1_VS_VREFINT12 +PC13.GPIO_Label=BUTTON_BACK +PC1.Locked=true +PB13.GPIO_Label=RFID_OUT +PB11.Signal=GPIO_Output +PB15.Signal=GPXTI15 +ProjectManager.StackSize=0x400 +PB3\ (JTDO-TRACESWO).Signal=SPI1_SCK +VP_FREERTOS_VS_CMSIS_V2.Mode=CMSIS_V2 +SH.GPXTI2.0=GPIO_EXTI2 +RCC.I2C3Freq_Value=64000000 +Mcu.IP4=RCC +RCC.FCLKCortexFreq_Value=64000000 +Mcu.IP5=RTC +Mcu.IP2=FREERTOS +Mcu.IP3=NVIC +PC11.GPIO_PuPd=GPIO_PULLDOWN +Mcu.IP0=ADC1 +Mcu.IP1=COMP1 +PA12.Locked=true +PA12.Signal=USB_OTG_FS_DP +PB8.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING +SPI1.CLKPolarity=SPI_POLARITY_LOW +Mcu.UserConstants= +RCC.VCOSAI1OutputFreq_Value=96000000 +SPI3.CLKPolarity=SPI_POLARITY_LOW +RCC.SDMMCFreq_Value=48000000 +PA14\ (JTCK-SWCLK).GPIOParameters=GPIO_Label +SH.GPXTI13.ConfNb=1 +Mcu.ThirdPartyNb=0 +RCC.HCLKFreq_Value=64000000 +Mcu.IPNb=15 +ProjectManager.PreviousToolchain= +PA8.GPIOParameters=GPIO_Speed,PinState,GPIO_Label,GPIO_ModeDefaultOutputPP Mcu.Pin6=PC1 +PB9.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING Mcu.Pin7=PC2 Mcu.Pin8=PC3 Mcu.Pin9=PA0 -Mcu.PinsNb=58 -Mcu.ThirdPartyNb=0 -Mcu.UserConstants= -Mcu.UserName=STM32L476RGTx -MxCube.Version=6.0.1 -MxDb.Version=DB.6.0.0 -NVIC.BusFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false +FREERTOS.IPParameters=Tasks01,configTOTAL_HEAP_SIZE,HEAP_NUMBER,configUSE_TIMERS,configUSE_IDLE_HOOK,FootprintOK,configCHECK_FOR_STACK_OVERFLOW,configRECORD_STACK_HIGH_ADDRESS,configGENERATE_RUN_TIME_STATS,configMINIMAL_STACK_SIZE +RCC.AHBFreq_Value=64000000 +Mcu.Pin0=PC13 +SPI3.DataSize=SPI_DATASIZE_8BIT +Mcu.Pin1=PC14-OSC32_IN (PC14) +TIM8.IPParameters=Channel-Input_Capture2_from_TI2,ICPolarity_CH2,Prescaler,Period +GPIO.groupedBy=Group By Peripherals +Mcu.Pin2=PC15-OSC32_OUT (PC15) +Mcu.Pin3=PH0-OSC_IN (PH0) +Mcu.Pin4=PH1-OSC_OUT (PH1) +Mcu.Pin5=PC0 +ADC1.Channel-0\#ChannelRegularConversion=ADC_CHANNEL_4 +PH1-OSC_OUT\ (PH1).Mode=HSE-External-Oscillator +RCC.HSE_VALUE=16000000 +FREERTOS.configUSE_TIMERS=1 NVIC.DebugMonitor_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false -NVIC.EXTI0_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true -NVIC.EXTI15_10_IRQn=true\:5\:0\:true\:false\:true\:false\:true\:true -NVIC.EXTI1_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true -NVIC.EXTI2_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true -NVIC.EXTI4_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true -NVIC.EXTI9_5_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true -NVIC.ForceEnableDMAVector=true -NVIC.HardFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false -NVIC.MemoryManagement_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false -NVIC.NonMaskableInt_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false -NVIC.OTG_FS_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true -NVIC.PendSV_IRQn=true\:15\:0\:false\:false\:false\:true\:false\:false -NVIC.PriorityGroup=NVIC_PRIORITYGROUP_4 -NVIC.SavedPendsvIrqHandlerGenerated=true -NVIC.SavedSvcallIrqHandlerGenerated=true -NVIC.SavedSystickIrqHandlerGenerated=true -NVIC.SVCall_IRQn=true\:0\:0\:false\:false\:false\:false\:false\:false +Mcu.IP10=TIM8 NVIC.SysTick_IRQn=true\:15\:0\:false\:false\:false\:true\:true\:false +Mcu.IP12=USART1 +Mcu.IP11=TIM15 +PB0.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING NVIC.TIM1_TRG_COM_TIM17_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:true -NVIC.TIM8_CC_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true -NVIC.TimeBase=TIM1_TRG_COM_TIM17_IRQn -NVIC.TimeBaseIP=TIM17 -NVIC.UsageFault_IRQn=true\:0\:0\:false\:false\:true\:false\:false\:false -PA0.GPIOParameters=GPIO_Label -PA0.GPIO_Label=IR_RX -PA0.Locked=true -PA0.Signal=ADCx_IN5 -PA1.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI -PA1.GPIO_Label=BUTTON_DOWN -PA1.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING -PA1.GPIO_PuPd=GPIO_PULLDOWN -PA1.Locked=true -PA1.Signal=GPXTI1 -PA10.Locked=true -PA10.Mode=Asynchronous -PA10.Signal=USART1_RX -PA11.Locked=true -PA11.Mode=Device_Only -PA11.Signal=USB_OTG_FS_DM -PA12.Locked=true -PA12.Mode=Device_Only -PA12.Signal=USB_OTG_FS_DP -PA13\ (JTMS-SWDIO).GPIOParameters=GPIO_Label -PA13\ (JTMS-SWDIO).GPIO_Label=TMS -PA13\ (JTMS-SWDIO).Locked=true -PA13\ (JTMS-SWDIO).Mode=Serial_Wire -PA13\ (JTMS-SWDIO).Signal=SYS_JTMS-SWDIO -PA14\ (JTCK-SWCLK).GPIOParameters=GPIO_Label -PA14\ (JTCK-SWCLK).GPIO_Label=TCK -PA14\ (JTCK-SWCLK).Locked=true -PA14\ (JTCK-SWCLK).Mode=Serial_Wire -PA14\ (JTCK-SWCLK).Signal=SYS_JTCK-SWCLK -PA15\ (JTDI).GPIOParameters=PinState,GPIO_Label -PA15\ (JTDI).GPIO_Label=CC1101_CS -PA15\ (JTDI).Locked=true -PA15\ (JTDI).PinState=GPIO_PIN_SET -PA15\ (JTDI).Signal=GPIO_Output -PA2.GPIOParameters=GPIO_Label -PA2.GPIO_Label=DISPLAY_DI -PA2.Locked=true -PA2.Signal=GPIO_Output -PA3.GPIOParameters=GPIO_Label -PA3.GPIO_Label=SPEAKER -PA3.Locked=true -PA3.Signal=S_TIM5_CH4 -PA4.Locked=true -PA4.Signal=GPIO_Analog -PA5.Locked=true -PA5.Signal=GPIO_Analog -PA6.Locked=true +RTC.Month=RTC_MONTH_NOVEMBER +Mcu.IP14=USB_OTG_FS +Mcu.IP13=USB_DEVICE +RCC.VCOInputFreq_Value=8000000 +TIM5.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4 +PB5.Mode=TX_Only_Simplex_Unidirect_Master +File.Version=6 +PC13.GPIO_PuPd=GPIO_PULLDOWN +PB7.Signal=GPIO_Input +PB8.Locked=true +PB6.GPIOParameters=GPIO_Speed,GPIO_Label +PB0.Locked=true +FREERTOS.configTOTAL_HEAP_SIZE=40960 +VP_COMP1_VS_VREFINT12.Mode=VREFINT_12 +ProjectManager.ProjectName=cube +PB1.PinState=GPIO_PIN_SET +PB7.GPIO_Label=CC1101_G0 +PB4\ (NJTRST).Locked=true PA6.Signal=GPIO_Analog PA7.Locked=true -PA7.Signal=GPIO_Analog -PA8.GPIOParameters=GPIO_Speed,PinState,GPIO_Label,GPIO_ModeDefaultOutputPP -PA8.GPIO_Label=LED_RED -PA8.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_OD -PA8.GPIO_Speed=GPIO_SPEED_FREQ_HIGH -PA8.Locked=true -PA8.PinState=GPIO_PIN_SET -PA8.Signal=GPIO_Output -PA9.Locked=true -PA9.Mode=Asynchronous -PA9.Signal=USART1_TX -PB0.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI -PB0.GPIO_Label=BUTTON_UP -PB0.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING -PB0.GPIO_PuPd=GPIO_PULLDOWN -PB0.Locked=true -PB0.Signal=GPXTI0 -PB1.GPIOParameters=GPIO_Speed,PinState,GPIO_Label,GPIO_ModeDefaultOutputPP -PB1.GPIO_Label=LED_BLUE -PB1.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_OD -PB1.GPIO_Speed=GPIO_SPEED_FREQ_MEDIUM -PB1.Locked=true -PB1.PinState=GPIO_PIN_SET -PB1.Signal=GPIO_Output -PB10.GPIOParameters=GPIO_Label -PB10.GPIO_Label=DISPLAY_RST -PB10.Locked=true -PB10.Signal=GPIO_Output -PB11.GPIOParameters=GPIO_Label -PB11.GPIO_Label=IR_TX -PB11.Locked=true -PB11.Signal=GPIO_Output -PB12.Locked=true -PB12.Signal=GPIO_Analog -PB13.GPIOParameters=GPIO_Label -PB13.GPIO_Label=RFID_OUT -PB13.Locked=true -PB13.Mode=Output Compare1 CH1N -PB13.Signal=TIM15_CH1N -PB14.GPIOParameters=GPIO_Speed,PinState,GPIO_Label,GPIO_ModeDefaultOutputPP -PB14.GPIO_Label=LED_GREEN -PB14.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_OD -PB14.GPIO_Speed=GPIO_SPEED_FREQ_MEDIUM -PB14.Locked=true -PB14.PinState=GPIO_PIN_SET -PB14.Signal=GPIO_Output -PB15.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI -PB15.GPIO_Label=RFID_PULL -PB15.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING PB15.GPIO_PuPd=GPIO_PULLDOWN -PB15.Locked=true -PB15.Signal=GPXTI15 -PB2.Locked=true -PB2.Signal=GPIO_Analog -PB3\ (JTDO-TRACESWO).Locked=true -PB3\ (JTDO-TRACESWO).Mode=TX_Only_Simplex_Unidirect_Master -PB3\ (JTDO-TRACESWO).Signal=SPI1_SCK -PB4\ (NJTRST).GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI -PB4\ (NJTRST).GPIO_Label=BUTTON_LEFT -PB4\ (NJTRST).GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING -PB4\ (NJTRST).GPIO_PuPd=GPIO_PULLDOWN -PB4\ (NJTRST).Locked=true -PB4\ (NJTRST).Signal=GPXTI4 -PB5.Locked=true -PB5.Mode=TX_Only_Simplex_Unidirect_Master -PB5.Signal=SPI1_MOSI -PB6.GPIOParameters=GPIO_Speed,GPIO_Label -PB6.GPIO_Label=DISPLAY_BACKLIGHT -PB6.GPIO_Speed=GPIO_SPEED_FREQ_LOW -PB6.Locked=true -PB6.Signal=GPIO_Output -PB7.GPIOParameters=GPIO_Label -PB7.GPIO_Label=CC1101_G0 -PB7.Locked=true -PB7.Signal=GPIO_Input -PB8.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI -PB8.GPIO_Label=BUTTON_RIGHT -PB8.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING -PB8.GPIO_PuPd=GPIO_PULLDOWN -PB8.Locked=true -PB8.Signal=GPXTI8 -PB9.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI -PB9.GPIO_Label=BUTTON_OK -PB9.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING -PB9.GPIO_PuPd=GPIO_PULLDOWN -PB9.Locked=true -PB9.Signal=GPXTI9 -PC0.Locked=true -PC0.Signal=GPIO_Analog -PC1.Locked=true -PC1.Signal=GPIO_Analog -PC10.GPIOParameters=GPIO_PuPd -PC10.GPIO_PuPd=GPIO_PULLDOWN -PC10.Locked=true -PC10.Mode=Full_Duplex_Master -PC10.Signal=SPI3_SCK -PC11.GPIOParameters=GPIO_PuPd -PC11.GPIO_PuPd=GPIO_PULLDOWN -PC11.Locked=true -PC11.Mode=Full_Duplex_Master -PC11.Signal=SPI3_MISO -PC12.GPIOParameters=GPIO_PuPd -PC12.GPIO_PuPd=GPIO_PULLDOWN -PC12.Locked=true -PC12.Mode=Full_Duplex_Master -PC12.Signal=SPI3_MOSI -PC13.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI -PC13.GPIO_Label=BUTTON_BACK -PC13.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING -PC13.GPIO_PuPd=GPIO_PULLDOWN -PC13.Locked=true -PC13.Signal=GPXTI13 -PC14-OSC32_IN\ (PC14).Locked=true -PC14-OSC32_IN\ (PC14).Mode=LSE-External-Oscillator -PC14-OSC32_IN\ (PC14).Signal=RCC_OSC32_IN -PC15-OSC32_OUT\ (PC15).Locked=true -PC15-OSC32_OUT\ (PC15).Mode=LSE-External-Oscillator -PC15-OSC32_OUT\ (PC15).Signal=RCC_OSC32_OUT -PC2.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI -PC2.GPIO_Label=CHRG -PC2.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING -PC2.GPIO_PuPd=GPIO_PULLUP -PC2.Locked=true -PC2.Signal=GPXTI2 -PC3.GPIOParameters=GPIO_Label -PC3.GPIO_Label=BATT_V -PC3.Locked=true -PC3.Signal=ADCx_IN4 -PC4.GPIOParameters=PinState,GPIO_Label -PC4.GPIO_Label=NFC_CS -PC4.Locked=true -PC4.PinState=GPIO_PIN_SET -PC4.Signal=GPIO_Output -PC5.GPIOParameters=GPIO_Label -PC5.GPIO_Label=RFID_RF_IN -PC5.Mode=INP -PC5.Signal=COMP1_INP -PC6.GPIOParameters=GPIO_Label -PC6.GPIO_Label=VIBRO -PC6.Locked=true -PC6.Signal=GPIO_Output -PC7.GPIOParameters=GPIO_ModeDefaultPP,GPIO_Speed,GPIO_PuPd,GPIO_Label -PC7.GPIO_Label=iButton -PC7.GPIO_ModeDefaultPP=GPIO_MODE_AF_OD -PC7.GPIO_PuPd=GPIO_NOPULL -PC7.GPIO_Speed=GPIO_SPEED_FREQ_MEDIUM -PC7.Locked=true -PC7.Signal=S_TIM8_CH2 -PC8.GPIOParameters=GPIO_Label -PC8.GPIO_Label=DISPLAY_CS -PC8.Locked=true -PC8.Signal=GPIO_Output -PC9.GPIOParameters=PinState,GPIO_Label -PC9.GPIO_Label=SD_CS -PC9.Locked=true -PC9.PinState=GPIO_PIN_SET -PC9.Signal=GPIO_Output -PD2.Locked=true -PD2.Signal=GPIO_Analog -PH0-OSC_IN\ (PH0).Locked=true -PH0-OSC_IN\ (PH0).Mode=HSE-External-Oscillator -PH0-OSC_IN\ (PH0).Signal=RCC_OSC_IN -PH1-OSC_OUT\ (PH1).Locked=true -PH1-OSC_OUT\ (PH1).Mode=HSE-External-Oscillator -PH1-OSC_OUT\ (PH1).Signal=RCC_OSC_OUT -PinOutPanel.RotationAngle=0 -ProjectManager.AskForMigrate=true -ProjectManager.BackupPrevious=false -ProjectManager.CompilerOptimize=6 -ProjectManager.ComputerToolchain=false -ProjectManager.CoupleFile=true -ProjectManager.CustomerFirmwarePackage=../../../lib/STM32CubeL4 -ProjectManager.DefaultFWLocation=false -ProjectManager.DeletePrevious=true -ProjectManager.DeviceId=STM32L476RGTx -ProjectManager.FirmwarePackage=STM32Cube FW_L4 V1.16.0 -ProjectManager.FreePins=false -ProjectManager.functionlistsort=1-MX_GPIO_Init-GPIO-false-HAL-true,2-SystemClock_Config-RCC-false-HAL-false,3-MX_SPI1_Init-SPI1-false-HAL-true,4-MX_SPI3_Init-SPI3-false-HAL-true,5-MX_ADC1_Init-ADC1-false-HAL-true,6-MX_COMP1_Init-COMP1-false-HAL-true,7-MX_TIM5_Init-TIM5-false-HAL-true,8-MX_TIM15_Init-TIM15-false-HAL-true,9-MX_USART1_UART_Init-USART1-false-HAL-true,10-MX_USB_DEVICE_Init-USB_DEVICE-false-HAL-false,11-MX_TIM8_Init-TIM8-false-HAL-true -ProjectManager.HalAssertFull=false -ProjectManager.HeapSize=0x200 -ProjectManager.KeepUserCode=true -ProjectManager.LastFirmware=true -ProjectManager.LibraryCopy=2 -ProjectManager.MainLocation=Src -ProjectManager.NoMain=false -ProjectManager.PreviousToolchain= -ProjectManager.ProjectBuild=false -ProjectManager.ProjectFileName=cube.ioc -ProjectManager.ProjectName=cube -ProjectManager.RegisterCallBack= -ProjectManager.StackSize=0x400 -ProjectManager.TargetToolchain=Makefile +NVIC.OTG_FS_IRQn=true\:5\:0\:false\:false\:true\:true\:false\:true ProjectManager.ToolChainLocation= -ProjectManager.UnderRoot=false -RCC.ADCCLockSelection=RCC_ADCCLKSOURCE_SYSCLK -RCC.ADCFreq_Value=64000000 -RCC.AHBFreq_Value=64000000 -RCC.APB1Freq_Value=64000000 -RCC.APB1TimFreq_Value=64000000 -RCC.APB2Freq_Value=64000000 -RCC.APB2TimFreq_Value=64000000 -RCC.CortexFreq_Value=64000000 -RCC.DFSDMFreq_Value=64000000 -RCC.FamilyName=M -RCC.FCLKCortexFreq_Value=64000000 -RCC.HCLKFreq_Value=64000000 -RCC.HSE_VALUE=16000000 -RCC.HSI_VALUE=16000000 -RCC.I2C1Freq_Value=64000000 -RCC.I2C2Freq_Value=64000000 -RCC.I2C3Freq_Value=64000000 -RCC.IPParameters=ADCCLockSelection,ADCFreq_Value,AHBFreq_Value,APB1Freq_Value,APB1TimFreq_Value,APB2Freq_Value,APB2TimFreq_Value,CortexFreq_Value,DFSDMFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,HSI_VALUE,I2C1Freq_Value,I2C2Freq_Value,I2C3Freq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPUART1Freq_Value,LSCOPinFreq_Value,LSI_VALUE,MCO1PinFreq_Value,MSI_VALUE,PLLM,PLLN,PLLPoutputFreq_Value,PLLQoutputFreq_Value,PLLRCLKFreq_Value,PLLSAI1N,PLLSAI1PoutputFreq_Value,PLLSAI1QoutputFreq_Value,PLLSAI1RoutputFreq_Value,PLLSAI2PoutputFreq_Value,PLLSAI2RoutputFreq_Value,PLLSourceVirtual,PREFETCH_ENABLE,PWRFreq_Value,RNGFreq_Value,SAI1Freq_Value,SAI2Freq_Value,SDMMCFreq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,UART4Freq_Value,UART5Freq_Value,USART1Freq_Value,USART2Freq_Value,USART3Freq_Value,USBFreq_Value,VCOInputFreq_Value,VCOOutputFreq_Value,VCOSAI1OutputFreq_Value,VCOSAI2OutputFreq_Value -RCC.LPTIM1Freq_Value=64000000 -RCC.LPTIM2Freq_Value=64000000 -RCC.LPUART1Freq_Value=64000000 -RCC.LSCOPinFreq_Value=32000 +PA2.GPIO_Label=DISPLAY_DI RCC.LSI_VALUE=32000 -RCC.MCO1PinFreq_Value=64000000 +SH.GPXTI0.0=GPIO_EXTI0 +USB_OTG_FS.VirtualMode=Device_Only +VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS.Signal=USB_DEVICE_VS_USB_DEVICE_CDC_FS +PC14-OSC32_IN\ (PC14).Locked=true +TIM8.Prescaler=64-1 +PC4.Locked=true +SPI3.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,DataSize,BaudRatePrescaler,CLKPolarity,CLKPhase +PC5.Signal=COMP1_INP +SPI1.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_16 +PA1.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING +PC2.GPIO_Label=CHRG +PA8.PinState=GPIO_PIN_SET +PB15.Locked=true +PB3\ (JTDO-TRACESWO).Locked=true +RCC.PLLSAI1N=12 +PA3.Signal=S_TIM5_CH4 +PA2.Locked=true +VP_RTC_VS_RTC_Activate.Signal=RTC_VS_RTC_Activate RCC.MSI_VALUE=4000000 +RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE +PA14\ (JTCK-SWCLK).Mode=Serial_Wire +PB8.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI +PB9.GPIO_Label=BUTTON_OK +PA10.Mode=Asynchronous +PC9.GPIO_Label=SD_CS +ProjectManager.NoMain=false +SPI1.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,DataSize,BaudRatePrescaler,CLKPolarity,CLKPhase +USB_DEVICE.VirtualModeFS=Cdc_FS +NVIC.SavedSvcallIrqHandlerGenerated=true +PC11.Signal=SPI3_MISO +PC8.Signal=GPIO_Output +PC4.Signal=GPIO_Output +PC10.Mode=Full_Duplex_Master +ProjectManager.DefaultFWLocation=false +PC15-OSC32_OUT\ (PC15).Signal=RCC_OSC32_OUT +PB12.Locked=true +PA14\ (JTCK-SWCLK).GPIO_Label=TCK +ProjectManager.DeletePrevious=true +PB10.Locked=true +RCC.VCOSAI2OutputFreq_Value=64000000 +boardIOC=true +USB_DEVICE.IPParameters=VirtualMode,VirtualModeFS,CLASS_NAME_FS +RCC.FamilyName=M +PH1-OSC_OUT\ (PH1).Signal=RCC_OSC_OUT +PB9.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI +PC8.GPIO_Label=DISPLAY_CS +PC12.GPIOParameters=GPIO_PuPd +USART1.VirtualMode-Asynchronous=VM_ASYNC +FREERTOS.configUSE_IDLE_HOOK=1 +PA9.Mode=Asynchronous +PB4\ (NJTRST).GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI +NVIC.TIM8_CC_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true +PB14.PinState=GPIO_PIN_SET +FREERTOS.configRECORD_STACK_HIGH_ADDRESS=1 +ProjectManager.TargetToolchain=Makefile +PB10.GPIO_Label=DISPLAY_RST +PB7.GPIOParameters=GPIO_Label +VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS.Mode=CDC_FS +PC5.GPIOParameters=GPIO_Label +PC2.Locked=true +ProjectManager.RegisterCallBack= +PC15-OSC32_OUT\ (PC15).Locked=true +RCC.USBFreq_Value=48000000 +TIM15.IPParameters=Channel-Output Compare1 CH1N +PB14.GPIO_ModeDefaultOutputPP=GPIO_MODE_OUTPUT_OD +PA1.Signal=GPXTI1 +PB1.Locked=true +PB15.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING +PH1-OSC_OUT\ (PH1).Locked=true +board=NUCLEO-L476RG +SPI3.CLKPhase=SPI_PHASE_2EDGE +PC7.GPIO_Speed=GPIO_SPEED_FREQ_MEDIUM +RCC.VCOOutputFreq_Value=128000000 +NVIC.SavedSystickIrqHandlerGenerated=true +RCC.APB2Freq_Value=64000000 +RCC.UART4Freq_Value=64000000 +SPI3.CalculateBaudRate=1000.0 KBits/s +MxCube.Version=6.0.1 +PA13\ (JTMS-SWDIO).GPIO_Label=TMS +PC13.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI +RCC.PLLSAI1QoutputFreq_Value=48000000 +RCC.ADCFreq_Value=64000000 +SPI3.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_64 +VP_ADC1_Vref_Input.Signal=ADC1_Vref_Input +SH.S_TIM5_CH4.0=TIM5_CH4,PWM Generation4 CH4 +PC2.GPIO_PuPd=GPIO_PULLUP +RCC.UART5Freq_Value=64000000 +PB15.GPIOParameters=GPIO_PuPd,GPIO_Label,GPIO_ModeDefaultEXTI +ADC1.NbrOfConversion=1 +PA15\ (JTDI).GPIO_Label=CC1101_CS +RCC.IPParameters=ADCCLockSelection,ADCFreq_Value,AHBFreq_Value,APB1Freq_Value,APB1TimFreq_Value,APB2Freq_Value,APB2TimFreq_Value,CortexFreq_Value,DFSDMFreq_Value,FCLKCortexFreq_Value,FamilyName,HCLKFreq_Value,HSE_VALUE,HSI_VALUE,I2C1Freq_Value,I2C2Freq_Value,I2C3Freq_Value,LCDFreq_Value,LPTIM1Freq_Value,LPTIM2Freq_Value,LPUART1Freq_Value,LSCOPinFreq_Value,LSI_VALUE,MCO1PinFreq_Value,MSI_VALUE,PLLM,PLLN,PLLPoutputFreq_Value,PLLQoutputFreq_Value,PLLRCLKFreq_Value,PLLSAI1N,PLLSAI1PoutputFreq_Value,PLLSAI1QoutputFreq_Value,PLLSAI1RoutputFreq_Value,PLLSAI2PoutputFreq_Value,PLLSAI2RoutputFreq_Value,PLLSourceVirtual,PREFETCH_ENABLE,PWRFreq_Value,RNGFreq_Value,RTCClockSelection,RTCFreq_Value,SAI1Freq_Value,SAI2Freq_Value,SDMMCFreq_Value,SWPMI1Freq_Value,SYSCLKFreq_VALUE,SYSCLKSource,UART4Freq_Value,UART5Freq_Value,USART1Freq_Value,USART2Freq_Value,USART3Freq_Value,USBFreq_Value,VCOInputFreq_Value,VCOOutputFreq_Value,VCOSAI1OutputFreq_Value,VCOSAI2OutputFreq_Value +ProjectManager.AskForMigrate=true +Mcu.Name=STM32L476R(C-E-G)Tx +NVIC.SavedPendsvIrqHandlerGenerated=true +PA2.Signal=GPIO_Output +PB2.Locked=true +Mcu.IP8=SYS +VP_FREERTOS_VS_CMSIS_V2.Signal=FREERTOS_VS_CMSIS_V2 +Mcu.IP9=TIM5 +Mcu.IP6=SPI1 +Mcu.IP7=SPI3 +ProjectManager.CoupleFile=true +NVIC.EXTI0_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true +RCC.SYSCLKFreq_VALUE=64000000 +PA1.Locked=true +PA12.Mode=Device_Only +SH.GPXTI4.0=GPIO_EXTI4 +RCC.PLLSAI2PoutputFreq_Value=9142857.142857144 +KeepUserPlacement=false +TIM5.Prescaler=500 - 1 +PC13.GPIO_ModeDefaultEXTI=GPIO_MODE_IT_RISING_FALLING +PC5.GPIO_Label=RFID_RF_IN +PC14-OSC32_IN\ (PC14).Signal=RCC_OSC32_IN +SH.GPXTI9.ConfNb=1 +NVIC.EXTI9_5_IRQn=true\:5\:0\:false\:false\:true\:true\:true\:true +SH.GPXTI4.ConfNb=1 +PC6.GPIOParameters=GPIO_Label +RCC.HSI_VALUE=16000000 +ADC1.NbrOfConversionFlag=1 +SH.GPXTI15.0=GPIO_EXTI15 RCC.PLLM=2 RCC.PLLN=16 -RCC.PLLPoutputFreq_Value=18285714.285714287 -RCC.PLLQoutputFreq_Value=64000000 -RCC.PLLRCLKFreq_Value=64000000 -RCC.PLLSAI1N=12 -RCC.PLLSAI1PoutputFreq_Value=13714285.714285715 -RCC.PLLSAI1QoutputFreq_Value=48000000 -RCC.PLLSAI1RoutputFreq_Value=48000000 -RCC.PLLSAI2PoutputFreq_Value=9142857.142857144 -RCC.PLLSAI2RoutputFreq_Value=32000000 -RCC.PLLSourceVirtual=RCC_PLLSOURCE_HSE -RCC.PREFETCH_ENABLE=1 -RCC.PWRFreq_Value=64000000 -RCC.RNGFreq_Value=48000000 -RCC.SAI1Freq_Value=13714285.714285715 -RCC.SAI2Freq_Value=13714285.714285715 -RCC.SDMMCFreq_Value=48000000 -RCC.SWPMI1Freq_Value=64000000 -RCC.SYSCLKFreq_VALUE=64000000 -RCC.SYSCLKSource=RCC_SYSCLKSOURCE_PLLCLK -RCC.UART4Freq_Value=64000000 -RCC.UART5Freq_Value=64000000 -RCC.USART1Freq_Value=64000000 -RCC.USART2Freq_Value=64000000 -RCC.USART3Freq_Value=64000000 -RCC.USBFreq_Value=48000000 -RCC.VCOInputFreq_Value=8000000 -RCC.VCOOutputFreq_Value=128000000 -RCC.VCOSAI1OutputFreq_Value=96000000 -RCC.VCOSAI2OutputFreq_Value=64000000 -SH.ADCx_IN4.0=ADC1_IN4,IN4-Single-Ended -SH.ADCx_IN4.ConfNb=1 -SH.ADCx_IN5.0=ADC1_IN5,IN5-Single-Ended -SH.ADCx_IN5.ConfNb=1 -SH.GPXTI0.0=GPIO_EXTI0 -SH.GPXTI0.ConfNb=1 -SH.GPXTI1.0=GPIO_EXTI1 -SH.GPXTI1.ConfNb=1 -SH.GPXTI13.0=GPIO_EXTI13 -SH.GPXTI13.ConfNb=1 -SH.GPXTI15.0=GPIO_EXTI15 -SH.GPXTI15.ConfNb=1 -SH.GPXTI2.0=GPIO_EXTI2 -SH.GPXTI2.ConfNb=1 -SH.GPXTI4.0=GPIO_EXTI4 -SH.GPXTI4.ConfNb=1 -SH.GPXTI8.0=GPIO_EXTI8 -SH.GPXTI8.ConfNb=1 -SH.GPXTI9.0=GPIO_EXTI9 -SH.GPXTI9.ConfNb=1 -SH.S_TIM5_CH4.0=TIM5_CH4,PWM Generation4 CH4 -SH.S_TIM5_CH4.ConfNb=1 -SH.S_TIM8_CH2.0=TIM8_CH2,Input_Capture2_from_TI2 -SH.S_TIM8_CH2.ConfNb=1 -SPI1.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_16 -SPI1.CalculateBaudRate=4.0 MBits/s -SPI1.CLKPhase=SPI_PHASE_1EDGE -SPI1.CLKPolarity=SPI_POLARITY_LOW -SPI1.DataSize=SPI_DATASIZE_8BIT -SPI1.Direction=SPI_DIRECTION_2LINES -SPI1.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,DataSize,BaudRatePrescaler,CLKPolarity,CLKPhase -SPI1.Mode=SPI_MODE_MASTER -SPI1.VirtualType=VM_MASTER -SPI3.BaudRatePrescaler=SPI_BAUDRATEPRESCALER_64 -SPI3.CalculateBaudRate=1000.0 KBits/s -SPI3.CLKPhase=SPI_PHASE_2EDGE -SPI3.CLKPolarity=SPI_POLARITY_LOW -SPI3.DataSize=SPI_DATASIZE_8BIT -SPI3.Direction=SPI_DIRECTION_2LINES -SPI3.IPParameters=VirtualType,Mode,Direction,CalculateBaudRate,DataSize,BaudRatePrescaler,CLKPolarity,CLKPhase -SPI3.Mode=SPI_MODE_MASTER -SPI3.VirtualType=VM_MASTER -TIM15.Channel-Output\ Compare1\ CH1N=TIM_CHANNEL_1 -TIM15.IPParameters=Channel-Output Compare1 CH1N -TIM5.Channel-PWM\ Generation4\ CH4=TIM_CHANNEL_4 -TIM5.IPParameters=Prescaler,Period,Channel-PWM Generation4 CH4,Pulse-PWM Generation4 CH4 -TIM5.Period=291 -TIM5.Prescaler=500 - 1 -TIM5.Pulse-PWM\ Generation4\ CH4=145 TIM8.Channel-Input_Capture2_from_TI2=TIM_CHANNEL_2 -TIM8.ICPolarity_CH2=TIM_INPUTCHANNELPOLARITY_BOTHEDGE -TIM8.IPParameters=Channel-Input_Capture2_from_TI2,ICPolarity_CH2,Prescaler,Period -TIM8.Period=32768-1 -TIM8.Prescaler=64-1 -USART1.IPParameters=VirtualMode-Asynchronous -USART1.VirtualMode-Asynchronous=VM_ASYNC -USB_DEVICE.CLASS_NAME_FS=CDC -USB_DEVICE.IPParameters=VirtualMode,VirtualModeFS,CLASS_NAME_FS +PB7.Locked=true +PB8.Signal=GPXTI8 +PC8.Locked=true +TIM5.Period=291 +PC9.Signal=GPIO_Output +PA15\ (JTDI).Locked=true +RCC.APB1Freq_Value=64000000 USB_DEVICE.VirtualMode=Cdc -USB_DEVICE.VirtualModeFS=Cdc_FS -USB_OTG_FS.IPParameters=VirtualMode -USB_OTG_FS.VirtualMode=Device_Only -VP_ADC1_TempSens_Input.Mode=IN-TempSens -VP_ADC1_TempSens_Input.Signal=ADC1_TempSens_Input -VP_ADC1_Vref_Input.Mode=IN-Vrefint -VP_ADC1_Vref_Input.Signal=ADC1_Vref_Input -VP_COMP1_VS_VREFINT12.Mode=VREFINT_12 -VP_COMP1_VS_VREFINT12.Signal=COMP1_VS_VREFINT12 -VP_FREERTOS_VS_CMSIS_V2.Mode=CMSIS_V2 -VP_FREERTOS_VS_CMSIS_V2.Signal=FREERTOS_VS_CMSIS_V2 -VP_SYS_VS_tim17.Mode=TIM17 -VP_SYS_VS_tim17.Signal=SYS_VS_tim17 -VP_TIM8_VS_ClockSourceINT.Mode=Internal -VP_TIM8_VS_ClockSourceINT.Signal=TIM8_VS_ClockSourceINT -VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS.Mode=CDC_FS -VP_USB_DEVICE_VS_USB_DEVICE_CDC_FS.Signal=USB_DEVICE_VS_USB_DEVICE_CDC_FS +PB11.Locked=true +ProjectManager.DeviceId=STM32L476RGTx +SH.S_TIM8_CH2.ConfNb=1 +PB12.Signal=GPIO_Analog +ProjectManager.LibraryCopy=2 +PB0.GPIO_PuPd=GPIO_PULLDOWN +PA3.GPIO_Label=SPEAKER +PB1.GPIOParameters=GPIO_Speed,PinState,GPIO_Label,GPIO_ModeDefaultOutputPP +PA7.Signal=GPIO_Analog +PB4\ (NJTRST).Signal=GPXTI4 +PA6.Locked=true diff --git a/firmware/targets/f2/target.mk b/firmware/targets/f2/target.mk index 101d3516..ede612d3 100644 --- a/firmware/targets/f2/target.mk +++ b/firmware/targets/f2/target.mk @@ -39,6 +39,7 @@ C_SOURCES += \ $(CUBE_DIR)/Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ex.c \ $(CUBE_DIR)/Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_flash_ramfunc.c \ $(CUBE_DIR)/Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_gpio.c \ + $(CUBE_DIR)/Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_rtc.c \ $(CUBE_DIR)/Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma.c \ $(CUBE_DIR)/Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_dma_ex.c \ $(CUBE_DIR)/Drivers/STM32L4xx_HAL_Driver/Src/stm32l4xx_hal_pwr.c \