程序開發(fā)過程中調(diào)試必不可少,一種簡單直接的調(diào)試方式是使用串口發(fā)送數(shù)據(jù),并使用串口助手進(jìn)行觀測。以前使用MSP430做項(xiàng)目時也同樣使用printf打印數(shù)據(jù),所以現(xiàn)在想在stm32 上實(shí)現(xiàn)。
通常串口發(fā)送單字節(jié)庫函數(shù):USART_SendData(USART1, (uint8_t) ch);對顯示小數(shù)等數(shù)據(jù)比較復(fù)雜,如果能夠直接使用C語言 stdio.h中的printf直接輸出就可以省去大部分格式輸出轉(zhuǎn)化時間。下面將介紹如何調(diào)用printf打印串口數(shù)據(jù)。
建立USART.C和USART.H兩個文件,分別編寫串口設(shè)置程序與頭文件
USART.C中需要添加如下代碼:
int fputc(int ch, FILE *f)
{
/* e.g.給USART寫一個字符 */
USART_SendData(USART1, (uint8_t) ch);
/* 循環(huán)直到發(fā)送完成 */
while (USART_GetFlagStatus(USART1, USART_FLAG_TC) == RESET);
return ch;
}
對printf進(jìn)行重定向;
USART.H中需要添加如下代碼:
添加stdio.h頭文件,其次,聲明int fputc(int ch, FILE *f);
最后一步,在設(shè)置中勾選Use MicroLIB選項(xiàng);
完成以上步驟后,便可在程序中直接調(diào)用printf打印串口數(shù)據(jù)。
上一篇:STM32輸出調(diào)試信息-printf重定向到串口
下一篇:Keil重定向printf到串口UART輸出
推薦閱讀
史海拾趣
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- 意法半導(dǎo)體推出用于匹配遠(yuǎn)距離無線微控制器STM32WL33的集成的匹配濾波芯片
- ESP32開發(fā)板連接TFT顯示屏ST7789跳坑記
- 如何讓ESP32支持analogWrite函數(shù)
- LGVL配合FreeType為可變字體設(shè)置字重-ESP32篇
- 使用樹莓派進(jìn)行 ESP32 Jtag 調(diào)試
- ESP32怎么在SPIFFS里面存儲html,css,js文件,以及網(wǎng)頁和arduino的通訊
- ESP32 freeRTOS使用測試
- API調(diào)用小記(Touchdesigner和ESP32)
- 關(guān)于ESP32/8266使用async-mqtt-client庫的一些基本介紹
- 兩款車規(guī)激光雷達(dá)新品:23mm超薄+廣角
- 廣和通發(fā)布AI語音智能體FiboVista,重構(gòu)車聯(lián)網(wǎng)與AIoT交互體驗(yàn)
- AEB成國家強(qiáng)標(biāo) 輔助駕駛應(yīng)緊守安全底線
- 單價250萬美元的悲?。核涝凇袄杳鳌鼻暗娜毡救诵螜C(jī)器人產(chǎn)業(yè)
- Allego推出全球首款最安全的即插即充技術(shù)
- 索尼半導(dǎo)體解決方案將推出堆疊式SPAD深度傳感器 用于汽車激光雷達(dá)應(yīng)用
- SNU開發(fā)出單傳感器3D麥克風(fēng) 使機(jī)器人能夠在嘈雜環(huán)境中定位人類
- 硫化鋰技術(shù)大突破!樣品已送全固態(tài)電池制造商
- 汽車市場爆發(fā)前,誰為固態(tài)電池“買單”?
- 自動駕駛中純視覺替代不了激光雷達(dá)?
- 打破核心技術(shù)的壁壘和瓶頸 芯力量初賽完美收官
- 智能音頻SoC芯片廠商炬芯科技科創(chuàng)板IPO成功過會了
- IC概念股本周漲跌幅排行解密:瑞芯微領(lǐng)漲,安集科技領(lǐng)跌
- 南大光電:ArF光刻膠產(chǎn)品獲得首個小批量訂單
- 為索尼配套芯片制造,臺積電計(jì)劃在日建廠
- 小胖機(jī)器人獲5億融資,投后估值近20億
- RoboDEX進(jìn)擊日本及亞洲機(jī)器人市場
- 這,就是我國最早全民通電的省級電網(wǎng)
- 建設(shè)生態(tài)智能配電網(wǎng) 服務(wù)民族鄉(xiāng)村振興
- 勇于擔(dān)當(dāng)作為 奮力攻堅(jiān)突破 加快建設(shè)世界一流能源互聯(lián)網(wǎng)企業(yè)
- 求助
- 射頻標(biāo)簽在醫(yī)藥方面的應(yīng)用
- RAPIO-PCIE高速數(shù)據(jù)傳輸卡及l(fā)inux源碼、vxworks、windows等驅(qū)動
- 大家有什么好的外部中斷按鍵去抖的方法嗎??都快崩潰了。。。
- 【KW41Z騎行數(shù)據(jù)收集系統(tǒng)】KW41Z BLE 及 iOS BLE編程
- 如何做嵌入式Linux操作系統(tǒng)
- 今晚一開VM,就卡在這個界面,進(jìn)不了ubuntu!
- PROTUES仿真430出錯
- 哪有好一點(diǎn)單片機(jī)培訓(xùn)機(jī)構(gòu)
- 【RT-Thread讀書筆記】第一部分 裸機(jī)與系統(tǒng)