STM32学习笔记
文章平均质量分 75
STM32学习笔记
zhu guang
RKayer
展开
-
---时钟
时钟时钟介绍简单的说,时钟是单片机的脉搏,是单片机的驱动源,使用任何一个外设都必须打开相应的时钟。这样的好处是,如果不使用一个外设的时候,就把它的时钟关掉,从而可以降低系统的功耗,达到节能,实现低功耗的效果。每个时钟tick,系统都会处理一步数据,这样才能让工作不出现紊乱。STM32有5个时钟源①HSI:高速内部时钟,RC振荡器,频率为8MHZ,精度不高②HSE:高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHZ-16MHZ③LSI:低速内部时钟,RC振荡器,频率为40kH原创 2021-08-05 13:29:56 · 310 阅读 · 0 评论 -
---扩展
关于C语言中的常量后面加u的解释后缀就是告诉编译器该常数的属性。默认为有符号INT型,加了u就是无符号的,加了l就是long型。做下移位就知道结果了。以0x80为例,左移次数过多编译器会提示你符号位被改变,即负数被移位成正数。加个u的话就被编译器识别为无符号数,可以随意移位。不会影响符号位。...原创 2021-08-05 12:50:14 · 997 阅读 · 0 评论 -
--PWM
PWM51里面没有关于PWM的硬件,所以只能自己用定时器去配置产生PWM。但是在32里面是有PWM外设的。STM32 的定时器除了 TIM6 和 7。其他的定时器都可以用来产生 PWM 输出。其中高级定时器 TIM1 和 TIM8 可以同时产生多达 7 路的 PWM 输出。而通用定时器也能同时产生多达 4路的 PWM 输出,这样,STM32 最多可以同时产生 30 路 PWM 输出TIMx_ CCRx寄存器中存放着CCR值,这个值通过与CNT的值(定时器的计数值)进行比较,从而做出输出高/低电平原创 2021-08-05 12:23:03 · 393 阅读 · 0 评论 -
中断与定时器
中断优先级NVICSTM32 的中断向量具有两个属性,一个为抢占属性,另一个为响应属性,其属性编号越小,表明它的优先级别越高。抢占,是指打断其他中断的属性,即因为具有这个属性会出现嵌套中断(在执行中断服务函数A 的过程中被中断B 打断,执行完中断服务函数B 再继续执行中断服务函数A),抢占属性由NVIC_IRQChannelPreemptionPriority 的参数配置。而响应属性则应用在抢占属性相同的情况下,当两个中断向量的抢占优先级相同时,如果两个中断同时到达, 则先处理响应优先级高的中断, 响原创 2021-08-05 12:21:33 · 410 阅读 · 0 评论 -
-串口通信
串口通信USART 通用异步串行收发器STM32RCT6提供了5种串口USART,板载了一个USART串口串口通信采用两根线RX和TX,一根接收一根发送,和SPI,I2C不一样,USART为全双工通信串口和USB要用两个跳线帽连起来,PA9 - RXD;PA10 - TXD常用的串口相关寄存器USART_SR 状态寄存器 用于设置串口收发的标志以及一些错误状态USART_DR 数据寄存器 低8位存储发送接收的数据USART_BRR 波特率寄存器 设置波特率 高12位为整数,低4位为小数(原创 2021-08-05 12:18:30 · 239 阅读 · 0 评论 -
--GPIO
STM32学习笔记GPIOSTM32F103RCT6共有51个GPIO:PA(B,C,D) 0-15 和PD 0-2GPIO相关寄存器端口配置寄存器(GPIOx_CRL和GPIOx_CRH)端口配置位寄存器用来设置GPIO每个端口的模式GPIOx_CRL 和 GPIOx_CRH分别控制每组GPIO的低8位和高8位每个端口由端口配置位寄存器的四个位进行模式控制,分别为CNF1,CNF0,MODE1,MODE0(从高到低位),故一个端口位配置寄存器是4 * 8 = 32位配置模式CN原创 2021-07-25 11:37:14 · 349 阅读 · 0 评论