欢迎来到天天文库
浏览记录
ID:47433383
大小:624.66 KB
页数:6页
时间:2020-01-11
《STM32引脚使用选择注意》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、stm32有些管脚它上电默认的功能不是通用GPIO,比如JTAG与SWJ调试管脚,所以,如果你想使用这几个管脚作为通用IO的话,就必须将JTAG与SWJ功能关闭,以及开启AFIO时钟。(AFIO 时钟未设置,GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE) 这句不会生效,也就是要先设置时钟,才能配置相应端口,后变换了下顺序,先设RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);再调用GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE)
2、 就完美可以了)最近博主用STM32F103C8T6做了一个温度测控模块,用到PB3,PB4,PA15等引脚控制外设。发现不管怎么配置,这三个引脚都不能置零。后来发现是包括这三个引脚在内的PB3,PB4,PA13,PA14,PA15是特殊的IO口,用作JTAG/SWD仿真器的调试接口(不能直接使用)。其中PA13,PA14分别作为SWD调试的SWIO和SWCLK;PB3,PB4,PA13,PA14,PA15共同用于JTAG。这五个引脚的中英文描述如下图所示,图片来源于STM32F1参考手册:这五个IO引脚非常特殊,正常情况下作为SWJ仿真器的调试引脚,如果要作为普通IO口使用需要特别的配置。
3、以PA13引脚为例,该引脚在STM32F1数据手册中的描述如下图:相较与其他的普通IO,PA13的Mainfunction为JTMS-SWDIO。反而普通IO口的功能在Alternatefunctions中的remap里。也就是说PA13要想当做普通IO口使用,就必须使用它复用功能中的重映射。因此就需要这样的两步操作:一.在时钟配置中打开复用时钟: RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOA
4、RCC_APB2Periph_AFIO,ENABLE);二.对PA13引脚进行重映射: GPIO_PinRemapConfig(GPIO_Remap_S
5、WJ_JTAGDisable,ENABLE); 步骤一比较好理解,这里重点叙述下步骤二的重映射操作。针对SWJ五个引脚的重映射操作方式在STM32F1参考手册中的中英描述下图所示:由上图可知,重映射的方式一共有三种。分别描述如下:1.GPIO_Remap_SWJ_JTAGDisable:/*!6、&SWD仿真器调试,只能用st-link调试 3.GPIO_Remap_SWJ_NoJTRST:/*!7、_JTAGDisable,ENABLE);同理可配置只用PB4可为普通IO口的情况。
6、&SWD仿真器调试,只能用st-link调试 3.GPIO_Remap_SWJ_NoJTRST:/*!7、_JTAGDisable,ENABLE);同理可配置只用PB4可为普通IO口的情况。
7、_JTAGDisable,ENABLE);同理可配置只用PB4可为普通IO口的情况。
此文档下载收益归作者所有