Loading...       今天使用IO口的时候,PB3、PB4、PB5、PB6做输出,但是发现PB5、PB6正常,PB3、PB4不受控制,PB3一直低电平,PB4一直高电平,网上查了下,这里默认是JTAG控制端口,其中还有PA15,如果要当做GPIO使用,需要重映射。即禁止JTAG使用: `GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);` 还需要注意的是,由于下载程序要么JTAG要么SWD,所以SWD下载方式需要打开: `GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE);` 这句不能使用。并且在重映射之前需要开启时钟: `RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO,ENABLE);` 全部初始化指令如下: ``` RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_AFIO, ENABLE); GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE); GPIO_InitStructure.GPIO_Pin = GPIO_Pin_3|GPIO_Pin_4|GPIO_Pin_5|GPIO_Pin_6; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_Out_PP; GPIO_InitStructure.GPIO_Speed = GPIO_Speed_10MHz; GPIO_Init(GPIOB, &GPIO_InitStructure); ``` ### GPIO几种输入输出方式: `GPIO_Mode_AIN` 模拟输入 `GPIO_Mode_IN_FLOAtiNG` 浮空输入 `GPIO_Mode_IPD` 下拉输入 `GPIO_Mode_IPU` 上拉输入 `GPIO_Mode_Out_OD` 开漏输出 `GPIO_Mode_Out_PP` 推挽输出 `GPIO_Mode_AF_OD` 复用开漏输出 Last modification:December 26, 2022 © Allow specification reprint Support Appreciate the author WeChat Like 0 如果觉得我的文章对你有用,请帮忙点一下上面的广告
One comment
您好,博主
可以投稿服务器或者scdn文章内容吗?
这边可以赞助高防scdn【国内外均可】【一年起】
并且会给您一个心意红包
国内正规持证公司
如果不方便发您的联系方式
以下是我的联系方式!
我的QQ是:2814841448