首页 > 其他分享 >H7-TOOL测试凌欧LKS32MC03x的骚操作玩法支持情况,不接硬件复位引脚,SWD上电100ms复用其他功能调试下载测试(已测试没问题)

H7-TOOL测试凌欧LKS32MC03x的骚操作玩法支持情况,不接硬件复位引脚,SWD上电100ms复用其他功能调试下载测试(已测试没问题)

时间:2024-10-28 15:50:33浏览次数:5  
标签:CODE 100ms 引脚 复位 SWD 硬件 USER 测试

【背景】

这个骚操作,骚就骚在SWD接口引脚复用其他功能了,板子还没有把硬件复位引脚接出来,硬件复位引脚是专治这种场景的。

虽然客户的程序搞了个上电后延迟100ms才复用,但JLINK,ULINK,STLINK,DAPLINK在MDK下都已经无法控制这个芯片下载,但使用第3方的烧录可以下载,且客户近期不方便提供他的测试程序让我们测试。

【解决办法】

1、测试代码, 使用芯片LKS32MC034DF6Q8B

 swd.7z (311.11 KB)

2、配置SWD 转 GPIO

 

// src file: main.c
#include "basic.h"
#include "hardware_init.h"
#include "hardware_config.h"
#include "lks32mc03x.h"
#include "rtt_debug.h"
#include "delay.h"
 
/* USER CODE BEGIN Includes */
void SWD_to_GPIO(void) {
    // 等待芯片上电复位后的100ms
        delay_ms(200);
 
    // 向SYS_IO_CFG寄存器的第6位写入0,开启复用功能
        SYS_WR_PROTECT = 0x7a83;
        SYS_IO_CFG &= ~BIT6;      /*SWD复用普通GPIO*/
        SYS_WR_PROTECT = 0;
         
    // 配置P1.8和P1.9为GPIO
    /* USER CODE END Main */
    Common_GPIOInit();
}
/* USER CODE END Includes */
 
/* USER CODE BEGIN Defines */
 
/* USER CODE END Defines */
 
 
int main()
{
    __disable_irq();
    Clock_Init();
    delay_init(MAIN_CLOCK);
    __enable_irq();
         
        SWD_to_GPIO();
         
    while(1)
    {
        /* USER CODE BEGIN MainWhile */
         
        /* USER CODE END MainWhile */
        PRINTF("run main.while()...\r\n");
        delay_ms(1000);
    }
}
 
 
/*************** (C) COPYRIGHT LINKO SEMICONDUCTOR *****END OF FILE**************/

 

3、配置后,确实如官方文件所说,任何LINK都无法使用MDK和IAR下载了,即使接上硬件复位并且配置使用硬件复位引脚也无法解决,比如jlink下载,效果如下:


4、使用我们H7-TOOL测试

复用后,TOOL的默认配置会提示芯片不存在


(1)解决办法1:接硬件复位,并且这里选择硬件复位,可以反复烧录,烧录的程序是100ms复位的固件

动态效果


(2)解决办法2:不接硬件复位,这里选择断上电复位,也可以解决

动态效果


硬件接线实物图:

 

标签:CODE,100ms,引脚,复位,SWD,硬件,USER,测试
From: https://www.cnblogs.com/armfly/p/18510819

相关文章

  • 做大模型备案的企业看过来,详解大模型备案重难点【评估测试题+备案源文件】
            通过对大模型备案所涉及的测试题、安全评估报告以及其他相关材料的深入分析,本文详细探讨了大模型备案过程中的关键点和难点问题。我们不仅审视了备案流程中的各个环节,还对可能遇到的挑战进行了全面的讨论,以确保大模型的安全性和合规性。文章目录(一)适用主体(......
  • 漏洞挖掘和渗透测试的区别是什么?(非常详细),零基础入门到精通,看这一篇就够了
    前言在网络安全领域,漏洞挖掘和渗透测试是两个至关重要的概念,它们各自扮演着不同的角色,共同为提升网络系统的安全性贡献力量。漏洞挖掘和渗透测试的区别是什么?一、漏洞挖掘:深入剖析安全隐患​漏洞挖掘,又称漏洞发现,是指通过一系列技术手段和方法,对目标系统、软件或网络进......
  • 功能测试:方法、流程与工具介绍
         功能测试是对产品的各功能进行验证的一种测试方法,旨在确保软件以期望的方式运行并满足设计需求。以下是对功能测试的详细解释:一、定义与目的定义:功能测试(FunctionalTesting),也称为行为测试(BehavioralTesting),是根据产品特性、操作描述和用户方案,测试一个产品......
  • pytest实现按业务线来执行,各业务线下的业务测试用例
    importargparseimportpytestdefmain():parser=argparse.ArgumentParser(description='Runspecificbusinesslinetests.')parser.add_argument('--line',choices=['line_1','line_2'],required=True,......
  • 28个漏洞测试靶场 黑客学习资源汇总
    28个渗透测试靶场黑客学习资源汇总28个渗透测试靶场OWASPBrokenWebApps分享渗透测试演练环境,里面继承了57个数据库的渗透测试环境。包括aspx,asp,php,jsp等等各种演练环境。http://pan.baidu.com/s/1o7VQPZk密码:09qz常见靶场DVWA(DamVulnerableWebApplication)DVW......
  • [ vulnhub靶机通关篇 ] 渗透测试综合靶场 DC-8 通关详解 (附靶机搭建教程)
    ......
  • Selenium测试form表单之下拉列表
    处理form表单中的下拉列表,需要用到一个Selenium工具类-Select一、Select工具类常用属性和方法方法/属性描述1select_by_value()根据值选择2select_by_index()根据索引选择3select_by_visible_text()根据文本选择4deselect_by_value根据值反选5de......
  • CuTest C语言单元测试框架
    CuTestC语言单元测试框架Cutest是一个轻量级的C/C++单元测试框架,旨在提供简单、易用的测试功能。它的主要特点包括:简洁性:Cutest以简洁的语法使得编写测试用例变得容易,降低了学习曲线。灵活性:支持多种测试风格,可以根据需要进行定制。单头文件:Cutest仅包含一个头文件,......
  • 产品测试和缺陷管理有哪些软件
    产品测试和缺陷管理有:一、JIRA;二、PingCode;三、Bugzilla;四、MantisBT;五、Redmine;六、TestRail;七、Trac;八、YouTrack。JIRA是一款广泛应用于软件开发领域的产品测试和缺陷管理软件,具有灵活性和可配置性高的特点。一、JIRAJIRA是由澳大利亚公司Atlassian开发的一款优异的产品测......
  • 智能语音设备测试 | 语音基础
    语音工作原理用户语音输入声音预处理音频处理一、回音消除1、回音消除简称AEC,实际原理就是分别获得麦克风和参考信号的声音,然后就能获得人声。麦克风声音=参考信号+人声,然后拿参考信号减掉麦克风声音中的参考信号,这样就能得到人声了2、回音消除不好产生的影响:设备播......