一种跨平台的MCU调试装置的制作方法

文档序号:19155177发布日期:2019-11-16 00:39阅读:来源:国知局

技术特征:

1.一种跨平台的mcu调试装置,其特征在于,包括mcu(2),mcu(2)包括cpu(2),调试功能模块(22),通信模块(24),存储模块(23),封装解包模块(25),cpu(22)分别与调试功能模块(22)、通信模块(24)、存储模块(23)、封装解包模块(25)相连接;

cpu(21),被配置为用于负责系统各模块之间的调用以及运算;

调试功能模块(22),被配置为根据接收到的调试指令启动相应的特定功能模块对mcu(2)进行调试,调试功能模块能够根据调试需求进行增加或者减少调试功能;

存储模块(23),被配置为用于存储调试过程中所需要用到的数据、产生的数据以及调试功能程序或者缓存数据;

通信模块(24),被配置为用于mcu(2)与外部设备进行通信;

封装解包模块(25),被配置为用于根据解包指令或封装指令进行相应的解包或封装。

2.根据权利要求1所述的一种跨平台的mcu调试装置,其特征在于,还包括上位机(1),上位机(1)至少包括cpu(11),存储模块(12),调试指令模块(13),通信模块(14),封装解包模块(15),cpu(11)分别与存储模块(12)、调试指令模块(13)、通信模块(14)、封装解包模块(15)进行电连接;

所述上位机(1)的通信模块(14)与mcu(2)中的通信模块(24)电连接,其中,通信模块(14)与通信模块(24)都可以采用无线通信或有线通信方式进行通信连接;

cpu(11),被配置为用于负责系统各模块之间的调用以及运算;

存储模块(12),被配置为用于存储调试过程中所需要用到的数据以及调试指令程序;

调试指令模块(13),被配置为于根据调试需求调用相应的调试指令程序对mcu(2)进行调试;

封装解包模块(15),被配置为用于根据解包指令或封装指令进行相应的解包或封装;

通信模块(14),被配置为用于上位机(1)与外部设备进行通信。

3.根据权利要求1所述的一种跨平台的mcu调试装置,其特征在于,所述调试功能模块(22)至少包括日志打印模块、日志等级过滤模块、进程交互模块、固件获取模块、内容写入模块、内容读取模块、在线升级模块、工具自适应识别模块、应用层功能定制模块中的一种或多种;

所述调试指令模块(13)至少包括日志打印指令模块、日志等级过滤指令模块、进程交互指令模块、固件获取指令模块、内容写入指令模块、内容读取指令模块、在线升级指令模块、工具自适应识别指令模块、应用层指令模块中的一种或多种;

日志打印模块,被配置为实现日志打印,其根据日志打印指令模块的指令将日志消息进行打印输出,用来告知开发人员程序的运行状态;日志等级过滤模块,被配置为实现日志等级过滤,其根据日志等级过滤指令模块的指令,有选择的实现动态过滤不同等级的日志能力;进程交互模块,被配置为实时记录多个任务之间的信息传递,其根据进程交互指令启动多个任务之间的信息传递记录;固件获取模块,被配置为获取固件的信息,其根据固件获取指令获取固件信息;内容写入模块,被配置为对接收到需要写入存储器的信息进行写入,其根据内容写入指令将相应的数据写入mcu(2)的存储器中;内容读取模块,被配置为对需要读取的信息进行读取,其根据内容读取指令对相应的内容进行读取;在线升级模块,被配置为对mcu(2)进行升级,其根据接收到来自上位机(1)的升级指令对mcu(2)进行升级;工具自适应识别模块,被配置为根据上位机(1)的工具自适应识别指令对上位机(1)是否具有配套的串口工具进行识别;应用层功能定制模块,被配置为根据上位机(1)的应用层指令对应用程序的功能进行定制。

4.根据权利要求2所述的一种跨平台的mcu调试装置,其特征在于,

日志打印指令模块,被配置为根据调试需求启动日志打印指令并下发给mcu(2)中的日志打印模块;日志等级过滤指令模块,被配置为根据调试需求启动日志等级过滤指令并下发给mcu(2)中的日志等级过滤模块;进程交互指令模块,被配置为根据调试需求启动各个进程之间的进程交互指令并下发给mcu(2)的进程交互模块;固件获取指令模块,被配置为根据调试需求启动获取固件的指令下发给mcu(2)中的固件获取模块;内容写入指令模块,被配置为根据调试需求启动内容写入的指令下发给mcu(2)中的内容写入模块;内容读取指令模块,被配置为根据调试需求启动内容读取的指令下发给mcu(2)中的内容读取模块;在线升级指令模块,被配置为根据调试需求启动在线升级的指令下发给mcu(2)中的在线升级模块;工具自适应识别指令模块,被配置为根据需求启动工具自适应指令并下发给mcu(2)中的工具自适应识别模块;应用层指令模块,被配置为根据需求启动应用层指令下发给mcu(2)中的应用层定制功能模块。

5.根据权利要求2所述的一种跨平台的mcu调试装置,其特征在于,所述封装解包模块(15)用于根据解包指令或封装指令进行相应的解包或封装,所述封装包括以下步骤:

步骤s701,获取需要封包的有效载荷并从中获取有效载荷的地址、长度、数据包类型;

步骤s702,判断地址是否有效,若地址无效,则执行步骤s707,结束封包过程;若地址有效,则执行步骤s703;

