微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

STM32F103C8T6引脚图及引脚功能说明及避坑指南

今天使用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 复用开漏输出

原文地址:https://cloud.tencent.com/developer/article/2165360

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