RCU_CKOUT0_DIV1);#elif GD32F1X0 || GD32F3X0 || GD32E23Xrcu_ckout_config(RCU_CKOUTSRC_HXTAL,RCU_CKOUT_DIV1);#endif while(1){ }}
1.4.2 CKOUT时钟输出代码解析 CKOUT时钟输出配置代码如下所示,该函数无形参输入,首先将PA8配置为推挽输出,然后将系统时钟配置为CKOUT输出。1.4.3 主函数代码解析 本例程主函数如下所示,首先使用外部8M晶振倍频配置系统时钟为120MHZ,然后通过PA8将系统时钟输出。1.5 实验结果 首先将PA8外接示波器,然后将本...
ck_apre时钟又可通过数字粗平滑校准或直接输入15位同步预分频器后输出1HZ的ck_spre时钟提供日历寄存器使用;基于日历寄存器还实现了闹钟和时间戳功能;RTC还具有闹钟、时钟输出功能,对RTC_TS、RTC_TAMP0、RTC_TAMP1引脚的有效输入可触发时间戳和侵入事件并产生中断。
首先我们来看下GD32F303的时钟树:其中左下角的位置有一个CK_OUT0的链接图:根据图示,我们看到通过CK_OUT0可以将系统时钟(CK_SYS)、内部高速晶振(CK_IRC8M)、外部晶振(CK_HXTAL)以及PLL的二分之一频率输出出来,实际上,CK_OUT0就是PA8引脚,我们来看下GD32F303 Datasheet中的管脚定义:可以看到PA8...
将CKOUT0SEL配置为100,就可以将系统时钟输出到CK_OUT0引脚上,这样外部接示波器就可以查看当前系统时钟了。另外也可以通过定时器或者通信频率来进行估算,希望大家在系统开发伊始有确认系统时钟的好习惯,避免由于系统时钟配置出错导致的隐藏问题。由聚沃科技原创,来源于:https://www.gd32bbs.com/ ...
根据图示,我们看到通过CK_OUT0可以将系统时钟(CK_SYS)、内部高速晶振(CK_IRC8M)、外部晶振(CK_HXTAL)以及PLL的二分之一频率输出出来,实际上,CK_OUT0就是PA8引脚,我们来看下GD32F303 Datasheet中的管脚定义: 可以看到PA8口的一个Alternate类型功能为CK_OUT0,所以我们需要配置PA8为复用类型。 另外在库文件gd...
可以看到PA8口的一个Alternate类型功能为CK_OUT0,所以我们需要配置PA8为复用类型。 另外在库文件gd32f30x_rcu.c中定义了时钟输出函数rcu_ckout0_config,在函数注释中已经将可调用的参数列出,但需要注意,红色方框以外的参数仅可用于GD32F305/307即互联型(CL)产品,小伙伴们可以自行查看GD32F30x系列HD和CL产品系...
打开CKOUT,把主频一点一点往上超,一直到160M,串口都能正常输出"Hello, world.",这时工作电流大约38mA。继续加频率,从示波器上看CKOUT脚的频率不再增加了,估计是PLL的调节范围到头了。这货居然还支持四线SPI,可惜不能象STM32F4xx那样把SPI FLASH/SRAM映射到内存地址,不过也算是相当厚道了。 缺点是外设库的...
由图中可看出通过设置位域CK_OUT0,输出的时钟包括CK_PLL、CK_IRC8M、CK_HXTAL、CK_PLL的2分频。 结合以上分析,我们来看下GD32F30x固件库时钟配置函数(因篇幅有限,只贴出各分频和倍频配置部分),还是以GD32F303芯片为例,如下图代码清单时钟配置部分代码所示:...
AHB时钟可由系统时钟分频而来,AHB时钟最高120M,AHB时钟会输出给内核以及外设使用;2、RTC以及独立看门狗时钟配置,如图中2所示,RTC时钟可选择HXTAL/128分频、LXTAL或者IRC40K,独立看门狗仅可选择IRC40K使用;3、时钟输出配置,如图中3所示,内部系统时钟、IRC8M、HXTAL以及PLL/2可通过CKOUT0SEL控制位控制输出到CKOUT引脚...