人妻蜜と1~4中文字幕月野定规 ,国产精品成人va在线播放,色优久久久久综合网鬼色,WWW插插插无码视频网站

【ARM】Debug(printf)Viewer的配置和使用

一、文檔背景

在項(xiàng)目開發(fā)過程中,通常會(huì)使用物理串口的方式,打印log信息進(jìn)行變量或者信息的查看。但是,也存在遇到某些情況下物理串口不夠或者板卡上沒有USB轉(zhuǎn)串口模塊,無(wú)法通過串口調(diào)試器打印log信息。


二、 解決的問題或者進(jìn)行問題分析

在keil MDK中有一個(gè)特殊的串行窗口Debug (printf) Viewer,可以與微控制器交換數(shù)據(jù)。對(duì)于Cortex-M微控制器,該窗口顯示從Instrumentation Trace Macrocell (ITM)接收的打印數(shù)據(jù)。相當(dāng)于在keil mdk中通過虛擬的串口在keil mdk中直接打印log數(shù)據(jù)。


三、 如何配置使用Debug (printf) Viewer功能

1、準(zhǔn)備軟硬件環(huán)境

1)、軟件:KEIL MDK Pro

2)、仿真器:Ulink Pro

3)、開發(fā)板:ATSAMV7x開發(fā)板(帶SWD+ETM口)

4)、電腦環(huán)境:Windows 11


2、打開Manage Run窗口,找到Compiler->I/O組件。(如圖3-2)


圖3-2


3、勾選STDERR、STDIN、STDOUT三個(gè)組件,并將每個(gè)組件的Variant設(shè)置為ITM(如圖3-3),然后點(diǎn)擊OK。

圖3-3


4、配置SWO trace功能。

1)、創(chuàng)建配置文件SAMx7_TP.ini,并寫入對(duì)于SWO trace端口的配置內(nèi)容,例如:ATSAMV7x芯片的trace端口的配置文件內(nèi)容如下。(關(guān)于配置文件中內(nèi)容,請(qǐng)查看Keil MDK Trace ETM功能文檔)


2)、在Options窗口中的Debug-Initialization Flies處,點(diǎn)擊...,選擇上一步創(chuàng)建的配置文件(如圖3-4-2)

圖3-4-2


3)、連接好仿真器和板子后,進(jìn)入Debug->settings窗口中(如圖3-4-3)。

圖3-4-3


4)、在打開的窗口中Debug欄將Port類型選擇為SW。(如圖3-4-4)

圖3-4-4


5)、切換到Trace欄中,勾選Trace Enable(如圖3-4-5中第1處),Trace Port類型選擇"Serial Wire Output - Manchester"(如圖3-4-5中第2處),將ITM Stimulus Ports的Enable的值修改為0x00000001和Privilege的值修改為0x00000000(如圖3-4-5中第3處)。

圖3-4-5


5、至此Debug (printf) Viewer功能就配置完成了。


四、使用Debug (printf) Viewer

1、在對(duì)應(yīng)的代碼處添加printf語(yǔ)句(如圖4-1)。

圖4-1


2、進(jìn)入debug模式下,在view菜單欄中,找到Serial Windows->Debug(printf)Viewer窗口(如圖4-2)。

圖4-2


3、運(yùn)行程序,就可以在Debug(printf)Viewer窗口看到printf語(yǔ)句輸入的信息了(如圖4-3)。

圖4-3

五、討論分析

1. Debug(printf)Viewer窗口最大的輸出速率是多少?

2. Debug(printf)Viewer窗口最大的輸出字節(jié)是否有限制?



六、結(jié)論

在物理串口不夠或者板卡上沒有USB轉(zhuǎn)串口模塊,無(wú)法通過串口調(diào)試器打印log信息的情況下,可以使用Debug(printf)Viewer窗口在Debug模式下通過printf語(yǔ)句輸入log信息。