lpc2000系列微控制器的大部分管脚都具有多种功能,即管脚复用,但是同一引脚在同一时刻只能使用其中一个功能,通过配置相关寄存器控制多路开关来连接引脚与片内外设。
外部存储器寄存器描述——pinsel0
外部存储器寄存器描述——pinsel1
外部存储器寄存器描述——pinsel2
外部总线设置
pinsel[5:4]与数据总线和控制线的关系列表
使用示例——将p0.8、p0.9设置为txd1、rxd1
通过查阅pinse0寄存器设置表,得到p0.9和p0.8的控制位为pinsel0[19:16],当该域设置为[0101](0x05)时选择 rxd1和 txd1 ;
c代码:
pinsel0 = 0x05 << 16;
为了不影响别的管脚连接设置,通常选择下面的设置方法。
c代码:
pinsel0 = (pinsel0 & 0xfff0ffff) | (0x05 << 16);
启动代码相关部分
lpc2200系列微控制器是总线开放型芯片,其总线宽度可设置为8位、16位或32位,对于没有使用到的总线引脚(比如16位总线宽度时,d16~d31位没有使用),可作为gpio使用。