ARM Cortex M3系列GPIO口介绍(工作方式探讨(2)
- UID
- 1029342
- 性别
- 男
|
ARM Cortex M3系列GPIO口介绍(工作方式探讨(2)
2.1 GPIO端口方向寄存器FIOxDIR(FIO0DIR??FIO4DIR- 0x2009 C000??0x2009 C080)
当引脚被配置为 GPIO功能时,该寄存器可用来控制引脚的方向。勿必根据引脚功能来设置每个引脚的方向。
注:GPIO引脚 P0.29和P0.30 与USB D+/-引脚共用,并且具有相同的方向。如果FP0DIR位29或位30在FIO0DIR寄存器中被配置为零,则P0.29 和P0.30都为输入。如果FP0DIR位29和位30被配置为1,则P0.29和P0.30都为输出。
高速GPIO端口方向寄存器位描述 位 | 符号 | 值 | 描述 | 复位值 | 31:0(字长数据) | FP0DIR FP1DIR FP2DIR FP3DIR FP4DIR | 0
1 | 控制的引脚为输入引脚
控制的引脚为输出引脚
| 0 |
字和半字的操作基本类似,只是可以通过8位寄存器或者16位的寄存器分别控制方向而已,这里不再解释,请参看《深入浅出Cortex-M3 LPC1700》. 2.2 GPIO端口输出设置寄存器FIOxSET(FIO0SET??FIO7SET - 0x2009 C018??0x2009 C098)
当引脚在输出模式中被配置为 GPIO 时,该寄存器在端口引脚产生高电平输出。向该寄存器的某些位写入“1”时,对应的引脚产生高电平。写入“0”无效。如果需要引脚输出低电平或第二种功能,那么写 1 到 FIOxSET 的相应位无效。 读FIOxSET 寄存器返回该寄存器的值,该值由前一次对 FIOxSET 和 FIOxCLR(或前面提到的 FIOxPIN)的写操作确定,它不反映任何外部环境对 I/O引脚的影响。 通过 FIOxSET 寄存器访问的端口引脚受到 FIOxMASK 寄存器相应位的限制。
高速GPIO端口输出设置寄存器位描述 位 | 符号 | 值 | 描述 | 复位值 | 31:0(字长数据) | FP0SET FP1SET FP2SET FP3SET FP4SET | 0
1 | 控制的引脚输出不改变
控制的引脚输出被设为高电平
| 0 |
2.3 GPIO端口输出清零寄存器FIOxCLR(FIO0CLR??FIO07CLR - 0x2009 C01C??0x2009 C09C)
当引脚在输出模式中被配置为 GPIO 时,该寄存器在端口引脚产生低电平输出。向某些位写入“1”会使相应的引脚产生低电平,同时清零 FIOxSET 寄存器的相应位。写入“0”无效。如果引脚被配置为输入或其它功能,那么写 FIOxCLR 对引脚没有影响。 通过FIOxCLR寄存器访问的端口引脚受到FIOxMASK寄存器相应位的限制.
高速GPIO端口输出清零寄存器位描述 位 | 符号 | 值 | 描述 | 复位值 | 31:0(字长数据) | FP0CLR FP1CLR FP2CLR FP3CLR FP4CLR | 0
1 | 控制的引脚输出不改变
控制的引脚输出被设为低电平
| 0 | |
|
|
|
|
|