資料介紹
作為一名嵌入式軟件系統工程師,掌握住高效快捷的調試方法,往往會在實際的項目開發中達到事半功倍的效果。今天就跟大家講一講我們在項目開發過程中,那些被我們忽視的調試法寶吧。
通過串口打印實時打印出MCU的運行狀態,想必大家都有用過,可你是不是仍然停留在串口打印字符函數(比如說函數名是StringUartSend)都需要自己寫的時代。縱然我承認你C語言功底很深厚,但是其實你已經OUT了?,F在是講究效率的時代,時間就是金錢,如果我們能夠充分的利用C語言函數庫,會讓很多代碼的編寫變的很簡單。
比如說,現在我們需要通過串口輸出1個3位的10進制整數,變量名就叫A。按照之前的思路,先需要把A的個、十、百位等分別提取出來,然后轉換成ASCII碼存儲到數組或指針里,最后通過StringUartSend函數把結果輸出來。這時你也許會說,這就已經滿足你的要求了,可是如果你要查看的數據是小數呢?轉換起來是不是就浪費了很多運行空間。那么該怎么辦呢?沒事,printf函數可以輕松幫我們搞定。
Printf函數是一個格式化輸出函數,《C程序設計高級教程》一書中有這樣的描述:printf函數的作用是按照指定的格式將程序的數據輸出到終端上,其一般形式為:
printf ( 格式控制,輸出列表 );
其中格式控制和輸出列表為printf函數的參數。更多關于該函數的詳細描述,請讀者自行查閱1.12.3 格式化輸出一節。
這時我們可能就會想:如果能用它直接向PC上的串口軟件打印信息的話,不是件很酷的事情么,再也不用自己寫格式轉換函數了。但它是C函數庫中的函數,如何知道我們的底層調用了串口發送函數呢?這就用到了重定向技術。重定向的代碼如程序清單 1所示。
程序清單 1 重定向代碼
int fputc(int ch, FILE *f)
{
CharUartSend((char)ch); /* 串口發送一個字符函數 */
return 1; /* 發送完成返回1 */
}
在我們完成串口的初始化工作并編寫好一個字符發送函數CharUartSend之后,就可以把程序清單 1所示的代碼添加到你的工程里了。并在文件起始處添加stdio.h文件,如下所示。
#include
重定向的代碼是由fputc函數來執行的。要注意的是,不能使用其他的名字,因為“fputc”是編譯器預定義的用于字符輸出的函數名。fputc()實際上只是一個封皮,它直接調用CharUartSend 函數來做真實的工作。
加入上面的代碼之后,再重新編譯一下你的代碼,在主函數中隨便寫一個打印信息,是不是在串口助手上面有意外的驚喜呢?
通過上文的描述,你已經對使用printf在串口助手打印信息有所了解把,但是在調試過程中,還需要配置串口資源,無疑又加大了產品開發的周期。那么有沒有一種方法,可以不使用MCU的外設資源,又可以查看調試信息呢?
文章來源:
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 德飛萊串口調試軟件下載 25次下載
- STM32使用串口重定向系統printf函數輸出時出現一初始化或使用printf函數系統卡死的原因及解決辦法
- printf通過串口輸出在MCU上的實現
- 51單片機串口通信調試printf函數重定向輸出打印
- 串口調試軟件免費下載 13次下載
- 串口調試助手V2.2軟件程序下載 47次下載
- 串口調試助手V2.80軟件下載 102次下載
- 總結:這些Keil 軟件仿真的串口調試技巧,你都記熟了沒有?資料下載
- STM32串口DMA容易忽視的問題資料下載
- 淺談STM32單片機學習---PWM輸出資料下載
- ADS工程在IAR EWARM 5.3上移植printf的串口實現代碼免費下載 0次下載
- Keil C51重定向printf到串口的程序免費下載
- 串口調試工具comdebug應用程序免費下載 78次下載
- STM8S串口打印調試信息(不使用printf) 51次下載
- scommtest 串口調試軟件 38次下載
- 解決printf無法打印輸出的問題 1297次閱讀
- 什么是基本輸入輸出printf、scanf ... 877次閱讀
- 基于單片機的串口調試打印 2717次閱讀
- 基于QT的串口調試工具設計 2022次閱讀
- 常規的串口調試工具 8522次閱讀
- C語言printf格式化輸出的實例詳細資料說明 4496次閱讀
- 如何使用單片機中printf 3187次閱讀
- 基于STM8L15x單片機的串口printf輸出程序分享 5097次閱讀
- STM32:如何寫出多串口共用printf函數語句? 1.5w次閱讀
- 什么是串口通信?基于STM32的printf打印輸出 1.3w次閱讀
- STM32F103程序調用printf打印串口數據 1.2w次閱讀
- 基于STM32中調試與串口之間的信息傳輸 6417次閱讀
- 基于STM32的printf串口數據輸出 2w次閱讀
- 友善串口調試助手怎么使用及使用方法說明 12.6w次閱讀
- stm32串口通信用printf發送數據配置 4270次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數據手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多