STM32总结之开启外设时钟

发布者:才富五车330最新更新时间:2019-07-19 来源: eefocus关键字:STM32  外设时钟  LED灯 手机看文章 扫描二维码
随时随地手机看文章

我们知道到,STM32的大多数外设,在使用前都要开启该外设的时钟。


下面我们以STM32VET6指南者为例


1.点亮LED灯实验时,用到了GPIOB,我们需要开启GPIOB的时钟:


RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIO,ENABLE);//开启GPIOB的时钟N


2.使用按键的时候,不论是查询方式,还是中断方式,都用到了GPIOA,所以要开启GPIOA的时钟。


但是按键查询方式和中断方式有点不一样。


按键查询方式时,GPIO以如下方式开启时钟:


    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);//这里使用的时KEY1,对应PA0


按键中断方式时,GPIO以如下方式开启时钟:


RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC|RCC_APB2Periph_AFIO,ENABLE);//这里使用的时KEY2,对应PC13


3.配置UASRT1时,用到了PA9和PA10,所有要开启GPIOA的时钟,另外还有开启USART1的时钟。


    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA,ENABLE);  //跟按键中断不一样,按键中断比较特殊

    RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1,ENABLE);    


4.使用DMA时,要开启DAM时钟,DMA挂载在AHB总线


    RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1,ENABLE);


5.使用基本定时器时要开启基本定时器的时钟。基本定时器挂载在APB1总线上。


    RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM6,ENABLE);


6.使用通用定时器时要开启通用定时器的时钟。通用定时器挂载在APB1总线上。


   RCC_APB1PeriphClockCmd(RCC_APB1Periph_TIM3,ENABLE);


需要注意的是:


1.配置按键中断时,只需要开启相应的GPIO的时钟。初始化EXTI结构体时,不需要开启EXTI时钟。


2.配置NVIC中断向量控制器时,不需要开启时钟。


3.使用SysTick系统定时器时,不需要开启时钟。


关键字:STM32  外设时钟  LED灯 引用地址:STM32总结之开启外设时钟

上一篇:一种可行的STM32F103外设RTC使用方法
下一篇:【嵌入式】STM32的库函数使用

推荐阅读最新更新时间:2024-11-17 07:27

