LPC2103的GPIO使用<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
GPIO port 0模式选择寄存器
page23
GPIO0M的bit0为GPIO port 0模式选择。当其为0时,GPIO通过APB地址进行访问(Legacy GPIO),当其为1时,使能高速GPIO port 0,GPIO通过片上存储区访问(Fast GPIO)。
管脚功能选择寄存器
Page67
PINSEL0和PINSEL1
PINSEL0和PINSEL1寄存器控制各个管脚的功能(查看datasheet的Table 62和Table 63)。IO0DIR寄存器的方向控制位仅仅当相应管脚的GPIO功能使能时有效。管脚在其它功能时,CPU自动配置管脚方向。
PINSEL0和PINSET1值 | 功能 | 复位值 |
00 | 主要功能,作为GPIO管脚 | 00 |
01 | 第一复用功能 |
|
10 | 第二复用功能 |
|
11 | 第三复用功能 |
|
32bit寄存器PINSEL0对应PIN0.0-PIN0.15;32bit寄存器PINSEL0对应PIN0.16-PIN0.31。
GPIO控制寄存器:
Page71
慢速GPIO控制寄存器 (APB访问寄存器)
寄存器 | 描述 | 访问 | 复位值 | 地址 |
IOPIN | GPIO管脚值寄存器。不论管脚方向如何,管脚当前值都可以在该寄存器读出 | R/W | NA | 0xE002 8000 IO0PIN |
IOSET | GPIO管脚置位寄存器。写1将相应管脚置高电平,写低无效。 | R/W | 0x0000 0000 | 0xE002 8004 IO0SET |
IODIR | GPIO管脚方向控制寄存器。该寄存器独立控制每个管脚方向,写1置相应管脚为输出。 | R/W | 0x0000 0000 | 0xE002 8008 IO0DIR |
IOCLR | GPIO管脚清除寄存器。写1将相应管脚置低电平,写低无效。 | WO | 0x0000 0000 | 0xE002 800C IO0CLR |
快速GPIO控制寄存器 (本地接口存储访问寄存器——增强的GPIO特性)
寄存器 | 描述 | 访问 | 复位值 | 地址 |
FIODIR | 快速GPIO管脚方向控制寄存器。该寄存器独立控制每个管脚方向,写1置相应管脚为输出。 | R/W | 0x0000 0000 | 0x3FFF C000 FIO0DIR |
FIOMASK | 快速GPIO管脚屏蔽寄存器,对快速IO管脚的任何操作只有在对该寄存器对应位激活(写0)时有效 | R/W | 0x0000 0000 | 0x3FFF C010 FIO0MASK |
FIOPIN | 快速GPIO管脚值寄存器。 | R/W | NA | 0x3FFF C014 FIO0PIN
|
FIOSET | GPIO管脚置位寄存器。写1将相应管脚置高电平,写低无效。 | R/W | 0x0000 0000 | 0x3FFF C018 FIO0SET |
FIOCLR | GPIO管脚清除寄存器。写1将相应管脚置低电平,写低无效。 | WO | 0x0000 0000 | 0x3FFF C01C FIO0CLR |
FIODIR/FIOMASK/FIOPIN/FIOSET/FIOCLR寄存器可以half-word/byte寻址,查看P74。
文章评论(0条评论)
登录后参与讨论