使用cubemx 生成Usmart调试神器,以STM32F103RE为例

article/2025/8/29 22:19:31

1.USMART是什么?

使用USMART,你可以轻易的修改函数参数、查看函数运行结果,从而快速解决问题。

比如你调试一个摄像头模块,需要修改其中的几个参数来得到最佳的效果,普通的做法:写函数→修改参数→下载→看结果→不满意→修改参数→下载→看结果→不满意….不停的循环,直到满意为止。

这样做很麻烦不说,单片机也是有寿命的,老这样不停的刷,很折寿的。而利用USMART,则只需要在串口调试助手里面输入函数全称以及参数,然后直接使用串口发送给单片机,就执行了一次参数调整,不满意的话,你在串口调试助手修改参数再发送就可以了,直到你满意为止。这样,修改参数十分方便,不需要编译、不需要下载、不会让单片机折寿。

主要作用,方便代码的测试和调试

2.CUBEMX实现USMART步骤过程

(1)选择自己的芯片,我是用的是“STM32F103RET6”,因此选中如图所示的芯片。
芯片选择
(2)烧录口和时钟设置:
烧录口设置
时钟选择
(3)加载定时器文件“stm32f1xx_hal_tim.h”
在这里插入图片描述在这里值得注意的是:USMART文件用到了定时器4,初始化过程中需要用到定时器的结构体(定时器1,2,3…结构体是都是一样的),如果你本身的工程里面用到了定时器,那么可以直接跳过第(3)步。
如果工程当中没有用到定时器,你需要随便打开一个定时器,主要用来让生成的“uvprojx”工程加载文件“stm32f1xx_hal_tim.h”,这样在USMART文件中定义的“”TIM_HandleTypeDef”结构体时候不会报错。
本例程是测试历程,没有专门用到定时器,所以我使用到了第(3)步,加载“stm32f1xx_hal_tim.h”,不让USMART文件中的“TIM_HandleTypeDef”报错。
(4)USART1串口设置:

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
以上是串口的配置信息。
最后生成KEIL5的工程文件。
(5)USMART文件内容以及配置方法
在这里插入图片描述
把USMART文件放置如图所示处,文件内容如图所示。
在这里插入图片描述
配置步骤如上图所示。这样USMART里面的头文件路径设置完成。
在这里插入图片描述
在上图添加文件夹,并增加文件“usmart.c/usmart_config.c/usmart_str.c”文件。
这样工程文件就已经生成。
(6)代码配置:
在main.c文件中添加头文件#include “usmart.h”, usmart_dev.init(72);,屏蔽 //MX_TIM1_Init(); 函数。在串口中断中添加:

void USART1_IRQHandler(void)
{
/* USER CODE BEGIN USART1_IRQn 0 /
Usmart_Rev_Pro();
/
USER CODE END USART1_IRQn 0 /
HAL_UART_IRQHandler(&huart1);
/
USER CODE BEGIN USART1_IRQn 1 */

/* USER CODE END USART1_IRQn 1 */
}

测试程序我添加在了gpio.c文件中,
void Led_State_Test(GPIO_PinState Sta)
{
HAL_GPIO_WritePin(GPIOC,LED1_Pin,Sta);
}

void Delay_Test(uint32_t ms)
{
HAL_Delay(ms);
}

3.源码链接

上述工程USMART文件以及cubemx源码的链接下载地址
USMART调试工具和调试说明文件


http://chatgpt.dhexx.cn/article/eQosI1Wb.shtml

相关文章

(21)STM32——通过键盘控制舵机和LED灯(利用正点原子USMART实现)

目录 学习目标 运行结果 内容 调试过程 应用场景 特点 文件组介绍 配置步骤 usmart_config.c main.c 系统命令 串口调试 代码 总结 学习目标 本节我们来学习有关正点原子USMART的章节,简而言之,USMART是一种调试工具,具体的工作…

STM32------USMART调试组件

