STM32入门教程笔记

1.GPIO位结构

KEIL5代码在输入输出寄存器中的意思

输入寄存器

uint8_t GPIO_ReadInputDataBit 表示:读取 输入数据寄存器 中的某一位

uint16_t GPIO_ReadInputData    表示:读取 整个输入数据寄存器 

输出寄存器

uint8_t GPIO_ReadOutputDataBit 表示:读取 输出数据寄存器 中的某一位

uint16_t GPIO_ReadOutputData 表示:读取 整个输入数据寄存器 

2.通用外设驱动模型(四步法)

1.初始化(时钟设置、参数设置、IO设置、中断设置(开中断、设NVIC)可选)

2.读函数(可选)从外设读取数据(可选)

3.写函数(可选)从外设写入数据(可选)

4.中断服务函数(可选)根据中断标志位,处理外设各种中断事务(可选)

3.EXTI的HAL库设置步骤

4.HAL库中段回调处理机制介绍

5.USART/UART异步通信配置步骤

1.开启串口异步接受中断

2.设置中断服务函数

3.发送制定字节数据

阻塞:需要数据发送完成,才能运行其他程序

4.发送采集数据的三种方式

6.ADC不同模式组合的作用

ADC电压转换公式:

ADC实际电压=3.3V参考电压*ADC采样数值/66536(ADC设置16位)

7.ADC单通道采集实验步骤

8.ADC单通道采集(DMA读取)实验步骤

9.基础定时器中断实现步骤

10.通用定时器PWM输出实验

11.通用定时器输入捕获步骤

12.cubeMX步骤

12.PWM输出频率计算

1.普通输出,假设系统时钟SYSCLK=200Mhz,向上计数时,从0计数到ARR,向下计数时,从ARR计数到0;则频率为: f = 200M / (ARR+1)∗(PSC+1)=40KHZ。

例:

计算时钟频率为200MHZ,计数频率为1S一次的值。

解:

arr最大65535

200M/(ARR+1)(PSC+1)=1HZ

1/1HZ=1S

ARR=50000 -1,PSC = 4000-1

2.PWM使用中心对齐模式

PSC=0,ARR=5000

中心对齐的PWM频率是: f = 200M/( (ARR)∗(PSC+1)* 2) = 20KHz

13.设置CCR比较器的值函数

/ 设置CCR1的值  
__HAL_TIM_SET_COMPARE(&htim, TIM_CHANNEL_1, 500); // 设置CCR1的值为500

开漏

只能输出低电平,高电平默认是高阻态

14.DMA配置过程具体函数

15.PWM模式和输出比较模式区别

PWM模式和输出比较模式都是STM32定时器的工作模式。它们都是通过改变定时器的计数值来控制输出的占空比,从而控制输出的电平。

       两者的区别在于(这里的固定都是在初始状态下,也是可以通过其他方法来调节的):

       PWM模式下,定时器的计数值是固定的,而占空比是通过改变CCRx寄存器的值来实现的;

        输出比较模式下,CCR寄存器的值是固定的,而占空比是通过改变ARR寄存器的值来实现的。

          此外,PWM模式下,所有通道产生的频率都是相同的;而在输出比较模式下,每个通道可以产生不同频率的信号。

16.快速修改当前捕获通道的极性

__HAL_TIM_SET_CAPTUREPOLARITY(__HANDLE__, __CHANNEL__, __POLARITY__)  

用于直接设置定时器输入捕获通道的触发极性。这个宏允许你快速地修改捕获极性,而不需要重新配置整个输入捕获通道。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值