if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK) { Error_Handler(); } // 禁用内部高速时钟 RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; RCC_OscInitStruct.HSIState = RCC_HSI_OFF; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_NONE; if(HAL_RCC_OscConfig...
HAL 库如果检测到这种状态,则不会对 PLL 配置进行更改,只会检测现有的 PLL 配置与欲应用的配置是否相符,如果不相符,则返回 HAL_ERROR。 __weak HAL_StatusTypeDefHAL_RCC_OscConfig(RCC_OscInitTypeDef*RCC_OscInitStruct){...// 初始化 HSI,HSE 等,在此省略if((RCC_OscInitStruct->PLL.PLLState)!=RCC_PLL...
RCC_OscInitStruct.HSEState=RCC_HSE_BYPASS; RCC_OscInitStruct.HSIState= RCC_HSI_ON;//stm32L031芯片的adc必须启动HSIRCC_OscInitStruct.PLL.PLLState =RCC_PLL_NONE;if(HAL_RCC_OscConfig(&RCC_OscInitStruct) !=HAL_OK) { Error_Handler(); }/** Initializes the CPU, AHB and APB buses clocks*...
后来客户发现是开启外部时钟HSE 和LSE 后,程序直接卡死在HAL_RCC_OscConfig ,测量不到HSE 的32MHZ信号。而客户的程序移植到ST 官方的STM32WL NUCLEO 板上可以正常运行。通过前面的验证很容易怀疑是不是客户样机外部HSE 32MHZ 的晶振没有起振。拿到客户的样机后,尝试更换32MHZ 晶振,调整晶振负载电容和使用TCXO,发...
if (HAL_RCC_OscConfig(&oscinitstruct)!= HAL_OK){ /* Initialization Error */ while(1);} /*...
用STM32CubeMX进行时钟源RCC配置的时,配置HSE为bypass。随后程序卡死在void SystemClock_Config(void)中的if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK),。 解决 查找用STM32CubeMX RCC时钟选项,发现HSE选择与开发板的板载晶振不同,从而导致程序(RCC配置失败)卡死。 Disable:禁用外部时钟 BYPASS Cloc...
可以看出当我们的数据写入6次之后:write_cnt > 5就会进入一个死循环,每过0.5秒输出一个while。 接下来咱们再来验证一下,将SD卡拔出用读卡器插到我们的PC上看我们写入的文件 可以看到我们写入的文件为6行“01 write buff to sd”,这与我们的代码对应 但是大家可以看到我们打开的文件显示出来的结果是乱码的,我们...
STM32实战项目经验:HAL_RCC_OscConfig中程序卡死问题解决办法工程环境STM32CUBEIDESTM32F415VG现象复现项目中一个是IAP程序,另一个是APP程序,两个程序都是 h1654155143.8331 2021-08-13 06:15:31 第六章-电机驱动和PWM STM32项目 **功能介绍放开头, 使用便捷无需愁。** **这是全网最详细、性价比最高的STM...
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK){ Error_Handler();} /**Initializes the...
__HAL_RCC_PWR_CLK_ENABLE();//使能电源时钟PWRHAL_PWR_EnableBkUpAccess();//取消备份区域写保护RCC_OscInitStruct.OscillatorType=RCC_OSCILLATORTYPE_LSE;//LSE配置RCC_OscInitStruct.PLL.PLLState=RCC_PLL_NONE;RCC_OscInitStruct.LSEState=RCC_LSE_ON;//RTC使用LSEHAL_RCC_OscConfig(&RCC_OscInitStruct);...