printf雖然是C語言的標(biāo)準(zhǔn)函數(shù),但是是針對(duì)有stdin, stdout設(shè)備的系統(tǒng)的,在嵌入式平臺(tái)上是沒有標(biāo)準(zhǔn)的stdin, stdout的,需要映射到串口后某個(gè)輸出對(duì)象的,而嵌入式平臺(tái)各不相同,如果又沒有操作系統(tǒng)的支持,就只能靠自己實(shí)現(xiàn)了,因此STM32下的printf不在標(biāo)準(zhǔn)庫里,而在定制的庫里。而且一般在嵌入式平臺(tái)一般也不用printf,可以自己使用sprintf()函數(shù)先將數(shù)據(jù)格式化到緩沖里,然后數(shù)據(jù)想輸出到哪里就輸出到哪里。
如果使用的是MDK,請(qǐng)?jiān)诠こ虒傩缘摹癟arget“-》”Code Generation“中勾選”Use MicroLIB“
#ifndef __UART_INTERFACE_H
#define __UART_INTEFFACE_H
#include "stm32f10x_lib.h"
#include "stdio.h"
void UART_Init(unsigned long UART_baud); //波特率,如115200
int fputc(int ch, FILE *f); //fputc重定向
int fgetc(FILE *f); //fgetc重定向
#endif
關(guān)于兩個(gè)關(guān)鍵函數(shù)的重定義:
[c++] view plain copy
int fputc(int ch, FILE *f)
{
USART_SendData(USART1, (u8) ch);
while(!(USART_GetFlagStatus(USART1, USART_FLAG_TXE) == SET));
return ch;
}
int fgetc(FILE *f)
{
while(!(USART_GetFlagStatus(USART1, USART_FLAG_RXNE) == SET));
return (USART_ReceiveData(USART1));
}
上一篇:keil環(huán)境下stm32f030R8環(huán)境配置
下一篇:ARM中斷向量表重定位到片外RAM方法
推薦閱讀
史海拾趣
設(shè)計(jì)資源 培訓(xùn) 開發(fā)板 精華推薦
- 基于51系列單片機(jī)的智能照明控制系統(tǒng)設(shè)計(jì)方案
- 基于STM32的四旋翼飛行器控制系統(tǒng)
- 單片機(jī)應(yīng)用編程技巧解析
- 基于89C52的教室智能節(jié)能照明系統(tǒng)設(shè)計(jì)
- 一種新型的雨量光照傳感器的設(shè)計(jì)
- 智能護(hù)眼臺(tái)燈設(shè)計(jì)
- 蓄電池高能脈沖充電系統(tǒng)設(shè)計(jì)
- 基于51單片機(jī)定時(shí)器的電子時(shí)鐘設(shè)計(jì)方案
- 瑞薩電子推出面向單電機(jī)應(yīng)用優(yōu)化的卓越MCU, 涵蓋電動(dòng)工具、家用電器等廣泛應(yīng)用場景
- 港口配電系統(tǒng)諧波分析及其治理措施
- 基于STM32的四旋翼飛行器控制系統(tǒng)
- 多通道采樣精確的按鍵電力線監(jiān)控
- 嵌入式控制器在高鐵自動(dòng)上下水中的應(yīng)用
- 分析汽車轉(zhuǎn)向電動(dòng)機(jī)工作原理及轉(zhuǎn)向系統(tǒng)
- 水下機(jī)器人嵌入式控制系統(tǒng)設(shè)計(jì)和運(yùn)動(dòng)控制仿真
- 變頻電動(dòng)機(jī)構(gòu)在火電廠的應(yīng)用
- ALPHA6000變頻器供水節(jié)能改造應(yīng)用案例
- 對(duì)于通信應(yīng)用差分電路設(shè)計(jì)技術(shù)
- IR5000控制系統(tǒng)在螺桿式空壓機(jī)上的應(yīng)用
- e絡(luò)盟e選第三期:熱門產(chǎn)品5折起,價(jià)格鎖定更安心
- 有獎(jiǎng)直播|完美替代傳統(tǒng)汽車鑰匙?探索英飛凌數(shù)字鑰匙解決方案
- 泰克示波器旅行指南 更高帶寬、更低噪聲、更多通道
- 快樂分享,月月有獎(jiǎng)第26期如期而至~~
- 恩智浦LPC2000系列全套資料!
- “慧眼”識(shí)PCIe——閱讀《PCIe要了解的十件事》和泰克OPEN-DAY的培訓(xùn)資料 抽獎(jiǎng)、分享贏好禮!
- 100%獲獎(jiǎng),EE新年福利!
- PI 有獎(jiǎng)直播|電機(jī)開發(fā)很復(fù)雜?MotorXpert™助您事半功倍!
- 大聯(lián)大世平集團(tuán)推出77G毫米波雷達(dá)盲區(qū)偵測BSD解決方案
- 解讀泰克新一代中端示波器高測試精度的五大優(yōu)勢
- Velodyne在自動(dòng)駕駛汽車研討會(huì)上重點(diǎn)推介高級(jí)激光雷達(dá)
- 仙知小課堂|可視化操作軟件Roboshop操作指南——路徑導(dǎo)航
- 英特爾攜手WWT重塑FPGA,為世界帶來靈活的加速體驗(yàn)
- JDI宣布透明指紋識(shí)別傳感器
- 傳歐盟今天將向高通開出巨額罰單
- 高通發(fā)布系列新品 重點(diǎn)爭奪博通傳統(tǒng)市場
- Toppan Photomasks于上海廠設(shè)置尖端光罩設(shè)備
- 這家AI輔助醫(yī)學(xué)成像公司僅需一美元即可檢測多種疾病,影像和臨床匿名數(shù)據(jù)庫超過了IBM