本帖最后由 酸奶菌 于 2017-2-20 20:13 编辑
各位大大最近小的在用原子哥mini板做个工程,涉及到大概15个输入端口,在用一个端口试用无误之后开始写程序,程序写完之后出大事了,有6个端口无法使用。。。分别是PA15,PB3,PB4,PC11,PC12,PD2。这些端口在初始化的时候都和其他端口一样,使能时钟、下拉输入、然后初始化低电平。
[mw_shl_code=c,true] GPIO_InitTypeDef GPIO_InitStructure;
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_GPIOB|RCC_APB2Periph_GPIOC|RCC_APB2Periph_GPIOD, ENABLE);
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_IPD;
GPIO_InitStructure.GPIO_Pin = GPIO_Pin_0;
GPIO_Init(GPIOA, &GPIO_InitStructure);
GPIO_ResetBits(GPIOA,GPIO_Pin_0);[/mw_shl_code]
同时我也关闭了JTAG,使能SWD。
[mw_shl_code=c,true] GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);[/mw_shl_code]
当端口检测到高电平(3.3v)时判断为读到1。
[mw_shl_code=c,true] #define Mof GPIO_ReadInputDataBit(GPIOA,GPIO_Pin_0) //Male or Female 14[/mw_shl_code]
其他的输入端也是这样子初始化的,可以使用,但是这些端口就不行。
望各位大大帮忙求解,谢谢!
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
额,开启复用功能么?
恩恩,好的,我去试试。
一周热门 更多>