stm32f1中的sys_setrcc()在stm32f4中怎么使用
1条回答 默认 最新
关注
【以下回答由 GPT 生成】
回答
很抱歉,STM32F4系列与STM32F1系列的外设和寄存器有很大不同,因此无法直接使用STM32F1中的sys_setrcc()函数。但是你可以使用STM32F4的库函数来设置系统时钟。下面给出一个在STM32F4中设置系统时钟的示例代码:
// 包含头文件 #include "stm32f4xx_hal.h" // 设置系统时钟函数 void SystemClock_Config(void) { RCC_OscInitTypeDef RCC_OscInitStruct = {0}; RCC_ClkInitTypeDef RCC_ClkInitStruct = {0}; // 启用时钟并初始化RCC_OscInitTypeDef结构体 RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; RCC_OscInitStruct.HSIState = RCC_HSI_ON; RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI; RCC_OscInitStruct.PLL.PLLM = 16; RCC_OscInitStruct.PLL.PLLN = 336; RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4; RCC_OscInitStruct.PLL.PLLQ = 7; if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK) { Error_Handler(); } // 初始化RCC_ClkInitStruct结构体 RCC_ClkInitStruct.ClockType = RCC_CLOCKTYPE_HCLK | RCC_CLOCKTYPE_SYSCLK | RCC_CLOCKTYPE_PCLK1 | RCC_CLOCKTYPE_PCLK2; RCC_ClkInitStruct.SYSCLKSource = RCC_SYSCLKSOURCE_PLLCLK; RCC_ClkInitStruct.AHBCLKDivider = RCC_SYSCLK_DIV1; RCC_ClkInitStruct.APB1CLKDivider = RCC_HCLK_DIV2; RCC_ClkInitStruct.APB2CLKDivider = RCC_HCLK_DIV1; if (HAL_RCC_ClockConfig(&RCC_ClkInitStruct, FLASH_LATENCY_5) != HAL_OK) { Error_Handler(); } // 使能 SYSCFG 时钟,以便可以使用 HAL_RCC_EnableCSS() 函数来使能主板上复位按键 __HAL_RCC_SYSCFG_CLK_ENABLE(); // 初始化直接存储访问(DMA) 控制器 HAL_NVIC_SetPriority(DMA2_Stream0_IRQn, 0, 0); HAL_NVIC_EnableIRQ(DMA2_Stream0_IRQn); }
在你的主函数中,调用SystemClock_Config()函数即可完成系统时钟的设置。请注意使用正确的头文件路径和函数调用。
希望这对你有帮助!如果还有其他问题,请随时提问。
如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^解决 无用评论 打赏 举报
悬赏问题
- ¥15 下载org.Hs.eg.db的R包时出现了报错信息
- ¥20 如何通过云图中RPG去计算云图上不同位置的值?
- ¥15 请问不小心下载到了钓鱼软件怎么办?
- ¥15 求国博抢票 求国博抢票 有的私
- ¥50 swiftui @query 报错
- ¥50 怎么解决刷卡或扫码后,点击软件输入框,win10屏幕键盘不会自动弹出的问题
- ¥15 如何使用arcgispro的训练深度模型,发现water和nowater精度为0?(相关搜索:深度学习)
- ¥20 matlab作业不太懂呀有问题能给个代码吗
- ¥15 自制电路图为何无法驱动ESP01S?
- ¥15 前端加access数据库