步骤s703,判断有效载荷命令类型,若有效载荷的命令类型有效,则执行步骤s704,若有效载荷的命令类型无效,则执行步骤s707,结束封包过程;

步骤s704,判断有效载荷的数据长度是否有效,若数据长度无效,则执行步骤s707,结束封包过程,若数据长度有效,则执行步骤s705;

步骤s705,给有效载荷进行赋值;

步骤s706,步骤s706,将封包好的数据存入待发送的数据区;

所述解包包括以下步骤:

步骤s800,检测帧字头是否为包含高字节,若含有高字节,则执行步骤s801,若没有高字节,回到步骤s800,对下一帧进行检测;

步骤s801,检测帧字头是否包含低字节,若包含低字节,则执行步骤s802;若不包含低字节,则回到步骤s800,对下一帧数据进行检测;

步骤s802,获取数据包的长度;

步骤s803,解析包类型,判断数据包是属于哪一类;

步骤s804,获取解包后有效载荷。

6.根据权利要求3所述的一种跨平台的mcu调试装置,其特征在于,

日志打印模块用于对调试过程中产生日志进行打印,日志打印包括以下步骤:

步骤s901,判断日志等级是否匹配,若匹配,则执行步骤s902,若不匹配,则执行步骤s912;

步骤s902,读取需要打印调试数据包中的字符串首地址的字符;

步骤s903,判断该地址的首字符是否是“结束符”,若是地址首字符是结束符,则结束该过程;若首字符不是结束符,则继续下一步动作;

步骤s904,判断字符是否为‘%’,若字符不是‘%’,则执行步骤s910,保存该字符;若字符是‘%’,则获取下一个字符;

步骤s905,判断下一个字符是否为x或d,若为d,则执行步骤s906,若为x,则执行步骤s908;

步骤s906,获取下一个参数;

步骤s907,将获取的参数转化为十进制字符并执行步骤s910;

步骤s908,获取下一个参数;

步骤s909,将获取的参数转为十六进制字符并执行步骤s910;

步骤s910,保存该字符;

步骤s911,指向下一个字节,跳转重复步骤s903,直至所有的字符打印结束;

或所述日志等级过滤模块用于实现打印日志等级过滤,日志等级过滤包括以下步骤:

步骤s601,接收上位机(1)端的数据;

步骤s602,检验数据包的完整性,若数据包是完整的,则执行步骤s603,若数据包不完整时,则结束该过程;

步骤s603,对数据包的类型进行解析并将数据包依据类型放入相应的等级内;

步骤s604,对需要显示的日志选on,不需要显示的日志选择off,然后进行打印。

7.根据权利要求1所述的一种跨平台的mcu调试装置,其特征在于,所述mcu(2)还包括至少一个外设接口(26),外设接口(26)被配置为用于mcu(2)与外部测设备进行通信连接,所述外设接口类型包括spi接口、usb接口,i2c接口、can接口、doip接口、rs232接口、uart接口中的一种或多种。

8.根据权利要求1所述的一种跨平台的mcu调试装置,其特征在于,在对mcu(2)调试过程中,将需要输出的数据暂存于存储模块(24)中,等待系统空闲时候对外输出。

9.根据权利要求1所述的一种跨平台的mcu调试装置,其特征在于,当发现mcu(2)中的调试功能模块(22)没有内置预设的功能模块或根据调试需求,需要增加额外的调试功能时,通过配套的上位机(1)直接将含有所需的特定功能模块写入mcu(2)中。

10.根据权利要求3所述的一种跨平台的mcu调试装置,其特征在于,所述日志等级至少包括debug日志、info日志、osmsg日志、warn日志、error日志、fatal日志中的任意二种;

debug日志:用来记录系统调试过程中命令状态;

info日志:用来记录当前系统的一个运行状态;

osmsg日志:用来记录进程之间的一个交互过程,只要是进程发出去的消息队列,都被打上osmsg的标签,对外输出,能够根据源进程,目标进程,命令类型来过滤出关注的消息;

warn日志:用来警告开发人员,有可能发生了错误,或者进行了非法操作;

error日志:告知开发人员程序运行过程中遇到了错误,但是这类错误在程序中已经做了相关的处理,对于功能可能失效了,但是系统运行不会受到影响;

fatal日志:用来告知开发人员,系统遇到了严重的错误,导致的结果是程序崩溃,软件重启。


技术总结
本发明提供一种跨平台的MCU调试装置,包括上位机和MCU,其中,MCU包括CPU,调试功能模块,通信模块,存储模块,封装解包模块,CPU分别与调试功能模块、通信模块、存储模块、封装解包模块电连接;上位机至少包括CPU,存储模块,调试指令模块,通信模块,封装解包模块,CPU分别与存储模块、调试指令模块、通信模块、封装解包模块进行电连接;所述上位机的通信模块与MCU中的通信模块连接,其中,上位机的通信模块与MCU中的通信模块采用无线通信或有线通信进行通信连接。相比于现有的MCU调试工具,直接采用MCU与上位机进行组装调试,而不采用专用的调试工具作为中间介质,这样使得调试成本降低,调试方法灵活可变。

技术研发人员:肖文平;王子祥;陈柱;张航
受保护的技术使用者:上海赫千电子科技有限公司
技术研发日:2019.07.31
技术公布日:2019.11.15
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1