STM32学习笔记(一)时钟和定时器

本文介绍了STM32的学习过程,特别是STM32的时钟系统,包括HSI、HSE、LSI、LSE和PLL等时钟源。接着详细讲述了定时器TIM3的配置,包括其挂载在APB1分频器上,计数时钟频率,预分频系数,以及定时器初始化和中断设置。通过TIM3_Init()函数实现精确的定时中断,举例说明如何配置获得一秒的中断。
摘要由CSDN通过智能技术生成

   由于近期在准备海洋航行器比赛,正好趁此机会学习一下ARM,看到周围很多同学都在使用32,所以我也买了一块STM32F103ZET6,准备好好地学习一下。

   STM32的时钟系统相当的复杂,包含了5个时钟源,分别是HSI HSE LSI LSE PLL,HSI是高速内部时钟、RC振荡器,频率为8M,HSE是高速外部时钟,即晶振,我的核心板上晶振为8M。LSI为低速内部时钟、RC振荡器,频率40k,LSE为低速外部时钟,接32.768kHz晶振,作为RTC时钟源。PLL为锁相环倍频输出,最大不超过72M。

   我在学习定时器时先看的是TIM3,它挂载在APB1分频器上,APB1上面挂载的是低速外设,APB2上挂载高速外设。

   在system_stm32f10x.c文件下,有默认定义SYSCLK_FREQ_72MHz,同时在SystemInit()函数下调用了SetSysClock(),根据宏定义将时钟设为72M。

   读取SystemCoreClock变量即可获得系统时钟频率。

   在默认情况下,系统的各个时钟频率如下:

   SYSCLK:72M

   AHB:72M

   APB1(PCLK1):36M

   APB2(PCLK2):72M

   PLL:72M

   

   详细的定时器设定如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值