ARM LPC2131 关于PINSEL的解释
概念:引脚连接模块通过配置寄存器控制多路开关,来连接引脚与片内外设;(P0.1/RXD0/PWM3/EINT0)
用途:引脚连接模块的用途是将引脚配置为需要的功能,可实现独立的引脚配置;
应用:引脚选择寄存器PINSEL0、PINSEL1的复位值都是0x00000000;具体设置需要参照配置表
PINSEL0总共32位,2个一组(暗含取值范围00 - 11,例如P0.1/RXD0/PWM3/EINT0四个功能通过00/01/10/11来选择),从P0.0到P0.15;PINSEL0总共32位,2个一组(暗含取值范围00 - 11),从P0.0到P0.15;PINSEL1总共32位,2个一组,从P0.16到P0.31;单独将PINSEL2列出,是因为它比较特殊,因为对它的使用需要用“读 - 修改 - 写”的方法来访问。注解:对位0 ~ 2和/或位3的意外写操作,会造成调试和/或跟踪功能的丢失。
1:0
31 :4
如将P0.8、P0.9设置为TxD1、RxD1功能(P0.8、P0.9均对应2位,故其应为17:16、19:18)
PINSEL0 = ( PINSEL0 & 0xFFF0FFFF ) | ( 0x05 << 16 ); //一次性设置完2个引脚,对应值
常见的,在选用PINSEL2,使得P1[25:16]引脚连接GPIO时,设置如下:
PINSEL2 = PINSEL2 & ( ~ 0x08 );