使用单片机的串口打印功能

本文介绍了两种常见的单片机调试方法:在线调试和串口打印。在线调试利用芯片内置功能支持单步运行和断点设置;串口打印则通过软件实现,适用于各种单片机,便于监控程序运行状态及产品调试。

转载请注明出处
个人看法,仅供分享

单片机调试手段:

1、在线调试

部分芯片支持该功能,典型的有STM32系列的SWD接口,沁恒的CH32V和CH32F系列、CH56X部分RISC-V的两线调试。

2、串口打印

串口打印功能应该是个单片机都能够支持,在51上是特别常用的手段,STM32上根据使用者习惯可能用在线调试功能会多一点。


实现原理:

1、在线调试

芯片本身具备的一个硬件功能,需要在芯片设计阶段就做进去,并且因为硬件实现的功能,实际使用可能需要特定芯片才能支持,同时需要配套特定的外部工具才能实现,可以实现程序的单步运行、程序任意处的断点,做到变量的监控。

2、串口打印

由软件实现,默认是借助芯片硬件串口输出printf函数的内容,printf函数通过标准C库实现,能够实现字符、变量的格式化输出。当然也可以魔改底层printf回调的输出功能函数,实现任意接口、IO的输出、状态响应。

这个部分可以参考:51单片机标准串口使用教程及常见问题: 点这里


个人分享:

串口打印功能的价值:入门单片机的时候用的STC8051,工作初期包括入坑深了之后,调试单片机代码一直使用的是串口打印。接触到的代码模板,逐步养成的编程思维、编程习惯都适应了串口打印方式。

一直没有用在线调试,主要考虑到调试的一些接口通讯时,实质上是不允许单步和断点的,往往接口停下来的结果就是断连,比如USB口、网口、

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值