STM32 F10X系列 PB4等JTAG引脚作普通IO复用方法。

8 篇文章 2 订阅
订阅专栏

##学习笔记

一.相关表格

选自stm32手册 在这里插入图片描述1.PB3,PB4,PA13,PA14,PA15引脚可根据上表复用成普通IO口。在mcu复位的时候这几个引脚被作为jtag的功能。当我们要使用这些引脚作为普通的I/O时必须进行引脚的功能复用。

二.I/O复用方法:

1.使能所要复用的I/O时钟(例子以PB4为例):
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);
2.配置I/o口:
GPIO_InitTypeDef GPIO_Initstructure;//结构体
RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE);//上面的复用I/O时钟写在这里
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);//开启afio时钟,见3.
GPIO_Initstructure.GPIO_Mode=GPIO_Mode_Out_PP;//推挽输出
GPIO_Initstructure.GPIO_Pin=GPIO_Pin_4;
GPIO_Initstructure.GPIO_Speed=GPIO_Speed_50MHz;
GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST,ENABLE);//这是复用要用到的函数,先不管见4.。
GPIO_Init(GPIOB,&GPIO_Initstructure);//gpio初始化函数初始化b口。
3.开启AFIO时钟
在更改AFIO寄存器时要使用该时钟,平常最好都写上以防万一。
RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);//开启afio时钟
4.开启复用功能
GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST,ENABLE);
GPIO_Remap_SWJ_NoJTRST:为相应宏定义(见表35,上面):001
此时PB4口可以作为普通I/O口使用了。

三.GPIO_PinRemapConfig中的相关宏定义:

									(表35)

GPIO_Remap_SWJ_NoJTRST —> 001
GPIO_Remap_SWJ_JTAGDisable ----> 010
GPIO_Remap_SWJ_Disable ----> 100 //PA13/14/15 PB3/4均可用;

四.具体代码实现总结:

例子为蓝桥杯的cet711板:PB4连接蜂鸣器,所以要复用PB4口完成对蜂鸣器的初始化。

