笔记3:STM32 ---GPIO的基本知识

一.简介:
GPIO:general purpose input output,通用输入输出端口,简单的来说也就是软件可控制的引脚,可以通过软件控制输出1或者0,STM32的GPIO引脚与外部设备连接起来,从而实现与外部通讯,控制与数据采集的功能。
GPIO与引脚的区别:GPIO属于引脚的一部分,但是不是所有的引脚都可以充当GPIO。
在这里插入图片描述
GPIO功能:STM32F4XX英文数据手册
在这里插入图片描述
pin:表示贴片封装
ball:表示DIP双列直插
引脚分类:
在这里插入图片描述
STM32里面除开ADC I/O是3.3V,其他I/O都是5V容忍。5V容忍是说另外一个芯片如果是5V供电,即使STM32是3.3V供电,他们也是可以通信的。
二.功能框图介绍
1.施密特功能:将实际电压变成1或者0,即为整型作用,规定电压>1.8V为1,高电平,低于该数值为0,低电平。
在这里插入图片描述
2.设置端口模式:输入/输出/复用/模拟
在这里插入图片描述
复用是指的是功能的复用,例如引脚可以做数字IO,可以做模拟IO,可以做串口引脚,可以做IIC引脚等等。引脚可以输入模式,可以输出模式,这并不叫复用。
3.输出模式:
在这里插入图片描述
推挽输出(复位状态,默认状态):I/O口可以输出0和1,驱动能力强。驱动能力是因为MOS管内阻很小,驱动的电流就很大。
在这里插入图片描述
开漏输出:只能输出低电平,若想要输出高电平,必须外加电阻和VDD.
在这里插入图片描述
4.STM32如何输出5V:利用开漏输出,输入与输出反向,即输入为0,输出为1;输入为1,输出为0。若想输出同向,则再加一个三极管。
在这里插入图片描述
三.库函数编程过程
1.确定GPIO端口模式:输入或者输出或复用或模拟(模式寄存器:MODER)
2.,如果是输出,还要配置是推挽还是开漏(输出类型寄存器:OTYPER)
3.配置输出的速度(输出速度寄存器:OSPEEDR)
4.输出的时候内部上拉电阻要不要开启(上拉下拉寄存器:PUPDR)
5.具体要输出的内容(置位复位寄存器:BSRR/数据输出寄存器:ODR),BSRR中的配置内容最终还是输入到ODR中。
GPIO初始化结构体(库函数操作):

typedef struct
{
  uint32_t GPIO_Pin;              //设置引脚

  GPIOMode_TypeDef GPIO_Mode;     //设置模式:输入模式,输出模式,复用模式,模拟模式

  GPIOSpeed_TypeDef GPIO_Speed;   //GPIO的引脚速度
  
  GPIOOType_TypeDef GPIO_OType;   //输出模式有分为开漏输出,推挽输出

  GPIOPuPd_TypeDef GPIO_PuPd;     //该引脚是否选择上拉或着下拉
}GPIO_InitTypeDef;
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《STM32自学笔记第3版》是一本关于STM32微控制器的自学教程。该书深入介绍了STM32微控制器的原理、应用和编程方法。 本书第3版增加了最新的STM32系列微控制器的内容,包括了更多实际应用的案例和项目。读者通过该书可以学习到如何使用STM32微控制器进行各种应用开发,如控制系统、嵌入式系统、通讯系统等。 本书首先对STM32微控制器的硬件结构进行了详细的介绍,包括了芯片的内部结构、引脚的功能和特性。然后,通过具体的实验项目,教授了STM32的基本编程方法和技巧。读者可以通过这些实验,了解STM32的各种功能模块的使用方法,如ADC、USART、SPI等。同时,还介绍了如何使用STM32CubeMX和Keil MDK等常用的开发工具进行项目开发。 此外,本书还对STM32的外设扩展进行了介绍,如通过I2C总线连接外部设备,通过CAN总线实现通讯等。读者可以学习到如何通过外设扩展,实现更复杂的应用系统。 总的来说,《STM32自学笔记第3版》是一本系统、全面的STM32自学教程。通过学习该书,读者可以深入了解STM32微控制器,并掌握其在各种应用领域的开发方法。无论是初学者还是有一定STM32开发经验的人都可以从中获益。 ### 回答2: 《STM32自学笔记 第3版》是一本适合自学STM32开发板的参考书籍。本书以STM32微控制器为基础,详细介绍了STM32的硬件结构和软件开发环境。作者结合自身经验和实际案例,将复杂的知识点以简洁明了的方式呈现,使读者能够快速入门。 第3版的内容相比前两版有所扩充和更新。首先,在硬件方面,本书详细介绍了STM32的引脚布局和外设接口,包括GPIO、USART、I2C、SPI等,使读者能够充分了解STM32的基本硬件结构和功能。 其次,在软件方面,本书提供了详细的开发环境配置和编程指南。包括了Keil MDK开发环境的安装和使用、编译、调试和下载等操作步骤,并且给出了一些常见问题的解决方法。同时,作者还介绍了如何使用STM32的标准外设库进行编程,包括GPIO控制、中断处理、定时器、串口通信等。 除此之外,本书还介绍了一些实际应用案例,以帮助读者更好地理解和应用所学知识。例如,如何使用STM32控制LED灯、驱动液晶显示屏、读取温度传感器数据等。 总体而言,本书是一本系统全面的STM32自学教程。通过学习本书,读者可以了解STM32的基本原理和应用,掌握STM32的硬件配置和软件开发,从而能够独立完成STM32的项目开发。无论是初学者还是有一定基础的开发者都可以从本书中获得很大的收益。 ### 回答3: 《STM32自学笔记第3版》是一本专门介绍如何自学STM32开发的书籍。本书主要针对初学者,通过详细的讲解和实践项目的演示,帮助读者快速上手STM32开发。 书中首先介绍了STM32系列微控制器的基本知识,包括硬件架构、外设功能和寄存器的使用等。对于没有接触过STM32的读者来说,这一部分对于理解后面的内容非常重要。 接着,书中从简单的LED控制开始,逐步引导读者学习各种外设的使用,如GPIO、定时器、UART等。同时,每个外设的使用都配有具体的实例代码和详细的注解,方便读者理解和实践。 书中还介绍了STM32开发中常用的开发工具和环境配置方法。从芯片选择、开发板选购到软件安装和项目配置,都有详细的指导。同时,书中还提供了一些调试技巧和常见问题的解答,帮助读者避开一些容易遇到的坑。 最后,书中还介绍了一些常用的外设应用案例,如按键控制、LCD显示、温湿度传感器等。通过这些案例,读者可以更好地理解STM32的应用场景和开发思路,提升自己的技能水平。 总的来说,《STM32自学笔记第3版》是一本适合学习STM32开发的入门书籍。通过系统完整的内容和实例演示,读者可以快速掌握STM32基本知识和开发技巧。无论是初学者还是有一定经验的开发者,都可以从中获得实际的帮助和启示。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值