爱普特APT32F110x系列时钟介绍

这篇具有很好参考价值的文章主要介绍了爱普特APT32F110x系列时钟介绍。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近要用APT32F110x做一些开发,顺便学习一下。

APT32F110x 是由爱普特推出的基于平头哥(T-Head Microsystems)CPU 内核开发的 32 位高性能低成本单片机。
APT32F1104x基于嵌入式 Flash 工艺制造,内部丰富的模拟资源,包括模拟比较器、LCD 控制器,面向的应用为工业控制,小家电,消费电子设备,可穿戴设备等应用。

APT32F1104x的系统时钟源选择和 HCLK/PCLK 频率管理 
  支持多种时钟源作为系统时钟运行: 
-  内部低速振荡器(IMOSC)为缺省时钟源:5.556MHz/4.194MHz/2.097MHz/131.072KHz 
-  内部高速振荡器(HFOSC):48MHz 
-  外部主晶振(EMOSC):0.4MHz ~ 24MHz/32.738KHz 
-  外部 RTC 晶振(ESOSC):32.768KHz 
-  内部超低功耗振荡器(ISOSC):27KHz 
  可编程 CPU 时钟(HCLK)和外设时钟(PCLK) 
  外部时钟失效监测(Clock Fail Monitor),支持时钟去抖选项 
  可选择的系统内部时钟源输出(CLO) 

时钟结构如下图:

爱普特APT32F110x系列时钟介绍

 

爱普特提供了demo,其时钟设置在board_config.c中的:

csi_clk_config_t tClkConfig = 
	{SRC_HFOSC, HFOSC_48M_VALUE, SCLK_DIV1, PCLK_DIV1, 5556000, 5556000};
	//{SRC_EMOSC, 20000000, SCLK_DIV1, PCLK_DIV2, 5556000, 5556000};
	//{SRC_IMOSC, IMOSC_5M_VALUE, SCLK_DIV1, PCLK_DIV2,5556000, 5556000};
	//{SRC_HFOSC, HFOSC_48M_VALUE, SCLK_DIV1, PCLK_DIV1,5556000, 5556000};
	//{SRC_IMOSC, IMOSC_4M_VALUE, SCLK_DIV1, PCLK_DIV1,5556000, 5556000};
	//{SRC_IMOSC, IMOSC_2M_VALUE, SCLK_DIV1, PCLK_DIV1,5556000, 5556000};
	//{SRC_IMOSC, IMOSC_131K_VALUE, SCLK_DIV1, PCLK_DIV1,5556000, 5556000};
	//{SRC_ESOSC, ESOSC_VALUE, SCLK_DIV1, PCLK_DIV1,5556000, 5556000};

csi_clk_config_t的结构则定义在sys_clk.h:

typedef struct {
	cclk_src_e		eClkSrc;	//clock source
	uint32_t		wFreq;		//clock frequency
	hclk_div_e		eSdiv;		//SDIV
	pclk_div_e		ePdiv;		//PDIV
	uint32_t		wSclk;		//SCLK
	uint32_t		wPclk;
}csi_clk_config_t;

结构字段的具体解释:文章来源地址https://www.toymoban.com/news/detail-434759.html

cclk_src_e        eClkSrc;    //对应的是SYSCLK_SEL[2:0]
uint32_t        wFreq;    //clock frequency, 输入时钟的频率,比如内部低速振荡器(IMOSC)的:5.556MHz/4.194MHz/2.097MHz/131.072KHz
hclk_div_e        eSdiv;   //SCLK的分频,即SYSCLK_DIV的值, 由“wTargetSclk = wFreq/g_wHclkDiv[tClkConfig.eSdiv];”中的“g_wHclkDiv”决定,取决于g_wHclkDiv的索引值是多少
pclk_div_e        ePdiv;  //PCLK分频,即PCLK_DIV, 实际值是“tClkConfig.wPclk = tClkConfig.wSclk/(0x1<<tClkConfig.ePdiv);”
uint32_t        wSclk;  //SYSCLK,设置无意义,实际由“tClkConfig.wSclk = wTargetSclk;”决定,csi_sysclk_config中会重新赋值
uint32_t        wPclk;   //PCLK,设置无意义,实际由”tClkConfig.wPclk = tClkConfig.wSclk/(0x1<<tClkConfig.ePdiv);“决定,csi_sysclk_config中会重新赋值