void beep_init(void)//
{
	  GPIO_InitTypeDef GPIO_Initstructure;
    RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB|RCC_APB2Periph_AFIO,ENABLE);//使能PB口和AFIO口的时钟
	  GPIO_Initstructure.GPIO_Mode=GPIO_Mode_Out_PP;//推完复用输出
	  GPIO_Initstructure.GPIO_Pin=GPIO_Pin_4;//选择pb4口
	  GPIO_Initstructure.GPIO_Speed=GPIO_Speed_50MHz;//速度
	  GPIO_PinRemapConfig(GPIO_Remap_SWJ_NoJTRST,ENABLE);//开启复用功能
	
	  GPIO_Init(GPIOB,&GPIO_Initstructure);//GPIO初始化
}
HAL库中如何屏蔽复用功能-PB4引脚无法正常输出IO电平,默认为JTAG模式
06-28 665
终于把PB4对应的灯点亮:
STM32 PB3或者PB4不能正常使用的讲解
热门推荐
小灰灰的博客
09-21 2万+
最近用STM32F103T8做项目,发现PB3和PB4这两个IO不可控,一直是高电平; 原因是PB3和PB4在系统复位时候,分别默认为SYS_JIDO和SYS_HJTRST; 所以需要通过用户自行禁止其功能; 也就是想要正常使用PB3和PB4的主功能的时候。 在初始化IO时候,增加代码如下: //打开时钟函数 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB ...
STM32_JTAG引脚复用代码
LuDvei的博客
01-25 2140
总是忘记有些引脚JTAG复用的,导致偶尔浪费一些时间,记录一下。STM32JTAG引脚通常包括TCK、TDI、TDO、TMS以及可选的TRST。JTAG(Joint Test Action Group)是一种国际标准的调试接口,用于芯片或印制电路板的边界扫描测试。在STM32微控制器中,JTAG接口主要用于程序下载和调试。以下是JTAG接口的主要信号线:TCK(Test Clock Input):测试时钟输入,为JTAG接口提供时钟信号。 TDI(Test Data Input):测试数据输入,用于将数
STM32引脚PB3、PB4、PA15为输入输出的特殊配置
最新发布
xingyuanelectric的博客
08-02 1610
最近做的一个项目中,使用的主控MCU是STM32F103VET6,使用的开发环境是RTThread Studio,配置的PB3为浮空输入,连接风扇的故障输出,用来检测风扇故障,仿真的时候发现无法正常读取外部高低电平;使用keil+cubeMX裸机开发,配置PB3成输出和输入,发现用keil仿真的时候不好使,将JTAG插拔重新上电后再测试,输入输出都正常了。相同的配置在RTThread 工程中仿真,PB3输出、输入都不好使,推出仿真模式,输出好使,输入还是无法检测到外部电平。
jtag引脚定义_嵌入式13——IO 引脚复用器和映射
weixin_39822673的博客
12-03 804
STM32L4 有很多的内置外设,GPIO与这些外设的外部引脚复用的。也就是说,都是一个 IO引脚。如果可以复用为内置外设的功能引脚,那么当这个 IO 为内置外设使用的时候,就叫做复用。《STM32L4XX 参考手册》第八章和芯片数据手册有详细的讲解哪些 GPIO 管脚是可以复用为哪些内置外设。STM32L4 系列微控制器 IO 引脚通过一个复用器连接到内置外设或模块。该复用器一次只允许一个外...
STM32F1的PB3/PB4普通IO
weixin_47268803的博客
10-12 2192
在调试以PB3/PB4引脚驱动继电器时发现初始化IO后,对IO控制不起用,考虑是否引脚复用了,在参考芯片手册后,发现该引脚复用了。
stm32 将PB3,PB4设置为普通IO模式
郁金香
06-24 9375
最近在做项目,涉及到将PA3、PA4引脚普通IO模式,控制LED灯亮灭,发现这两个IO口不受控制,一直处于高电平状态。查阅stm32引脚说明发现,PB3和PB4在系统复位时候,分别默认为SYS_JIDO和SYS_HJTRST,所以需要自行禁止其功能,才能将PB3和PB4普通IO引脚使用。 下面是解决方法: 在初始化引脚的时候,增加下列两行代码: //打开GPIO口时钟,先打开复用才能修改是否停用复用功能 RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB
HAL库STM32设置PB3、PB4普通IO
Hi~ o(* ̄▽ ̄*)ブ
04-17 621
【代码】HAL库STM32设置PB3、PB4普通IO
STM32F10x系列 GPIO的使用
u012329621的博客
01-05 1010
GPIO使用模板 这里以点亮最小系统板上的LED为目的,使用PC13管脚给出以下示例 #include "stm32f10x.h"//必要的头文件,包含一些结构体的声明和宏定义等 #include <stdio.h> //标准头 int main() { RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOC,ENABLE);//使能时钟 GPIO_InitTypeDef GPIOC_init; //定义一个结构体变量,下面是结构体变量成员参数的设置 GP
STM32JTAG变为普通引脚
hudoudoudechuntain的博客
10-26 463
因为STM32F10x系列的MCU复位后,PA13/14/15 & PB3/4默认配置为JTAG功能 1、禁用PB4复用功能 GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable, ENABLE); 或者GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable , ENABLE); 用这两天其中一条,完全禁用JTAG+SW-DP或者屏蔽JTAG-DP,用来释放各个io。 注意:还是用以下这条来释放PB4吧,因...
STM32F10x基础知识
wenlon7的博客
09-04 3577
其一 端口重映射,即将某些复用功能定向映射到其他IO口上去,达到提高IO利用率的用。 可以重映射的外设/功能有CAN1、JTAG/SWD、ADC、定时器、USART、I2C1、SPI1、OSC_IN/OSC_OUT。 需要注意的是,OSC32_IN/OSC32_OUT用做普通GPIO时,需要重映射为PC14/PC15(尽管仍然用原引脚复用功能 USART1_REMAP=...
STM32F4 PB3 PB4 端口复用 普通IO
g81249707的博客
12-09 3328
STM32F4 PB3 PB4 端口复用 普通IO
STM32---PB3和PB4引脚
tyustli
10-09 5905
GPIO_InitTypeDef GPIO_InitStructure; RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB,ENABLE); RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE);//打开AFIO时钟     GPIO_PinRemapConfig(GPIO_Remap_SWJ_Disable...
STM32JTAG IO复用PB4、PB3、PA15)
吴秀华Cherry的有趣博客
10-12 3300
最近在使用STM32F103VCT6 做项目时,其中PA15的IO一直输出高电平。 查看了好多次程序,发现IO初始化的程序也没有问题, 后来又试了直接将MCU的程序全擦掉,仍是输出3.3V. 最后在芯片的数据手册上,看到了管脚的复用内容有一项是:JTDI。 后来又上网查了下, STM32默认启动时, PB4、PB3、PA15三个引脚不是普通IO,而是JTAG复用功能,分别为JNT...
RT-Thread:STM32的PB3,PB4 复用IO配置为GPIO
yutian0606的博客
01-31 1364
说明:在使用 STM32F103CBT6 配置了 PB3 为IO,测试时发现读取这个IO的电平时钟是0,即便单管脚上的电平是1,读取的数据任然是0,查规格书后发现PB3,PB4JTAG复用口,要当普通IO用需要配置。
stm32 PB3 PB4 PA15引脚普通IO口使用指南
oshan2012的博客
10-08 2883
stm32的PB3 PB4 PA15引脚可以在使用SWD仿真和烧录的情况下释放出来,普通IO口使用。 初始化代码如下:       GPIO_InitTypeDef GPIO_InitStructure;   RCC_APB2PeriphClockCmd(RCC_APB2Periph_GPIOB | RCC_APB2Periph_GPIOA | RCC_APB2P...
stm32 JLINK JTAG口PA15复用普通IO口功能
shufawangzhang的博客
09-01 2646
stm32 JLINK JTAG口PA15 PB3 PB4复用普通IO口功能
NXP ARM MCU烧录引脚复用
只要路是对的,就不害怕遥远
12-02 1108
当出现MCU引脚不够用,要使用烧录引脚复用时,一定不要把复位脚也复用了,不然,再次烧录程序就难了。烧录时,一般都会先通过复位引脚复位MCU,然后,再执行烧录。另外,程序中复用的代码不要执行的太快,留一点时间间隔,便于复位MCU后的烧录。 ...
STM32F10××× PB3,PB4,PA13,PA14,PA15的使用
weixin_46061266的博客
06-26 4863
STM32F10×××这些引脚(PA13、PA14、PA15、PB3、PB4)默认功能是为仿真引脚的。PB3,PB4,PA13,PA14,PA15是特殊的IO口,用JTAG/SWD仿真器的调试接口。其中PA13,PA14分别为SWD调试的SWIO和SWCLK;PB3,PB4,PA13,PA14,PA15共同用于JTAG。.........
写文章

热门文章

  • 学习笔记:stm32定时器翻转模式实现同一个定时器不同通道不同频率占空比输出 6537
  • 学习笔记:stm32中断服务函数在哪找到 5657
  • 学习笔记:内存学习 2429
  • 用systick定时器实现延时函数(非中断版本) 2336
  • 运用外部中断检测按键实现任务 1952

分类专栏

  • 惯导 2篇
  • 中北大学 1篇
  • 实训 1篇
  • 学习笔记STM32 8篇

最新评论

  • 学习笔记:stm32中断服务函数在哪找到

    红胡子395: 谢谢

  • 学习笔记:stm32定时器翻转模式实现同一个定时器不同通道不同频率占空比输出

    CSDN-Ada助手: 多亏了你这篇博客, 解决了问题: https://ask.csdn.net/questions/8010323, 请多输出高质量博客, 帮助更多的人

  • 学习笔记:stm32中断服务函数在哪找到

    计网小白i: 在开头那部分里

  • 学习笔记:stm32定时器翻转模式实现同一个定时器不同通道不同频率占空比输出

    a_bcdefg123456: 通道间中断堵塞,不管是不是通道之间堵塞,这种方式下,每个中断都必须及时的并准确的响应,否则 丢失一次匹配 就会丢失一个定时器周期

  • 学习笔记:stm32定时器翻转模式实现同一个定时器不同通道不同频率占空比输出

    小星星星球: 只使用CH1与CH3,或CH2与CH4

最新文章

  • 学习笔记:内存学习
  • 学习笔记—bortz方程推导
  • 分析行人导航的加速度数据分割处理办法试图解决CPR问题
2023年1篇
2022年2篇
2021年10篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家陕西景区玻璃钢雕塑哪家便宜湖南玻璃钢雕塑多少钱一平透明玻璃钢雕塑制作过程广场玻璃钢雕塑代理新疆玻璃钢花盆湖州景观玻璃钢雕塑供应商玻璃钢雕塑 碗湖南玻璃钢金属雕塑玻璃钢卡通雕塑哪个比较好精美的玻璃钢山羊雕塑中山惠州玻璃钢雕塑肇庆广场玻璃钢动物雕塑成华玻璃钢雕塑公司玻璃钢雕塑大概能用多久卡通玻璃钢雕塑安装公司广州玻璃钢雕塑批发温州广场玻璃钢雕塑重庆山水玻璃钢人物雕塑曲阳玻璃钢半身马雕塑浙江玻璃钢花盆价格株洲商场美陈镇江frp玻璃钢雕塑天津抽象玻璃钢雕塑价位宝鸡水景校园玻璃钢雕塑厂家广东人物玻璃钢雕塑公司玻璃钢雕塑制作教程重庆玻璃钢农耕雕塑上海玻璃钢雕塑定做厂江苏景区玻璃钢雕塑设计玻璃钢西瓜雕塑找哪家香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化