PA.4,PA.5,PA.6这几个口是spi口,你spi是关掉的吗?
另:版主是ST公司的技术支持人员,不是托,哈哈
你这个假设提得很中肯。我查了查源程序,SPI是关掉的。
你设置的是通用输入,还是复用输入?
另外,内部的上拉电阻是弱上拉,如果管教虚焊,可能会不稳定。
/**********************************
pa
***********************************/
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0 | GPIO_Pin_1 | GPIO_Pin_7;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP;
GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_4 | GPIO_Pin_5 | GPIO_Pin_6;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPU; //GPIO_Mode_IN_FLOATING;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_8 | GPIO_Pin_11 | GPIO_Pin_12;
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_OD;
GPIO_Init(GPIOA, &GPIO_InitStructure);
应该不难查,可以用排除法:把MCU拿掉,用上拉电阻来模拟,看问题是否仍然存在,从而确定是不是MCU的问题。
这个试过,把管脚翘起,不会出现这种情况。而且今天早上用烙铁热了热这几个管脚,到现在还表现正常。
昨天下班的时候还是好的,今天早上上班的时候就不正常了。今天晚上晾一晚上,看明天是否还会出现这个问题。
这个试过,把管脚翘起,不会出现这种情况。而且今天早上用烙铁热了热这几个管脚,到现在还表现正常。
接下来可以检查:是软件问题还是硬件问题。
可以一直拉低复位引脚,这样STM32就处于浮空状态,然后再用上拉电阻来模拟MCU来测试。
用烙铁热一热出问题的管脚,又正常了。我倒是希望是虚焊引起的。来来回回就这几个管脚出问题,感觉又不太正常。
谢谢大家关注。电路图太简单不过了。一个IO接一个10K的上拉电阻,程序每隔10秒读一次IO口的电平。到目前为止只有PA6出现问题。PA5,PA4从前天以来就没有出现问题。我打算不用PA6,用CPU富余的PC13代替。到目前为止,还没出现问题。明天打算去正规的代理商再买几片试一下。
上午上中发买了几片新的芯片。还没来得及换。发现读写STH71的IO也出现相同的问题。也是用烙铁点一点就好了。周一到周日,这个IO也没出现问题。第一个CPU,这个IO好像也是在四天左右才出现问题。
遇到这类问题是很头疼,最近在调MPC5554,仿真器始终连不上,也不知道是啥原因,头大