单片机
返回首页

STM32F10x中的端口寄存器

2020-09-22 来源:eefocus

GPIO(General Purpose Input Output)是通用输入/输出端口;
APB2ENR 高级外设总线(Andvaced Peripheral Bus)使能(Enable)寄存器;外设的对应位使能(置1)后,该外设才可以使用。


APB2RSTR 高级外设总线(Andvaced Peripheral Bus)复位(Reset)寄存器;当外设出现异常的时候可以通过复位寄存器里面的对应位设置,实现该外设的复位,然后重新配置这个外设达到让其重新工作的目的。一般在系统刚开始配置外设的时候,都会先执行复位该外设的操作。


GPIOx_CRL (x=A..E) 配置低(Config Low)寄存器
GPIOx_CRH (x=A..E) 配置高(Config High)寄存器、
MODEy[1:0]:端口x的模式位;软件通过这些位配置相应的I/O端口。
00:输入模式(复位后的状态) 
01:输出模式,最大速度10MHz
10:输出模式,最大速度2MHz 
11:输出模式,最大速度50MHz
CNFy[1:0]:端口x的配置位;软件通过这些位配置相应的I/O端口。
在输入模式(MODE[1:0]=00):
00:模拟输入模式 
01:浮空输入模式(复位后的状态) 
10:上拉/下拉输入模式 
11:保留 
在输出模式(MODE[1:0]>00): 
00:通用推挽输出模式 
01:通用开漏输出模式 
10:复用功能推挽输出模式 
11:复用功能开漏输出模式

GPIOx_IDR (x=A..E) 输入数据(Input Data)寄存器
IDRy[15:0]:端口输入数据;这些位为只读并只能以字(16位)的形式读出。读出的值为对应I/O口的状态。

GPIOx_ODR (x=A..E) 输出数据(Output Data)寄存器
ODRy[15:0]:端口输出数据;这些位可读可写并只能以字(16位)的形式操作。
注:对GPIOx_BSRR(x=A…E),可以分别地对各个ODR位进行独立的设置/清除。

GPIOx_BSRR(x=A..E) 位设置/清除(Bit Set/Reset)寄存器
BRy[15:0]: 清除端口x的位;这些位只能写入并只能以字(16位)的形式操作。 
0:对对应的ODRy位不产生影响 
1:清除对应的ODRy位为0 
BSy[15:0]: 设置端口x的位;这些位只能写入并只能以字(16位)的形式操作。 
0:对对应的ODRy位不产生影响 
1:设置对应的ODRy位为1
注:如果同时设置了BSy和BRy的对应位,BSy位起作用。

GPIOx_BRR(x=A..E) 位清除(Bit Reset)寄存器
BRy[15:0]: 清除端口x的位;这些位只能写入并只能以字(16位)的形式操作。 
0:对对应的ODRy位不产生影响 
1:清除对应的ODRy位为0 

GPIOx_LCKR(x=A..E) 配置锁定(Lock)寄存器
当执行正确的写序列设置了位16(LCKK)时,该寄存器用来锁定端口位的配置。位[15:0]用于锁定GPIO端口的配置。在规定的写入操作期间,不能改变LCKP[15:0]。当对相应的端口位执行了LOCK序列后,在下次系统复位之前将不能再更改端口位的配置。每个锁定位锁定控制寄存器(CRL, CRH)中相应的4个位。
LCKK:锁键(Lock Key);该位可随时读出,它只可通过锁键写入序列修改。 
0:端口配置锁键位未激活 
1:端口配置锁键位被激活,下次系统复位前GPIOx_LCKR寄存器被锁住。 
锁键的写入序列:写1 -> 写0 -> 写1 -> 读0 -> 读1 
最后一个读可省略,但可以用来确认锁键已被激活。 
注:在操作锁键的写入序列时,不能改变LCK[15:0]的值。 
操作锁键写入序列中的任何错误将不能激活锁键。 
LCKy[15:0]: 端口x的锁位;这些位可读可写但只能在LCKK位为0时写入。 
0:不锁定端口的配置 
1:锁定端口的配置 


进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • PIC单片机控制的遥控防盗报警器电路

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 用NE555制作定时器

  • 如何构建一个触摸传感器电路

  • 基于ICL296的大电流开关稳压器电源电路

  • 基于TDA2003的简单低功耗汽车立体声放大器电路

    相关电子头条文章