NXP LPC2214 ARM7芯片的引脚无法输出问题:
工程是从LPC2138用过来的,增加了P2.3口的控制
发现GPIOP2.3 无法输出高电平
/*配置IO管脚映射*/
PINSEL0 = 0x00000005;
PINSEL1 = 0x00000000;
PINSEL2 = 0x00000000;
/*配置IO管脚输入输出*/
IO2DIR = 0xFFFFFFFF; //2214
IO2SET = 0x01<<3;
去测量管脚电平没有发生变化。
同样的方式去控制 28脚,
IO2SET = 0x01<<28;
电平可以控制。
很奇怪,一开始还以为是硬件电路的问题,把说有电阻焊掉之后,裸露的引脚也不能量出电平变化;
我就去读IO2PIN 引脚状态,(IO2PIN >> 3) & 0x01 读到总是0;
难道写不进寄存器?
经过查找发现:端口复用配置出问题了。
BIT5:4 需要配成 11
P2.7:0 才作为普通端口用
所以:改成如此就可以了
PINSEL2 |= 0x00000030;
输入引脚也一样:方向一定要配置对,否则可能有些引脚直接可以读到输入电平,有些不行,给自己造成困扰;
如:IO1DIR &= ~(0x01 << 24);
手册去www.nxp.com 官网下就可以了