声明:本篇文章只是个人知识盲区、知识弱点、重点部分的归纳总结,望各位大佬不喜勿喷。梳理顺序是按照正点原子的视频和文档的实际顺序梳理,转载请注明出处。
作者:sumjess
适用:这个视频我已经看过3遍了,总会有忘记的,所以来写这本书的随手笔记,记录重点、易忘点。该博客可以当做字典,也可以当做笔记。
目前内容:USMART调试组
 

一、什么是USMART?

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

二、USMART调试过程:

三、USMART应用场景:

开发过程中,经常需要修改函数入口参数,查看运行效果的情况下应用非常方便。不用多次下载代码,或者多次用JLINK调试。

四、USMART特点:

可以调用绝大部分用户直接编写的函数。

资源占用极少(最少情况:FLASH:4K;SRAM:72B)。

支持参数类型多(数字(包含10/16进制)、字符串、函数指针等)。

支持函数返回值显示。

支持参数及返回值格式设置。

支持函数执行时间计算(V3.1版本新特性)。

使用方便。

五、USMART文件组:

usmart.c负责与外部互交等。

usmat_str.c主要负责命令和参数解析。

usmart_config.c主要由用户添加需要由usmart管理的函数。

usmart.h和usmart_str.h是两个头文件,其中usmart.h里面含有几个用户配置宏定义,可以用来配置usmart的功能及总参数长度(直接和SRAM占用挂钩)、是否使能定时器扫描、是否使用读写函数等。

六、USMART配置步骤:

USMART包添加到工程中,头文件要包含到path

添加需要调用的函数到usmart_config.c文件中。

主函数中调用usmart_dev.init函数初始化usmart

即可通过助手发送命令,调用在usmart注册过的函数

七、USMART系统命令:

USMART7个系统命令:

 

?:      获取帮助信息

 

help:   获取帮助信息

 

list:   可用的函数列表

 

id:     可用函数的ID列表

 

hex:    参数16进制显示,后跟空格+数字即执行进制转换

 

dec:    参数10进制显示,后跟空格+数字即执行进制转换

 

runtime 1,开启函数运行计时;0,关闭函数运行计时;

 

请按照程序编写格式输入函数名及参数并以回车键结束.