STM32之USART(one)
USART我们一般是用在调试程序时输出调试信息,或者是用来做串行通讯。 看到ST的手册USART的功能有多么强大,其实我们很少用到那么多功能,再者我对那些部分也不是很熟,所以我们先说一下我们最常用最简单的部分,以后如果用到其他的模式我们再来看,我们的内存是有限的,所以将这些最常用的知识常驻内存吧。 好了,那我们下边来看USART: 使USART正常使用,我们总结下步骤吧 1.要使用一个模块第一我们就要先时能相应的时钟,相应的,如果某个模块不再使用了要关闭相应的始终,这样的点点滴滴我们就能降低我们系统的功耗。 2.配置相应的引脚 3.配置USART的波特率,帧格式等 4.然后就是发送接收的事了
[单片机]
<font color='red'>STM32</font>之USART(one)
stm32笔记2-3 GPIO操作(库函数)
GPIO操作的几个重要函数: 初始化函数(1个): void GPIO_Init(GPIO_TypeDef* GPIOx, GPIO_InitTypeDef* GPIO_InitStruct) 读取输入电平函数(2个): uint8_t GPIO_ReadInputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin); uint16_t GPIO_ReadInputData(GPIO_TypeDef* GPIOx); 读取输出电平函数(2个): uint8_t GPIO_ReadOutputDataBit(GPIO_TypeDef* GPIOx, uint16_t GPIO_P
[单片机]
STM32平衡小车】APP调试协议及代码分析
一、首页界面 printf( {A%d:%d:%d:%d}$ ,a,b,c,d); a、b、c、d分别为需要显示的状态: a对应左边的码盘,b对应右边的码盘,通过百分比表示,可以用于速度等状态的显示,范围是0—100(%) c主要是用于显示电量,范围也是0—100(%) d是角度值,范围是-180°—180°。 APP控件名称与发送指令对应对应关系 二、波形界面 printf( {B%d:%d:%d:%d:%d}$ ,a,b,c,d,e); 5个波形通道! a、b、c、d、e 为需要显示的波形,发送的参数必须为整型变量,如果需要显示浮点数,放大一定的倍数之后再打印出来。 需要注意的是,每个通道发送的数据
[单片机]
【<font color='red'>STM32</font>平衡小车】APP调试协议及代码分析
stm32 TIM8和TIM3初始化相互有影响
查了资料,在TIM8下面添加了下面的代码: TIM_OCInitStructure.TIM_OutputNState = TIM_OutputNState_Disable; TIM_OCInitStructure.TIM_OCIdleState = TIM_OCIdleState_Reset ; TIM_OCInitStructure.TIM_OCNIdleState = TIM_OCNIdleState_Reset;
[单片机]
如何在MDK中查看系统时钟配置(stm32编程技巧小记)
最近stm32f103编程中遇到好多个问题,都是因为系统时钟配置不正确引起的 SYSCLOCK AHBCLK APB1CLK APB2CLK 这些时钟配置如果搞不清楚,很容易引起编程错误,查找起来也不方便,还有像flash读写操作,必须开启HSI内部时钟,怎么确定你的时钟开启了没有,如果通过寄存器每条语句去排查,耗时,并且前面的配置可能在后面被冲掉了,怎么能有一种比较好的方式去查看时钟配置是否正确呢? 通过了解,我认识到mdk带的system viewer widow 对应数据手册可以帮助我们来查看配置,排除错误。 在仿真界面,在时钟配置之后设置断点,运行到断点 在system viewer widow中点击RCC查看寄存器
[单片机]
如何在MDK中查看系统<font color='red'>时钟</font>配置(<font color='red'>stm32</font>编程技巧小记)
STM32启动文件选择说明
startup_stm32f10x_cl.s 互联型的器件,STM32F105xx,STM32F107xx startup_stm32f10x_hd.s 大容量的STM32F101xx,STM32F102xx,STM32F103xx startup_stm32f10x_hd_vl.s 大容量的STM32F100xx startup_stm32f10x_ld.s 小容量的STM32F101xx,STM32F102xx,STM32F103xx startup_stm32f10x_ld_vl.s 小容量的STM32F100xx startup_stm32f10x_md.s 中容量的STM32F101xx,STM32F102xx,STM3
[单片机]
LED照明普及仍需3-5年 价格下降是唯一选择
  在 LED 成本降下来之前, LED灯 不会得到大规模普及,估计至少需要3-5年时间;在 LED照明 电源 中使用电解电容、薄膜电容或陶瓷电容,各有利弊;MR16 LED灯泡潜力巨大,120/230V AC输入LED灯泡将会是市场主流。   LED照明仍处于非常初级的阶段。市场对LED照明的接受度较低,主要是因为成本较高。多数成本在于LED上面。在LED成本降下来之前,LED灯不会得到大规模普及。Maxim公司业务经理Piero Bianco认为,7瓦LED灯的成本必须降到5.00美元左右才能使其得到大规模采用。我们可以3-5年后看到这种情形。   一个不太明确的问题是,LED灯将来采用工作在较高电流上的较少LED(6-8
[电源管理]
STM32 ucos 下添加CAN模块
1.CAN IO RX TX 的设定和重映射 GPIO_PinRemapConfig(GPIO_Remap2_CAN, ENABLE); //端口重映射到PD0,PD1 2.clock CAN IO CLOCK 的开启 、*-------gpio for can------------*/ RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOD | RCC_APB2Periph_AFIO, ENABLE); CAN 自身CLOCK 的开启、 /* CAN Periph clock enable */ RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved