通過(guò)藍(lán)牙或WiFi模塊使用上位機(jī)時(shí),如何用串口助手顯示相關(guān)變量的值呢?
今天我給大家講講串口printf的使用
第一步:
首先在庫(kù)函數(shù)stm32f10x_usart.c中加入以下代碼:
/*******printf重定義*********/
int fputc(int ch, FILE *f)
{ /* 給USART寫(xiě)一個(gè)字符 */
USART_SendData(USART3, (uint8_t) ch);
//這里用到了USART3就是表示用串口3的TX發(fā)送printf到上位機(jī);
//你也可以用USART1,下面一行的USART3改為相應(yīng)的USART1;
/* 循環(huán)直到發(fā)送完成 */
while (USART_GetFlagStatus(USART3, USART_FLAG_TC) == RESET);
return ch;
}
/*************************/
第二步:
然后在stm32f10x_usart.h中包含
#include "stdio.h"
int fputc(int ch, FILE *f);
第三步:
將魔術(shù)棒中的Use MicroLIB勾選上
1.png (32.56 KB, 下載次數(shù): 77)
下載附件
2020-3-31 15:51 上傳
這樣你就可以使用printf函數(shù)了
PS:有的人的固件庫(kù)中stm32f10x_usart.h和stm32f10x_usart.c是被鑰匙鎖著的
解決方法:打開(kāi)文件所在位置--->右鍵--->屬性---->將只讀取消勾選
|