STM32F1的PA13PPA14A15当普通IO来用

初始化代码

GPIO_InitTypeDef GPIO_InitSructure; 

RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA|RCC_APB2Periph_AFIO,ENABLE);    ///时钟使能

GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);     ///禁用SWD


GPIO_InitSructure.GPIO_Speed = GPIO_Speed_50MHz;

GPIO_InitSructure.GPIO_Mode = GPIO_Mode_Out_PP;        ///推挽输出

GPIO_InitSructure.GPIO_Pin = GPIO_Pin_13;

GPIO_Init(GPIOA,&GPIO_InitSructure);



拉高拉低代码

GPIO_SetBits(GPIOA,GPIO_Pin_13);

GPIO_ResetBits(GPIOA,GPIO_Pin_13);



有的网友会发现百度搜到的代码基本上都一样,但是放到自己的程序里会不起作用。我也遇到过,原因是其他地方也调用了GPIO_PinRemapConfig这个函数,而给的参数不是GPIO_Remap_SWJ_Disable。那就把工程里的其他这个函数删掉就好了。因为这个函数后面的设置会覆盖前面的设置,相当于这里写的这段代码没有生效。

·关于我们·免责声明·服务条款·RSS订阅·dede168.com技术支持

Copyright © 1998-2015  All rights reserved.