GD32F103Cx中JTAG引脚如何配置为普通IO或复用其他功能
一、PA15配置为普通IO,PB3配置为TIMER1通道CH1的相关代码
1.PA15如何配置为普通IO
#define A_PIN GPIO_PIN_15
#define A_GPIO GPIOA
#define A_CLK RCU_GPIOAvoid micromotor_alarm_gpio_config(void)
{//1.GPIO引脚时钟使能rcu_periph_clock_enable(A_GPIO_CLK); //2.复用功能时钟使能 rcu_periph_clock_enable(RCU_AF); //3.GPIO配置为推完输出模式gpio_init(A_GPIO, GPIO_MODE_OUT_PP, GPIO_OSPEED_50MHZ,A_PIN); //4.重映射配置:JTAG-DP禁用和SW-DP使能 gpio_pin_remap_config(GPIO_SWJ_SWDPENABLE_REMAP,ENABLE); //5.引脚配置为低电平gpio_bit_reset(A_GPIO,A_PIN);
}
2.PB3如何配置为定时器TIMER1通道CH1使用
#define B_PIN GPIO_PIN_3
#define B_GPIO GPIOB
#define B_GPIO_CLK RCU_GPIOBvoid beep_alarm_gpio_config(void)
{//1.GPIO引脚时钟使能 rcu_periph_clock_enable(B_GPIO_CLK); //2.复用功能时钟使能 rcu_periph_clock_enable(RCU_AF); //3.GPIO配置为复用推完输出模式gpio_init(B_GPIO, GPIO_MODE_AF_PP, GPIO_OSPEED_50MHZ, B_PIN); //4.重映射配置:TIMER1完全重映射gpio_pin_remap_config(GPIO_TIMER1_FULL_REMAP,ENABLE); //5.定时器配置timer_config();
}
二、GD32 JTAG备用功能重映射相关介绍
1.对应引脚
2.对应的映射
3.PA15引脚在数据手册中的相关功能(GD32F103Cx)
4.PB3引脚在数据手册中的相关功能(GD32F103Cx)
三、原理:配置JTAG相关引脚,需要配置AFIO端口配置寄存器0(AFIO_PCF0)中的SWJ_CFG[2:0]位和TIMER1_REMAP[1:0]位
1.AFIO端口配置寄存器0(AFIO_PCF0)
2.SWJ_CFG[2:0]位
3.TIMER1_REMAP[1:0]位
4.看寄存器介绍基本就懂了如何配置引脚重映射的寄存器,接下来是流程配置
四、重映射配置流程
1.配置对应引脚的时钟使能(RCU_GPIOx,A---F);
2.配置复用时钟引脚使能(RCU_AF);
3.根据不同功能配置对应引脚的模式(输入、输出、复用等);
4.根据不同功能配置不同功能映射(部分映射、完全映射)使能;
GD32F103Cx中JTAG引脚如何配置为普通IO或复用其他功能相关推荐
- STM32 中JTAG 引脚作为普通IO口设置方法
stm32的程序下载引脚涉及PB3.PB4.PA13.PA14.PA15,其中PA13,PA14分别作为SWD调试的SWIO和SWCLK.PB3,PB4,PA13,PA14,PA15共同用于JTAG调 ...
- 富芮坤fr8008gp lvgl遇坑和解法:卡死在lvgl定时器中;SWD接口配置;
卡死在lvgl定时器中 官方提供的lvgl的demo在gui_main函数中如下设置定时器并调用window_manager_init函数初始化各个界面: /* Implement and regis ...
- jtag引脚定义_从逆向分析的角度学习硬件调试技巧JTAG,SSD和固件提取
我想从逆向的角度做了深入了解JTAG,JTAG是许多嵌入式CPU使用的硬件级别调试机制,我希望通过这篇文章从逆向工程师的角度解释如何使用JTAG,并在此过程中提供一些实际示例. 0x01 研究目标 通 ...
- STM32F103单片机J-TAG引脚功能关闭方法
在调试stm32F103c8t6单片机时,将PB4重映射为TIM3_CH1,做为PWM波形输出时,下载程序后PB4口无任何波形,一直为高电平.确认程序无任何问题,于是想到会不会是PB4口被占用了,检查 ...
- 三叔学FPGA系列之二:Cyclone V中的POR、配置、初始化,以及复位
对于FPGA内部的复位,之前一直比较迷,这两天仔细研究官方数据手册,解开了心中的诸多疑惑,感觉自己又进步了呢..... 原创不易,转载请转原文,注明出处,谢谢. 一.关于POR(Power-On ...
- STM32禁用JTAG,并使用JTAG引脚
STM32禁用JTAG,并使用JTAG引脚为通用IO口 两种禁用模式 标准库配置: RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO|RCC_APB2Periph_ ...
- 关于STM32中SPI1引脚PB3和PB4无法拉低的问题及相关解释
关于STM32中SPI1引脚PB3和PB4无法拉低的问题及相关解释 近几点准备使用SPI1调试M25P80 发现需要用到引脚 PB3----SPI1_SCK PB4----SPI1_MISO PB5- ...
- FPGA的配置引脚以及配置过程
FPGA配置基本介绍 与CPLD不同,FPGA是基于门阵列方式为用户提供可编程资源的,其内部逻辑结构的形成是由配置数据决定的.FPGA的配置方式分为主动式和被动式. 1配置引脚 FPGA的配置引脚可分 ...
- stm32 内部sram大小_在SRAM、FLASH中调试代码的配置方法(附详细步骤)
聊天界面发送嵌入式大杂烩获取1TB大杂烩资料包 STM32的FLASH擦写次数有限(大概为1万次),所以为了延长FLASH的使用时间,我们平时调试时可以选择在SRAM中进行硬件调试.除此之外,SRAM ...
最新文章
- 新发现判断一个点在多边形的最高效率算法 推荐******
- linux下rpm方式安装mysql(2012-5-12)
- python itchat 无法登录_项目分享|5步教你用Python制作朋友圈个性签名
- 免费的3D GIS 软件,特点与应用领域介绍
- 图像Demosaic算法及其matlab实现
- yolov5s.pt下载
- 如何看待爱迪生和特斯拉的直流交流电之争——两种模式的企业管理
- 使用LocalDate, LocalTime 和 LocalDateTime
- 华为HCIP RS题库221 451-460题
- 咸鱼ZTMR实例—板载LED
- 1355 斐波那契的最小公倍数
- python线程间通信方法之Event
- 对SSM框架中Dao层,Mapper层,controller层,service层,model层,entity层等层的理解
- CMake - 生成器(Generators)
- python3利用xlrd和openpyxl处理表格中以分号结尾固话和手机号的数据提取出手机号
- 微信小程序 版本更新
- 【速度最快的浏览器】Chrome for Mac V75.0
- PHP中使用CURL之php curl详细解析和常见大坑
- Unity中关键字的使用之——Virtual
- file文件转blob格式后下载 ,file文件下载
热门文章
- ipad协议,windows协议。
- 这位985教授火了!当了10年博导,竟无一博士毕业!
- 美国科学家团队在半导体芯片上展示分子电子传感器
- 经纬恒润车队数据采集解决方案
- [summ]Energy saving-Switching 3G_Wi-Fi_GPS
- android手机寿命,手机:苹果VS安卓,那个使用寿命长?
- mysql数据库log_MySQL之六----MySQL数据库各种日志管理
- [免费专栏] Android安全之ZIP文件目录遍历漏洞
- Android获取通讯录中的所有联系人工具类
- 从零开始制作 WordPress 主题