![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
STM32单片机标准库
文章平均质量分 58
一只波本
本科在读,记录一下自己的学习笔记!
展开
-
PWR电源控制
PWR(Power Control)电源控制PWR负责管理STM32内部的电源供电部分,可以实现可编程电压监测器和低功耗模式的功能可编程电压监测器(PVD)可以监控VDD电源电压,当VDD下降到PVD阀值以下或上升到PVD阀值之上时,PVD会触发中断,用于执行紧急关闭任务低功耗模式包括睡眠模式(Sleep)、停机模式(Stop)和待机模式(Standby),可在系统空闲时,降低STM32的功耗,延长设备使用时间。原创 2024-02-14 11:24:48 · 713 阅读 · 1 评论 -
BKP寄存器与RTC实时时钟
BKP(Backup Registers)备份寄存器BKP可用于存储用户应用程序数据。当VDD(2.03.6V)电源被切断,他们仍然由VBAT(1.83.6V)维持供电。当系统在待机模式下被唤醒,或系统复位或电源复位时,他们也不会被复位TAMPER引脚产生的侵入事件将所有备份寄存器内容清除RTC引脚输出RTC校准时钟、RTC闹钟脉冲或者秒脉冲存储RTC时钟校准寄存器用户数据存储容量:20字节(中容量和小容量)/ 84字节(大容量和互联型)原创 2024-02-11 03:28:41 · 1714 阅读 · 5 评论 -
SPI通信
STM32内部集成了硬件SPI收发电路,可以由硬件自动执行时钟生成、数据收发等功能,减轻CPU的负担可配置8位/16位数据帧、高位先行/低位先行时钟频率: fPCLK / (2, 4, 8, 16, 32, 64, 128, 256)支持多主机模型、主或从操作可精简为半双工/单工通信支持DMA兼容I2S协议STM32F103C8T6 硬件SPI资源:SPI1、SPI2。原创 2024-02-06 16:49:13 · 491 阅读 · 1 评论 -
I2C通信
I2C(Inter IC Bus)是由Philips公司开发的一种通用数据总线两根通信线:SCL(Serial Clock)、SDA(Serial Data)同步,半双工带数据应答支持总线挂载多设备(一主多从、多主多从)注意:SDA和SCL均添加了上拉电阻,默认状态下电阻有弱上拉作用!I2C时序基本单元:起始条件:SCL高电平期间,SDA从高电平切换到低电平终止条件:SCL高电平期间,SDA从低电平切换到高电平。原创 2024-01-30 23:55:30 · 743 阅读 · 3 评论 -
USART串口通信
USART(Universal Synchronous/Asynchronous Receiver/Transmitter)通用同步/异步收发器USART是STM32内部集成的硬件外设,可根据数据寄存器的一个字节数据自动生成数据帧时序,从TX引脚发送出去,也可自动接收RX引脚的数据帧时序,拼接为一个字节数据,存放在数据寄存器里自带波特率发生器,最高达4.5Mbits/s可配置数据位长度(8/9)、停止位长度(0.5/1/1.5/2)可选校验位(无校验/奇校验/偶校验)原创 2024-01-27 14:46:27 · 630 阅读 · 1 评论 -
DMA(无须CPU干预)
DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设和存储器或者存储器和存储器之间的高速数据传输,无须CPU干预,节省了CPU的资源 12个独立可配置的通道: DMA1(7个通道), DMA2(5个通道) 每个通道都支持软件触发和特定的硬件触发 STM32F103C8T6 DMA资源:DMA1(7个通道)DMA可以进行外设以及储存器之间的数据传输,上面外设可以存放寄存器的地址,相仿,寄存器也可以存放外设的地址,只是单纯一个命名而已,没有规定存放规则!原创 2024-01-24 20:30:45 · 796 阅读 · 1 评论 -
STM32ADC模拟数字转换器
ADC(Analog-Digital Converter)模拟-数字转换器 ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁 12位逐次逼近型ADC,1us转换时间 输入电压范围:0~3.3V,转换结果范围:0~4095 18个输入通道,可测量16个外部和2个内部信号源 规则组和注入组两个转换单元 模拟看门狗自动监测输入电压范围。只需要开启多个GPIO口,然后在每次ADC转换更新ADC转换通道即可。这样就完成了ADC单次转换;二,ADC数字模拟转换原理。原创 2024-01-23 17:48:52 · 673 阅读 · 1 评论 -
TIM(编码器接口)
后面两个参数的作用和前面的一样,选择TIM_ICPolarity_Rising为不反相,反之TIM_ICPolarity_Falling为反相。Encoder Interface 编码器接口 编码器接口可接收增量(正交)编码器的信号,根据编码器旋转产生的正交信号脉冲,自动控制CNT自增或自减,从而指示编码器的位置、旋转方向和旋转速度 每个高级定时器和通用定时器都拥有1个编码器接口 两个输入引脚借用了输入捕获的通道1和通道2,所以通道3,4不可用于编码器接口。二,编码器接口基本结构以及工作模式。原创 2024-01-21 20:42:40 · 556 阅读 · 0 评论 -
TIM定时器(输入捕获)
IC(Input Capture)输入捕获 输入捕获模式下,当通道输入引脚出现指定电平跳变时,当前CNT的值将被锁存到CCR中,可用于测量PWM波形的频率、占空比、脉冲间隔、电平持续时间等参数 每个高级定时器和通用定时器都拥有4个输入捕获通道 可配置为PWMI模式,同时测量频率和占空比 可配合主从触发模式,实现硬件全自动测量。使用交叉连接,PWMI模式中配置下降沿触发,每出现一次下降沿,将CNT锁存到CCR2中,但此处不进行CNT清零!选择触发源为TIM_TS_TI1FP1,检测到上升沿立刻执行从模式。原创 2024-01-20 19:40:05 · 982 阅读 · 0 评论 -
TIM输出计较模式(PWM)
脉冲宽度(PWM)是一种数字信号,常用于控制电路,通常将高电平称为1,低电平称为0.(1)定时器中断输出PWM(不断进入中断,影响控制精度,输出误差也会相对增大)PWM信号保持高电平的时间百分比称为占空比,即高电平的时间/一个周期。(2)利用定时器的PWM的I/O口或复用I/O口(推荐用)连续一个高电平和一个低电平共同持续的时间称为一个周期。亦或通过重映射改变I/O口(通过AFIO)五,PWM 配置()时基单元和输出比较单元。三,STM32F103C8T6的PWM口。原创 2024-01-19 13:42:53 · 656 阅读 · 2 评论 -
STM32内部定时器定时中断和外部时钟源中断
/手动把更新标志位清除!单片机定时器上电会立马进行一次中断,需要在TIM_TimeBaseInit()后面开启中断前面手动清除更新标志位!RCC_APB1PeriphClockCmd,RCC_APB2PeriphClockCmd开启所需要的设备。首先根据需求和单片机型号选择定时器类型以及定时器资源。然后选择时钟源(单片机默认内部时钟源)再然后配置时CN_CNT=72Mhz。原创 2024-01-17 22:39:00 · 670 阅读 · 0 评论 -
STM32单片机EXTI外部中断的使用
EXTI(Extern Interrupt)外部中断 EXTI可以监测指定GPIO口的电平信号,当其指定的GPIO口产生电平变化时,EXTI将立即向NVIC发出中断申请,经过NVIC裁决后即可中断CPU主程序,使CPU执行EXTI对应的中断程序 支持的触发方式:上升沿/下降沿/双边沿/软件触发 支持的GPIO口:所有GPIO口,但相同的Pin不能同时触发中断 通道数:16个GPIO_Pin,外加PVD输出、RTC闹钟、USB唤醒、以太网唤醒 触发响应方式:中断响应/事件响应。原创 2024-01-15 15:54:10 · 617 阅读 · 3 评论 -
STM32GPIO
(2)GPIO_Mode_IN_FLOATING 浮空输入。(7)GPIO_Mode_AF_OD 复用开漏输出。(5)GPIO_Mode_Out_OD 开漏输出。(6)GPIO_Mode_Out_PP 推挽输出。(1)GPIO_Mode_AIN 模拟输入。原创 2024-01-14 10:14:55 · 495 阅读 · 4 评论