merge
This commit is contained in:
commit
bcffecfb50
311 changed files with 178150 additions and 0 deletions
63
24MhzConfig.txt
Normal file
63
24MhzConfig.txt
Normal file
|
@ -0,0 +1,63 @@
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
45
80MhzConfig.txt
Normal file
45
80MhzConfig.txt
Normal file
|
@ -0,0 +1,45 @@
|
||||||
|
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
940
PlaygroundYoupi/.metadata/.ide.log
Normal file
940
PlaygroundYoupi/.metadata/.ide.log
Normal file
|
@ -0,0 +1,940 @@
|
||||||
|
2020-11-05 10:46:39,289 [INFO] Activator:178 -
|
||||||
|
|
||||||
|
|
||||||
|
2020-11-05 10:46:39,291 [INFO] Activator:179 - !SESSION log4j initialized
|
||||||
|
2020-11-05 10:47:18,316 [INFO] ApplicationProperties:181 - Using Application install path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824
|
||||||
|
2020-11-05 10:47:18,330 [INFO] DbMcusXml:70 - Set database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/mcu/
|
||||||
|
2020-11-05 10:47:18,334 [INFO] DbBoardsPdsc:56 - Set plugin database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/boardmanager/
|
||||||
|
2020-11-05 10:47:18,336 [INFO] DbMcus:258 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,336 [INFO] DbBoards:264 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,339 [INFO] DbExamples:326 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,344 [INFO] DbMcusDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,346 [INFO] DbMcusJson:63 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,348 [INFO] DbBoardsDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,349 [INFO] DbBoardsJson:56 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,357 [INFO] CrossReferenceDbSqlite:196 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/cs/
|
||||||
|
2020-11-05 10:47:18,361 [INFO] DbExamplesSqlite:800 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,476 [INFO] RulesReader:52 - Compatibility file has been processed (209 Rules)
|
||||||
|
2020-11-05 10:47:18,587 [INFO] MicroXplorer:564 - Detected Java Version = 1.8.0_252
|
||||||
|
2020-11-05 10:47:18,587 [INFO] DbMcusXml:70 - Set database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/mcu/
|
||||||
|
2020-11-05 10:47:18,588 [INFO] DbBoardsPdsc:56 - Set plugin database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/boardmanager/
|
||||||
|
2020-11-05 10:47:18,589 [INFO] DbMcus:258 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,589 [INFO] DbBoards:264 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,589 [INFO] DbExamples:326 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,590 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,590 [INFO] DbMcusDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,590 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,591 [INFO] DbMcusJson:63 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,592 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,592 [INFO] DbBoardsDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,593 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,593 [INFO] DbBoardsJson:56 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,594 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,594 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,594 [INFO] CrossReferenceDbSqlite:196 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/cs/
|
||||||
|
2020-11-05 10:47:18,595 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,595 [INFO] DbExamplesSqlite:800 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,684 [INFO] MainPanel:189 - HeapMemory: 352321536
|
||||||
|
2020-11-05 10:47:18,755 [INFO] DbMcusXml:70 - Set database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/mcu/
|
||||||
|
2020-11-05 10:47:18,756 [INFO] DbBoardsPdsc:56 - Set plugin database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/boardmanager/
|
||||||
|
2020-11-05 10:47:18,756 [INFO] DbMcus:258 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,756 [INFO] DbBoards:264 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,757 [INFO] DbExamples:326 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-05 10:47:18,757 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,758 [INFO] DbMcusDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,758 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,759 [INFO] DbMcusJson:63 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,759 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,760 [INFO] DbBoardsDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,760 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,760 [INFO] DbBoardsJson:56 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,760 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,761 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,761 [INFO] CrossReferenceDbSqlite:196 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/cs/
|
||||||
|
2020-11-05 10:47:18,761 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-05 10:47:18,761 [INFO] DbExamplesSqlite:800 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-05 10:47:18,781 [INFO] ApplicationProperties:181 - Using Application install path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824
|
||||||
|
2020-11-05 10:47:18,783 [INFO] PluginManage:178 - Search for loadable plugins [exclusion list=, ]
|
||||||
|
2020-11-05 10:47:18,785 [INFO] PluginManage:292 - Check plugin analytics
|
||||||
|
2020-11-05 10:47:18,977 [INFO] AnalyticsPlugin:203 - Accepted Software Licenses:
|
||||||
|
2020-11-05 10:47:18,977 [INFO] AnalyticsPlugin:205 - Accepted CMSIS Pack Licenses:
|
||||||
|
2020-11-05 10:47:18,978 [INFO] AnalyticsPlugin:207 - Accepted Firmware Licenses:
|
||||||
|
2020-11-05 10:47:18,979 [INFO] PluginManage:342 - Loaded plugin analytics (category:tool,tabindex:-1)
|
||||||
|
2020-11-05 10:47:18,979 [INFO] PluginManage:292 - Check plugin clock
|
||||||
|
2020-11-05 10:47:19,001 [INFO] PluginManage:342 - Loaded plugin clock (category:base,tabindex:2)
|
||||||
|
2020-11-05 10:47:19,002 [INFO] PluginManage:292 - Check plugin ddr
|
||||||
|
2020-11-05 10:47:19,005 [INFO] PluginManage:342 - Loaded plugin ddr (category:tool,tabindex:6)
|
||||||
|
2020-11-05 10:47:19,006 [INFO] PluginManage:292 - Check plugin filemanager
|
||||||
|
2020-11-05 10:47:19,185 [INFO] PluginManage:342 - Loaded plugin filemanager (category:base,tabindex:10)
|
||||||
|
2020-11-05 10:47:19,185 [INFO] PluginManage:292 - Check plugin ipmanager
|
||||||
|
2020-11-05 10:47:19,204 [INFO] PluginManage:342 - Loaded plugin ipmanager (category:base,tabindex:5)
|
||||||
|
2020-11-05 10:47:19,205 [INFO] PluginManage:292 - Check plugin pinoutandconfiguration
|
||||||
|
2020-11-05 10:47:19,219 [INFO] PluginManage:342 - Loaded plugin pinoutandconfiguration (category:base,tabindex:1)
|
||||||
|
2020-11-05 10:47:19,219 [INFO] PluginManage:292 - Check plugin pinoutconfig
|
||||||
|
2020-11-05 10:47:19,264 [INFO] PluginManage:342 - Loaded plugin pinoutconfig (category:base,tabindex:0)
|
||||||
|
2020-11-05 10:47:19,264 [INFO] PluginManage:292 - Check plugin power
|
||||||
|
2020-11-05 10:47:19,278 [INFO] PluginManage:342 - Loaded plugin power (category:power,tabindex:4)
|
||||||
|
2020-11-05 10:47:19,279 [INFO] PluginManage:292 - Check plugin projectmanager
|
||||||
|
2020-11-05 10:47:19,307 [INFO] PluginManage:342 - Loaded plugin projectmanager (category:projectmanager,tabindex:3)
|
||||||
|
2020-11-05 10:47:19,308 [INFO] PluginManage:292 - Check plugin thirdparty
|
||||||
|
2020-11-05 10:47:19,423 [INFO] ThirdPartyDb:333 - Open Third Party DataBase File (C:/Users/camer/.stm32cubemx/plugins/thirdparty/db/thirdparties_db.xml) : 51 ms. number of Sw pack : 23
|
||||||
|
2020-11-05 10:47:19,432 [INFO] PluginManage:342 - Loaded plugin thirdparty (category:base,tabindex:-1)
|
||||||
|
2020-11-05 10:47:19,433 [INFO] PluginManage:292 - Check plugin tools
|
||||||
|
2020-11-05 10:47:19,437 [INFO] PluginManage:342 - Loaded plugin tools (category:base,tabindex:7)
|
||||||
|
2020-11-05 10:47:19,438 [INFO] PluginManage:292 - Check plugin tutovideos
|
||||||
|
2020-11-05 10:47:19,755 [INFO] PluginManage:342 - Loaded plugin tutovideos (category:base,tabindex:-1)
|
||||||
|
2020-11-05 10:47:19,756 [INFO] PluginManage:292 - Check plugin updater
|
||||||
|
2020-11-05 10:47:19,773 [INFO] PluginManage:342 - Loaded plugin updater (category:base,tabindex:12)
|
||||||
|
2020-11-05 10:47:19,781 [INFO] PluginManage:265 - PluginManage : Loaded plugins [13]
|
||||||
|
2020-11-05 10:47:20,042 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-05 10:47:20,195 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,195 [INFO] PluginManager:200 - loadIPPluginJar : add adc
|
||||||
|
2020-11-05 10:47:20,198 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,199 [INFO] PluginManager:200 - loadIPPluginJar : add aes
|
||||||
|
2020-11-05 10:47:20,202 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,203 [INFO] PluginManager:200 - loadIPPluginJar : add can
|
||||||
|
2020-11-05 10:47:20,205 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,206 [INFO] PluginManager:200 - loadIPPluginJar : add comp
|
||||||
|
2020-11-05 10:47:20,210 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,210 [INFO] PluginManager:200 - loadIPPluginJar : add cryp
|
||||||
|
2020-11-05 10:47:20,213 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,214 [INFO] PluginManager:200 - loadIPPluginJar : add dfsdm
|
||||||
|
2020-11-05 10:47:20,221 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,223 [INFO] PluginManager:200 - loadIPPluginJar : add dma
|
||||||
|
2020-11-05 10:47:20,226 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,227 [INFO] PluginManager:200 - loadIPPluginJar : add fatfs
|
||||||
|
2020-11-05 10:47:20,232 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,233 [INFO] PluginManager:200 - loadIPPluginJar : add fmc
|
||||||
|
2020-11-05 10:47:20,240 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,241 [INFO] PluginManager:200 - loadIPPluginJar : add freertos
|
||||||
|
2020-11-05 10:47:20,244 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,244 [INFO] PluginManager:200 - loadIPPluginJar : add genericplugin
|
||||||
|
2020-11-05 10:47:20,247 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,248 [INFO] PluginManager:200 - loadIPPluginJar : add gfxmmu
|
||||||
|
2020-11-05 10:47:20,255 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,256 [INFO] PluginManager:200 - loadIPPluginJar : add gic
|
||||||
|
2020-11-05 10:47:20,262 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,263 [INFO] PluginManager:200 - loadIPPluginJar : add gpio
|
||||||
|
2020-11-05 10:47:20,266 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,266 [INFO] PluginManager:200 - loadIPPluginJar : add gtzc
|
||||||
|
2020-11-05 10:47:20,269 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,269 [INFO] PluginManager:200 - loadIPPluginJar : add hash
|
||||||
|
2020-11-05 10:47:20,273 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,273 [INFO] PluginManager:200 - loadIPPluginJar : add i2c
|
||||||
|
2020-11-05 10:47:20,277 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,277 [INFO] PluginManager:200 - loadIPPluginJar : add i2s
|
||||||
|
2020-11-05 10:47:20,281 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,281 [INFO] PluginManager:200 - loadIPPluginJar : add ipddr
|
||||||
|
2020-11-05 10:47:20,283 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,283 [INFO] PluginManager:200 - loadIPPluginJar : add ltdc
|
||||||
|
2020-11-05 10:47:20,288 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,289 [INFO] PluginManager:200 - loadIPPluginJar : add mdma
|
||||||
|
2020-11-05 10:47:20,294 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,295 [INFO] PluginManager:200 - loadIPPluginJar : add nvic
|
||||||
|
2020-11-05 10:47:20,299 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,300 [INFO] PluginManager:200 - loadIPPluginJar : add opamp
|
||||||
|
2020-11-05 10:47:20,303 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,303 [INFO] PluginManager:200 - loadIPPluginJar : add openamp
|
||||||
|
2020-11-05 10:47:20,307 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,307 [INFO] PluginManager:200 - loadIPPluginJar : add pdm2pcm
|
||||||
|
2020-11-05 10:47:20,316 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,320 [INFO] PluginManager:200 - loadIPPluginJar : add plateformsettings
|
||||||
|
2020-11-05 10:47:20,322 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,323 [INFO] PluginManager:200 - loadIPPluginJar : add quadspi
|
||||||
|
2020-11-05 10:47:20,328 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,328 [INFO] PluginManager:200 - loadIPPluginJar : add resmgrutility
|
||||||
|
2020-11-05 10:47:20,332 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,332 [INFO] PluginManager:200 - loadIPPluginJar : add sai
|
||||||
|
2020-11-05 10:47:20,335 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,336 [INFO] PluginManager:200 - loadIPPluginJar : add spi
|
||||||
|
2020-11-05 10:47:20,341 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,342 [INFO] PluginManager:200 - loadIPPluginJar : add stm32_wpan
|
||||||
|
2020-11-05 10:47:20,344 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,345 [INFO] PluginManager:200 - loadIPPluginJar : add tim
|
||||||
|
2020-11-05 10:47:20,349 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,350 [INFO] PluginManager:200 - loadIPPluginJar : add touchsensing
|
||||||
|
2020-11-05 10:47:20,352 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,353 [INFO] PluginManager:200 - loadIPPluginJar : add tracer_emb
|
||||||
|
2020-11-05 10:47:20,355 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,356 [INFO] PluginManager:200 - loadIPPluginJar : add ts
|
||||||
|
2020-11-05 10:47:20,359 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,359 [INFO] PluginManager:200 - loadIPPluginJar : add tsc
|
||||||
|
2020-11-05 10:47:20,362 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,362 [INFO] PluginManager:200 - loadIPPluginJar : add ucpd
|
||||||
|
2020-11-05 10:47:20,366 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:20,367 [INFO] PluginManager:200 - loadIPPluginJar : add usart
|
||||||
|
2020-11-05 10:47:21,377 [INFO] CubeProgrammer:457 - [DDR PANEL] - PathOfProgrammer: null
|
||||||
|
2020-11-05 10:47:22,387 [FATAL] Updater:282 - Updater called before beeing initialized
|
||||||
|
2020-11-05 10:47:22,619 [FATAL] Updater:282 - Updater called before beeing initialized
|
||||||
|
2020-11-05 10:47:22,619 [WARN] ThirdParty:775 - waiting for thirdparty lock release [close project]
|
||||||
|
2020-11-05 10:47:22,619 [INFO] ThirdParty:777 - entering critical section [close project]
|
||||||
|
2020-11-05 10:47:22,621 [INFO] ThirdParty:790 - exiting critical section [close project]
|
||||||
|
2020-11-05 10:47:22,625 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-05 10:47:22,626 [FATAL] Updater:282 - Updater called before beeing initialized
|
||||||
|
2020-11-05 10:47:22,634 [ERROR] Updater:967 - MainUpdater not yet initialized. External WinMGr cannot be set.
|
||||||
|
2020-11-05 10:47:22,635 [INFO] CubeProgrammer:457 - [DDR PANEL] - PathOfProgrammer: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_1.4.0.202007081208\tools\bin
|
||||||
|
2020-11-05 10:47:22,639 [INFO] ProgrammerExecThread:148 - [ProgrammerAPI] CubeProgrammer command construction: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_1.4.0.202007081208\tools\bin\STM32_Programmer_CLI.exe -l
|
||||||
|
2020-11-05 10:47:22,738 [INFO] MainDdrPanel:49 - [DDR PANEL] SETTER - Set cubeProgrammerPath to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_1.4.0.202007081208\tools\bin
|
||||||
|
2020-11-05 10:47:22,741 [INFO] Updater:904 - Updater Version found : 6.0.0
|
||||||
|
2020-11-05 10:47:22,766 [INFO] ApplicationProperties:181 - Using Application install path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824
|
||||||
|
2020-11-05 10:47:22,933 [INFO] MainUpdater:2268 - connection check result : 10
|
||||||
|
2020-11-05 10:47:22,934 [INFO] MainUpdater:239 - Updater Check For Update Now.
|
||||||
|
2020-11-05 10:47:22,935 [INFO] MicroXplorer:414 - Change Database Version : DB.6.0.0
|
||||||
|
2020-11-05 10:47:22,980 [INFO] CheckServerUpdateThread:102 - End of CheckServer Thread
|
||||||
|
2020-11-05 10:47:23,042 [INFO] MainUpdater:2268 - connection check result : 10
|
||||||
|
2020-11-05 10:47:23,043 [INFO] MainUpdater:2268 - connection check result : 10
|
||||||
|
2020-11-05 10:47:23,132 [INFO] MicroXplorer:384 - Change Database Path :
|
||||||
|
2020-11-05 10:47:23,132 [INFO] MicroXplorer:414 - Change Database Version : DB.6.0.0
|
||||||
|
2020-11-05 10:47:23,133 [WARN] ThirdParty:775 - waiting for thirdparty lock release [close project]
|
||||||
|
2020-11-05 10:47:23,133 [INFO] ThirdParty:777 - entering critical section [close project]
|
||||||
|
2020-11-05 10:47:23,133 [INFO] ThirdParty:790 - exiting critical section [close project]
|
||||||
|
2020-11-05 10:47:23,137 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-05 10:47:23,138 [INFO] UtilMem:74 - Begin LoadConfig() Used Memory: 354596360 Bytes (407896064)
|
||||||
|
2020-11-05 10:47:23,139 [INFO] MicroXplorer:384 - Change Database Path :
|
||||||
|
2020-11-05 10:47:23,140 [INFO] MicroXplorer:414 - Change Database Version : DB.6.0.0
|
||||||
|
2020-11-05 10:47:23,141 [INFO] OpenFileManager:274 - Change cursor
|
||||||
|
2020-11-05 10:47:25,435 [WARN] IntegrityCheckThread:61 - waiting for thirdparty lock release [integrity check]
|
||||||
|
2020-11-05 10:47:25,435 [INFO] IntegrityCheckThread:63 - entering critical section [integrity check]
|
||||||
|
2020-11-05 10:47:25,588 [INFO] ThirdPartyDb:299 - Save Third Party DataBase File (C:/Users/camer/.stm32cubemx/plugins/thirdparty/db/thirdparties_db.xml) [forced]
|
||||||
|
2020-11-05 10:47:25,670 [INFO] ThirdPartyDb:299 - Save Third Party DataBase File (C:/Users/camer/.stm32cubemx/plugins/thirdparty/db/thirdparties_db.xml) [forced]
|
||||||
|
2020-11-05 10:47:25,703 [INFO] IntegrityCheckThread:76 - exiting critical section [integrity check]
|
||||||
|
2020-11-05 10:47:25,704 [INFO] IntegrityCheckThread:79 - End integrity checks thread
|
||||||
|
2020-11-05 10:47:28,560 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS01A3' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-05 10:47:28,561 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS01A2' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-05 10:47:28,561 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS02A1' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-05 10:47:28,565 [INFO] DependencyParser:915 - This component is not compatible with the current MCU : [1604477466237]
|
||||||
|
2020-11-05 10:47:28,566 [INFO] ThirdPartyModel:556 - Component with status : MCU_INCOMPATIBLE for condition : GFX01M1_Condition id : 1604477466222
|
||||||
|
2020-11-05 10:47:28,566 [INFO] DependencyParser:915 - This component is not compatible with the current MCU : [1604477466237]
|
||||||
|
2020-11-05 10:47:28,566 [INFO] ThirdPartyModel:556 - Component with status : MCU_INCOMPATIBLE for condition : GFX01M1_HelloWorld_Condition id : 1604477466224
|
||||||
|
2020-11-05 10:47:28,568 [INFO] RtosManager:456 - Registered RTOS mode: class=CMSIS, group=RTOS, mode=CMSIS_V1, owner=FREERTOS
|
||||||
|
2020-11-05 10:47:28,569 [INFO] RtosManager:456 - Registered RTOS mode: class=CMSIS, group=RTOS2, mode=CMSIS_V2, owner=FREERTOS
|
||||||
|
2020-11-05 10:47:28,569 [INFO] RtosManager:456 - Registered RTOS mode: class=RTOS, group=Core, mode=CMSIS_V1, owner=FREERTOS
|
||||||
|
2020-11-05 10:47:28,569 [INFO] RtosManager:456 - Registered RTOS mode: class=RTOS, group=Core, mode=CMSIS_V2, owner=FREERTOS
|
||||||
|
2020-11-05 10:47:28,570 [WARN] ModelIntegratedComponent:188 - Missing modes for component 1604477487609
|
||||||
|
2020-11-05 10:47:28,572 [WARN] ApiManager:274 - Cannot register API 'Board Extension:GNSS1A1' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-05 10:47:28,573 [WARN] ApiManager:274 - Cannot register API 'Board Support:Custom' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-05 10:47:28,573 [WARN] ApiManager:274 - Cannot register API 'Data Exchange:lib_gnss' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-05 10:47:28,574 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2868A1' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-05 10:47:28,575 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2868A2' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-05 10:47:28,575 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2915A1' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-05 10:47:28,576 [WARN] ApiManager:274 - Cannot register API 'Wireless:BlueNRG-MS' from pack STMicroelectronics.X-CUBE-BLE1.6.0.0: no header file found
|
||||||
|
2020-11-05 10:47:28,577 [WARN] ApiManager:274 - Cannot register API 'Wireless:BlueNRG-2' from pack STMicroelectronics.X-CUBE-BLE2.3.0.0: no header file found
|
||||||
|
2020-11-05 10:47:29,401 [INFO] UtilMem:74 - End LoadConfig() Used Memory: 324045096 Bytes (407896064)
|
||||||
|
2020-11-05 10:47:29,403 [INFO] DbMcusXml:100 - Load MCU database from C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/mcu/families.xml
|
||||||
|
2020-11-05 10:47:30,349 [INFO] DbMcusJson:92 - JSON generation date=Wed Oct 28 11:12:07 CET 2020 (1603879927)
|
||||||
|
2020-11-05 10:47:31,451 [INFO] DbMcus:175 - Found 1761 MCUs (1722 are supported by CubeMX, 1738 are visible in CubeMX)
|
||||||
|
2020-11-05 10:47:31,451 [INFO] ApiDb:201 - Load user favorites file C:\Users\camer/.stm32cubemx/favorites.mcus.txt: 0 item(s)
|
||||||
|
2020-11-05 10:47:31,452 [INFO] ApiDb:205 - User favorites MCUs=[]
|
||||||
|
2020-11-05 10:47:31,452 [INFO] DbMcus:187 - Set 0 / 0 favorites MCUs
|
||||||
|
2020-11-05 10:47:31,455 [WARN] ThirdParty:741 - waiting for thirdparty lock release [change project]
|
||||||
|
2020-11-05 10:47:31,456 [INFO] ThirdParty:743 - entering critical section [change project]
|
||||||
|
2020-11-05 10:47:31,456 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-MEMS1 8.1.1
|
||||||
|
2020-11-05 10:47:31,456 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_HOST 2.0.0
|
||||||
|
2020-11-05 10:47:31,456 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-DISPLAY 1.0.0
|
||||||
|
2020-11-05 10:47:31,456 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics FreeRTOS 0.0.1
|
||||||
|
2020-11-05 10:47:31,457 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 1.0.0
|
||||||
|
2020-11-05 10:47:31,457 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-ALGOBUILD 1.1.0
|
||||||
|
2020-11-05 10:47:31,457 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 3.0.0
|
||||||
|
2020-11-05 10:47:31,457 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-GNSS1 5.0.0
|
||||||
|
2020-11-05 10:47:31,457 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-SUBG2 2.0.0
|
||||||
|
2020-11-05 10:47:31,457 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics MBEDTLS 2.16.2
|
||||||
|
2020-11-05 10:47:31,458 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-BLE1 6.0.0
|
||||||
|
2020-11-05 10:47:31,458 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics lwIP 2.0.3
|
||||||
|
2020-11-05 10:47:31,458 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics lwIP 2.1.2
|
||||||
|
2020-11-05 10:47:31,458 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics MBEDTLS 2.14.1
|
||||||
|
2020-11-05 10:47:31,458 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-TOUCHGFX 4.15.0
|
||||||
|
2020-11-05 10:47:31,458 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_HOST 1.0.0
|
||||||
|
2020-11-05 10:47:31,459 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-AI 5.2.0
|
||||||
|
2020-11-05 10:47:31,459 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-BLE2 3.0.0
|
||||||
|
2020-11-05 10:47:31,459 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-NFC4 2.0.0
|
||||||
|
2020-11-05 10:47:31,459 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.1.0
|
||||||
|
2020-11-05 10:47:31,459 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.2.0
|
||||||
|
2020-11-05 10:47:31,459 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 2.0.0
|
||||||
|
2020-11-05 10:47:31,459 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.3.0
|
||||||
|
2020-11-05 10:47:31,460 [INFO] ThirdParty:749 - exiting critical section [change project]
|
||||||
|
2020-11-05 10:47:32,048 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-05 10:47:32,050 [INFO] PinOutPanel:1418 - setPackage(STM32L476RGTx,LQFP64)
|
||||||
|
2020-11-05 10:47:32,912 [INFO] UtilMem:74 - Before build in PCC Used Memory: 428308864 Bytes (782237696)
|
||||||
|
2020-11-05 10:47:33,663 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-05 10:47:33,729 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-05 10:47:33,844 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-05 10:47:33,865 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-05 10:47:34,167 [INFO] UtilMem:74 - After build in PCC Used Memory: 503806336 Bytes (782237696)
|
||||||
|
2020-11-05 10:47:34,203 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,204 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,204 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,204 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,205 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,205 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,206 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,206 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,206 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,206 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,207 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,207 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,207 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,207 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,207 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,208 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,208 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,208 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,209 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,209 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,209 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,210 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,210 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,210 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,211 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,211 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,211 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,212 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,212 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,212 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,213 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,213 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,213 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,213 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,213 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,214 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,214 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,214 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,214 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,214 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,214 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,215 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,215 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,215 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,215 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,215 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,216 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,216 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,216 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,216 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,216 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,217 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,217 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,217 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,217 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,217 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,218 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,218 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,219 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-05 10:47:34,258 [INFO] LogOutputStream:76 - [STDOUT_REDIRECT] toolchainItems.length=====1
|
||||||
|
2020-11-05 10:47:34,583 [INFO] OpenFileManager:294 - Restore cursor
|
||||||
|
2020-11-16 08:11:46,827 [INFO] Activator:178 -
|
||||||
|
|
||||||
|
|
||||||
|
2020-11-16 08:11:46,832 [INFO] Activator:179 - !SESSION log4j initialized
|
||||||
|
2020-11-16 08:19:31,775 [INFO] ApplicationProperties:181 - Using Application install path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824
|
||||||
|
2020-11-16 08:19:31,794 [INFO] DbMcusXml:70 - Set database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/mcu/
|
||||||
|
2020-11-16 08:19:31,798 [INFO] DbBoardsPdsc:56 - Set plugin database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/boardmanager/
|
||||||
|
2020-11-16 08:19:31,798 [INFO] DbMcus:258 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:31,799 [INFO] DbBoards:264 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:31,802 [INFO] DbExamples:326 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:31,815 [INFO] DbMcusDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:31,817 [INFO] DbMcusJson:63 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:31,818 [INFO] DbBoardsDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:31,819 [INFO] DbBoardsJson:56 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:31,984 [INFO] CrossReferenceDbSqlite:196 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/cs/
|
||||||
|
2020-11-16 08:19:31,988 [INFO] DbExamplesSqlite:800 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,117 [INFO] RulesReader:52 - Compatibility file has been processed (209 Rules)
|
||||||
|
2020-11-16 08:19:32,286 [INFO] MicroXplorer:564 - Detected Java Version = 1.8.0_252
|
||||||
|
2020-11-16 08:19:32,286 [INFO] DbMcusXml:70 - Set database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/mcu/
|
||||||
|
2020-11-16 08:19:32,287 [INFO] DbBoardsPdsc:56 - Set plugin database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/boardmanager/
|
||||||
|
2020-11-16 08:19:32,288 [INFO] DbMcus:258 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:32,288 [INFO] DbBoards:264 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:32,288 [INFO] DbExamples:326 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:32,288 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,290 [INFO] DbMcusDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,290 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,290 [INFO] DbMcusJson:63 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,290 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,290 [INFO] DbBoardsDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,290 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,290 [INFO] DbBoardsJson:56 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,290 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,290 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,291 [INFO] CrossReferenceDbSqlite:196 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/cs/
|
||||||
|
2020-11-16 08:19:32,291 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,291 [INFO] DbExamplesSqlite:800 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,413 [INFO] MainPanel:189 - HeapMemory: 325058560
|
||||||
|
2020-11-16 08:19:32,532 [INFO] DbMcusXml:70 - Set database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/mcu/
|
||||||
|
2020-11-16 08:19:32,532 [INFO] DbBoardsPdsc:56 - Set plugin database path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/boardmanager/
|
||||||
|
2020-11-16 08:19:32,532 [INFO] DbMcus:258 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:32,533 [INFO] DbBoards:264 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:32,533 [INFO] DbExamples:326 - Set plugin images path to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/plugins/mcufinder/images/
|
||||||
|
2020-11-16 08:19:32,534 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,534 [INFO] DbMcusDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,534 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,534 [INFO] DbMcusJson:63 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,535 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,535 [INFO] DbBoardsDocs:112 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,535 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,535 [INFO] DbBoardsJson:56 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,536 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,536 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,536 [INFO] CrossReferenceDbSqlite:196 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/cs/
|
||||||
|
2020-11-16 08:19:32,536 [WARN] DbFile:36 - Overriding database path with different value: C:\Users\camer\.stmcufinder\plugins\mcufinder/ => C:\Users\camer\.stmcufinder\plugins\mcufinder
|
||||||
|
2020-11-16 08:19:32,537 [INFO] DbExamplesSqlite:800 - Set database path to: C:\Users\camer\.stmcufinder\plugins\mcufinder//mcu/
|
||||||
|
2020-11-16 08:19:32,559 [INFO] ApplicationProperties:181 - Using Application install path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824
|
||||||
|
2020-11-16 08:19:32,563 [INFO] PluginManage:178 - Search for loadable plugins [exclusion list=, ]
|
||||||
|
2020-11-16 08:19:32,566 [INFO] PluginManage:292 - Check plugin analytics
|
||||||
|
2020-11-16 08:19:32,792 [INFO] AnalyticsPlugin:203 - Accepted Software Licenses:
|
||||||
|
2020-11-16 08:19:32,794 [INFO] AnalyticsPlugin:205 - Accepted CMSIS Pack Licenses:
|
||||||
|
2020-11-16 08:19:32,794 [INFO] AnalyticsPlugin:207 - Accepted Firmware Licenses:
|
||||||
|
2020-11-16 08:19:32,795 [INFO] PluginManage:342 - Loaded plugin analytics (category:tool,tabindex:-1)
|
||||||
|
2020-11-16 08:19:32,796 [INFO] PluginManage:292 - Check plugin clock
|
||||||
|
2020-11-16 08:19:32,825 [INFO] PluginManage:342 - Loaded plugin clock (category:base,tabindex:2)
|
||||||
|
2020-11-16 08:19:32,825 [INFO] PluginManage:292 - Check plugin ddr
|
||||||
|
2020-11-16 08:19:32,828 [INFO] PluginManage:342 - Loaded plugin ddr (category:tool,tabindex:6)
|
||||||
|
2020-11-16 08:19:32,828 [INFO] PluginManage:292 - Check plugin filemanager
|
||||||
|
2020-11-16 08:19:32,982 [INFO] PluginManage:342 - Loaded plugin filemanager (category:base,tabindex:10)
|
||||||
|
2020-11-16 08:19:32,982 [INFO] PluginManage:292 - Check plugin ipmanager
|
||||||
|
2020-11-16 08:19:33,000 [INFO] PluginManage:342 - Loaded plugin ipmanager (category:base,tabindex:5)
|
||||||
|
2020-11-16 08:19:33,000 [INFO] PluginManage:292 - Check plugin pinoutandconfiguration
|
||||||
|
2020-11-16 08:19:33,021 [INFO] PluginManage:342 - Loaded plugin pinoutandconfiguration (category:base,tabindex:1)
|
||||||
|
2020-11-16 08:19:33,021 [INFO] PluginManage:292 - Check plugin pinoutconfig
|
||||||
|
2020-11-16 08:19:33,062 [INFO] PluginManage:342 - Loaded plugin pinoutconfig (category:base,tabindex:0)
|
||||||
|
2020-11-16 08:19:33,063 [INFO] PluginManage:292 - Check plugin power
|
||||||
|
2020-11-16 08:19:33,088 [INFO] PluginManage:342 - Loaded plugin power (category:power,tabindex:4)
|
||||||
|
2020-11-16 08:19:33,088 [INFO] PluginManage:292 - Check plugin projectmanager
|
||||||
|
2020-11-16 08:19:33,107 [INFO] PluginManage:342 - Loaded plugin projectmanager (category:projectmanager,tabindex:3)
|
||||||
|
2020-11-16 08:19:33,107 [INFO] PluginManage:292 - Check plugin thirdparty
|
||||||
|
2020-11-16 08:19:33,230 [INFO] ThirdPartyDb:333 - Open Third Party DataBase File (C:/Users/camer/.stm32cubemx/plugins/thirdparty/db/thirdparties_db.xml) : 36 ms. number of Sw pack : 23
|
||||||
|
2020-11-16 08:19:33,238 [INFO] PluginManage:342 - Loaded plugin thirdparty (category:base,tabindex:-1)
|
||||||
|
2020-11-16 08:19:33,238 [INFO] PluginManage:292 - Check plugin tools
|
||||||
|
2020-11-16 08:19:33,288 [INFO] PluginManage:342 - Loaded plugin tools (category:base,tabindex:7)
|
||||||
|
2020-11-16 08:19:33,288 [INFO] PluginManage:292 - Check plugin tutovideos
|
||||||
|
2020-11-16 08:19:33,569 [INFO] PluginManage:342 - Loaded plugin tutovideos (category:base,tabindex:-1)
|
||||||
|
2020-11-16 08:19:33,570 [INFO] PluginManage:292 - Check plugin updater
|
||||||
|
2020-11-16 08:19:33,589 [INFO] PluginManage:342 - Loaded plugin updater (category:base,tabindex:12)
|
||||||
|
2020-11-16 08:19:33,590 [INFO] PluginManage:265 - PluginManage : Loaded plugins [13]
|
||||||
|
2020-11-16 08:19:33,916 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-16 08:19:34,127 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,127 [INFO] PluginManager:200 - loadIPPluginJar : add adc
|
||||||
|
2020-11-16 08:19:34,159 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,159 [INFO] PluginManager:200 - loadIPPluginJar : add aes
|
||||||
|
2020-11-16 08:19:34,199 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,200 [INFO] PluginManager:200 - loadIPPluginJar : add can
|
||||||
|
2020-11-16 08:19:34,225 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,225 [INFO] PluginManager:200 - loadIPPluginJar : add comp
|
||||||
|
2020-11-16 08:19:34,253 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,254 [INFO] PluginManager:200 - loadIPPluginJar : add cryp
|
||||||
|
2020-11-16 08:19:34,285 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,286 [INFO] PluginManager:200 - loadIPPluginJar : add dfsdm
|
||||||
|
2020-11-16 08:19:34,299 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,300 [INFO] PluginManager:200 - loadIPPluginJar : add dma
|
||||||
|
2020-11-16 08:19:34,323 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,324 [INFO] PluginManager:200 - loadIPPluginJar : add fatfs
|
||||||
|
2020-11-16 08:19:34,373 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,373 [INFO] PluginManager:200 - loadIPPluginJar : add fmc
|
||||||
|
2020-11-16 08:19:34,389 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,390 [INFO] PluginManager:200 - loadIPPluginJar : add freertos
|
||||||
|
2020-11-16 08:19:34,413 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,414 [INFO] PluginManager:200 - loadIPPluginJar : add genericplugin
|
||||||
|
2020-11-16 08:19:34,494 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,495 [INFO] PluginManager:200 - loadIPPluginJar : add gfxmmu
|
||||||
|
2020-11-16 08:19:34,605 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,606 [INFO] PluginManager:200 - loadIPPluginJar : add gic
|
||||||
|
2020-11-16 08:19:34,617 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,617 [INFO] PluginManager:200 - loadIPPluginJar : add gpio
|
||||||
|
2020-11-16 08:19:34,676 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,676 [INFO] PluginManager:200 - loadIPPluginJar : add gtzc
|
||||||
|
2020-11-16 08:19:34,705 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,706 [INFO] PluginManager:200 - loadIPPluginJar : add hash
|
||||||
|
2020-11-16 08:19:34,754 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,754 [INFO] PluginManager:200 - loadIPPluginJar : add i2c
|
||||||
|
2020-11-16 08:19:34,794 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,794 [INFO] PluginManager:200 - loadIPPluginJar : add i2s
|
||||||
|
2020-11-16 08:19:34,805 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,805 [INFO] PluginManager:200 - loadIPPluginJar : add ipddr
|
||||||
|
2020-11-16 08:19:34,839 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,839 [INFO] PluginManager:200 - loadIPPluginJar : add ltdc
|
||||||
|
2020-11-16 08:19:34,850 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,851 [INFO] PluginManager:200 - loadIPPluginJar : add mdma
|
||||||
|
2020-11-16 08:19:34,863 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,864 [INFO] PluginManager:200 - loadIPPluginJar : add nvic
|
||||||
|
2020-11-16 08:19:34,898 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,898 [INFO] PluginManager:200 - loadIPPluginJar : add opamp
|
||||||
|
2020-11-16 08:19:34,955 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,955 [INFO] PluginManager:200 - loadIPPluginJar : add openamp
|
||||||
|
2020-11-16 08:19:34,997 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:34,998 [INFO] PluginManager:200 - loadIPPluginJar : add pdm2pcm
|
||||||
|
2020-11-16 08:19:35,014 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,018 [INFO] PluginManager:200 - loadIPPluginJar : add plateformsettings
|
||||||
|
2020-11-16 08:19:35,046 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,047 [INFO] PluginManager:200 - loadIPPluginJar : add quadspi
|
||||||
|
2020-11-16 08:19:35,059 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,060 [INFO] PluginManager:200 - loadIPPluginJar : add resmgrutility
|
||||||
|
2020-11-16 08:19:35,111 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,112 [INFO] PluginManager:200 - loadIPPluginJar : add sai
|
||||||
|
2020-11-16 08:19:35,152 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,152 [INFO] PluginManager:200 - loadIPPluginJar : add spi
|
||||||
|
2020-11-16 08:19:35,201 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,202 [INFO] PluginManager:200 - loadIPPluginJar : add stm32_wpan
|
||||||
|
2020-11-16 08:19:35,228 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,229 [INFO] PluginManager:200 - loadIPPluginJar : add tim
|
||||||
|
2020-11-16 08:19:35,289 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,289 [INFO] PluginManager:200 - loadIPPluginJar : add touchsensing
|
||||||
|
2020-11-16 08:19:35,314 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,314 [INFO] PluginManager:200 - loadIPPluginJar : add tracer_emb
|
||||||
|
2020-11-16 08:19:35,341 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,341 [INFO] PluginManager:200 - loadIPPluginJar : add ts
|
||||||
|
2020-11-16 08:19:35,366 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,367 [INFO] PluginManager:200 - loadIPPluginJar : add tsc
|
||||||
|
2020-11-16 08:19:35,391 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,392 [INFO] PluginManager:200 - loadIPPluginJar : add ucpd
|
||||||
|
2020-11-16 08:19:35,434 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:35,435 [INFO] PluginManager:200 - loadIPPluginJar : add usart
|
||||||
|
2020-11-16 08:19:36,408 [INFO] CubeProgrammer:457 - [DDR PANEL] - PathOfProgrammer: null
|
||||||
|
2020-11-16 08:19:37,565 [FATAL] Updater:282 - Updater called before beeing initialized
|
||||||
|
2020-11-16 08:19:37,825 [FATAL] Updater:282 - Updater called before beeing initialized
|
||||||
|
2020-11-16 08:19:37,826 [WARN] ThirdParty:775 - waiting for thirdparty lock release [close project]
|
||||||
|
2020-11-16 08:19:37,826 [INFO] ThirdParty:777 - entering critical section [close project]
|
||||||
|
2020-11-16 08:19:37,827 [INFO] ThirdParty:790 - exiting critical section [close project]
|
||||||
|
2020-11-16 08:19:37,830 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-16 08:19:37,831 [FATAL] Updater:282 - Updater called before beeing initialized
|
||||||
|
2020-11-16 08:19:37,844 [ERROR] Updater:967 - MainUpdater not yet initialized. External WinMGr cannot be set.
|
||||||
|
2020-11-16 08:19:37,845 [INFO] CubeProgrammer:457 - [DDR PANEL] - PathOfProgrammer: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_1.4.0.202007081208\tools\bin
|
||||||
|
2020-11-16 08:19:37,849 [INFO] ProgrammerExecThread:148 - [ProgrammerAPI] CubeProgrammer command construction: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_1.4.0.202007081208\tools\bin\STM32_Programmer_CLI.exe -l
|
||||||
|
2020-11-16 08:19:37,949 [INFO] MainDdrPanel:49 - [DDR PANEL] SETTER - Set cubeProgrammerPath to: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.ide.mcu.externaltools.cubeprogrammer.win32_1.4.0.202007081208\tools\bin
|
||||||
|
2020-11-16 08:19:37,959 [INFO] Updater:904 - Updater Version found : 6.0.0
|
||||||
|
2020-11-16 08:19:37,981 [INFO] ApplicationProperties:181 - Using Application install path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824
|
||||||
|
2020-11-16 08:19:38,474 [INFO] MainUpdater:2268 - connection check result : 10
|
||||||
|
2020-11-16 08:19:38,475 [INFO] MainUpdater:2935 - Updater definition file requires update
|
||||||
|
2020-11-16 08:19:38,476 [INFO] MainUpdater:239 - Updater Check For Update Now.
|
||||||
|
2020-11-16 08:19:38,477 [INFO] MicroXplorer:414 - Change Database Version : DB.6.0.0
|
||||||
|
2020-11-16 08:19:38,564 [INFO] ServerAccessManage:348 - Download File updaters.zip
|
||||||
|
2020-11-16 08:19:38,802 [INFO] FileExtend:225 - Unzip File : updaters.zip
|
||||||
|
2020-11-16 08:19:38,803 [INFO] FileExtend:240 - Standard Zip Deflate
|
||||||
|
2020-11-16 08:19:39,240 [WARN] IntegrityCheckThread:61 - waiting for thirdparty lock release [integrity check]
|
||||||
|
2020-11-16 08:19:39,240 [INFO] IntegrityCheckThread:63 - entering critical section [integrity check]
|
||||||
|
2020-11-16 08:19:39,241 [WARN] MainUpdater:1087 - Updater busy. Cannot search thirdparties
|
||||||
|
2020-11-16 08:19:40,593 [INFO] ServerAccessManage:348 - Download File PacksControlFlags.xml
|
||||||
|
2020-11-16 08:19:40,697 [INFO] ServerAccessManage:348 - Download File cubemx.pidx
|
||||||
|
2020-11-16 08:19:40,810 [INFO] LoadServerUpdatesThread:309 - End of LoadServerUpdate Thread
|
||||||
|
2020-11-16 08:19:40,856 [INFO] CheckServerUpdateThread:102 - End of CheckServer Thread
|
||||||
|
2020-11-16 08:19:40,917 [INFO] MainUpdater:2268 - connection check result : 10
|
||||||
|
2020-11-16 08:19:40,924 [INFO] MainUpdater:2268 - connection check result : 10
|
||||||
|
2020-11-16 08:19:41,146 [INFO] MicroXplorer:384 - Change Database Path :
|
||||||
|
2020-11-16 08:19:41,146 [INFO] MicroXplorer:414 - Change Database Version : DB.6.0.0
|
||||||
|
2020-11-16 08:19:41,147 [WARN] ThirdParty:775 - waiting for thirdparty lock release [close project]
|
||||||
|
2020-11-16 08:19:42,292 [INFO] ThirdPartyDb:299 - Save Third Party DataBase File (C:/Users/camer/.stm32cubemx/plugins/thirdparty/db/thirdparties_db.xml) [forced]
|
||||||
|
2020-11-16 08:19:42,367 [INFO] ThirdPartyDb:299 - Save Third Party DataBase File (C:/Users/camer/.stm32cubemx/plugins/thirdparty/db/thirdparties_db.xml) [forced]
|
||||||
|
2020-11-16 08:19:42,402 [INFO] IntegrityCheckThread:76 - exiting critical section [integrity check]
|
||||||
|
2020-11-16 08:19:42,402 [INFO] IntegrityCheckThread:79 - End integrity checks thread
|
||||||
|
2020-11-16 08:19:42,402 [INFO] ThirdParty:777 - entering critical section [close project]
|
||||||
|
2020-11-16 08:19:42,403 [INFO] ThirdParty:790 - exiting critical section [close project]
|
||||||
|
2020-11-16 08:19:42,406 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-16 08:19:42,406 [INFO] UtilMem:74 - Begin LoadConfig() Used Memory: 414331896 Bytes (789577728)
|
||||||
|
2020-11-16 08:19:42,408 [INFO] MicroXplorer:384 - Change Database Path :
|
||||||
|
2020-11-16 08:19:42,409 [INFO] MicroXplorer:414 - Change Database Version : DB.6.0.0
|
||||||
|
2020-11-16 08:19:42,409 [INFO] OpenFileManager:274 - Change cursor
|
||||||
|
2020-11-16 08:19:47,101 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS01A3' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-16 08:19:47,102 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS01A2' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-16 08:19:47,102 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS02A1' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-16 08:19:47,108 [INFO] DependencyParser:915 - This component is not compatible with the current MCU : [1604477466237]
|
||||||
|
2020-11-16 08:19:47,108 [INFO] ThirdPartyModel:556 - Component with status : MCU_INCOMPATIBLE for condition : GFX01M1_Condition id : 1604477466222
|
||||||
|
2020-11-16 08:19:47,108 [INFO] DependencyParser:915 - This component is not compatible with the current MCU : [1604477466237]
|
||||||
|
2020-11-16 08:19:47,109 [INFO] ThirdPartyModel:556 - Component with status : MCU_INCOMPATIBLE for condition : GFX01M1_HelloWorld_Condition id : 1604477466224
|
||||||
|
2020-11-16 08:19:47,110 [INFO] RtosManager:456 - Registered RTOS mode: class=CMSIS, group=RTOS, mode=CMSIS_V1, owner=FREERTOS
|
||||||
|
2020-11-16 08:19:47,110 [INFO] RtosManager:456 - Registered RTOS mode: class=CMSIS, group=RTOS2, mode=CMSIS_V2, owner=FREERTOS
|
||||||
|
2020-11-16 08:19:47,110 [INFO] RtosManager:456 - Registered RTOS mode: class=RTOS, group=Core, mode=CMSIS_V1, owner=FREERTOS
|
||||||
|
2020-11-16 08:19:47,111 [INFO] RtosManager:456 - Registered RTOS mode: class=RTOS, group=Core, mode=CMSIS_V2, owner=FREERTOS
|
||||||
|
2020-11-16 08:19:47,111 [WARN] ModelIntegratedComponent:188 - Missing modes for component 1604477487609
|
||||||
|
2020-11-16 08:19:47,112 [WARN] ApiManager:274 - Cannot register API 'Board Extension:GNSS1A1' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-16 08:19:47,112 [WARN] ApiManager:274 - Cannot register API 'Board Support:Custom' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-16 08:19:47,113 [WARN] ApiManager:274 - Cannot register API 'Data Exchange:lib_gnss' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-16 08:19:47,113 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2868A1' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-16 08:19:47,113 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2868A2' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-16 08:19:47,114 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2915A1' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-16 08:19:47,114 [WARN] ApiManager:274 - Cannot register API 'Wireless:BlueNRG-MS' from pack STMicroelectronics.X-CUBE-BLE1.6.0.0: no header file found
|
||||||
|
2020-11-16 08:19:47,116 [WARN] ApiManager:274 - Cannot register API 'Wireless:BlueNRG-2' from pack STMicroelectronics.X-CUBE-BLE2.3.0.0: no header file found
|
||||||
|
2020-11-16 08:19:47,741 [INFO] UtilMem:74 - End LoadConfig() Used Memory: 515998592 Bytes (803209216)
|
||||||
|
2020-11-16 08:19:47,743 [INFO] DbMcusXml:100 - Load MCU database from C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\/mcu/families.xml
|
||||||
|
2020-11-16 08:19:48,521 [INFO] DbMcusJson:92 - JSON generation date=Wed Oct 28 11:12:07 CET 2020 (1603879927)
|
||||||
|
2020-11-16 08:19:49,582 [INFO] DbMcus:175 - Found 1761 MCUs (1722 are supported by CubeMX, 1738 are visible in CubeMX)
|
||||||
|
2020-11-16 08:19:49,584 [INFO] ApiDb:201 - Load user favorites file C:\Users\camer/.stm32cubemx/favorites.mcus.txt: 0 item(s)
|
||||||
|
2020-11-16 08:19:49,585 [INFO] ApiDb:205 - User favorites MCUs=[]
|
||||||
|
2020-11-16 08:19:49,585 [INFO] DbMcus:187 - Set 0 / 0 favorites MCUs
|
||||||
|
2020-11-16 08:19:49,588 [WARN] ThirdParty:741 - waiting for thirdparty lock release [change project]
|
||||||
|
2020-11-16 08:19:49,588 [INFO] ThirdParty:743 - entering critical section [change project]
|
||||||
|
2020-11-16 08:19:49,588 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-MEMS1 8.1.1
|
||||||
|
2020-11-16 08:19:49,588 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_HOST 2.0.0
|
||||||
|
2020-11-16 08:19:49,589 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-DISPLAY 1.0.0
|
||||||
|
2020-11-16 08:19:49,589 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics FreeRTOS 0.0.1
|
||||||
|
2020-11-16 08:19:49,589 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 1.0.0
|
||||||
|
2020-11-16 08:19:49,589 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-ALGOBUILD 1.1.0
|
||||||
|
2020-11-16 08:19:49,589 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 3.0.0
|
||||||
|
2020-11-16 08:19:49,589 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-GNSS1 5.0.0
|
||||||
|
2020-11-16 08:19:49,589 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-SUBG2 2.0.0
|
||||||
|
2020-11-16 08:19:49,589 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics MBEDTLS 2.16.2
|
||||||
|
2020-11-16 08:19:49,590 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-BLE1 6.0.0
|
||||||
|
2020-11-16 08:19:49,590 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics lwIP 2.0.3
|
||||||
|
2020-11-16 08:19:49,590 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics lwIP 2.1.2
|
||||||
|
2020-11-16 08:19:49,590 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics MBEDTLS 2.14.1
|
||||||
|
2020-11-16 08:19:49,590 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-TOUCHGFX 4.15.0
|
||||||
|
2020-11-16 08:19:49,591 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_HOST 1.0.0
|
||||||
|
2020-11-16 08:19:49,591 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-AI 5.2.0
|
||||||
|
2020-11-16 08:19:49,591 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-BLE2 3.0.0
|
||||||
|
2020-11-16 08:19:49,591 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-NFC4 2.0.0
|
||||||
|
2020-11-16 08:19:49,591 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.1.0
|
||||||
|
2020-11-16 08:19:49,591 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.2.0
|
||||||
|
2020-11-16 08:19:49,592 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 2.0.0
|
||||||
|
2020-11-16 08:19:49,592 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.3.0
|
||||||
|
2020-11-16 08:19:49,592 [INFO] ThirdParty:749 - exiting critical section [change project]
|
||||||
|
2020-11-16 08:19:50,138 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-16 08:19:50,141 [INFO] PinOutPanel:1418 - setPackage(STM32L476RGTx,LQFP64)
|
||||||
|
2020-11-16 08:19:50,985 [INFO] UtilMem:74 - Before build in PCC Used Memory: 446657384 Bytes (881852416)
|
||||||
|
2020-11-16 08:19:51,902 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-16 08:19:51,980 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-16 08:19:52,080 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-16 08:19:52,099 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-16 08:19:52,394 [INFO] UtilMem:74 - After build in PCC Used Memory: 528972640 Bytes (881852416)
|
||||||
|
2020-11-16 08:19:52,424 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,425 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,425 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,425 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,425 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,425 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,425 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,426 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,426 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,426 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,426 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,426 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,426 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,427 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,427 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,427 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,427 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,427 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,427 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,428 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,428 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,428 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,428 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,429 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,429 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,429 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,429 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,429 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,430 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,430 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,430 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,431 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,431 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,431 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,431 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,431 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,431 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,432 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,432 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,432 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,432 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,432 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,432 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,433 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,433 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,433 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,433 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,433 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,433 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,434 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,434 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,434 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,434 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,434 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,435 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,435 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,435 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,436 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,436 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 08:19:52,493 [INFO] LogOutputStream:76 - [STDOUT_REDIRECT] toolchainItems.length=====1
|
||||||
|
2020-11-16 08:19:52,783 [INFO] OpenFileManager:294 - Restore cursor
|
||||||
|
2020-11-16 08:24:53,424 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 432910464 Bytes (881852416)
|
||||||
|
2020-11-16 08:24:55,066 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 444967048 Bytes (881852416)
|
||||||
|
2020-11-16 08:24:58,678 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 479570056 Bytes (881852416)
|
||||||
|
2020-11-16 08:24:59,354 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: SYS
|
||||||
|
2020-11-16 08:24:59,354 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: RCC
|
||||||
|
2020-11-16 08:24:59,354 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: NVIC
|
||||||
|
2020-11-16 08:24:59,354 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: GPIO
|
||||||
|
2020-11-16 08:24:59,356 [INFO] CodeGenerator:622 - code generatio: config db path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\
|
||||||
|
2020-11-16 08:24:59,885 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\license.tmp_save
|
||||||
|
2020-11-16 08:25:00,459 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\license.tmp
|
||||||
|
2020-11-16 08:25:00,651 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\gpio.tmp_save
|
||||||
|
2020-11-16 08:25:00,801 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\gpio.tmp
|
||||||
|
2020-11-16 08:25:00,913 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\stm32l4xx_it.c_save
|
||||||
|
2020-11-16 08:25:01,177 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\stm32l4xx_it.c
|
||||||
|
2020-11-16 08:25:01,236 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32l4xx_it.h_save
|
||||||
|
2020-11-16 08:25:01,396 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32l4xx_it.h
|
||||||
|
2020-11-16 08:25:01,571 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\stm32l4xx_hal_msp.c_save
|
||||||
|
2020-11-16 08:25:01,913 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\stm32l4xx_hal_msp.c
|
||||||
|
2020-11-16 08:25:01,958 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\system.tmp_save
|
||||||
|
2020-11-16 08:25:02,051 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\system.tmp
|
||||||
|
2020-11-16 08:25:02,103 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32_assert.h_save
|
||||||
|
2020-11-16 08:25:02,234 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32_assert.h
|
||||||
|
2020-11-16 08:25:02,307 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32l4xx_hal_conf.h_save
|
||||||
|
2020-11-16 08:25:02,503 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32l4xx_hal_conf.h
|
||||||
|
2020-11-16 08:25:02,587 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_LSEDRIVE_CONFIG is not available in your config.xml file
|
||||||
|
2020-11-16 08:25:02,601 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_ClockConfig is not available in your config.xml file
|
||||||
|
2020-11-16 08:25:02,601 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_MCO1Config is not available in your config.xml file
|
||||||
|
2020-11-16 08:25:02,601 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_LSCOConfig is not available in your config.xml file
|
||||||
|
2020-11-16 08:25:02,601 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_ConfigVoltageScaling is not available in your config.xml file
|
||||||
|
2020-11-16 08:25:02,602 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_interrupt_Time_SYSTICK_Config is not available in your config.xml file
|
||||||
|
2020-11-16 08:25:02,602 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_SYSTICK_CONFIG is not available in your config.xml file
|
||||||
|
2020-11-16 08:25:02,628 [WARN] IPConfigManager:2884 - IP not found : gpio
|
||||||
|
2020-11-16 08:25:02,630 [WARN] CodeGenerator:2866 - IP not found : gpio
|
||||||
|
2020-11-16 08:25:02,665 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\main.h_save
|
||||||
|
2020-11-16 08:25:02,777 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\main.h
|
||||||
|
2020-11-16 08:25:02,834 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\main.c_save
|
||||||
|
2020-11-16 08:25:03,022 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\main.c
|
||||||
|
2020-11-16 08:25:04,866 [INFO] ProjectBuilder:2168 - Time for Copy HAL[1] : 1019mS.
|
||||||
|
2020-11-16 08:25:04,874 [INFO] ProjectBuilder:2988 - Project Generator version: 3.10.0-B14
|
||||||
|
2020-11-16 08:25:05,211 [INFO] ConfigFileManager:1183 - The Die is : DIE415
|
||||||
|
2020-11-16 08:25:05,236 [INFO] ApiDbMcu:456 - Load IP Config File for FATFS
|
||||||
|
2020-11-16 08:25:05,252 [INFO] ApiDbMcu:456 - Load IP Config File for FREERTOS
|
||||||
|
2020-11-16 08:25:05,275 [INFO] ApiDbMcu:456 - Load IP Config File for TOUCHSENSING
|
||||||
|
2020-11-16 08:25:05,291 [INFO] ApiDbMcu:456 - Load IP Config File for USB_DEVICE
|
||||||
|
2020-11-16 08:25:05,306 [INFO] ApiDbMcu:456 - Load IP Config File for USB_HOST
|
||||||
|
2020-11-16 08:25:10,013 [INFO] ProjectBuilder:3155 - Time for Generating toolchain IDE Files: 5139mS.
|
||||||
|
2020-11-16 08:25:10,015 [INFO] ProjectBuilder:2044 - Time for Copy CMSIS : 1mS.
|
||||||
|
2020-11-16 08:25:10,020 [INFO] ProjectBuilder:2044 - Time for Copy CMSIS : 1mS.
|
||||||
|
2020-11-16 08:25:10,022 [INFO] ProjectBuilder:2333 - Suppression de : gpio.c
|
||||||
|
2020-11-16 08:25:10,023 [INFO] ProjectBuilder:2333 - Suppression de : gpio.h
|
||||||
|
2020-11-16 08:25:10,024 [INFO] ProjectBuilder:2333 - Suppression de : main.c
|
||||||
|
2020-11-16 08:25:10,025 [INFO] ProjectBuilder:2333 - Suppression de : stm32l4xx_hal_msp.c
|
||||||
|
2020-11-16 08:25:10,026 [INFO] ProjectBuilder:2333 - Suppression de : stm32l4xx_it.c
|
||||||
|
2020-11-16 08:25:10,027 [INFO] ProjectBuilder:2333 - Suppression de : syscalls.c
|
||||||
|
2020-11-16 08:25:10,028 [INFO] ProjectBuilder:2333 - Suppression de : sysmem.c
|
||||||
|
2020-11-16 08:25:10,029 [INFO] ProjectBuilder:2333 - Suppression de : system_stm32l4xx.c
|
||||||
|
2020-11-16 08:39:17,574 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 657017312 Bytes (1073741824)
|
||||||
|
2020-11-16 08:39:18,815 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 670407048 Bytes (1073741824)
|
||||||
|
2020-11-16 08:39:20,249 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 787451240 Bytes (1073741824)
|
||||||
|
2020-11-16 08:39:20,478 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: SYS
|
||||||
|
2020-11-16 08:39:20,478 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: RCC
|
||||||
|
2020-11-16 08:39:20,478 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: RTC
|
||||||
|
2020-11-16 08:39:20,478 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: NVIC
|
||||||
|
2020-11-16 08:39:20,478 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: GPIO
|
||||||
|
2020-11-16 08:39:20,479 [INFO] CodeGenerator:622 - code generatio: config db path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\
|
||||||
|
2020-11-16 08:39:20,692 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\license.tmp_save
|
||||||
|
2020-11-16 08:39:20,755 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\license.tmp
|
||||||
|
2020-11-16 08:39:20,790 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\gpio.tmp_save
|
||||||
|
2020-11-16 08:39:20,970 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\gpio.tmp
|
||||||
|
2020-11-16 08:39:21,011 [INFO] LogOutputStream:76 - [STDOUT_REDIRECT] Command line
|
||||||
|
2020-11-16 08:39:21,053 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\stm32l4xx_it.c_save
|
||||||
|
2020-11-16 08:39:21,194 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\stm32l4xx_it.c
|
||||||
|
2020-11-16 08:39:21,228 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32l4xx_it.h_save
|
||||||
|
2020-11-16 08:39:21,300 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32l4xx_it.h
|
||||||
|
2020-11-16 08:39:21,346 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\stm32l4xx_hal_msp.c_save
|
||||||
|
2020-11-16 08:39:21,551 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\stm32l4xx_hal_msp.c
|
||||||
|
2020-11-16 08:39:21,577 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\system.tmp_save
|
||||||
|
2020-11-16 08:39:21,639 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\MXTmpFiles\system.tmp
|
||||||
|
2020-11-16 08:39:21,670 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32_assert.h_save
|
||||||
|
2020-11-16 08:39:21,748 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32_assert.h
|
||||||
|
2020-11-16 08:39:21,796 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32l4xx_hal_conf.h_save
|
||||||
|
2020-11-16 08:39:21,930 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\stm32l4xx_hal_conf.h
|
||||||
|
2020-11-16 08:39:21,953 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_LSEDRIVE_CONFIG is not available in your config.xml file
|
||||||
|
2020-11-16 08:39:21,964 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_ClockConfig is not available in your config.xml file
|
||||||
|
2020-11-16 08:39:21,964 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_MCO1Config is not available in your config.xml file
|
||||||
|
2020-11-16 08:39:21,964 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_LSCOConfig is not available in your config.xml file
|
||||||
|
2020-11-16 08:39:21,964 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_ConfigVoltageScaling is not available in your config.xml file
|
||||||
|
2020-11-16 08:39:21,964 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_interrupt_Time_SYSTICK_Config is not available in your config.xml file
|
||||||
|
2020-11-16 08:39:21,964 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_SYSTICK_CONFIG is not available in your config.xml file
|
||||||
|
2020-11-16 08:39:21,965 [WARN] IPConfigManager:2524 - Warning: the RefConfig EnableMSIPLLMode is not available in your config.xml file
|
||||||
|
2020-11-16 08:39:21,981 [WARN] IPConfigManager:2884 - IP not found : gpio
|
||||||
|
2020-11-16 08:39:21,981 [WARN] CodeGenerator:2866 - IP not found : gpio
|
||||||
|
2020-11-16 08:39:22,024 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\main.h_save
|
||||||
|
2020-11-16 08:39:22,089 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Inc\main.h
|
||||||
|
2020-11-16 08:39:22,120 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\main.c_save
|
||||||
|
2020-11-16 08:39:22,236 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\RealOne\Core\Src\main.c
|
||||||
|
2020-11-16 08:39:22,845 [INFO] ProjectBuilder:2168 - Time for Copy HAL[1] : 217mS.
|
||||||
|
2020-11-16 08:39:22,848 [INFO] ProjectBuilder:2988 - Project Generator version: 3.10.0-B14
|
||||||
|
2020-11-16 08:39:23,721 [INFO] ConfigFileManager:1183 - The Die is : DIE415
|
||||||
|
2020-11-16 08:39:25,721 [INFO] ProjectBuilder:3155 - Time for Generating toolchain IDE Files: 2873mS.
|
||||||
|
2020-11-16 08:39:25,723 [INFO] ProjectBuilder:2044 - Time for Copy CMSIS : 1mS.
|
||||||
|
2020-11-16 08:39:25,728 [INFO] ProjectBuilder:2044 - Time for Copy CMSIS : 0mS.
|
||||||
|
2020-11-16 09:10:47,064 [INFO] MainUpdater:2268 - connection check result : 10
|
||||||
|
2020-11-16 09:10:47,064 [INFO] MainUpdater:2268 - connection check result : 10
|
||||||
|
2020-11-16 09:10:47,108 [INFO] MicroXplorer:384 - Change Database Path :
|
||||||
|
2020-11-16 09:10:47,109 [INFO] MicroXplorer:414 - Change Database Version : DB.6.0.0
|
||||||
|
2020-11-16 09:10:47,109 [WARN] ThirdParty:775 - waiting for thirdparty lock release [close project]
|
||||||
|
2020-11-16 09:10:47,109 [INFO] ThirdParty:777 - entering critical section [close project]
|
||||||
|
2020-11-16 09:10:47,109 [INFO] ThirdParty:790 - exiting critical section [close project]
|
||||||
|
2020-11-16 09:10:47,111 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-16 09:10:47,116 [INFO] UtilMem:74 - Begin LoadConfig() Used Memory: 548233944 Bytes (1073741824)
|
||||||
|
2020-11-16 09:10:47,116 [INFO] MicroXplorer:384 - Change Database Path :
|
||||||
|
2020-11-16 09:10:47,116 [INFO] MicroXplorer:414 - Change Database Version : DB.6.0.0
|
||||||
|
2020-11-16 09:10:47,116 [INFO] OpenFileManager:274 - Change cursor
|
||||||
|
2020-11-16 09:10:47,149 [INFO] RulesReader:52 - Compatibility file has been processed (209 Rules)
|
||||||
|
2020-11-16 09:10:49,676 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS01A3' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-16 09:10:49,676 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS01A2' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-16 09:10:49,676 [WARN] ApiManager:274 - Cannot register API 'Board Extension:IKS02A1' from pack STMicroelectronics.X-CUBE-MEMS1.8.1.1: no header file found
|
||||||
|
2020-11-16 09:10:49,677 [INFO] DependencyParser:915 - This component is not compatible with the current MCU : [1604477466237]
|
||||||
|
2020-11-16 09:10:49,677 [INFO] ThirdPartyModel:556 - Component with status : MCU_INCOMPATIBLE for condition : GFX01M1_Condition id : 1604477466222
|
||||||
|
2020-11-16 09:10:49,677 [INFO] DependencyParser:915 - This component is not compatible with the current MCU : [1604477466237]
|
||||||
|
2020-11-16 09:10:49,677 [INFO] ThirdPartyModel:556 - Component with status : MCU_INCOMPATIBLE for condition : GFX01M1_HelloWorld_Condition id : 1604477466224
|
||||||
|
2020-11-16 09:10:49,678 [INFO] RtosManager:456 - Registered RTOS mode: class=CMSIS, group=RTOS, mode=CMSIS_V1, owner=FREERTOS
|
||||||
|
2020-11-16 09:10:49,678 [INFO] RtosManager:456 - Registered RTOS mode: class=CMSIS, group=RTOS2, mode=CMSIS_V2, owner=FREERTOS
|
||||||
|
2020-11-16 09:10:49,678 [INFO] RtosManager:456 - Registered RTOS mode: class=RTOS, group=Core, mode=CMSIS_V1, owner=FREERTOS
|
||||||
|
2020-11-16 09:10:49,678 [INFO] RtosManager:456 - Registered RTOS mode: class=RTOS, group=Core, mode=CMSIS_V2, owner=FREERTOS
|
||||||
|
2020-11-16 09:10:49,678 [WARN] ModelIntegratedComponent:188 - Missing modes for component 1604477487609
|
||||||
|
2020-11-16 09:10:49,679 [WARN] ApiManager:274 - Cannot register API 'Board Extension:GNSS1A1' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-16 09:10:49,680 [WARN] ApiManager:274 - Cannot register API 'Board Support:Custom' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-16 09:10:49,680 [WARN] ApiManager:274 - Cannot register API 'Data Exchange:lib_gnss' from pack STMicroelectronics.X-CUBE-GNSS1.5.0.0: no header file found
|
||||||
|
2020-11-16 09:10:49,680 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2868A1' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-16 09:10:49,680 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2868A2' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-16 09:10:49,680 [WARN] ApiManager:274 - Cannot register API 'Board Extension:S2915A1' from pack STMicroelectronics.X-CUBE-SUBG2.2.0.0: no header file found
|
||||||
|
2020-11-16 09:10:49,681 [WARN] ApiManager:274 - Cannot register API 'Wireless:BlueNRG-MS' from pack STMicroelectronics.X-CUBE-BLE1.6.0.0: no header file found
|
||||||
|
2020-11-16 09:10:49,681 [WARN] ApiManager:274 - Cannot register API 'Wireless:BlueNRG-2' from pack STMicroelectronics.X-CUBE-BLE2.3.0.0: no header file found
|
||||||
|
2020-11-16 09:10:50,137 [INFO] UtilMem:74 - End LoadConfig() Used Memory: 469742800 Bytes (1073741824)
|
||||||
|
2020-11-16 09:10:50,138 [WARN] ThirdParty:741 - waiting for thirdparty lock release [change project]
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:743 - entering critical section [change project]
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-MEMS1 8.1.1
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_HOST 2.0.0
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-DISPLAY 1.0.0
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics FreeRTOS 0.0.1
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 1.0.0
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-ALGOBUILD 1.1.0
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 3.0.0
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-GNSS1 5.0.0
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-SUBG2 2.0.0
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics MBEDTLS 2.16.2
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-BLE1 6.0.0
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics lwIP 2.0.3
|
||||||
|
2020-11-16 09:10:50,139 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics lwIP 2.1.2
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics MBEDTLS 2.14.1
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-TOUCHGFX 4.15.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_HOST 1.0.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-AI 5.2.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-BLE2 3.0.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics X-CUBE-NFC4 2.0.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.1.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.2.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics USB_DEVICE 2.0.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:968 - CMSIS Pack Vendor :STMicroelectronics PDM2PCM 3.3.0
|
||||||
|
2020-11-16 09:10:50,140 [INFO] ThirdParty:749 - exiting critical section [change project]
|
||||||
|
2020-11-16 09:10:50,320 [INFO] PinOutPanel:1418 - setPackage(No Configuration,No Configuration)
|
||||||
|
2020-11-16 09:10:50,320 [INFO] PinOutPanel:1418 - setPackage(STM32L476RGTx,LQFP64)
|
||||||
|
2020-11-16 09:10:50,566 [INFO] UtilMem:74 - Before build in PCC Used Memory: 564919984 Bytes (1073741824)
|
||||||
|
2020-11-16 09:10:50,743 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-16 09:10:50,782 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-16 09:10:50,832 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-16 09:10:50,840 [INFO] SharedServices:71 - Folder for power plug-in: C:/Users/camer/.stm32cubemx/plugins/power
|
||||||
|
2020-11-16 09:10:50,909 [INFO] UtilMem:74 - After build in PCC Used Memory: 644611776 Bytes (1073741824)
|
||||||
|
2020-11-16 09:10:50,922 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,922 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,922 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,922 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,923 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,924 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,924 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,924 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,924 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,924 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,924 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,924 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,924 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,925 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,925 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,925 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,925 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,925 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,925 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,925 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,926 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,926 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,926 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,926 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,926 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,926 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,927 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,927 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,927 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,927 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,927 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,927 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,928 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,928 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,929 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,929 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,929 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,929 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,929 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,929 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,929 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,930 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,930 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,930 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,930 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,930 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,930 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,931 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,931 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,931 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:50,931 [INFO] IPUIPlugin:64 - create IPUIPlugin
|
||||||
|
2020-11-16 09:10:51,037 [INFO] OpenFileManager:294 - Restore cursor
|
||||||
|
2020-11-16 09:11:58,863 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 866615304 Bytes (1073741824)
|
||||||
|
2020-11-16 09:12:22,813 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 691612024 Bytes (1073741824)
|
||||||
|
2020-11-16 09:12:25,685 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 700848832 Bytes (1073741824)
|
||||||
|
2020-11-16 09:12:27,574 [INFO] UtilMem:74 - End SaveConfig() Used Memory: 829448600 Bytes (1073741824)
|
||||||
|
2020-11-16 09:12:27,732 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: SYS
|
||||||
|
2020-11-16 09:12:27,732 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: RCC
|
||||||
|
2020-11-16 09:12:27,732 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: RTC
|
||||||
|
2020-11-16 09:12:27,732 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: NVIC
|
||||||
|
2020-11-16 09:12:27,733 [INFO] BlockDiagram:2729 - set Specific Code input for plugin: GPIO
|
||||||
|
2020-11-16 09:12:27,733 [INFO] CodeGenerator:622 - code generatio: config db path: C:\ST\STM32CubeIDE_1.4.0\STM32CubeIDE\plugins\com.st.stm32cube.common.mx_6.0.0.202007160824\\db\
|
||||||
|
2020-11-16 09:12:27,925 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\MXTmpFiles\license.tmp_save
|
||||||
|
2020-11-16 09:12:27,981 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\MXTmpFiles\license.tmp
|
||||||
|
2020-11-16 09:12:28,026 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\MXTmpFiles\gpio.tmp_save
|
||||||
|
2020-11-16 09:12:28,100 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\MXTmpFiles\gpio.tmp
|
||||||
|
2020-11-16 09:12:28,125 [INFO] LogOutputStream:76 - [STDOUT_REDIRECT] Command line
|
||||||
|
2020-11-16 09:12:28,155 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Src\stm32l4xx_it.c_save
|
||||||
|
2020-11-16 09:12:28,264 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Src\stm32l4xx_it.c
|
||||||
|
2020-11-16 09:12:28,296 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Inc\stm32l4xx_it.h_save
|
||||||
|
2020-11-16 09:12:28,375 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Inc\stm32l4xx_it.h
|
||||||
|
2020-11-16 09:12:28,408 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Src\stm32l4xx_hal_msp.c_save
|
||||||
|
2020-11-16 09:12:28,494 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Src\stm32l4xx_hal_msp.c
|
||||||
|
2020-11-16 09:12:28,520 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\MXTmpFiles\system.tmp_save
|
||||||
|
2020-11-16 09:12:28,586 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\MXTmpFiles\system.tmp
|
||||||
|
2020-11-16 09:12:28,607 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Inc\stm32_assert.h_save
|
||||||
|
2020-11-16 09:12:28,657 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Inc\stm32_assert.h
|
||||||
|
2020-11-16 09:12:28,698 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Inc\stm32l4xx_hal_conf.h_save
|
||||||
|
2020-11-16 09:12:28,848 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Inc\stm32l4xx_hal_conf.h
|
||||||
|
2020-11-16 09:12:29,554 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_LSEDRIVE_CONFIG is not available in your config.xml file
|
||||||
|
2020-11-16 09:12:29,562 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_ClockConfig is not available in your config.xml file
|
||||||
|
2020-11-16 09:12:29,562 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_MCO1Config is not available in your config.xml file
|
||||||
|
2020-11-16 09:12:29,562 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_LSCOConfig is not available in your config.xml file
|
||||||
|
2020-11-16 09:12:29,562 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_ConfigVoltageScaling is not available in your config.xml file
|
||||||
|
2020-11-16 09:12:29,562 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_interrupt_Time_SYSTICK_Config is not available in your config.xml file
|
||||||
|
2020-11-16 09:12:29,562 [WARN] IPConfigManager:2524 - Warning: the RefConfig RCC_SYSTICK_CONFIG is not available in your config.xml file
|
||||||
|
2020-11-16 09:12:29,562 [WARN] IPConfigManager:2524 - Warning: the RefConfig EnableMSIPLLMode is not available in your config.xml file
|
||||||
|
2020-11-16 09:12:29,579 [WARN] IPConfigManager:2884 - IP not found : gpio
|
||||||
|
2020-11-16 09:12:29,580 [WARN] CodeGenerator:2866 - IP not found : gpio
|
||||||
|
2020-11-16 09:12:29,605 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Inc\main.h_save
|
||||||
|
2020-11-16 09:12:29,680 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Inc\main.h
|
||||||
|
2020-11-16 09:12:29,705 [INFO] CodeEngine:188 - oldGeneratedFile, C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Src\main.c_save
|
||||||
|
2020-11-16 09:12:29,868 [INFO] CodeEngine:206 - Generated code: C:\Users\camer\Desktop\LoPoSo\L476_ats_blink-master\Core\Src\main.c
|
||||||
|
2020-11-16 09:12:30,815 [INFO] ProjectBuilder:2168 - Time for Copy HAL[1] : 291mS.
|
||||||
|
2020-11-16 09:12:30,825 [INFO] ProjectBuilder:2988 - Project Generator version: 3.10.0-B14
|
||||||
|
2020-11-16 09:12:31,301 [INFO] ConfigFileManager:1183 - The Die is : DIE415
|
||||||
|
2020-11-16 09:12:31,309 [INFO] ApiDbMcu:456 - Load IP Config File for FATFS
|
||||||
|
2020-11-16 09:12:31,354 [INFO] ApiDbMcu:456 - Load IP Config File for FREERTOS
|
||||||
|
2020-11-16 09:12:31,542 [INFO] ApiDbMcu:456 - Load IP Config File for TOUCHSENSING
|
||||||
|
2020-11-16 09:12:31,584 [INFO] ApiDbMcu:456 - Load IP Config File for USB_DEVICE
|
||||||
|
2020-11-16 09:12:31,601 [INFO] ApiDbMcu:456 - Load IP Config File for USB_HOST
|
||||||
|
2020-11-16 09:12:33,585 [INFO] ProjectBuilder:3155 - Time for Generating toolchain IDE Files: 2760mS.
|
||||||
|
2020-11-16 09:12:33,586 [INFO] ProjectBuilder:2044 - Time for Copy CMSIS : 0mS.
|
||||||
|
2020-11-16 09:12:33,591 [INFO] ProjectBuilder:2044 - Time for Copy CMSIS : 0mS.
|
||||||
|
2020-11-17 08:14:50,695 [INFO] Activator:178 -
|
||||||
|
|
||||||
|
|
||||||
|
2020-11-17 08:14:50,700 [INFO] Activator:179 - !SESSION log4j initialized
|
0
PlaygroundYoupi/.metadata/.lock
Normal file
0
PlaygroundYoupi/.metadata/.lock
Normal file
393
PlaygroundYoupi/.metadata/.log
Normal file
393
PlaygroundYoupi/.metadata/.log
Normal file
|
@ -0,0 +1,393 @@
|
||||||
|
!SESSION 2020-11-05 10:46:28.967 -----------------------------------------------
|
||||||
|
eclipse.buildId=Version 1.4.0
|
||||||
|
java.version=1.8.0_252
|
||||||
|
java.vendor=AdoptOpenJDK
|
||||||
|
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
|
||||||
|
Framework arguments: C:\Users\camer\Desktop\LoPoSo\RealOne\.project
|
||||||
|
Command-line arguments: -os win32 -ws win32 -arch x86_64 C:\Users\camer\Desktop\LoPoSo\RealOne\.project
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.informationcenter 1 1 2020-11-05 10:46:39.282
|
||||||
|
!MESSAGE Log4j initialized with config file C:\Users\camer\Desktop\LoPoSo\PlaygroundYoupi\.metadata\.log4j.xml
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2020-11-05 10:46:41.957
|
||||||
|
!MESSAGE Started RMI Server, listening on port 41337
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.ide 4 4 2020-11-05 10:46:46.966
|
||||||
|
!MESSAGE com.st.stm32cube.ide.mcu.ide/META-INF/version/build_ref file not found, build reference will not be reported into properties
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.cdt.core 1 0 2020-11-05 10:46:54.676
|
||||||
|
!MESSAGE Indexed 'L476_ats_blink-master' (26 sources, 115 headers) in 10.2 sec: 10,517 declarations; 45,796 references; 7 unresolved inclusions; 905 syntax errors; 2,231 unresolved names (3.8%)
|
||||||
|
!SESSION 2020-11-16 08:11:37.783 -----------------------------------------------
|
||||||
|
eclipse.buildId=Version 1.4.0
|
||||||
|
java.version=1.8.0_252
|
||||||
|
java.vendor=AdoptOpenJDK
|
||||||
|
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
|
||||||
|
Command-line arguments: -os win32 -ws win32 -arch x86_64
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.informationcenter 1 1 2020-11-16 08:11:46.820
|
||||||
|
!MESSAGE Log4j initialized with config file C:\Users\camer\Desktop\LoPoSo\PlaygroundYoupi\.metadata\.log4j.xml
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2020-11-16 08:11:54.150
|
||||||
|
!MESSAGE Started RMI Server, listening on port 41337
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.ide 4 4 2020-11-16 08:11:54.815
|
||||||
|
!MESSAGE com.st.stm32cube.ide.mcu.ide/META-INF/version/build_ref file not found, build reference will not be reported into properties
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.cdt.dsf.gdb 4 104 2020-11-16 08:17:09.482
|
||||||
|
!MESSAGE Program file does not exist
|
||||||
|
!STACK 0
|
||||||
|
java.io.FileNotFoundException: C:\Users\camer\Desktop\LoPoSo\RealOne\Debug\L476_ats_blink-master.elf not found
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.LaunchUtils.verifyProgramPath(LaunchUtils.java:131)
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.GdbLaunchDelegate.checkBinaryDetails(GdbLaunchDelegate.java:315)
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.GdbLaunchDelegate.launchDebugSession(GdbLaunchDelegate.java:142)
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.GdbLaunchDelegate.launchDebugger(GdbLaunchDelegate.java:106)
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.GdbLaunchDelegate.launch(GdbLaunchDelegate.java:94)
|
||||||
|
at com.st.stm32cube.ide.mcu.debug.launch.DSFDelegate.launch(DSFDelegate.java:297)
|
||||||
|
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:860)
|
||||||
|
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:719)
|
||||||
|
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1017)
|
||||||
|
at org.eclipse.debug.internal.ui.DebugUIPlugin$2.run(DebugUIPlugin.java:1220)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
!SUBENTRY 1 org.eclipse.cdt.dsf.gdb 4 104 2020-11-16 08:17:09.482
|
||||||
|
!MESSAGE C:\Users\camer\Desktop\LoPoSo\RealOne\Debug\L476_ats_blink-master.elf not found
|
||||||
|
!STACK 0
|
||||||
|
java.io.FileNotFoundException: C:\Users\camer\Desktop\LoPoSo\RealOne\Debug\L476_ats_blink-master.elf not found
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.LaunchUtils.verifyProgramPath(LaunchUtils.java:131)
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.GdbLaunchDelegate.checkBinaryDetails(GdbLaunchDelegate.java:315)
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.GdbLaunchDelegate.launchDebugSession(GdbLaunchDelegate.java:142)
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.GdbLaunchDelegate.launchDebugger(GdbLaunchDelegate.java:106)
|
||||||
|
at org.eclipse.cdt.dsf.gdb.launching.GdbLaunchDelegate.launch(GdbLaunchDelegate.java:94)
|
||||||
|
at com.st.stm32cube.ide.mcu.debug.launch.DSFDelegate.launch(DSFDelegate.java:297)
|
||||||
|
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:860)
|
||||||
|
at org.eclipse.debug.internal.core.LaunchConfiguration.launch(LaunchConfiguration.java:719)
|
||||||
|
at org.eclipse.debug.internal.ui.DebugUIPlugin.buildAndLaunch(DebugUIPlugin.java:1017)
|
||||||
|
at org.eclipse.debug.internal.ui.DebugUIPlugin$2.run(DebugUIPlugin.java:1220)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.jface 2 0 2020-11-16 08:18:34.175
|
||||||
|
!MESSAGE Ignored reentrant call while viewer is busy. This is only logged once per viewer instance, but similar calls will still be ignored.
|
||||||
|
!STACK 0
|
||||||
|
java.lang.RuntimeException
|
||||||
|
at org.eclipse.jface.viewers.ColumnViewer.checkBusy(ColumnViewer.java:764)
|
||||||
|
at org.eclipse.jface.viewers.ColumnViewer.update(ColumnViewer.java:543)
|
||||||
|
at org.eclipse.ui.navigator.CommonViewer.update(CommonViewer.java:515)
|
||||||
|
at org.eclipse.jface.viewers.StructuredViewer.update(StructuredViewer.java:1965)
|
||||||
|
at org.eclipse.ui.internal.navigator.resources.nested.NestedProjectsLabelProvider.lambda$2(NestedProjectsLabelProvider.java:87)
|
||||||
|
at java.util.concurrent.CompletableFuture.uniAccept(CompletableFuture.java:670)
|
||||||
|
at java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:646)
|
||||||
|
at java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java:488)
|
||||||
|
at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1609)
|
||||||
|
at java.util.concurrent.CompletableFuture$AsyncSupply.exec(CompletableFuture.java:1596)
|
||||||
|
at java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:289)
|
||||||
|
at java.util.concurrent.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1056)
|
||||||
|
at java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1692)
|
||||||
|
at java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:157)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.cdt.core 1 0 2020-11-16 09:10:29.446
|
||||||
|
!MESSAGE Indexed 'RealOne' (28 sources, 118 headers) in 4.11 sec: 10,956 declarations; 53,848 references; 3 unresolved inclusions; 29 syntax errors; 171 unresolved names (0.26%)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.cdt.core 1 0 2020-11-16 09:10:39.514
|
||||||
|
!MESSAGE Indexed 'L476_ats_blink-master' (19 sources, 71 headers) in 3.09 sec: 8,614 declarations; 46,155 references; 3 unresolved inclusions; 28 syntax errors; 169 unresolved names (0.31%)
|
||||||
|
!SESSION 2020-11-17 08:14:40.899 -----------------------------------------------
|
||||||
|
eclipse.buildId=Version 1.4.0
|
||||||
|
java.version=1.8.0_252
|
||||||
|
java.vendor=AdoptOpenJDK
|
||||||
|
BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB
|
||||||
|
Command-line arguments: -os win32 -ws win32 -arch x86_64
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.informationcenter 1 1 2020-11-17 08:14:50.687
|
||||||
|
!MESSAGE Log4j initialized with config file C:\Users\camer\Desktop\LoPoSo\PlaygroundYoupi\.metadata\.log4j.xml
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.ide 1 1 2020-11-17 08:15:00.496
|
||||||
|
!MESSAGE Started RMI Server, listening on port 41337
|
||||||
|
|
||||||
|
!ENTRY com.st.stm32cube.ide.mcu.ide 4 4 2020-11-17 08:15:01.432
|
||||||
|
!MESSAGE com.st.stm32cube.ide.mcu.ide/META-INF/version/build_ref file not found, build reference will not be reported into properties
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.core.resources 4 2 2020-11-17 08:23:52.542
|
||||||
|
!MESSAGE Problems occurred when invoking code from plug-in: "org.eclipse.core.resources".
|
||||||
|
!STACK 1
|
||||||
|
org.eclipse.core.internal.resources.ResourceException: Errors occurred while refreshing resources with the local file system.
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:980)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:960)
|
||||||
|
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1552)
|
||||||
|
at com.st.stm32cube.ide.mcu.toolchain.armnone.oss.makefile.MakefileGenerator.generateMakefiles(MakefileGenerator.java:658)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1010)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:872)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:752)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:515)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:461)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:504)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:404)
|
||||||
|
at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
Contains: The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
java.lang.Exception: The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42)
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.<init>(ResourceException.java:38)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:907)
|
||||||
|
at org.eclipse.core.internal.resources.Project.updateDescription(Project.java:1336)
|
||||||
|
at org.eclipse.core.internal.resources.File.updateMetadataFiles(File.java:382)
|
||||||
|
at org.eclipse.core.internal.localstore.RefreshLocalVisitor.visit(RefreshLocalVisitor.java:291)
|
||||||
|
at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:118)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:977)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:960)
|
||||||
|
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1552)
|
||||||
|
at com.st.stm32cube.ide.mcu.toolchain.armnone.oss.makefile.MakefileGenerator.generateMakefiles(MakefileGenerator.java:658)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1010)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:872)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:752)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:515)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:461)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:504)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:404)
|
||||||
|
at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
!SUBENTRY 1 org.eclipse.core.resources 4 271 2020-11-17 08:23:52.543
|
||||||
|
!MESSAGE Errors occurred while refreshing resources with the local file system.
|
||||||
|
!SUBENTRY 2 org.eclipse.core.resources 4 567 2020-11-17 08:23:52.543
|
||||||
|
!MESSAGE The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
!STACK 0
|
||||||
|
java.lang.Exception: The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42)
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.<init>(ResourceException.java:38)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:907)
|
||||||
|
at org.eclipse.core.internal.resources.Project.updateDescription(Project.java:1336)
|
||||||
|
at org.eclipse.core.internal.resources.File.updateMetadataFiles(File.java:382)
|
||||||
|
at org.eclipse.core.internal.localstore.RefreshLocalVisitor.visit(RefreshLocalVisitor.java:291)
|
||||||
|
at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:118)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:977)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:960)
|
||||||
|
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1552)
|
||||||
|
at com.st.stm32cube.ide.mcu.toolchain.armnone.oss.makefile.MakefileGenerator.generateMakefiles(MakefileGenerator.java:658)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1010)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:872)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:752)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:515)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:461)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:504)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:404)
|
||||||
|
at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
!SUBENTRY 1 org.eclipse.core.resources 4 567 2020-11-17 08:23:52.543
|
||||||
|
!MESSAGE The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
!STACK 0
|
||||||
|
java.lang.Exception: The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42)
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.<init>(ResourceException.java:38)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:907)
|
||||||
|
at org.eclipse.core.internal.resources.Project.updateDescription(Project.java:1336)
|
||||||
|
at org.eclipse.core.internal.resources.File.updateMetadataFiles(File.java:382)
|
||||||
|
at org.eclipse.core.internal.localstore.RefreshLocalVisitor.visit(RefreshLocalVisitor.java:291)
|
||||||
|
at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:118)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:977)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:960)
|
||||||
|
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1552)
|
||||||
|
at com.st.stm32cube.ide.mcu.toolchain.armnone.oss.makefile.MakefileGenerator.generateMakefiles(MakefileGenerator.java:658)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1010)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:872)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:752)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:515)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:461)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:504)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:404)
|
||||||
|
at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.jface 2 0 2020-11-17 08:23:54.074
|
||||||
|
!MESSAGE Ignored reentrant call while viewer is busy. This is only logged once per viewer instance, but similar calls will still be ignored.
|
||||||
|
!STACK 0
|
||||||
|
java.lang.RuntimeException
|
||||||
|
at org.eclipse.jface.viewers.ColumnViewer.checkBusy(ColumnViewer.java:764)
|
||||||
|
at org.eclipse.jface.viewers.ColumnViewer.update(ColumnViewer.java:543)
|
||||||
|
at org.eclipse.ui.navigator.CommonViewer.update(CommonViewer.java:515)
|
||||||
|
at org.eclipse.jface.viewers.StructuredViewer.update(StructuredViewer.java:1965)
|
||||||
|
at org.eclipse.ui.internal.navigator.resources.nested.NestedProjectsLabelProvider.lambda$2(NestedProjectsLabelProvider.java:87)
|
||||||
|
at java.util.concurrent.CompletableFuture.uniAccept(CompletableFuture.java:670)
|
||||||
|
at java.util.concurrent.CompletableFuture$UniAccept.tryFire(CompletableFuture.java:646)
|
||||||
|
at java.util.concurrent.CompletableFuture.uniAcceptStage(CompletableFuture.java:686)
|
||||||
|
at java.util.concurrent.CompletableFuture.thenAccept(CompletableFuture.java:2010)
|
||||||
|
at org.eclipse.ui.internal.navigator.resources.nested.NestedProjectsLabelProvider.lambda$0(NestedProjectsLabelProvider.java:80)
|
||||||
|
at org.eclipse.core.internal.events.NotificationManager$1.run(NotificationManager.java:305)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.NotificationManager.notify(NotificationManager.java:295)
|
||||||
|
at org.eclipse.core.internal.events.NotificationManager.broadcastChanges(NotificationManager.java:158)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.broadcastPostChange(Workspace.java:379)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.endOperation(Workspace.java:1502)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.run(Workspace.java:2308)
|
||||||
|
at org.eclipse.core.internal.events.NotificationManager$NotifyJob.run(NotificationManager.java:44)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.core.resources 4 75 2020-11-17 08:23:58.261
|
||||||
|
!MESSAGE Errors occurred during the build.
|
||||||
|
!SUBENTRY 1 org.eclipse.cdt.managedbuilder.core 4 75 2020-11-17 08:23:58.262
|
||||||
|
!MESSAGE Errors running builder 'CDT Builder' on project 'L476_ats_blink-master'.
|
||||||
|
!STACK 1
|
||||||
|
org.eclipse.core.internal.resources.ResourceException: Errors occurred while refreshing resources with the local file system.
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:980)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:960)
|
||||||
|
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1552)
|
||||||
|
at com.st.stm32cube.ide.mcu.toolchain.armnone.oss.makefile.MakefileGenerator.generateMakefiles(MakefileGenerator.java:658)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1010)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:872)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:752)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:515)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:461)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:504)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:404)
|
||||||
|
at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
Contains: The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
java.lang.Exception: The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42)
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.<init>(ResourceException.java:38)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:907)
|
||||||
|
at org.eclipse.core.internal.resources.Project.updateDescription(Project.java:1336)
|
||||||
|
at org.eclipse.core.internal.resources.File.updateMetadataFiles(File.java:382)
|
||||||
|
at org.eclipse.core.internal.localstore.RefreshLocalVisitor.visit(RefreshLocalVisitor.java:291)
|
||||||
|
at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:118)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:977)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:960)
|
||||||
|
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1552)
|
||||||
|
at com.st.stm32cube.ide.mcu.toolchain.armnone.oss.makefile.MakefileGenerator.generateMakefiles(MakefileGenerator.java:658)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1010)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:872)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:752)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:515)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:461)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:504)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:404)
|
||||||
|
at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
!SUBENTRY 2 org.eclipse.core.resources 4 271 2020-11-17 08:23:58.262
|
||||||
|
!MESSAGE Errors occurred while refreshing resources with the local file system.
|
||||||
|
!SUBENTRY 3 org.eclipse.core.resources 4 567 2020-11-17 08:23:58.262
|
||||||
|
!MESSAGE The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
!STACK 0
|
||||||
|
java.lang.Exception: The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42)
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.<init>(ResourceException.java:38)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:907)
|
||||||
|
at org.eclipse.core.internal.resources.Project.updateDescription(Project.java:1336)
|
||||||
|
at org.eclipse.core.internal.resources.File.updateMetadataFiles(File.java:382)
|
||||||
|
at org.eclipse.core.internal.localstore.RefreshLocalVisitor.visit(RefreshLocalVisitor.java:291)
|
||||||
|
at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:118)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:977)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:960)
|
||||||
|
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1552)
|
||||||
|
at com.st.stm32cube.ide.mcu.toolchain.armnone.oss.makefile.MakefileGenerator.generateMakefiles(MakefileGenerator.java:658)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1010)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:872)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:752)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:515)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:461)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:504)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:404)
|
||||||
|
at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
!SUBENTRY 1 org.eclipse.core.resources 4 271 2020-11-17 08:23:58.262
|
||||||
|
!MESSAGE Errors occurred while refreshing resources with the local file system.
|
||||||
|
!SUBENTRY 2 org.eclipse.core.resources 4 567 2020-11-17 08:23:58.263
|
||||||
|
!MESSAGE The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
!STACK 0
|
||||||
|
java.lang.Exception: The project description file (.project) for 'L476_ats_blink-master' is missing. This file contains important information about the project. The project will not function properly until this file is restored.
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.provideStackTrace(ResourceException.java:42)
|
||||||
|
at org.eclipse.core.internal.resources.ResourceException.<init>(ResourceException.java:38)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.read(FileSystemResourceManager.java:907)
|
||||||
|
at org.eclipse.core.internal.resources.Project.updateDescription(Project.java:1336)
|
||||||
|
at org.eclipse.core.internal.resources.File.updateMetadataFiles(File.java:382)
|
||||||
|
at org.eclipse.core.internal.localstore.RefreshLocalVisitor.visit(RefreshLocalVisitor.java:291)
|
||||||
|
at org.eclipse.core.internal.localstore.UnifiedTree.accept(UnifiedTree.java:118)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refreshResource(FileSystemResourceManager.java:977)
|
||||||
|
at org.eclipse.core.internal.localstore.FileSystemResourceManager.refresh(FileSystemResourceManager.java:960)
|
||||||
|
at org.eclipse.core.internal.resources.Resource.refreshLocal(Resource.java:1552)
|
||||||
|
at com.st.stm32cube.ide.mcu.toolchain.armnone.oss.makefile.MakefileGenerator.generateMakefiles(MakefileGenerator.java:658)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1010)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:872)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:752)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:515)
|
||||||
|
at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:461)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:833)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:220)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:263)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:316)
|
||||||
|
at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:45)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:319)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:371)
|
||||||
|
at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:392)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.buildInternal(Workspace.java:504)
|
||||||
|
at org.eclipse.core.internal.resources.Workspace.build(Workspace.java:404)
|
||||||
|
at org.eclipse.ui.actions.GlobalBuildAction$1.run(GlobalBuildAction.java:180)
|
||||||
|
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63)
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.ui.ide 2 4 2020-11-17 08:24:19.592
|
||||||
|
!MESSAGE Problems occurred closing the selected resources.
|
||||||
|
!SUBENTRY 1 org.eclipse.core.resources 2 234 2020-11-17 08:24:19.592
|
||||||
|
!MESSAGE The project description file (.project) for 'L476_ats_blink-master' was missing. This file contains important information about the project. A new project description file has been created, but some information about the project may have been lost.
|
||||||
|
|
||||||
|
!ENTRY org.eclipse.cdt.core 1 0 2020-11-17 09:17:55.325
|
||||||
|
!MESSAGE Indexed 'RealOne' (28 sources, 118 headers) in 5.04 sec: 10,966 declarations; 53,931 references; 3 unresolved inclusions; 29 syntax errors; 171 unresolved names (0.26%)
|
18
PlaygroundYoupi/.metadata/.log4j.xml
Normal file
18
PlaygroundYoupi/.metadata/.log4j.xml
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
|
||||||
|
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
|
||||||
|
<appender name="DEBUGFILE" class="org.apache.log4j.RollingFileAppender">
|
||||||
|
<param name="Append" value="true"/>
|
||||||
|
<param name="File" value="C:/Users/camer/Desktop/LoPoSo/PlaygroundYoupi/.metadata/.ide.log"/>
|
||||||
|
<param name="MaxBackupIndex" value="1"/>
|
||||||
|
<param name="MaxFileSize" value="50MB"/>
|
||||||
|
<param name="Threshold" value="INFO"/>
|
||||||
|
<layout class="org.apache.log4j.PatternLayout">
|
||||||
|
<param name="ConversionPattern" value="%d{yyyy-MM-dd HH:mm:ss,SSS} [%p] %c{1}:%L - %m%n"/>
|
||||||
|
</layout>
|
||||||
|
</appender>
|
||||||
|
<root>
|
||||||
|
<level value="ALL"/>
|
||||||
|
<appender-ref ref="DEBUGFILE"/>
|
||||||
|
</root>
|
||||||
|
</log4j:configuration>
|
|
@ -0,0 +1,2 @@
|
||||||
|
*** SESSION Nov 05, 2020 10:46:36.34 -------------------------------------------
|
||||||
|
*** SESSION Nov 16, 2020 08:11:47.28 -------------------------------------------
|
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
@ -0,0 +1 @@
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
|
|
@ -0,0 +1,5 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<section name="Workbench">
|
||||||
|
<section name="org.eclipse.cdt.internal.ui.MakeView">
|
||||||
|
</section>
|
||||||
|
</section>
|
|
@ -0,0 +1,10 @@
|
||||||
|
10:05:36 **** Incremental Build of configuration Debug for project L476_ats_blink-master ****
|
||||||
|
make -j8 all
|
||||||
|
arm-none-eabi-size L476_ats_blink-master.elf
|
||||||
|
text data bss dec hex filename
|
||||||
|
3648 20 1604 5272 1498 L476_ats_blink-master.elf
|
||||||
|
Finished building: default.size.stdout
|
||||||
|
|
||||||
|
|
||||||
|
10:05:37 Build Finished. 0 errors, 0 warnings. (took 260ms)
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
09:25:41 **** Incremental Build of configuration Debug for project RealOne ****
|
||||||
|
make -j8 all
|
||||||
|
arm-none-eabi-size RealOne.elf
|
||||||
|
text data bss dec hex filename
|
||||||
|
3632 24 1576 5232 1470 RealOne.elf
|
||||||
|
Finished building: default.size.stdout
|
||||||
|
|
||||||
|
|
||||||
|
09:25:41 Build Finished. 0 errors, 0 warnings. (took 325ms)
|
||||||
|
|
|
@ -0,0 +1,11 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<section name="Workbench">
|
||||||
|
<section name="completion_proposal_size">
|
||||||
|
</section>
|
||||||
|
<section name="org.eclipse.cdt.ui.text.hover.CMacroExpansionExploration">
|
||||||
|
</section>
|
||||||
|
<section name="org.eclipse.cdt.ui.text.hover.CMacroExpansionExploration.internal">
|
||||||
|
<item key="size.width" value="586"/>
|
||||||
|
<item key="size.height" value="180"/>
|
||||||
|
</section>
|
||||||
|
</section>
|
|
@ -0,0 +1,156 @@
|
||||||
|
09:17:11 **** Incremental Build of configuration Debug for project RealOne ****
|
||||||
|
make -j8 all
|
||||||
|
arm-none-eabi-size RealOne.elf
|
||||||
|
text data bss dec hex filename
|
||||||
|
3576 24 1576 5176 1438 RealOne.elf
|
||||||
|
Finished building: default.size.stdout
|
||||||
|
|
||||||
|
09:21:41 **** Build of configuration Debug for project RealOne ****
|
||||||
|
make -j8 all
|
||||||
|
arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 '-DHSE_VALUE=8000000' '-DMSI_VALUE=4000000' '-DLSI_VALUE=32000' '-DHSE_STARTUP_TIMEOUT=100' '-DHSI_VALUE=16000000' -DDEBUG '-DLSE_STARTUP_TIMEOUT=5000' '-DLSE_VALUE=32768' '-DDATA_CACHE_ENABLE=1' -DUSE_HAL_DRIVER '-DVDD_VALUE=3300' '-DINSTRUCTION_CACHE_ENABLE=1' '-DEXTERNALSAI2_CLOCK_VALUE=2097000' -DSTM32L476xx -DUSE_FULL_LL_DRIVER '-DEXTERNALSAI1_CLOCK_VALUE=2097000' '-DPREFETCH_ENABLE=0' -c -I../Core/Inc -I../Drivers/STM32L4xx_HAL_Driver/Inc -I../Drivers/CMSIS/Device/ST/STM32L4xx/Include -I../Drivers/CMSIS/Include -I../Drivers/STM32L4xx_HAL_Driver/Inc/Legacy -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/main.d" -MT"Core/Src/main.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/main.o"
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:183:0: warning: "VDD_VALUE" redefined
|
||||||
|
#define VDD_VALUE 3300U /*!< Value of VDD in mv */
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:186:0: warning: "PREFETCH_ENABLE" redefined
|
||||||
|
#define PREFETCH_ENABLE 0U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:187:0: warning: "INSTRUCTION_CACHE_ENABLE" redefined
|
||||||
|
#define INSTRUCTION_CACHE_ENABLE 1U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:188:0: warning: "DATA_CACHE_ENABLE" redefined
|
||||||
|
#define DATA_CACHE_ENABLE 1U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
arm-none-eabi-gcc -o "RealOne.elf" @"objects.list" -mcpu=cortex-m4 -T"C:\Users\camer\Desktop\LoPoSo\RealOne\STM32L476RGTX_FLASH.ld" --specs=nosys.specs -Wl,-Map="RealOne.map" -Wl,--gc-sections -static --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -Wl,--start-group -lc -lm -Wl,--end-group
|
||||||
|
Finished building target: RealOne.elf
|
||||||
|
|
||||||
|
arm-none-eabi-objdump -h -S RealOne.elf > "RealOne.list"
|
||||||
|
arm-none-eabi-objcopy -O binary RealOne.elf "RealOne.bin"
|
||||||
|
arm-none-eabi-size RealOne.elf
|
||||||
|
text data bss dec hex filename
|
||||||
|
3576 24 1576 5176 1438 RealOne.elf
|
||||||
|
Finished building: default.size.stdout
|
||||||
|
|
||||||
|
Finished building: RealOne.bin
|
||||||
|
Finished building: RealOne.list
|
||||||
|
|
||||||
|
|
||||||
|
09:21:44 **** Incremental Build of configuration Debug for project RealOne ****
|
||||||
|
make -j8 all
|
||||||
|
arm-none-eabi-size RealOne.elf
|
||||||
|
text data bss dec hex filename
|
||||||
|
3576 24 1576 5176 1438 RealOne.elf
|
||||||
|
Finished building: default.size.stdout
|
||||||
|
|
||||||
|
09:23:47 **** Incremental Build of configuration Debug for project RealOne ****
|
||||||
|
make -j8 all
|
||||||
|
arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 '-DHSE_VALUE=8000000' '-DMSI_VALUE=4000000' '-DLSI_VALUE=32000' '-DHSE_STARTUP_TIMEOUT=100' '-DHSI_VALUE=16000000' -DDEBUG '-DLSE_STARTUP_TIMEOUT=5000' '-DLSE_VALUE=32768' '-DDATA_CACHE_ENABLE=1' -DUSE_HAL_DRIVER '-DVDD_VALUE=3300' '-DINSTRUCTION_CACHE_ENABLE=1' '-DEXTERNALSAI2_CLOCK_VALUE=2097000' -DSTM32L476xx -DUSE_FULL_LL_DRIVER '-DEXTERNALSAI1_CLOCK_VALUE=2097000' '-DPREFETCH_ENABLE=0' -c -I../Core/Inc -I../Drivers/STM32L4xx_HAL_Driver/Inc -I../Drivers/CMSIS/Device/ST/STM32L4xx/Include -I../Drivers/CMSIS/Include -I../Drivers/STM32L4xx_HAL_Driver/Inc/Legacy -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/main.d" -MT"Core/Src/main.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/main.o"
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:183:0: warning: "VDD_VALUE" redefined
|
||||||
|
#define VDD_VALUE 3300U /*!< Value of VDD in mv */
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:186:0: warning: "PREFETCH_ENABLE" redefined
|
||||||
|
#define PREFETCH_ENABLE 0U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:187:0: warning: "INSTRUCTION_CACHE_ENABLE" redefined
|
||||||
|
#define INSTRUCTION_CACHE_ENABLE 1U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:188:0: warning: "DATA_CACHE_ENABLE" redefined
|
||||||
|
#define DATA_CACHE_ENABLE 1U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
arm-none-eabi-gcc -o "RealOne.elf" @"objects.list" -mcpu=cortex-m4 -T"C:\Users\camer\Desktop\LoPoSo\RealOne\STM32L476RGTX_FLASH.ld" --specs=nosys.specs -Wl,-Map="RealOne.map" -Wl,--gc-sections -static --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -Wl,--start-group -lc -lm -Wl,--end-group
|
||||||
|
Finished building target: RealOne.elf
|
||||||
|
|
||||||
|
arm-none-eabi-objdump -h -S RealOne.elf > "RealOne.list"
|
||||||
|
arm-none-eabi-objcopy -O binary RealOne.elf "RealOne.bin"
|
||||||
|
arm-none-eabi-size RealOne.elf
|
||||||
|
text data bss dec hex filename
|
||||||
|
3576 24 1576 5176 1438 RealOne.elf
|
||||||
|
Finished building: default.size.stdout
|
||||||
|
|
||||||
|
Finished building: RealOne.bin
|
||||||
|
Finished building: RealOne.list
|
||||||
|
|
||||||
|
|
||||||
|
09:25:15 **** Incremental Build of configuration Debug for project RealOne ****
|
||||||
|
make -j8 all
|
||||||
|
arm-none-eabi-gcc "../Core/Src/main.c" -mcpu=cortex-m4 -std=gnu11 -g3 '-DHSE_VALUE=8000000' '-DMSI_VALUE=4000000' '-DLSI_VALUE=32000' '-DHSE_STARTUP_TIMEOUT=100' '-DHSI_VALUE=16000000' -DDEBUG '-DLSE_STARTUP_TIMEOUT=5000' '-DLSE_VALUE=32768' '-DDATA_CACHE_ENABLE=1' -DUSE_HAL_DRIVER '-DVDD_VALUE=3300' '-DINSTRUCTION_CACHE_ENABLE=1' '-DEXTERNALSAI2_CLOCK_VALUE=2097000' -DSTM32L476xx -DUSE_FULL_LL_DRIVER '-DEXTERNALSAI1_CLOCK_VALUE=2097000' '-DPREFETCH_ENABLE=0' -c -I../Core/Inc -I../Drivers/STM32L4xx_HAL_Driver/Inc -I../Drivers/CMSIS/Device/ST/STM32L4xx/Include -I../Drivers/CMSIS/Include -I../Drivers/STM32L4xx_HAL_Driver/Inc/Legacy -O0 -ffunction-sections -fdata-sections -Wall -fstack-usage -MMD -MP -MF"Core/Src/main.d" -MT"Core/Src/main.o" --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -o "Core/Src/main.o"
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:183:0: warning: "VDD_VALUE" redefined
|
||||||
|
#define VDD_VALUE 3300U /*!< Value of VDD in mv */
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:186:0: warning: "PREFETCH_ENABLE" redefined
|
||||||
|
#define PREFETCH_ENABLE 0U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:187:0: warning: "INSTRUCTION_CACHE_ENABLE" redefined
|
||||||
|
#define INSTRUCTION_CACHE_ENABLE 1U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
In file included from ../Drivers/STM32L4xx_HAL_Driver/Inc/stm32l4xx_hal.h:30:0,
|
||||||
|
from ../Core/Inc/main.h:31,
|
||||||
|
from ../Core/Src/main.c:8:
|
||||||
|
../Core/Inc/stm32l4xx_hal_conf.h:188:0: warning: "DATA_CACHE_ENABLE" redefined
|
||||||
|
#define DATA_CACHE_ENABLE 1U
|
||||||
|
|
||||||
|
<command-line>:0:0: note: this is the location of the previous definition
|
||||||
|
arm-none-eabi-gcc -o "RealOne.elf" @"objects.list" -mcpu=cortex-m4 -T"C:\Users\camer\Desktop\LoPoSo\RealOne\STM32L476RGTX_FLASH.ld" --specs=nosys.specs -Wl,-Map="RealOne.map" -Wl,--gc-sections -static --specs=nano.specs -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -Wl,--start-group -lc -lm -Wl,--end-group
|
||||||
|
Finished building target: RealOne.elf
|
||||||
|
|
||||||
|
arm-none-eabi-objdump -h -S RealOne.elf > "RealOne.list"
|
||||||
|
arm-none-eabi-objcopy -O binary RealOne.elf "RealOne.bin"
|
||||||
|
arm-none-eabi-size RealOne.elf
|
||||||
|
text data bss dec hex filename
|
||||||
|
3632 24 1576 5232 1470 RealOne.elf
|
||||||
|
Finished building: default.size.stdout
|
||||||
|
|
||||||
|
Finished building: RealOne.bin
|
||||||
|
|
||||||
|
Finished building: RealOne.list
|
||||||
|
|
||||||
|
09:25:41 **** Incremental Build of configuration Debug for project RealOne ****
|
||||||
|
make -j8 all
|
||||||
|
arm-none-eabi-size RealOne.elf
|
||||||
|
text data bss dec hex filename
|
||||||
|
3632 24 1576 5232 1470 RealOne.elf
|
||||||
|
Finished building: default.size.stdout
|
||||||
|
|
|
@ -0,0 +1,143 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 2;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
//void SystemClock_Config(void);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,219 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Init_LSE(void){
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,214 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
expe = 1;
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
LL_PWR_DisableBkUpAccess();
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,214 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
expe = 1;
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
LL_PWR_DisableBkUpAccess();
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,214 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
expe = 1;
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
LL_PWR_DisableBkUpAccess();
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,117 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "stm32l4xx_ll_bus.h"
|
||||||
|
#include "stm32l4xx_ll_rcc.h"
|
||||||
|
#include "stm32l4xx_ll_system.h"
|
||||||
|
#include "stm32l4xx_ll_utils.h"
|
||||||
|
#include "stm32l4xx_ll_gpio.h"
|
||||||
|
#include "stm32l4xx_ll_cortex.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
//void SystemClock_Config(void);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
__WFI();
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* The system Clock is configured as follows :
|
||||||
|
* System Clock source = PLL (MSI)
|
||||||
|
* SYSCLK(Hz) = 80000000
|
||||||
|
* HCLK(Hz) = 80000000
|
||||||
|
* AHB Prescaler = 1
|
||||||
|
* APB1 Prescaler = 1
|
||||||
|
* APB2 Prescaler = 1
|
||||||
|
* MSI Frequency(Hz) = 4000000
|
||||||
|
* PLL_M = 1
|
||||||
|
* PLL_N = 40
|
||||||
|
* PLL_R = 2
|
||||||
|
* Flash Latency(WS) = 4
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void) {
|
||||||
|
/* MSI configuration and activation */
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
while (LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{ };
|
||||||
|
|
||||||
|
/* Main PLL configuration and activation */
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{ };
|
||||||
|
|
||||||
|
/* Sysclk activation on the main PLL */
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{ };
|
||||||
|
|
||||||
|
/* Set APB1 & APB2 prescaler*/
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
|
||||||
|
/* Update the global variable called SystemCoreClock */
|
||||||
|
SystemCoreClockUpdate();
|
||||||
|
}
|
|
@ -0,0 +1,132 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
//void SystemClock_Config(void);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
__WFI();
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,142 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 2;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config(void);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,132 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
//void SystemClock_Config(void);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
__WFI();
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,215 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 1;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
// if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
//
|
||||||
|
// //expe = register RTC
|
||||||
|
// expe = RTC->BKP0R;
|
||||||
|
// if (expe == 0){
|
||||||
|
// expe = 1;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
// expe ++;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// }else{
|
||||||
|
// SystemClock_Config_24M_LSE();
|
||||||
|
// expe = 1;
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// LL_PWR_DisableBkUpAccess();
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,215 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 1;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
// if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
//
|
||||||
|
// //expe = register RTC
|
||||||
|
// expe = RTC->BKP0R;
|
||||||
|
// if (expe == 0){
|
||||||
|
// expe = 1;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
// expe ++;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// }else{
|
||||||
|
// SystemClock_Config_24M_LSE();
|
||||||
|
// expe = 1;
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// LL_PWR_DisableBkUpAccess();
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,203 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
//expe = register RTC
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
//save RTC
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
//save RTC
|
||||||
|
}
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,137 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "stm32l4xx_ll_bus.h"
|
||||||
|
#include "stm32l4xx_ll_rcc.h"
|
||||||
|
#include "stm32l4xx_ll_system.h"
|
||||||
|
#include "stm32l4xx_ll_utils.h"
|
||||||
|
#include "stm32l4xx_ll_gpio.h"
|
||||||
|
#include "stm32l4xx_ll_cortex.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
//void SystemClock_Config(void);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
__WFI();
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,215 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 2;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
// if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
//
|
||||||
|
// //expe = register RTC
|
||||||
|
// expe = RTC->BKP0R;
|
||||||
|
// if (expe == 0){
|
||||||
|
// expe = 1;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
// expe ++;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// }else{
|
||||||
|
// SystemClock_Config_24M_LSE();
|
||||||
|
// expe = 1;
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// LL_PWR_DisableBkUpAccess();
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,219 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC_BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC_BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC_BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Init_LSE(void){
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,81 @@
|
||||||
|
/* USER CODE BEGIN Header */
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file : main.h
|
||||||
|
* @brief : Header for main.c file.
|
||||||
|
* This file contains the common defines of the application.
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* <h2><center>© Copyright (c) 2020 STMicroelectronics.
|
||||||
|
* All rights reserved.</center></h2>
|
||||||
|
*
|
||||||
|
* This software component is licensed by ST under BSD 3-Clause license,
|
||||||
|
* the "License"; You may not use this file except in compliance with the
|
||||||
|
* License. You may obtain a copy of the License at:
|
||||||
|
* opensource.org/licenses/BSD-3-Clause
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
/* USER CODE END Header */
|
||||||
|
|
||||||
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||||
|
#ifndef __MAIN_H
|
||||||
|
#define __MAIN_H
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "stm32l4xx_hal.h"
|
||||||
|
#include "stm32l4xx_ll_crs.h"
|
||||||
|
#include "stm32l4xx_ll_rcc.h"
|
||||||
|
#include "stm32l4xx_ll_bus.h"
|
||||||
|
#include "stm32l4xx_ll_system.h"
|
||||||
|
#include "stm32l4xx_ll_exti.h"
|
||||||
|
#include "stm32l4xx_ll_cortex.h"
|
||||||
|
#include "stm32l4xx_ll_utils.h"
|
||||||
|
#include "stm32l4xx_ll_pwr.h"
|
||||||
|
#include "stm32l4xx_ll_dma.h"
|
||||||
|
#include "stm32l4xx_ll_gpio.h"
|
||||||
|
|
||||||
|
/* Private includes ----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Includes */
|
||||||
|
|
||||||
|
/* USER CODE END Includes */
|
||||||
|
|
||||||
|
/* Exported types ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN ET */
|
||||||
|
|
||||||
|
/* USER CODE END ET */
|
||||||
|
|
||||||
|
/* Exported constants --------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN EC */
|
||||||
|
|
||||||
|
/* USER CODE END EC */
|
||||||
|
|
||||||
|
/* Exported macro ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN EM */
|
||||||
|
|
||||||
|
/* USER CODE END EM */
|
||||||
|
|
||||||
|
/* Exported functions prototypes ---------------------------------------------*/
|
||||||
|
void Error_Handler(void);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN EFP */
|
||||||
|
|
||||||
|
/* USER CODE END EFP */
|
||||||
|
|
||||||
|
/* Private defines -----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Private defines */
|
||||||
|
|
||||||
|
/* USER CODE END Private defines */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __MAIN_H */
|
||||||
|
|
||||||
|
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|
|
@ -0,0 +1,81 @@
|
||||||
|
/* USER CODE BEGIN Header */
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file : main.h
|
||||||
|
* @brief : Header for main.c file.
|
||||||
|
* This file contains the common defines of the application.
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* <h2><center>© Copyright (c) 2020 STMicroelectronics.
|
||||||
|
* All rights reserved.</center></h2>
|
||||||
|
*
|
||||||
|
* This software component is licensed by ST under BSD 3-Clause license,
|
||||||
|
* the "License"; You may not use this file except in compliance with the
|
||||||
|
* License. You may obtain a copy of the License at:
|
||||||
|
* opensource.org/licenses/BSD-3-Clause
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
/* USER CODE END Header */
|
||||||
|
|
||||||
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||||
|
#ifndef __MAIN_H
|
||||||
|
#define __MAIN_H
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "stm32l4xx_hal.h"
|
||||||
|
#include "stm32l4xx_ll_crs.h"
|
||||||
|
#include "stm32l4xx_ll_rcc.h"
|
||||||
|
#include "stm32l4xx_ll_bus.h"
|
||||||
|
#include "stm32l4xx_ll_system.h"
|
||||||
|
#include "stm32l4xx_ll_exti.h"
|
||||||
|
#include "stm32l4xx_ll_cortex.h"
|
||||||
|
#include "stm32l4xx_ll_utils.h"
|
||||||
|
#include "stm32l4xx_ll_pwr.h"
|
||||||
|
#include "stm32l4xx_ll_dma.h"
|
||||||
|
#include "stm32l4xx_ll_gpio.h"
|
||||||
|
|
||||||
|
/* Private includes ----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Includes */
|
||||||
|
#include "gpio.h"
|
||||||
|
/* USER CODE END Includes */
|
||||||
|
|
||||||
|
/* Exported types ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN ET */
|
||||||
|
|
||||||
|
/* USER CODE END ET */
|
||||||
|
|
||||||
|
/* Exported constants --------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN EC */
|
||||||
|
|
||||||
|
/* USER CODE END EC */
|
||||||
|
|
||||||
|
/* Exported macro ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN EM */
|
||||||
|
|
||||||
|
/* USER CODE END EM */
|
||||||
|
|
||||||
|
/* Exported functions prototypes ---------------------------------------------*/
|
||||||
|
void Error_Handler(void);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN EFP */
|
||||||
|
|
||||||
|
/* USER CODE END EFP */
|
||||||
|
|
||||||
|
/* Private defines -----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Private defines */
|
||||||
|
|
||||||
|
/* USER CODE END Private defines */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __MAIN_H */
|
||||||
|
|
||||||
|
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|
|
@ -0,0 +1,221 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
Init_LSE();
|
||||||
|
expe = 1;
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
LL_PWR_DisableBkUpAccess();
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,214 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
expe = 1;
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
LL_PWR_DisableBkUpAccess();
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,223 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
Init_LSE();
|
||||||
|
expe = 1;
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
LL_PWR_DisableBkUpAccess();
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void Init_LSE(void){
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,215 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 2;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
// if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
//
|
||||||
|
// //expe = register RTC
|
||||||
|
// expe = RTC->BKP0R;
|
||||||
|
// if (expe == 0){
|
||||||
|
// expe = 1;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
// expe ++;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// }else{
|
||||||
|
// SystemClock_Config_24M_LSE();
|
||||||
|
// expe = 1;
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// LL_PWR_DisableBkUpAccess();
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,203 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
//expe = register RTC
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
//save RTC
|
||||||
|
}else if (expe /= 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
//save RTC
|
||||||
|
}
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,204 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
//save RTC
|
||||||
|
}else if (expe /= 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
//save RTC
|
||||||
|
}
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,204 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
//expe = registre RTC
|
||||||
|
//if expe == 0 => expe = 1 storer dans RTC
|
||||||
|
//if expe /= 0 and BLUE_BUTTON() expe ++ and save RTC
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,81 @@
|
||||||
|
/* USER CODE BEGIN Header */
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file : main.h
|
||||||
|
* @brief : Header for main.c file.
|
||||||
|
* This file contains the common defines of the application.
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* <h2><center>© Copyright (c) 2020 STMicroelectronics.
|
||||||
|
* All rights reserved.</center></h2>
|
||||||
|
*
|
||||||
|
* This software component is licensed by ST under BSD 3-Clause license,
|
||||||
|
* the "License"; You may not use this file except in compliance with the
|
||||||
|
* License. You may obtain a copy of the License at:
|
||||||
|
* opensource.org/licenses/BSD-3-Clause
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
/* USER CODE END Header */
|
||||||
|
|
||||||
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||||
|
#ifndef __MAIN_H
|
||||||
|
#define __MAIN_H
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "stm32l4xx_hal.h"
|
||||||
|
#include "stm32l4xx_ll_crs.h"
|
||||||
|
#include "stm32l4xx_ll_rcc.h"
|
||||||
|
#include "stm32l4xx_ll_bus.h"
|
||||||
|
#include "stm32l4xx_ll_system.h"
|
||||||
|
#include "stm32l4xx_ll_exti.h"
|
||||||
|
#include "stm32l4xx_ll_cortex.h"
|
||||||
|
#include "stm32l4xx_ll_utils.h"
|
||||||
|
#include "stm32l4xx_ll_pwr.h"
|
||||||
|
#include "stm32l4xx_ll_dma.h"
|
||||||
|
#include "stm32l4xx_ll_gpio.h"
|
||||||
|
|
||||||
|
/* Private includes ----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Includes */
|
||||||
|
#include "../Src/gpio.h"
|
||||||
|
/* USER CODE END Includes */
|
||||||
|
|
||||||
|
/* Exported types ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN ET */
|
||||||
|
|
||||||
|
/* USER CODE END ET */
|
||||||
|
|
||||||
|
/* Exported constants --------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN EC */
|
||||||
|
|
||||||
|
/* USER CODE END EC */
|
||||||
|
|
||||||
|
/* Exported macro ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN EM */
|
||||||
|
|
||||||
|
/* USER CODE END EM */
|
||||||
|
|
||||||
|
/* Exported functions prototypes ---------------------------------------------*/
|
||||||
|
void Error_Handler(void);
|
||||||
|
|
||||||
|
/* USER CODE BEGIN EFP */
|
||||||
|
|
||||||
|
/* USER CODE END EFP */
|
||||||
|
|
||||||
|
/* Private defines -----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Private defines */
|
||||||
|
|
||||||
|
/* USER CODE END Private defines */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __MAIN_H */
|
||||||
|
|
||||||
|
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|
|
@ -0,0 +1,215 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
expe = 1;
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
LL_PWR_DisableBkUpAccess();
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,203 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
//expe = register RTC
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
//save RTC
|
||||||
|
}else if (expe /= 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
//save RTC
|
||||||
|
}
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,143 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 2;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config(void);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,252 @@
|
||||||
|
/* USER CODE BEGIN Header */
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file : main.c
|
||||||
|
* @brief : Main program body
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* <h2><center>© Copyright (c) 2020 STMicroelectronics.
|
||||||
|
* All rights reserved.</center></h2>
|
||||||
|
*
|
||||||
|
* This software component is licensed by ST under BSD 3-Clause license,
|
||||||
|
* the "License"; You may not use this file except in compliance with the
|
||||||
|
* License. You may obtain a copy of the License at:
|
||||||
|
* opensource.org/licenses/BSD-3-Clause
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
/* USER CODE END Header */
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
|
||||||
|
/* Private includes ----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Includes */
|
||||||
|
|
||||||
|
/* USER CODE END Includes */
|
||||||
|
|
||||||
|
/* Private typedef -----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN PTD */
|
||||||
|
|
||||||
|
/* USER CODE END PTD */
|
||||||
|
|
||||||
|
/* Private define ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN PD */
|
||||||
|
/* USER CODE END PD */
|
||||||
|
|
||||||
|
/* Private macro -------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN PM */
|
||||||
|
|
||||||
|
/* USER CODE END PM */
|
||||||
|
|
||||||
|
/* Private variables ---------------------------------------------------------*/
|
||||||
|
RTC_HandleTypeDef hrtc;
|
||||||
|
|
||||||
|
/* USER CODE BEGIN PV */
|
||||||
|
|
||||||
|
/* USER CODE END PV */
|
||||||
|
|
||||||
|
/* Private function prototypes -----------------------------------------------*/
|
||||||
|
void SystemClock_Config(void);
|
||||||
|
static void MX_GPIO_Init(void);
|
||||||
|
static void MX_RTC_Init(void);
|
||||||
|
/* USER CODE BEGIN PFP */
|
||||||
|
|
||||||
|
/* USER CODE END PFP */
|
||||||
|
|
||||||
|
/* Private user code ---------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN 0 */
|
||||||
|
|
||||||
|
/* USER CODE END 0 */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief The application entry point.
|
||||||
|
* @retval int
|
||||||
|
*/
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN 1 */
|
||||||
|
|
||||||
|
/* USER CODE END 1 */
|
||||||
|
|
||||||
|
/* MCU Configuration--------------------------------------------------------*/
|
||||||
|
|
||||||
|
/* Reset of all peripherals, Initializes the Flash interface and the Systick. */
|
||||||
|
HAL_Init();
|
||||||
|
|
||||||
|
/* USER CODE BEGIN Init */
|
||||||
|
|
||||||
|
/* USER CODE END Init */
|
||||||
|
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
/* USER CODE BEGIN SysInit */
|
||||||
|
|
||||||
|
/* USER CODE END SysInit */
|
||||||
|
|
||||||
|
/* Initialize all configured peripherals */
|
||||||
|
MX_GPIO_Init();
|
||||||
|
MX_RTC_Init();
|
||||||
|
/* USER CODE BEGIN 2 */
|
||||||
|
|
||||||
|
/* USER CODE END 2 */
|
||||||
|
|
||||||
|
/* Infinite loop */
|
||||||
|
/* USER CODE BEGIN WHILE */
|
||||||
|
while (1)
|
||||||
|
{
|
||||||
|
/* USER CODE END WHILE */
|
||||||
|
|
||||||
|
/* USER CODE BEGIN 3 */
|
||||||
|
}
|
||||||
|
/* USER CODE END 3 */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief RTC Initialization Function
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
static void MX_RTC_Init(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
/* USER CODE BEGIN RTC_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE END RTC_Init 0 */
|
||||||
|
|
||||||
|
/* USER CODE BEGIN RTC_Init 1 */
|
||||||
|
|
||||||
|
/* USER CODE END RTC_Init 1 */
|
||||||
|
/** 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 RTC_Init 2 */
|
||||||
|
|
||||||
|
/* USER CODE END RTC_Init 2 */
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief GPIO Initialization Function
|
||||||
|
* @param None
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
static void MX_GPIO_Init(void)
|
||||||
|
{
|
||||||
|
|
||||||
|
/* GPIO Ports Clock Enable */
|
||||||
|
__HAL_RCC_GPIOC_CLK_ENABLE();
|
||||||
|
__HAL_RCC_GPIOA_CLK_ENABLE();
|
||||||
|
__HAL_RCC_GPIOB_CLK_ENABLE();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/* USER CODE BEGIN 4 */
|
||||||
|
|
||||||
|
/* USER CODE END 4 */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief This function is executed in case of error occurrence.
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void Error_Handler(void)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN Error_Handler_Debug */
|
||||||
|
/* User can add his own implementation to report the HAL error return state */
|
||||||
|
|
||||||
|
/* USER CODE END Error_Handler_Debug */
|
||||||
|
}
|
||||||
|
|
||||||
|
#ifdef USE_FULL_ASSERT
|
||||||
|
/**
|
||||||
|
* @brief Reports the name of the source file and the source line number
|
||||||
|
* where the assert_param error has occurred.
|
||||||
|
* @param file: pointer to the source file name
|
||||||
|
* @param line: assert_param error line source number
|
||||||
|
* @retval None
|
||||||
|
*/
|
||||||
|
void assert_failed(uint8_t *file, uint32_t line)
|
||||||
|
{
|
||||||
|
/* USER CODE BEGIN 6 */
|
||||||
|
/* User can add his own implementation to report the file name and line number,
|
||||||
|
tex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
|
||||||
|
/* USER CODE END 6 */
|
||||||
|
}
|
||||||
|
#endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|
|
@ -0,0 +1,82 @@
|
||||||
|
/* USER CODE BEGIN Header */
|
||||||
|
/**
|
||||||
|
******************************************************************************
|
||||||
|
* @file : main.h
|
||||||
|
* @brief : Header for main.c file.
|
||||||
|
* This file contains the common defines of the application.
|
||||||
|
******************************************************************************
|
||||||
|
* @attention
|
||||||
|
*
|
||||||
|
* <h2><center>© Copyright (c) 2020 STMicroelectronics.
|
||||||
|
* All rights reserved.</center></h2>
|
||||||
|
*
|
||||||
|
* This software component is licensed by ST under BSD 3-Clause license,
|
||||||
|
* the "License"; You may not use this file except in compliance with the
|
||||||
|
* License. You may obtain a copy of the License at:
|
||||||
|
* opensource.org/licenses/BSD-3-Clause
|
||||||
|
*
|
||||||
|
******************************************************************************
|
||||||
|
*/
|
||||||
|
/* USER CODE END Header */
|
||||||
|
|
||||||
|
/* Define to prevent recursive inclusion -------------------------------------*/
|
||||||
|
#ifndef __MAIN_H
|
||||||
|
#define __MAIN_H
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "stm32l4xx_hal.h"
|
||||||
|
#include "stm32l4xx_ll_crs.h"
|
||||||
|
#include "stm32l4xx_ll_rcc.h"
|
||||||
|
#include "stm32l4xx_ll_bus.h"
|
||||||
|
#include "stm32l4xx_ll_system.h"
|
||||||
|
#include "stm32l4xx_ll_exti.h"
|
||||||
|
#include "stm32l4xx_ll_cortex.h"
|
||||||
|
#include "stm32l4xx_ll_utils.h"
|
||||||
|
#include "stm32l4xx_ll_pwr.h"
|
||||||
|
#include "stm32l4xx_ll_dma.h"
|
||||||
|
#include "stm32l4xx_ll_gpio.h"
|
||||||
|
|
||||||
|
/* Private includes ----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Includes */
|
||||||
|
#include "../Src/gpio.h"
|
||||||
|
/* USER CODE END Includes */
|
||||||
|
|
||||||
|
/* Exported types ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN ET */
|
||||||
|
|
||||||
|
/* USER CODE END ET */
|
||||||
|
|
||||||
|
/* Exported constants --------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN EC */
|
||||||
|
|
||||||
|
/* USER CODE END EC */
|
||||||
|
|
||||||
|
/* Exported macro ------------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN EM */
|
||||||
|
|
||||||
|
/* USER CODE END EM */
|
||||||
|
|
||||||
|
/* Exported functions prototypes ---------------------------------------------*/
|
||||||
|
void Error_Handler(void);
|
||||||
|
void SystemClock_Config_24M_LSE(void);
|
||||||
|
void SystemClock_Config_80M(void);
|
||||||
|
/* USER CODE BEGIN EFP */
|
||||||
|
|
||||||
|
/* USER CODE END EFP */
|
||||||
|
|
||||||
|
/* Private defines -----------------------------------------------------------*/
|
||||||
|
/* USER CODE BEGIN Private defines */
|
||||||
|
|
||||||
|
/* USER CODE END Private defines */
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif /* __MAIN_H */
|
||||||
|
|
||||||
|
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
|
|
@ -0,0 +1,221 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 0;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
|
||||||
|
//expe = register RTC
|
||||||
|
expe = RTC->BKP0R;
|
||||||
|
if (expe == 0){
|
||||||
|
expe = 1;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
expe ++;
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
expe = 1;
|
||||||
|
LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
RTC->BKP0R = expe;
|
||||||
|
}
|
||||||
|
LL_PWR_DisableBkUpAccess();
|
||||||
|
|
||||||
|
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,216 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 2;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5 * expe){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
// if (RCC->BDCR & RCC_BDCR_LSEON) {
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
//
|
||||||
|
// //expe = register RTC
|
||||||
|
// expe = RTC->BKP0R;
|
||||||
|
// if (expe == 0){
|
||||||
|
// expe = 1;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }else if (expe != 0 && BLUE_BUTTON()){
|
||||||
|
// expe ++;
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// }else{
|
||||||
|
// SystemClock_Config_24M_LSE();
|
||||||
|
// expe = 1;
|
||||||
|
// LL_APB1_GRP1_EnableClock( LL_APB1_GRP1_PERIPH_PWR );
|
||||||
|
// LL_PWR_EnableBkUpAccess();
|
||||||
|
// RTC->BKP0R = expe;
|
||||||
|
// }
|
||||||
|
// LL_PWR_DisableBkUpAccess();
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_80M();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config_24M_LSE();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config_24M_LSE(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
// LL_RCC_MSI_EnablePLLMode();
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config_80M(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_4);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_4)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 40, LL_RCC_PLLR_DIV_2);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(80000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,143 @@
|
||||||
|
/* Project L476_ats_blink for STM32L476 mounted on Nucleo board:
|
||||||
|
* the user LED (mounted on pin PA-5) is flashed every second for 50 ms.
|
||||||
|
* The time base is provided by Systick (1000 ticks per second).
|
||||||
|
* The clock configuration is the default one (Sysclk = 80 MHz, derived from MSI and PLL).
|
||||||
|
*/
|
||||||
|
|
||||||
|
/* Includes ------------------------------------------------------------------*/
|
||||||
|
#include "main.h"
|
||||||
|
// #if defined(USE_FULL_ASSERT)
|
||||||
|
// #include "stm32_assert.h"
|
||||||
|
// #endif /* USE_FULL_ASSERT */
|
||||||
|
|
||||||
|
#include "gpio.h"
|
||||||
|
|
||||||
|
// systick interrupt handler
|
||||||
|
volatile uint32_t msTicks = 0;
|
||||||
|
volatile uint8_t expe = 2;
|
||||||
|
volatile uint8_t blue_mode = 0;
|
||||||
|
|
||||||
|
void SysTick_Handler()
|
||||||
|
{
|
||||||
|
if ( BLUE_BUTTON() ){
|
||||||
|
blue_mode = 1 ;
|
||||||
|
}
|
||||||
|
|
||||||
|
msTicks++; /* See startup file startup_LPC17xx.s for SysTick vector */
|
||||||
|
if (msTicks == 5){
|
||||||
|
LED_GREEN(0);
|
||||||
|
}else if(msTicks >= 200){
|
||||||
|
msTicks = 0;
|
||||||
|
LED_GREEN(1);
|
||||||
|
}
|
||||||
|
if(expe == 2){
|
||||||
|
CLK_TOGGLE();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void SystemClock_Config(void);
|
||||||
|
|
||||||
|
int main(void)
|
||||||
|
{
|
||||||
|
/* Configure the system clock */
|
||||||
|
SystemClock_Config();
|
||||||
|
|
||||||
|
// config GPIO
|
||||||
|
GPIO_init();
|
||||||
|
|
||||||
|
// init systick timer (tick period at 1 ms)
|
||||||
|
LL_Init1msTick( SystemCoreClock );
|
||||||
|
LL_SYSTICK_EnableIT();
|
||||||
|
|
||||||
|
//Setup Sleep mode
|
||||||
|
LL_LPM_EnableSleep();
|
||||||
|
//LL_LPM_EnableSleepOnExit();
|
||||||
|
|
||||||
|
while (1) {
|
||||||
|
if (blue_mode){
|
||||||
|
switch(expe){
|
||||||
|
case 1:
|
||||||
|
__WFI();
|
||||||
|
break;
|
||||||
|
case 2:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// else {
|
||||||
|
// LED_GREEN(0);
|
||||||
|
// LL_mDelay(950);
|
||||||
|
// LED_GREEN(1);
|
||||||
|
// LL_mDelay(50);
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
/**
|
||||||
|
* @brief System Clock Configuration
|
||||||
|
* @retval None
|
||||||
|
* 24Mhz + RTC + LSE
|
||||||
|
*/
|
||||||
|
void SystemClock_Config(void)
|
||||||
|
{
|
||||||
|
LL_FLASH_SetLatency(LL_FLASH_LATENCY_1);
|
||||||
|
while(LL_FLASH_GetLatency()!= LL_FLASH_LATENCY_1)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
LL_PWR_SetRegulVoltageScaling(LL_PWR_REGU_VOLTAGE_SCALE1);
|
||||||
|
LL_RCC_MSI_Enable();
|
||||||
|
|
||||||
|
/* Wait till MSI is ready */
|
||||||
|
while(LL_RCC_MSI_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
LL_RCC_LSE_Enable();
|
||||||
|
|
||||||
|
/* Wait till LSE is ready */
|
||||||
|
while(LL_RCC_LSE_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetRTCClockSource(LL_RCC_RTC_CLKSOURCE_LSE);
|
||||||
|
LL_RCC_EnableRTC();
|
||||||
|
|
||||||
|
LL_RCC_MSI_EnableRangeSelection();
|
||||||
|
LL_RCC_MSI_SetRange(LL_RCC_MSIRANGE_6);
|
||||||
|
LL_RCC_MSI_SetCalibTrimming(0);
|
||||||
|
LL_RCC_MSI_EnablePLLMode();
|
||||||
|
LL_PWR_EnableBkUpAccess();
|
||||||
|
LL_RCC_ForceBackupDomainReset();
|
||||||
|
LL_RCC_ReleaseBackupDomainReset();
|
||||||
|
LL_RCC_LSE_SetDriveCapability(LL_RCC_LSEDRIVE_LOW);
|
||||||
|
|
||||||
|
LL_RCC_PLL_ConfigDomain_SYS(LL_RCC_PLLSOURCE_MSI, LL_RCC_PLLM_DIV_1, 24, LL_RCC_PLLR_DIV_4);
|
||||||
|
LL_RCC_PLL_EnableDomain_SYS();
|
||||||
|
LL_RCC_PLL_Enable();
|
||||||
|
|
||||||
|
/* Wait till PLL is ready */
|
||||||
|
while(LL_RCC_PLL_IsReady() != 1)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetSysClkSource(LL_RCC_SYS_CLKSOURCE_PLL);
|
||||||
|
|
||||||
|
/* Wait till System clock is ready */
|
||||||
|
while(LL_RCC_GetSysClkSource() != LL_RCC_SYS_CLKSOURCE_STATUS_PLL)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
LL_RCC_SetAHBPrescaler(LL_RCC_SYSCLK_DIV_1);
|
||||||
|
LL_RCC_SetAPB1Prescaler(LL_RCC_APB1_DIV_1);
|
||||||
|
LL_RCC_SetAPB2Prescaler(LL_RCC_APB2_DIV_1);
|
||||||
|
LL_SetSystemCoreClock(24000000);
|
||||||
|
|
||||||
|
/* Update the time base */
|
||||||
|
if (HAL_InitTick (TICK_INT_PRIORITY) != HAL_OK)
|
||||||
|
{
|
||||||
|
// Error_Handler();
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
|
Binary file not shown.
|
@ -0,0 +1 @@
|
||||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,3 @@
|
||||||
|
DeviceConfigurationTool.AskToSwitchToCubeMxPerspective=false
|
||||||
|
DeviceConfigurationTool.SwitchToCubeMxPerspective=true
|
||||||
|
eclipse.preferences.version=1
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
project_presentation/setHierarchicalMode=false
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
indexer/preferenceScope=0
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.cdt.debug.core.cDebug.default_source_containers=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<sourceLookupDirector>\r\n<sourceContainers duplicates\="false">\r\n<container memento\="AbsolutePath" typeId\="org.eclipse.cdt.debug.core.containerType.absolutePath"/>\r\n<container memento\="programRelativePath" typeId\="org.eclipse.cdt.debug.core.containerType.programRelativePath"/>\r\n<container memento\="<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>&\#13;&\#10;<project referencedProjects\="true"/>&\#13;&\#10;" typeId\="org.eclipse.cdt.debug.core.containerType.project"/>\r\n</sourceContainers>\r\n</sourceLookupDirector>\r\n
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
useAnnotationsPrefPage=true
|
|
@ -0,0 +1,3 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
properties/L476_ats_blink-master.null.288482210/com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1993574618=com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.994264857\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.size.91709690\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.archiver.1202888461\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.debug.625023476\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objdump.listfile.63586621\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.1360455809\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.srec.1067399580\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.1553682211\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.debug.1993574618\=rcState\\\=0\\r\\nrebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.verilog.1727439865\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.binary.364289998\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.609578370\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec.429240276\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.hex.853959268\=rebuildState\\\=false\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.424373827\=rebuildState\\\=false\\r\\n\r\n
|
||||||
|
properties/L476_ats_blink-master.null.288482210/com.st.stm32cube.ide.mcu.gnu.managedbuild.config.exe.release.1139819027=com.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.verilog.1581129723\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.binary.1387555249\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objdump.listfile.2118805013\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.compiler.144237511\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.c.linker.829735460\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.symbolsrec.284733610\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.compiler.442331978\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.toolchain.exe.release.1703995923\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.archiver.972505564\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.hex.1321327754\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.objcopy.srec.680088270\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.assembler.237074260\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.size.1681344170\=rebuildState\\\=true\\r\\n\r\ncom.st.stm32cube.ide.mcu.gnu.managedbuild.tool.cpp.linker.1140645243\=rebuildState\\\=true\\r\\n\r\n
|
|
@ -0,0 +1,5 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
spelling_locale=en_GB
|
||||||
|
spelling_locale_initialized=true
|
||||||
|
useAnnotationsPrefPage=true
|
||||||
|
useQuickDiffPrefPage=true
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
version=1
|
|
@ -0,0 +1,7 @@
|
||||||
|
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.debug.gdbjtag.launchConfigurationType=org.eclipse.cdt.debug.gdbjtag.core.dsfLaunchDelegate,debug,;
|
||||||
|
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.applicationLaunchType=org.eclipse.cdt.dsf.gdb.launch.localCLaunch,debug,;org.eclipse.cdt.cdi.launch.localCLaunch,run,;
|
||||||
|
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.attachLaunchType=org.eclipse.cdt.dsf.gdb.launch.attachCLaunch,debug,;
|
||||||
|
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.postmortemLaunchType=org.eclipse.cdt.dsf.gdb.launch.coreCLaunch,debug,;
|
||||||
|
//org.eclipse.debug.core.PREFERRED_DELEGATES/org.eclipse.cdt.launch.remoteApplicationLaunchType=org.eclipse.rse.remotecdt.dsf.debug,debug,;
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
prefWatchExpressions=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<watchExpressions/>\r\n
|
|
@ -0,0 +1,6 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.debug.ui.MemoryView.orientation=0
|
||||||
|
org.eclipse.debug.ui.PREF_LAUNCH_PERSPECTIVES=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<launchPerspectives/>\r\n
|
||||||
|
org.eclipse.debug.ui.user_view_bindings=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<viewBindings>\r\n<view id\="org.eclipse.debug.ui.ExpressionView">\r\n<perspective id\="org.eclipse.debug.ui.DebugPerspective" userAction\="opened"/>\r\n</view>\r\n</viewBindings>\r\n
|
||||||
|
preferredDetailPanes=NumberFormatPane\:NumberFormatPane|DefaultDetailPane\:DefaultDetailPane|
|
||||||
|
preferredTargets=org.eclipse.cdt.debug.ui.toggleCBreakpointTarget,org.eclipse.cdt.debug.ui.toggleCDynamicPrintfTarget\:org.eclipse.cdt.debug.ui.toggleCBreakpointTarget|
|
|
@ -0,0 +1,8 @@
|
||||||
|
LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/arch=x86_64
|
||||||
|
LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/name=Local
|
||||||
|
LaunchTargetManager/org.eclipse.launchbar.core.launchTargetType.local,Local/os=win32
|
||||||
|
configDescList=org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:L476_ats_blink-master Debug,org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:RealOne Debug
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:L476_ats_blink-master\ Debug/activeLaunchMode=run
|
||||||
|
org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:L476_ats_blink-master\ Debug/activeLaunchTarget=null\:---
|
||||||
|
org.eclipse.cdt.dsf.gdb.gdbRemotedescriptorType\:RealOne\ Debug/activeLaunchMode=run
|
|
@ -0,0 +1,4 @@
|
||||||
|
activeuserprofiles=DESKTOP-9AR6HHQ;Team
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.rse.systemtype.local.systemType.defaultUserId=camer
|
||||||
|
useridperkey=DESKTOP-9AR6HHQ.Local\=camer;
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.rse.preferences.order.connections=DESKTOP-9AR6HHQ.Local
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
overviewRuler_migration=migrated_3.1
|
|
@ -0,0 +1,6 @@
|
||||||
|
PROBLEMS_FILTERS_MIGRATE=true
|
||||||
|
TASKS_FILTERS_MIGRATE=true
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
platformState=1604477333731
|
||||||
|
quickStart=false
|
||||||
|
tipsAndTricks=true
|
|
@ -0,0 +1,3 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
org.eclipse.ui.navigator.ProjectExplorer.activatedExtensions=org.eclipse.cdt.make.ui.makeTargets.content\=true;org.eclipse.ui.navigator.resourceContent\=true;org.eclipse.cdt.ui.navigator.content\=true;org.eclipse.ui.navigator.resources.workingSets\=true;org.eclipse.team.ui.patchSyncNavigatorContent\=true;org.eclipse.team.ui.resourceContent\=true;org.eclipse.ui.navigator.resources.nested.nestedProjectContentProvider\=true;org.eclipse.remote.ui.navigatorContent.connections\=true;
|
||||||
|
org.eclipse.ui.navigator.ProjectExplorer.filterActivation=\:org.eclipse.rse.project.filters.RemoteSystemsProjects\:org.eclipse.ui.navigator.resources.filters.startsWithDot\:org.eclipse.cdt.ui.navigator.filters.AnonymousStructFilter\:org.eclipse.ui.navigator.resources.nested.HideTopLevelProjectIfNested\:org.eclipse.ui.navigator.resources.nested.HideFolderWhenProjectIsShownAsNested\:org.eclipse.cdt.ui.navigator.filters.ForwardDeclarationFilter\:
|
|
@ -0,0 +1,2 @@
|
||||||
|
eclipse.preferences.version=1
|
||||||
|
showIntro=false
|
|
@ -0,0 +1,4 @@
|
||||||
|
//org.eclipse.ui.commands/state/com.st.stm32cube.ide.mcu.buildanalyzer.showstate/org.eclipse.ui.commands.radioState=human
|
||||||
|
//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false
|
||||||
|
UIActivities.org.eclipse.cdt.debug.dsfgdbActivity=true
|
||||||
|
eclipse.preferences.version=1
|
|
@ -0,0 +1,13 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<section name="Workbench">
|
||||||
|
<section name="org.eclipse.debug.ui.SCOPED_SAVE_SELECTION_DIALOG">
|
||||||
|
<item key="DIALOG_WIDTH" value="343"/>
|
||||||
|
<item key="DIALOG_HEIGHT" value="434"/>
|
||||||
|
<item key="DIALOG_FONT_NAME" value="1|Segoe UI|9.0|0|WINDOWS|1|-15|0|0|0|400|0|0|0|1|0|0|0|0|Segoe UI"/>
|
||||||
|
</section>
|
||||||
|
<section name="org.eclipse.debug.ui.LAUNCH_CONFIGURATION_PROPERTIES_DIALOG_SECTION">
|
||||||
|
<item key="DIALOG_WIDTH" value="883"/>
|
||||||
|
<item key="DIALOG_HEIGHT" value="702"/>
|
||||||
|
<item key="DIALOG_FONT_NAME" value="1|Segoe UI|9.0|0|WINDOWS|1|-15|0|0|0|400|0|0|0|1|0|0|0|0|Segoe UI"/>
|
||||||
|
</section>
|
||||||
|
</section>
|
|
@ -0,0 +1,23 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||||
|
<launchHistory>
|
||||||
|
<launchGroup id="org.eclipse.debug.ui.launchGroup.debug">
|
||||||
|
<mruHistory>
|
||||||
|
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="false" path="/RealOne/RealOne Debug.launch"/> "/>
|
||||||
|
</mruHistory>
|
||||||
|
<favorites/>
|
||||||
|
</launchGroup>
|
||||||
|
<launchGroup id="org.eclipse.debug.ui.launchGroup.profile">
|
||||||
|
<mruHistory/>
|
||||||
|
<favorites/>
|
||||||
|
</launchGroup>
|
||||||
|
<launchGroup id="org.eclipse.ui.externaltools.launchGroup">
|
||||||
|
<mruHistory/>
|
||||||
|
<favorites/>
|
||||||
|
</launchGroup>
|
||||||
|
<launchGroup id="org.eclipse.debug.ui.launchGroup.run">
|
||||||
|
<mruHistory>
|
||||||
|
<launch memento="<?xml version="1.0" encoding="UTF-8" standalone="no"?> <launchConfiguration local="false" path="/RealOne/RealOne Debug.launch"/> "/>
|
||||||
|
</mruHistory>
|
||||||
|
<favorites/>
|
||||||
|
</launchGroup>
|
||||||
|
</launchHistory>
|
File diff suppressed because one or more lines are too long
|
@ -0,0 +1,3 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<session version="1.0">
<refactoring comment="Delete resource 'L476_ats_blink-master'" deleteContents="false" description="Delete resource 'L476_ats_blink-master'" element1="/L476_ats_blink-master" flags="7" id="org.eclipse.ltk.core.refactoring.delete.resources" resources="1" stamp="1605514212142"/>
<refactoring comment="Delete resource 'L476_ats_blink-master'" deleteContents="true" description="Delete resource 'L476_ats_blink-master'" element1="/L476_ats_blink-master" flags="7" id="org.eclipse.ltk.core.refactoring.delete.resources" resources="1" stamp="1605597878223"/>
<refactoring comment="Delete resource 'RealOne'" deleteContents="false" description="Delete resource 'RealOne'" element1="/RealOne" flags="7" id="org.eclipse.ltk.core.refactoring.delete.resources" resources="1" stamp="1605601055463"/>
|
||||||
|
</session>
|
|
@ -0,0 +1,3 @@
|
||||||
|
1605514212142 Delete resource 'L476_ats_blink-master'
|
||||||
|
1605597878223 Delete resource 'L476_ats_blink-master'
|
||||||
|
1605601055463 Delete resource 'RealOne'
|
|
@ -0,0 +1,7 @@
|
||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<section name="Workbench">
|
||||||
|
<section name="RefactoringWizard.preview">
|
||||||
|
<item key="width" value="600"/>
|
||||||
|
<item key="height" value="400"/>
|
||||||
|
</section>
|
||||||
|
</section>
|
|
@ -0,0 +1,57 @@
|
||||||
|
# RSE DOM Node
|
||||||
|
00-name=DESKTOP-9AR6HHQ\:local.files
|
||||||
|
01-type=FilterPool
|
||||||
|
03-attr.default=true
|
||||||
|
03-attr.deletable=true
|
||||||
|
03-attr.id=local.files
|
||||||
|
03-attr.nonRenamable=false
|
||||||
|
03-attr.owningParentName=null
|
||||||
|
03-attr.release=200
|
||||||
|
03-attr.singleFilterStringOnly=false
|
||||||
|
03-attr.singleFilterStringOnlyESet=false
|
||||||
|
03-attr.stringsCaseSensitive=true
|
||||||
|
03-attr.supportsDuplicateFilterStrings=false
|
||||||
|
03-attr.supportsNestedFilters=true
|
||||||
|
03-attr.type=default
|
||||||
|
06-child.00000.00-name=My Home
|
||||||
|
06-child.00000.01-type=Filter
|
||||||
|
06-child.00000.03-attr.default=false
|
||||||
|
06-child.00000.03-attr.filterType=default
|
||||||
|
06-child.00000.03-attr.id=My Home
|
||||||
|
06-child.00000.03-attr.nonChangable=false
|
||||||
|
06-child.00000.03-attr.nonDeletable=false
|
||||||
|
06-child.00000.03-attr.nonRenamable=false
|
||||||
|
06-child.00000.03-attr.promptable=false
|
||||||
|
06-child.00000.03-attr.relativeOrder=0
|
||||||
|
06-child.00000.03-attr.release=200
|
||||||
|
06-child.00000.03-attr.singleFilterStringOnly=false
|
||||||
|
06-child.00000.03-attr.stringsCaseSensitive=false
|
||||||
|
06-child.00000.03-attr.stringsNonChangable=false
|
||||||
|
06-child.00000.03-attr.supportsDuplicateFilterStrings=false
|
||||||
|
06-child.00000.03-attr.supportsNestedFilters=true
|
||||||
|
06-child.00000.06-child.00000.00-name=C\:\\Users\\camer\\*
|
||||||
|
06-child.00000.06-child.00000.01-type=FilterString
|
||||||
|
06-child.00000.06-child.00000.03-attr.default=false
|
||||||
|
06-child.00000.06-child.00000.03-attr.string=C\:\\Users\\camer\\*
|
||||||
|
06-child.00000.06-child.00000.03-attr.type=default
|
||||||
|
06-child.00001.00-name=Drives
|
||||||
|
06-child.00001.01-type=Filter
|
||||||
|
06-child.00001.03-attr.default=false
|
||||||
|
06-child.00001.03-attr.filterType=default
|
||||||
|
06-child.00001.03-attr.id=Drives
|
||||||
|
06-child.00001.03-attr.nonChangable=false
|
||||||
|
06-child.00001.03-attr.nonDeletable=false
|
||||||
|
06-child.00001.03-attr.nonRenamable=false
|
||||||
|
06-child.00001.03-attr.promptable=false
|
||||||
|
06-child.00001.03-attr.relativeOrder=0
|
||||||
|
06-child.00001.03-attr.release=200
|
||||||
|
06-child.00001.03-attr.singleFilterStringOnly=false
|
||||||
|
06-child.00001.03-attr.stringsCaseSensitive=false
|
||||||
|
06-child.00001.03-attr.stringsNonChangable=false
|
||||||
|
06-child.00001.03-attr.supportsDuplicateFilterStrings=false
|
||||||
|
06-child.00001.03-attr.supportsNestedFilters=true
|
||||||
|
06-child.00001.06-child.00000.00-name=*
|
||||||
|
06-child.00001.06-child.00000.01-type=FilterString
|
||||||
|
06-child.00001.06-child.00000.03-attr.default=false
|
||||||
|
06-child.00001.06-child.00000.03-attr.string=*
|
||||||
|
06-child.00001.06-child.00000.03-attr.type=default
|
|
@ -0,0 +1,25 @@
|
||||||
|
# RSE DOM Node
|
||||||
|
00-name=Local
|
||||||
|
01-type=Host
|
||||||
|
03-attr.description=
|
||||||
|
03-attr.hostname=LOCALHOST
|
||||||
|
03-attr.offline=false
|
||||||
|
03-attr.promptable=false
|
||||||
|
03-attr.systemType=org.eclipse.rse.systemtype.local
|
||||||
|
03-attr.type=Local
|
||||||
|
06-child.00000.00-name=Local Connector Service
|
||||||
|
06-child.00000.01-type=ConnectorService
|
||||||
|
06-child.00000.03-attr.group=Local Connector Service
|
||||||
|
06-child.00000.03-attr.port=0
|
||||||
|
06-child.00000.03-attr.useSSL=false
|
||||||
|
06-child.00000.06-child.00000.00-name=Local Files
|
||||||
|
06-child.00000.06-child.00000.01-type=SubSystem
|
||||||
|
06-child.00000.06-child.00000.03-attr.hidden=false
|
||||||
|
06-child.00000.06-child.00000.03-attr.type=local.files
|
||||||
|
06-child.00000.06-child.00000.06-child.00000.00-name=DESKTOP-9AR6HHQ___DESKTOP-9AR6HHQ\:local.files
|
||||||
|
06-child.00000.06-child.00000.06-child.00000.01-type=FilterPoolReference
|
||||||
|
06-child.00000.06-child.00000.06-child.00000.03-attr.refID=local.files
|
||||||
|
06-child.00000.06-child.00001.00-name=Local Shells
|
||||||
|
06-child.00000.06-child.00001.01-type=SubSystem
|
||||||
|
06-child.00000.06-child.00001.03-attr.hidden=false
|
||||||
|
06-child.00000.06-child.00001.03-attr.type=local.shells
|
|
@ -0,0 +1,7 @@
|
||||||
|
# RSE DOM Node
|
||||||
|
00-name=DESKTOP-9AR6HHQ
|
||||||
|
01-type=Profile
|
||||||
|
03-attr.defaultPrivate=true
|
||||||
|
03-attr.isActive=true
|
||||||
|
05-ref.00000=FP.local.files_0
|
||||||
|
05-ref.00001=H.local_16
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue