STM32单片机GPIO的配置模式

控制/MCU

1814人已加入

描述

1. 操作GPIO的意义

我们在学习单片机的时候,一般都是从操作GPIO开始的,很多单片机学习的教程第一课就是点亮发光二极管或者是流水灯。所以对于初学者而言,及时掌握单片机的GPIO口是一件具有里程碑意义的事情。今天以STM32单片机为例,简单看一下GPIO口。

2. STM32单片机GPIO的配置模式

STM32单片机的GPIO最有8组,分别为A,B,C,D,E,每组有0-15共16个。可以配置为8中模式:

发光二极管

3. 相关寄存器

配置GPIO相关的寄存器有如下几个:

1.端口配置低寄存器:(GPIOx_CRL) (x=A..E)

2.端口配置高寄存器:(GPIOx_CRH) (x=A..E)

3.端口输入数据寄存器:(GPIOx_IDR) (x=A..E)

4.端口输出数据寄存器:(GPIOx_ODR) (x=A..E)

其余未完全列出... ...

发光二极管

GPIOx_CRL用来配置0-7脚的输入输出模式,GPIOx_CRH用来配置8-15脚的输入输出模式。

发光二极管

GPIOx_IDR是GPIO的输入寄存器,即用来检测GPIO当前的状态。其读取方式如下(以PA1为例):

GPIOA->DIR&(1<<1)

发光二极管

GPIOx_ODR是GPIO的输出寄存器,即用来置位或者清零GPIO。其操作方式如下(以PA1为例):

PA1 = 1:GPIOA->OIR |= (1<<1) ;

PA1 = 0:GPIOA->OIR &=~(1<<1) ;

4. GPIO口的操作步骤

任何事情都是有套路的,操作GPIO也是一样:

打开GPIO时钟;

设置为输出或者输入(即设置方向);

开出或者读入;

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分