到了这里,关于爱普特APT32F110x系列时钟介绍的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • STM32F407的时钟

    时钟源用来为环形脉冲发生器提供频率稳定且电平匹配的方波时钟脉冲信号。它通常由石英 晶体振荡器和与非门组成的正反馈振荡电路组成,其输出送至环形脉冲发生器。 F4开发指南P107 F4开发指南P108 HSI高速内部时钟源 High Speed Internal。RC 振荡器,频率为 16MHz。可以直接作为

    2024年02月10日
    浏览(55)
  • STM32F4基础:时钟系统、中断及定时器

            时钟系统是CPU的脉搏, 由于STM32 本身非常复杂,外设非常的多,并不是所有外设都需要系统时钟这么高的频率,比如看门狗以及 RTC 只需要几十 k 的时钟即可,因此STM32F4 的时钟系统比较复杂 ,不像简单的 51 单片机一个系统时钟就可以解决一切。         如下图所

    2023年04月09日
    浏览(41)
  • Keil STM32F103系统时钟配置过程(标准库)

    平时我在做STM32项目的时候,一般是用别人的工程包,有时用别人的工程包的系统时钟不对,需要检查,下面是系统时钟配置过程。 1:在工程找到文件startup_stm32f10x_hd.s并打开,然后找到SystemInit,如下图 2:选择SystemInit,跳转到SystemInit函数,如下图: 3:SystemInit函数如下图:

    2024年02月16日
    浏览(64)
  • STM32F103学习笔记(5.1)——定时器时钟

    STM32F103RCT6上总共有8个定时器,其中TIM1和TIM8是高级定时器,它们挂载在APB2高速总线上。而TIM2、TIM3、TIM4、TIM5是通用定时器,TIM6、TIM7是基本定时器,它们都挂载在APB1上,基本定时器的功能最少,高级定时器功能最多。所以以学习通用定时器为主。 需要参考手册第二章存储器

    2024年02月15日
    浏览(42)
  • STM32F105RBT6 -- RCC 系统时钟

    打开STM32Cube MX 软件可以找到STM32F105RBT6 的系统时钟树,数据手册里面缺失了,F103 和F105 系统时钟树有点区别的 STM32F103xx 的系统时钟树可以在《数据手册_STM32F103RCT6_ARMCORTEX-M3_72MHZ_2016-11-30.PDF》 资料里面找到,这pdf名字是我自己取的,可以去正点原子论坛找 startup_stm32f10x_hd.s 中

    2024年02月07日
    浏览(38)
  • STM32——STM32F103时钟解析(正点原子资料+HAL库代码分析)

    上次写系统时钟解析的时候说出一篇103的时钟解析,我就整理HAL库开发的正点的资料,给小白梳理,我也是小白,不做权威使用。 在 STM32 中,有五个时钟源,为 HSI、HSE、LSI、LSE、PLL。从时钟频率来分可以分为高速时钟源和低速时钟源,在这 5 个中 HIS,HSE 以及 PLL 是高速时钟

    2024年02月19日
    浏览(49)
  • STM32CubeMX生成C代码及时钟树配置(基于stm32f407)

    近来对于stm32单片机编程中,HAL库逐渐取代标准库成为主流的库。标准库支持的芯片型号有限,而且目前已经停止支持,而HAL库支持所有类型的芯片,可移植性也很高,再加上有神器STM32Cube可以生成工程模板,越来越多的编程开始从使用标准库转到使用HAL库。 新建工程后,在

    2024年02月15日
    浏览(61)
  • stm32f103rct6使用内部晶振作为时钟源

    stm32f103rct6(库函数版例程)使用内部晶振8M,倍频64M 参考 https://blog.csdn.net/oHuanCheng/article/details/105112884 http://www.openedv.com/forum.php?mod=viewthreadtid=286233 https://blog.csdn.net/ll148305879/article/details/106138302 修改system_stm32f10x.c文件中的void SystemInit(void)函数 内部时钟用到了FLASH,需要添加s

    2024年02月07日
    浏览(199)
  • 【单片机】STM32单片机,RTC实时时钟,STM32F103C8T6,程序,万年历,数字时钟

    我以STM32F103C8T6为例,但STM32F103的RTC是通用的,STM32F103C8T6有一个原理图: https://qq742971636.blog.csdn.net/article/details/131288390 用纽扣电池给VBAT供电(要共地),即可实现掉电后依旧走时的能力。 主要特性(来源于STM32中文参考手册V10.pdf): 记得加标准库文件: 串口接收:

    2024年02月11日
    浏览(57)
  • 洋桃电子STM32F407单片机入门教程笔记一:RCC时钟设置

    此文档作为对洋桃电子STM32F407单片机视频的整理,B站链接:2023更新 STM32入门F4= STM32F407单片机入门教程=WIFI连接阿里云物联网+CubeMX+HAL库+TFT彩屏+杜洋主讲_哔哩哔哩_bilibili 由于单片机内部的时钟结构都是相互关联的,一个时钟源出发可以供给多个功能,类似于树根、树杆、树

    2024年02月04日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包