您现在的位置是:首页 >学无止境 >STM32单片机(三)第三节:GPIO输入网站首页学无止境

STM32单片机(三)第三节:GPIO输入

乘凉~ 2024-07-11 06:01:02
简介STM32单片机(三)第三节:GPIO输入

❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。
☀️ 专栏适用人群 :适用于想要从零基础开始学习入门单片机,且有一定C语言基础的的童鞋。
?专栏目标:实现从零基础入门51单片机和STM32单片机,力求在玩好单片机的同时,能够了解一些计算机的基本概念,了解电路及其元器件的基本理论等。

⭐️ 专栏主要内容: 主要学习STM32单片机的功能、各个模块、单片机的外设、驱动等,最终玩好单片机和单片机的外设,全程手敲代码,实现我们所要实现的功能。
? 专栏说明 :如果文章知识点有错误的地方,欢迎大家随时在文章下面评论,我会第一时间改正。让我们一起学习,一起进步。
?专栏主页:http://t.csdn.cn/HCD8v

本学习过程参考:https://space.bilibili.com/383400717

STM3单片机安装软件、各种资料以及源码的路径:
链接:https://pan.baidu.com/s/1snD0uuTfMhchFqOMWvAiHA?pwd=asdf#list/path=%2F
提取码:asdf

链接里压缩包的解压密码:32

本大节主要学习GPIO通用输入输出口,包含两部分,第一小节主要学习GPIO的输出,第二小节是写三个简单的程序进行练习,分别是LED闪烁、LED流水灯、蜂鸣器等;第三小节是学习GPIO输入,第四小节是写两个简单的程序进行练习,分别是按键控制LED和光敏传感器控制蜂鸣器;
本小节主要学习GPIO的输入部分;

一、GPIO输入基本知识

其实在本大节的第一小节:STM32单片机(三)第一节:GPIO输出一、GPIO基础知识部分,已经把GPIO的结构和8中输入输出模式都讲完了;所以本小节就不再重复的讲述,直接从硬件部分开始;

二、硬件和电路介绍

2.1 按键介绍


按键时最常见的输入设备,按下导通,松下断开;

按键抖动:当在按键按下的瞬间,信号由高电平变为低电平时,会来回的抖动几下,如上图的右图所示,这个抖动比较快,一般在5-10ms之间,人眼是分辨不出来的,但是对于高速运行的单片机而言,5~10ms的时间还是很漫长的;所以我们要对这个抖动进行过滤;最简单的过滤方法就是加一段延时,把这个抖动时间耗过去;

2.2 传感器简介

在这里插入图片描述

2.3 硬件电路

在这里插入图片描述
上面两个是下接按键的方式,下面两个是上接按键的方式;一般来说我们的按键都是采用上面两种方式,也就是下接按键的方式;

在第一张图(左上角)中,是按键最常用的接法,在这里随便选取一个GPIO口,比如PA0,然后通过K1接到地,当按键按下时,PA0被直接拉到GND,此时读取PA0口的电压就是低电平;当按键松手时,PA0被悬空;所以这种接法下,必须要求PA0是上拉输入的模式,否则就会出现引脚电压不确定的错误现象;在上拉输入模式,PA0悬空时就默认是高电平;所以在这种方式下,按下按键,引脚为低电平,松手,引脚为高电平;

2.4 C语言基础

C语言数据类型

在这里插入图片描述
C语言宏定义

在这里插入图片描述

C语言typedef

在这里插入图片描述

C语音结构体

在这里插入图片描述

C语言枚举

在这里插入图片描述

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。