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