在Proteus仿真中,同时使P1和P2一共16个I/O口输出,P1.4始终无法输出高电平!
#include "msp430G2553.h"void main( ){WDTCTL = WDTPW + WDTHOLD;P1DIR=0xff;
P2DIR=0xff;while(1){ P1OUT=0XFF;P2OUT=0xFF;}
}
xyz549040622:
确认下复位后P1SEL.4、P1SEL2.4的状态,你配置这个试试。
灰小子:
你用的什么开发板?外部电路是怎么样的?有没有被强拉到gnd?
user5892203:
回复 xyz549040622:
谢谢解答,我一会就试一下!
user5892203:
回复 灰小子:
用的是Proteus仿真,外部什么都不接和接一个电阻再接地都无法输出高电平
user5892203:
回复 xyz549040622:
给SEL置零之后还是输出为低电平啊,在手册上标注了SEL置零为I/O功能的
JIUGEN LI:
// Disable the GPIO power-on default high-impedance mode to activate// previously configured port settingsPM5CTL0 &= ~LOCKLPM5;
加上这一句试试,可能没有把这个开关关掉。
user5892203:
回复 JIUGEN LI:
MSP430G2553里面好像没有PM5CTL0啊,
JIUGEN LI:
回复 user5892203:
哦,那就别加
JIUGEN LI:
回复 user5892203:
照你意思是就P1.4输出不了高电平是吧
user5892203:
回复 JIUGEN LI:
对,就是始终就是低电平,仿真图上是个蓝点