STM32-GPIO学习笔记

这篇博客详细介绍了STM32F103RB的GPIO口,包括4个IO口(A~D)和对应的7个寄存器,如CRL、CRH、IDR和ODR等。讲解了如何通过这些寄存器设置IO口的工作模式,如复用输出模式,并给出了设置特定IO口为上拉输入和推挽输出的代码示例。同时,提到了在复用功能下操作ODR无法输出的问题及解决方案。
摘要由CSDN通过智能技术生成

        STM32F103RB有4个IO口(A~D),每个IO口都有7个寄存器控制,他们分别是:

        端口配置寄存器(32位,共两个,CRL和CRH)

数据寄存器(32位,共两个,IDR和ODR)

置位/复位寄存器(32位,一个,BSRR)

复位寄存器(16位,一个,BRR)

锁存寄存器(32位,一个,LCKR)

常用的IO寄存器只有四个,即CRL、CRH、IDR、ODR,他们分别是设置IO口工作状态和输入/输出数据的,其中CRL和CRH共2个32位寄存器控制16个IO口的状态(CRL和CRH完全一样,只是CRL控制的是低8位输出口GPIOx(0:7),CRH控制的是高八位GPIOx(8:15)),即每四位控制一个IO口状态(高2位CNF,低2位MODE),寄存器情况如图所示:

STM32的IO口可以由软件配置成为8种模式:

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值