目录 一、什么是USMART 二、USMART调试过程 三、USMART应用场景 四、USMART特点 五、USMART文件组 六、USMART配置步骤 七、USMART系统命令 一、什么是USMART 二、USMART调试过程 三、USMART应用场景 四、USMART特点 五、USMART文件组 六、USMART配置步骤 (TFTLCD实…

STM32的USMART移植

使用USMART的原因 当博主也是学生的时候,并没有觉得USMART有多大的作用,就当作一个串口信息交互而已,我可以直接用串口来写就好了,当然这跟我之前没有认真了解过USMART的功能有关,忽略了这个简单却又十分使用的调试助…

stm32-mini学习笔记-USMART调试组件

目录 USMART调试过程 USMART特点 USMART文件简介 USMART配置步骤 USMART系统命令 实验现象 main中代码 USMART调试过程 1.串口发送命令调用函数 2.单片机节后到命令后,解析命令,调用对应的函数 3.调用函数 USMART特点 1, 可以调用绝…

USMART学习

文章目录 前言一、例程测试二、使用方法总结 前言 正点原子USMART组件可以方便地对函数参数进行修改,学习以下如何使用。 实验平台:战舰开发板F103 实验目的:学习USMART使用 提示:以下是本篇文章正文内容,下面案例可供…

STM32学习之USMART使用

看到没有,我不是标题党,这个蓝桥杯用不了我就没加!! USMART是正点原子推出的一款利用串口通信方便调参的工具。 简单来说: 一般情况下函数的入口参数调整很麻烦,你需要 1.改变参数 2.编译 3.下载 4.观察 用了USMART以后,只需要 1.串口发送你需要的参数 2.观察 这样子…

STM32F4_USMART调试组件

目录 1. USMART是什么? 2. USMART的特点 3. USMART实现流程 4. USMART组件 5. 在usmart_config.c中添加想要被USMART调用的函数 6. 实验程序 6.1 main.c 6.2 usmart.c 6.3 usmart.h 7. USMART调试的优越性说明 1. USMART是什么? USMART 是 AL…

正点原子USMART组件移植

文章目录 一、打开Cube,建立工程二、系统配置三、配置测试IO四、在 Clock Configuration中:五、工程输出配置六、开始移植七、组件分析 MCU:正点原子阿波罗开发板 IDE: MDK-ARM V5 STM32CubeMX5.2.2 一、打开Cube,建立工程 点击AC…

USMART组件

USMART调试组件 一、原理 首先,啥是USMART啊? 简单来说就是通过串口与开发板进行交互的工具。使用USMART的目的是减少使用J-LINK调试或者修改代码输入参数再进行下载等操作,通过串口传递参数,从而简化程序修改过程以及减少FLASH…

USMART调试组件实验

USMART是正点原子团队为其STM32开发平台开发的一种类似linux的shell的调试工具。具体工作过程是通过串口发送命令给单片机,然后单片机收到命令之后调用单片机里面对应的相关函数,并执行,同时支持返回结果。 USMART调试过程: USMA…

stm32之USMART调试组件的使用

文章目录 一、USMART是什么?二、使用步骤 一、USMART是什么? USMART 是由 ALIENTEK 开发的一个灵巧的串口调试互交组件,通过它你可以通过串口助手调用程序里面的任何函数,并执行。因此,你可以随意更改函数的输入参数(…

USMART 调试组件实验

文章目录 前言一、USMART调试组件简介USMART组件的移植 二、硬件设计三、软件设计 前言 本章,我们将向大家介绍一个十分重要的辅助调试工具:USMART 调试组件。该组件由 ALIENTEK 开发提供,功能类似 linux 的 shell(RTT 的 finsh …

USMART串口调试

目录 一、USMART简介二、USMART的移植2.1 usmart_str.h头文件2.2 usmart.h头文件2.3 usmat_str.c源文件2.4 usmart.c源文件2.5 usmart_config.c源文件 三、USMART的实现3.1 USMART的实现流程3.2 USMART的调用 一、USMART简介 USMART是由ALIENTEK开发的一个灵巧的串口调试互交组…

USMART

USMART是正点原子团队为其STM32开发平台开发的一种类似linux的shell的调试工具。具体工作过程是通过串口发送命令给单片机,然后单片机收到命令之后调用单片机里面对应的相关函数,并执行,同时支持返回结果。 普通的做法:写函数 ->修改参数->下载->看结果-&…

USMART调试组件

什么是USMART? USMART是正点原子团队为其STM32开发平台开发的一种类似linux的shell的调试工具。具体工作过程是通过串口发送命令给单片机,然后单片机收到命令之后调用单片机里面对应的相关函数,并执行,同时支持返回结果。 USMART调试过程:: USMART应用场景&#x…

2021-07-13 Charles破解

Charles破解码:https://play.golang.org/p/Qtt2CmHbTzU 使用方法:浏览器打开运行代码,复制name和key即可 注:如有侵权请联系删除!

charles破解历程

题记 看文章看到javassist可以直接修改java字节码,之前没有尝试过,因为charles是用java写的跨平台抓包工具,之前我也用过,所以拿来进行测试! 简介 Javassist是一个开源的分析、编辑和创建Java字节码的类库。 Javas…

Charles4.62破解版本下载

第一种方式: 这种方式下载后,还要自己输入许可证 链接 提取码:2vb0 添用激活码计算器生成激活码 点击这个,把刚才创建的名字和许可证输入进去即可 然后关闭软件,重新打开即可 第二种方式: https://ww…

charles破解 mac

下载charles并安装 https://www.charlesproxy.com/latest-release/download.do 下载charles破解包charles.jar https://www.zzzmode.com/mytools/charles/ 然后用下载的charles.jar替换原先的charles即可 文件路径/contents/java/charles.jar

charles破解https请求

当你的app包从http升级到https的时候,是不是忽然间发现你的请求抓不到了呢?别担心,只是因为你们的app加密升级了,但是我们还是可以正常破解的。接下来直接谈破解步骤啦: 1:首先打开charles,在其主tab栏点击…