在調(diào)試代碼的時候,最常用的就是使用printf函數(shù)來輸出一些打印信息,提示自己代碼的執(zhí)行情況。
如果你的UART串口不夠用,還要用printf,此時該怎么辦?
解決方法:使用SWO/SWV。
-
SWO:Serial Wire Output,串行線輸出
-
SWD:Serial Wire Viewer,串行線查看器
一、常見printf輸出
- 1.UART打印
- 3.IAR EWARM終端輸出
- 4.ST-LINK Utility SWV輸出
二、UART映射printf
使用硬件UART串口映射,實現(xiàn)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中設(shè)置
四、IAR EWARM終端輸出
- 1.Oprtins設(shè)置
- 2.SWO配置
五、ST-LINK Utility SWV輸出
工具在線查看輸出信息,需要上面配置代碼,通過ST-Link鏈接即可。
文章整合自:csdn
編輯:ymf
-
uart
+關(guān)注
關(guān)注
22文章
1270瀏覽量
103421 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4372瀏覽量
64361 -
Printf
+關(guān)注
關(guān)注
0文章
84瀏覽量
14147
發(fā)布評論請先 登錄
瑞薩RA單片機(jī)在e2 studio環(huán)境下printf編譯出錯的問題解析

harmony OS NEXT-Navagation基本用法
基于STM32設(shè)計的智能魚缸

STM32CubeMX的菜單介紹

stdio.h實現(xiàn)了printf函數(shù)?
51單片機(jī)中為什么很少出現(xiàn)printf的身影

stm32與Arduino的比較
正點原子的stm32開發(fā)板能用stlink嗎
Linux lsof命令的基本用法

共模電感的用法
stm32g與stm32h的區(qū)別
還不會嗎?三分鐘讓你速通Printf~

評論