基于STM32的多种printf用法

发布时间:2024-01-29  

在调试代码的时候,最常用的就是使用printf函数来输出一些打印信息,提示自己代码的执行情况。


如果你的UART串口不够用,还要用printf,此时该怎么办?

解决方法:使用SWO/SWV。

  • SWO:Serial Wire Output,串行线输出

  • SWD:Serial Wire Viewer,串行线查看器

一、常见printf输出

  • 1.UART打印

  • 2.Keil MDK-ARM Viewer输出

  • 3.IAR EWARM终端输出

  • 4.ST-LINK Utility SWV输出

二、UART映射printf

使用硬件UART串口映射,实现printf打印输出。

#include "stdio.h"

int fputc(int ch, FILE *f)

{

HAL_UART_Transmit(&huart1, (uint8_t *)&ch, 1, 0xFFFF);

return ch;

}

三、Keil MDK-ARM Viewer输出

  • 针对2、3、4输出

  • 添加代码:

#include "stdio.h" int fputc(int ch, FILE *f) { ITM_SendChar(ch); return ch; }

  • 在Keil的Options中设置

四、IAR EWARM终端输出

  • 1.Oprtins设置

  • 2.SWO配置

五、ST-LINK Utility SWV输出

工具在线查看输出信息,需要上面配置代码,通过ST-Link链接即可。


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    + 2800000; 32          33     cout<<'费用='<34     printf('%d.%2dn', answer_fabi / (1000000......
    电源输出电压翻转为负压。 下图截取自SGM3204数据手册中,当S1S3闭合,S2S4断开时电容Cfly充电到Vin,电容两端电压左高右低。当S1S3断开,S2S4闭合时,电容Cfly左端接地,由于......
    轨迹)、47μF(红色轨迹)100μF(青色轨迹)。 输出电容值影响启动后达到可接受的输出电压所需的时间量。如果您有一个需要快速启动的应用程序,那么您可能需要使用更小的电容器来减少COUT。 让我......
    及美国SanDisk公司于1999年8月共同开发研制。 SD卡按容量分类,可以分为3类:SD卡、SDHC卡、SDXC卡,如下表所示: SD卡和SDHC卡协议基本兼容,但是SDXC卡的区别比较大,这里仅介绍SD......
    ];         }     }     double elapsedTime = static_cast(clock()-start) / CLOCKS_PER_SEC;    std::cout << elapsedTime <......
    在价格、封装以及稳定性上有优势,实际操作和SD卡没什么区别。 关于 SD卡/SDnand 的驱动,有了CubeMx之后其实基本上都自动生成了对应的驱动了,基本上把驱动配置一下之后,自己......
    器可以访问计算所需的信号。连接到输入和输出的电压探头提供 MOSFET 两端的压降;电流探头提供了检测通过 MOSFET 的负载电流的最简单方法。 图1.示波器探头连接到MAX5976......
    可能会读脏数据。当要求使用volatile声明的变量的值的时候,系统总是重新从它所在的内存读取数据,即使它前面的指令刚刚从该处读取过数据。而且读取的数据立刻被保存。 3. sizeofstrlen的区别,使用......
    文件行号上面说的是编译的文件名,是一个字符串,而这里说的是行号,是一个整型变量,这是这两者的区别, 比如在工程中添加源代码: char BuildLine = __LINE__;printf("编译代码所在行:%d......
    浅谈STM32之SPI_FLASH之应用实例;SPI Flash 首先它是个Flash,Flash是什么东西就不多说了(非易失性存储介质),分为NORNAND两种(NORNAND的区别......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>