第5章 LPC2000系列ARM硬件结构
如果存储器组配置成 32 位宽度,地址线 A0 和 A1 无用。如果存储器组配置成 16 位宽,
5.7 引脚连接模块
5.7.1 介绍
引脚连接模块使同一个管脚可以具有多种功能,即管脚复用,这是通过配置相关寄存器 控制多路开关来连接引脚与片内外设。
外设在激活和任何相关中断使能之前必须连接到适当的引脚。任何使能的外设功能如果 没有映射到相关的引脚,则被认为是无效的。
5.7.2 寄存器描述 寄存器汇总
引脚连接模块包含3 个寄存器,见表 5.43。
表 5.43 引脚连接模块寄存器映射
名称 描述 访问 复位值 地址
PINSEL0 引脚选择寄存器0 读/写 0x0000 0000 0xE002C000 PINSEL1 引脚选择寄存器1 读/写 0x1540 0000 0xE002C004 PINSEL2 引脚选择寄存器2 读/写 见表5.47 和表 5.48 0xE002C014
引脚功能选择寄存器 0(PINSEL0 - 0xE002C000)
PINSEL0 寄存器按照表 5.44 当中的设定来控制引脚的功能。IODIR 寄存器中的方向控 制位只有在引脚选择GPIO 功能时才有效。对于其它功能,方向是自动控制的。
表 5.44 引脚选择寄存器 0
PINSEL0 引脚名称 00 01 10 11 复位值
1:0 P0.0 GPIO P0.0 TxD(UART0) PWM1 保留 00 3:2 P0.1 GPIO P0.1 RxD(UART0) PWM3 EINT0 00 5:4 P0.2 GPIO P0.2 SCL(I2C) 捕获0.0(TIMER0) 保留 00 7:6 P0.3 GPIO P0.3 SDA(I2C) 匹配0.0(TIMER0) EINT1 00 9:8 P0.4 GPIO P0.4 SCK(SPI0) 捕获0.1(TIMER0) 保留 00 11:10 P0.5 GPIO P0.5 MISO(SPI0) 匹配0.1(TIMER0) 保留 00 13:12 P0.6 GPIO P0.6 MOSI(SPI0) 捕获0.2(TIMER0) 保留 00 15:14 P0.7 GPIO P0.7 SSEL(SPI0) PWM2 EINT2 00 17:16 P0.8 GPIO P0.8 TxD UART1 PWM4 保留 00 19:18 P0.9 GPIO P0.9 RxD(UART1) PWM6 EINT3 00 21:20 P0.10 GPIO P0.10 RTS(UART1) 捕获1.0(TIMER1) 保留 00 23:22 P0.11 GPIO P0.11 CTS(UART1) 捕获1.1(TIMER1) 保留 00 25:24 P0.12 GPIO P0.12 DSR(UART1) 匹配1.0(TIMER1) 保留 00 27:26 P0.13 GPIO P0.13 DTR(UART1) 匹配1.1(TIMER1) 保留 00 29:28 P0.14 GPIO P0.14 CD(UART1) EINT1 保留 00 31:30 P0.15 GPIO P0.15 RI(UART1) EINT2 保留 00
说明:表5.44 中的“PINSEL0”栏表示 PINSEL0 寄存器的控制位,“引脚名称”栏表示控制位所控制 的引脚,“00/01/10//11”栏表示控制位在这些设定值时的引脚功能。比如,P0.0 脚,控制位为 PINSEL0[1:0],
- - 171
当PINSEL0[1:0]=00 时引脚为 GPIO 功能(即 P0.0),当 PINSEL0[1:0]=01 时引脚为 UART0 的 TxD 功能脚,
当PINSEL0[1:0]=10 时引脚为 PWM1 功能脚。
引脚功能选择寄存器 1(PINSEL1 - 0xE002C004)
PINSEL1 寄存器按照表 5.45 中的设定来控制引脚的功能。IODIR 寄存器中的方向控制 位只有在引脚选择GPIO 功能时才有效。对于其它功能,方向是自动控制的。
表 5.45 引脚选择寄存器 1
PINSEL1 引脚名称 00 01 10 11 复位值
1:0 P0.16 GPIO P0.16 EINT0 匹配 0.2(TIMER0)
保留 00
3:2 P0.17 GPIO P0.17 捕获1.2(TIMER1) SCK(SPI1) 匹配1.2(TIMER1) 00 5:4 P0.18 GPIO P0.18 捕获1.3(TIMER1) MISO(SPI1) 匹配1.3(TIMER1) 00 7:6 P0.19 GPIO P0.19 匹配1.2(TIMER1) MOSI(SPI1) 匹配1.3(TIMER1) 00
9:8 P0.20 GPIO P0.20 匹配1,3(TIMER1) SSEL(SPI1) EINT3 00 11:10 P0.21 GPIO P0.21 PWM5 保留 捕获1.3(TIMER1) 00
13:12 P0.22 GPIO P0.22 保留 捕获 0.0(TIMER0)
匹配0.0(TIMER0) 00
15:14 P0.23 GPIO P0.23 保留 保留 保留 00
17:16 P0.24 GPIO P0.24 保留 保留 保留 00
19:18 P0.25 GPIO P0.25 保留 保留 保留 00
21:20 P0.26 保留 00
23:22 P0.27 GPIO P0.27 AIN0(A/D 转换器) 捕获 0.1(TIMER0)
匹配0.1(TIMER0) 01
25:24 P0.28 GPIO P0.28 AIN1(A/D 转换器) 捕获 0.2(TIMER0)
匹配0.2(TIMER0) 01
27:26 P0.29 GPIO P0.29 AIN2(A/D 转换器) 捕获 0.3(TIMER0)
匹配0.3(TIMER0) 01
29:28 P0.30 GPIO P0.30 AIN3(A/D 转换器) EINT3 捕获0.0(TIMER0) 01
31:30 P0.31 保留 00
PINSEL 寄存器控制表 5.46 中器件引脚的功能。每 2 个寄存器位对应 1 个特定的器件引 脚。PINSEL1 中的[23:22]、[25:24]、[27:26]、[29:28]位复位值为 01。
表 5.46 引脚功能选择寄存器位
PINSEL0 和 PINSLE1 的值 功能 复位值
0 0 首选(默认)功能,通常为GPIO 口
0 1 第一可选功能
1 0 第二可选功能
1 1 保留
00
引脚功能选择寄存器 2(PINSEL2 - 0xE002C014)
PINSEL2 寄存器按照表 5.47、表 5.48 当中的设定来控制引脚的功能。IODIR 寄存器中
- - 172
的方向控制位只有在引脚选择GPIO 功能时才有效。对于其它功能,方向是自动控制的。
在表5.47、表 5.48 中的“复位值”这一栏表示微控制器复位时对应位的值;对于 PINSEL2 的bit2、bit3,复位时由 P1.26、P1.20 引脚的电平决定,倘若引脚接有上拉电阻(如 10KΩ上 拉电阻),相应位的值被设置为 0,倘若引脚接有下拉电阻(如 4.7KΩ下拉电阻),相应位的值 被设置为1;对于 PINSEL2 的 bit23、bit24、bit25~bit27,复位时 BOOT1 和 BOOT0 引脚 的电平决定。
警 告: 使 用 读 - 修 改 - 写 的 方 法 来 访 问 PINSEL2 寄 存 器 , 例 如 PINSEL2 = (PINSEL2&0xFFFFFFCF) | (2<<4)。对 bit0~bit2 和/或 bit3 的意外写操作会造成调试和/或跟 踪功能的丢失! TRACESYNC 5:4 控制数据总线和选通引脚的使用:
- - 173 接上表
PINSEL2 描述 复位值
13 如果位25:23 不为 111,由该位控制 P3.23/A23/XCLK 脚的使用:为 0 时使 能P3.23,为 1 时使能 XCLK。
0
15:14 控制P3.25 脚的使用:00 使能 P3.25,01 使能 CS2,10 和 11 保留。 00 17:16 控制P3.24 脚的使用:00 使能 P3.24,01 使能 CS3,10 和 11 保留。 00
19:18 保留。 -
20 如果位5:4 不为 10,由该位控制 P2.29:28 的使用:0 使能 P2.29:28,1 保 留。
0
21 如果位5:4 不为 10,由该位控制 P2.30 的使用:0 使能 P2.30,1 使能 AIN4。 1 22 如果位5:4 不为 10,由该位控制 P2.31 的使用:0 使能 P2.31,1 使能 AIN5。 1 23 控制P3.0/A0 用作端口引脚(0)或地址线(1)。 如果RESET =0
时BOOT1:0=00,
该位的复位值为 1。反之为 0。
24 控制P3.1/A1 用作端口引脚(0)或地址线(1)。 如 果 复 位 时 BOOT1=0,该位 的复位值为1,反 之为0。
27:25 控制P3.23/A23/XCLK 和 P3.22:2/A2.22:2 中地址线的数目:
000=无地址线 100=A11:2 为地址线 001=A3:2 为地址线 101=A15:2 为地址线 010=A5:2 为地址线 110=A19:2 为地址线 011=A7:2 为地址线 111=A23:2 为地址线
如 果 复 位 时 BOOT1:0=11,该 域 的 复 位 值 为 000。反之为 111。
31:28 保留。 -
5.7.3 引脚功能控制
1. 将 P0.8、P0.9 设置为 TxD1、RxD1 功能