杰发科技AC7803——不同晶振频率时钟的配置

计算公式

cpp 复制代码
PLL_POSDIV       [2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 22, 24, 26, 28, 30, 32, 34, 36, 38, 40, 42, 44, 46, 48, 50, 52, 54, 56, 58, 60, 62]
PLL_PREDIV_1     1 2 4
USE_XTAL       = 24M   
SYSCLK_FREQ    = 64M
SYSCLK_DIVIDER = 1
VCO            = USE_XTAL* FBKDIV / PREDIV     24*FBKDIV/2
SYSCLK_FREQ    = VCO / POSDIV / SYSCLK_DIV     64 = 24*FBKDIV/2/ (2-62)/1   

PREDIV = 2, SYSCLK_DIV = 1,POSDIV = 12,
24*FBKDIV/2
64 = 24*FBKDIV/2/12/1   
64*1*12*2=24*FBKDIV
FBKDIV = 64

修改为24M晶振,可以参考12M晶振配置

cpp 复制代码
	#define HSI_FREQ      8000000UL   /*!< Internal 8M RC clock */

	#define XTAL_8M       8000000UL   /*!< extern crystal oscillator 8M  */
	#define XTAL_12M     12000000UL   /*!< extern crystal oscillator 12M */
	#define XTAL_16M     16000000UL   /*!< extern crystal oscillator 16M */
	#define XTAL_30M     30000000UL   /*!< extern crystal oscillator 30M */
	#define XTAL_24M     24000000UL   /*!< extern crystal oscillator 30M */

	#define USE_XTAL     XTAL_24M      /*!< Select the actual crystal frequency */
	#define CKGEN_AUTO_CHANGE_CLK  1U  /*!< Auto change system clock to internal clock after detect xosc or pll fail */

	/*!< PLL configure */
	#ifndef PLL_CONFIG_72M  /* Output 64MHz */
	#if USE_XTAL == XTAL_8M
	#define PLL_POSDIV   PLL_POSDIV_8
	#define PLL_FBKDIV   64U
	#define PLL_PREDIV   PLL_PREDIV_1
	#elif USE_XTAL == XTAL_12M
	#define PLL_POSDIV   PLL_POSDIV_12
	#define PLL_FBKDIV   64U
	#define PLL_PREDIV   PLL_PREDIV_1
	#elif USE_XTAL == XTAL_16M
	#define PLL_POSDIV   PLL_POSDIV_8
	#define PLL_FBKDIV   64U
	#define PLL_PREDIV   PLL_PREDIV_2
	#elif USE_XTAL == XTAL_30M  /* Output 64MHz */
	#define PLL_POSDIV   PLL_POSDIV_20
	#define PLL_FBKDIV   160U
	#define PLL_PREDIV   PLL_PREDIV_4
	#elif USE_XTAL == XTAL_24M  /* Output 64MHz */
	#define PLL_POSDIV   PLL_POSDIV_12
	#define PLL_FBKDIV   64U
	#define PLL_PREDIV   PLL_PREDIV_2 
相关推荐
学嵌入式的小杨同学1 天前
STM32 进阶封神之路(二十二):DMA 实战全攻略 ——ADC 采集 + 串口收发 + 内存复制(库函数 + 代码落地)
c++·stm32·单片机·嵌入式硬件·mcu·硬件架构·pcb
学嵌入式的小杨同学1 天前
STM32 进阶封神之路(二十一):DMA 深度解析 —— 从直接内存访问到无 CPU 干预数据传输(底层原理 + 寄存器配置)
stm32·单片机·嵌入式硬件·mcu·硬件架构·硬件工程·智能硬件
学嵌入式的小杨同学2 天前
STM32 进阶封神之路(十九):ADC 深度解析 —— 从模拟信号到数字转换(底层原理 + 寄存器配置)
c++·stm32·单片机·嵌入式硬件·mcu·架构·硬件架构
jianqiang.xue2 天前
ESP32-P4 看门狗复位全解析:HP_SYS_HP_WDT_RESET 故障排查实战
单片机·mcu·esp32·idf
woshihonghonga2 天前
解决Eclipse的Copilot终端依赖问题
stm32·mcu·eclipse·copilot·ai编程
嵌入式老菜鸟qq1252427733 天前
关于S2-LP休眠
单片机·嵌入式硬件·mcu·射频工程
学嵌入式的小杨同学3 天前
STM32 进阶封神之路(十八):RTC 实战全攻略 —— 时间设置 + 秒中断 + 串口更新 + 闹钟功能(库函数 + 代码落地)
c++·stm32·单片机·嵌入式硬件·mcu·架构·硬件架构
学嵌入式的小杨同学3 天前
STM32 进阶封神之路(十七):RTC 实时时钟深度解析 —— 从时钟源到寄存器配置(底层原理 + 面试重点)
c++·stm32·单片机·嵌入式硬件·mcu·硬件架构·pcb
EVERSPIN4 天前
32位MCU副屏方案
mcu·32位mcu
学嵌入式的小杨同学4 天前
STM32 进阶封神之路(十五):DHT11 单总线实战 —— 温湿度检测从时序解析到代码落地(库函数 + 寄存器)
vscode·stm32·单片机·嵌入式硬件·mcu·智能硬件·pcb工艺