欢迎光临散文网 会员登陆 & 注册

CH32V103学习笔记之三——对debug.c中的函数做一些修改

2021-08-07 18:38 作者:修地球八级工  | 我要投稿

1、前言

    上一篇讲到了如何基于IDE自带工程模板做一些调整,形成一个符合自己使用习惯的模板。本篇笔记主要介绍模板里的debug.c文件中的函数功能和对函数做一些修改,以更符合个人使用习惯。

2、debug.c文件的作用

  • 初始化系统嘀嗒计数器SysTick,配置对应参数实现us、ms级别延时

  • 通过条件编译宏,初始化串口1、2或者3的TX引脚,实现串口输出数据或者调试信息

    另外有一点需要提醒的是,多个外设的库函数中调用了debug.c中的延时函数。如果不想使用debug.c这个文件,就需要在对应的外设库函数中做修改了(删除这两个文件,编译的时候会提示错误,根据错误信息一个个修复即可)。

debug.h中的宏定义和函数声明

3、调整内容

3.1、调整延时函数

    使用库函数上电初始化的系统主频是72MHz。寄存器参数为何要这么配置,由于未在参考手册和数据手册中查到systick相关寄存器的说明,所以不做进一步的讨论,这里只做函数调用上的简化,方便调用即可。感兴趣的小伙伴请联系沁恒技术支持了解具体详情。

    调整前(汉字注释是我加的)👇

    调整后👇

3.2、调整串口初始化函数

    本次活动的学习板上WCH-Link虚拟串口默认接入的是CH32V103R8T6的串口1,且后续准备移植的项目也只使用到串口1,所以这里简化函数内容,同时增加RX引脚的初始化。

调整前👇

串口1、2、3 TX引脚的初始化函数,通信波特率作为参数传入。根据在debug.h中选择的编译条件,初始化对应的串口TX引脚。

printf函数重定向,方便直接使用C语言printf函数输出内容。根据debug.h中选择的编译条件,调用对应的串口输出。

调整后👇

4、小结

    本篇介绍的内容出于个人的编程习惯,加上一点强迫症,所以动手做了一些调整。当然,不做修改也是可以正常使用的。


CH32V103学习笔记之三——对debug.c中的函数做一些修改的评论 (共 条)

分享到微博请遵守国家法律