11.10.4. 寄存器定义

地址映射

模块名

基地址

地址空间

GPIO

0x18700000

4KB

寄存器列表

寄存器名

偏移地址

寄存器功能描述

GEN_IN_STA

0x00+G*0x100

通用输入状态寄存器

GEN_OUT_CFG

0x04+G*0x100

通用输出控制寄存器

GEN_IRQ_EN

0x08+G*0x100

通用中断使能寄存器

GEN_IRQ_STA

0x0C+G*0x100

通用中断状态寄存器

GEN_OUT_CLR

0x10+G*0x100

通用输出清除寄存器

GEN_OUT_SET

0x14+G*0x100

通用输出置位寄存器

GEN_OUT_TOG

0x18+G*0x100

通用输出反转寄存器

PIN_CFG

0x80+G*0x100+P*0x4

功能配置寄存器

VERSION

0xFFC

版本寄存器

其中,P和G取值范围如下:

分组

偏移地址

G取值

P取值

基地址

PA

0x000

0

0~11

0x18700000

PB

0x100

1

0~11

0x18700100

PC

0x200

2

0~6

0x18700200

PD

0x300

3

0~27

0x18700300

PE

0x400

4

0~19

0x18700400

PF

0x500

5

0~15

0x18700500

PU

0xE00

14

0~3

0x18700E00

11.10.5. 寄存器描述

11.10.5.1. 0x00+G*0x100 GEN_IN_STA

默认值:0x00000000

GPIO通用输入状态寄存器

位域

类型

默认值

描述

31:0

RO

0x0

IN_STA
引脚输入状态
0: 表示输入为低电平
1: 表示输入为高电平
每位对应一个引脚
该寄存器在PIN_FUN=1 & GEN_IN_EN=1有效
在PIN_FUN=2~6 & SPE_IN_EN=1有效

11.10.5.2. 0x04+G*0x100 GEN_OUT_CFG

默认值:0x00000000

GPIO通用输出控制寄存器

位域

类型

默认值

描述

31:0

R/W

0x0

OUT_CFG
引脚输出配置
0: 输出设置为低电平
1: 输出设置为高电平
每位对应一个引脚
该寄存器只有在PIN_FUN=1 & GEN_OUT_EN=1才有效

11.10.5.3. 0x08+G*0x100 GEN_IRQ_EN

默认值:0x00000000

GPIO通用中断使能寄存器

位域

类型

默认值

描述

31:0

R/W

0x0

IRQ_EN
引脚中断使能
0: 关闭
1: 使能
该寄存器只有在PIN_FUN=1 & GEN_IN_EN=1才有效

11.10.5.4. 0x0C+G*0x100 GEN_IRQ_STA

默认值:0x00000000

GPIO通用中断状态寄存器

位域

类型

默认值

描述

31:0

R/W1C

0x0

IRQ_STA
引脚中断状态
0: 无中断
1: 有中断
该寄存器只有在PIN_FUN=1 & GEN_IN_EN=1 & IRQ_EN=1才有效

11.10.5.5. 0x10+G*0x100 GEN_OUT_CLR

默认值:0x00000000

GPIO通用输出清除寄存器

位域

类型

默认值

描述

31:0

R/W1C

0x0

OUT_CFG_CLR
输出控制寄存器清除
0: 对应位保持不变
1: 对应位清除为零

11.10.5.6. 0x14+G*0x100 GEN_OUT_SET

默认值:0x00000000

GPIO通用输出置位寄存器

位域

类型

默认值

描述

31:0

R/W1C

0x0

OUT_CFG_SET
输出控制寄存器置位
0: 对应位保持不变
1: 对应位设置为一

11.10.5.7. 0x18+G*0x100 GEN_OUT_TOG

默认值:0x00000000

GPIO反转寄存器

位域

类型

默认值

描述

31:0

R/W1C

0x0

OUT_CFG_TOG
输出控制寄存器置位
0: 对应位保持不变
1: 对应位设置为一

11.10.5.8. 0x80+P*0x4+G*0x100 PIN_CFG

默认值:0x00000336(PA8~PA11)

GPIO引脚功能配置寄存器

位域

类型

默认值

描述

31:28

R/W

0x0

GEN_IN_DB1_POINT
通用输入第二级去抖参考点数
该配置值为去抖采样点数,配置为0则关闭本级去抖。
此字段只有在PIN_FUN=1 & GEN_IE=1才有效

27:24

R/W

0x0

GEN_IN_DB1_SAMP
通用输入第二级去抖采样除频
第二级去抖采样周期为2^(SAMP+1)个APB1时钟(100MHz)周期。
此字段只有在PIN_FUN=1 & GEN_IE=1才有效

23:20

R/W

0x0

GEN_IN_DB0_POINT
通用输入第一级去抖采样点数
第一级去抖采样周期为1个APB1时钟(100MHz)周期;
该配置为去抖采样点数,配置为0则关闭本级去抖。
此字段只有在PIN_FUN=1 & GEN_IE=1才有效

19

/

/

/

18

R/W

0x0

SPE_IE_FORCE
专用功能输入强制使能
0: 关闭
1: 打开
此字段只有在PIN_FUN=2~6才有效,用于调试使用,强制使能输入,
并将输入状态存到“通用输入状态寄存器”

17

R/W

0x0

GEN_OE
通用功能输出使能
0: 关闭
1: 打开
此字段只有在PIN_FUN=1才有效

16

R/W

0x0

GEN_IE
通用功能输入使能
0: 关闭
1: 打开
此字段只有在PIN_FUN=1才有效

15

/

/

/

14:12

R/W

0x0

GEN_IRQ_MODE
通用功能中断检测模式
0: 下降沿
1: 上升沿
2: 低电平
3: 高电平
4: 双沿(上升沿或下降沿)
5~7: 预留
此字段只有在PIN_FUN=1 & GEN_IE=1才有效

11:10

/

/

/

9:8

R/W

PA8: 3
PA9: 3
PA10: 3
PA11: 3
OTHERS: 0
PIN_PULL
引脚上下拉设置
0: 关闭
1: 预留
2: 下拉33KΩ到GND
3: 上拉33KΩ到VCC-IO

7

/

/

/

6:4

R/W

PA8: 3
PA9: 3
PA10: 3
PA11: 3
OTHERS: 0
PIN_DRV
引脚输出驱动能力
3.3V 1.8V
0: 180Ω 300Ω
1: 90Ω 150Ω
2: 60Ω 100Ω
3: 45Ω 75Ω
4: 36Ω 60Ω
5: 30Ω 50Ω
6: 26Ω 43Ω
7: 23Ω 38Ω

3:0

R/W

PA8: 6
PA9: 6
PA10: 6
PA11: 6
OTHERS: 0
PIN_FUN
引脚功能设置
0: 关闭
1: 通用功能(GEN)
2~8: 专用功能(SPE),参考 “引脚复用” 章节
注意该寄存器选择I/IE/O/OE信号,其他信号如PLL/DRV不受该寄存器影响

11.10.5.9. 0xFFC VERSION

默认值:0x00000100

GPIO版本寄存器

位域

类型

默认值

描述

31:0

RO

0x00000100

VERSION
GPIO版本 V1.00