stm32之点亮LED
学习stm32单片机的时候,会有三种,标准库,寄存器,HAL库。这里我们统一使用HAL库,使用stm32cubemx来建工程。会方便很多简化我们编写代码的时间但其实不管是HAL库还是标准库都是操作寄存器的只是官方给我们封装好了。软件就不演示安装了 。欢迎各位指出我的错误,共同进步。
我们通过每个案例来介绍单片机的知识点,流水的单片机,铁打的LED灯。大部分来说不管是什么单片机都是以点亮LED灯为基础
一分析原理图
这里我们根据给的原理图,找到led的区域。
先看LED0 是和PB5引脚相连的 即PB5引脚控制着LED0的电平,上接3.3V电压,即默认是高电平,所以我们将PB5设置为低电平的时候,电路导通。
(这里我们说明一下,电路导通,是需要一个高电平和一个低电平导致电流可以正常流通的。这里根据原理图发现PB5这个引脚所在的电路,是外接的有3.3V的VCC,即板子一上电就会有高电平)
所以我们想让LED0亮,就将PB5引脚设置为低电平。LED1同理。
那我们怎么设置,能否设置引脚为低电平或高电平呢?
二GPIO
2.1 什么是GPIO?
概述:General Purpose Input Output,即通用输入输出端口,简称GPIO 作用:负责采集外部器件的信息或者控制外部器件工作,即输入输出。
是不是很迷糊,简单来就是控制引脚使其能够达到输入和输出电平的操作。
比如我们这里的LED,我们需要将PB5设置为低电平,那是输入还是输出呢?
注意:这里的输入和输出的操作对象即主体是单片机。所以我们需要单片机去给PB5引脚输出低电平。即设置为输出模式。
2.2GPIO的特点
1,不同型号,IO口数量可能不一样,可通过选型手册快速查询
2,快速翻转,每次翻转最快只需要两个时钟周期(F1最高速度可以到