概述
本章主要配置printf進(jìn)行打印。 查閱手冊(cè)可以得知,PA9、PA10為串口0的輸出和輸入口。需要GD樣片的可以加群申請(qǐng):615061293。

樣品申請(qǐng)
https://www.wjx.top/vm/wFGhGPF.aspx#
硬件準(zhǔn)備
這里準(zhǔn)備了2塊開(kāi)發(fā)板進(jìn)行驗(yàn)證,分別是GD32303C_START開(kāi)發(fā)板。

keil配置
microlib 進(jìn)行了高度優(yōu)化以使代碼變得很小。 它的功能比缺省 C 庫(kù)少,并且根本不具備某些 ISO C 特性。 某些庫(kù)函數(shù)的運(yùn)行速度也比較慢,如果要使用printf(),必須開(kāi)啟。

串口初始化
對(duì)串口進(jìn)行配置。
/* 使能GPIOB時(shí)鐘*/
rcu_periph_clock_enable(RCU_GPIOA);
/*設(shè)置PA0為浮空輸入 */
gpio_init(GPIOA, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, GPIO_PIN_0);
/* 使能GPI0A,用PA9、PA10為串口 */
rcu_periph_clock_enable(RCU_GPIOA);
/*使能串口0的時(shí)鐘 */
rcu_periph_clock_enable(RCU_USART0);
/*配置USARTx_Tx(PA9)為復(fù)用推挽輸出*/
gpio_init(GPIOA, GPIO_MODE_AF_PP, GPIO_OSPEED_50MHZ, GPIO_PIN_9);
/*配置USARTx_RxPA9)為浮空輸入 */
gpio_init(GPIOA, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, GPIO_PIN_10);
/* USART 配置 */
usart_deinit(USART0);//初始化USART0
usart_baudrate_set(USART0, 115200U);//設(shè)置串口USART0波特率為115200
usart_receive_config(USART0, USART_RECEIVE_ENABLE);//啟用USART0接收
usart_transmit_config(USART0, USART_TRANSMIT_ENABLE);//啟用USART0發(fā)送
usart_enable(USART0);//使能USART0
串口重定向
/* retarget the C library printf function to the USART */
int fputc(int ch, FILE *f)
{
usart_data_transmit(USART0, (uint8_t)ch);
while(RESET == usart_flag_get(USART0, USART_FLAG_TBE));
return ch;
}
打印測(cè)試
while(1){
printf("串口0打印!");
delay_1ms(1000);
}
測(cè)試結(jié)果

審核編輯 黃昊宇
聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
固件庫(kù)
+關(guān)注
關(guān)注
2文章
98瀏覽量
15618 -
Printf
+關(guān)注
關(guān)注
0文章
84瀏覽量
14734 -
gd32f303
+關(guān)注
關(guān)注
4文章
38瀏覽量
4211
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
基于RT-Thread與兆易創(chuàng)新GD32F527的工業(yè)級(jí)網(wǎng)絡(luò)-CAN透?jìng)骶W(wǎng)關(guān)設(shè)計(jì)與實(shí)現(xiàn) | 技術(shù)集結(jié)
目錄系統(tǒng)概述RT-Thread使用情況硬件框架軟件架構(gòu)軟件模塊詳解功能展示鏈接地址1系統(tǒng)概述本系統(tǒng)是一個(gè)基于GD32F527I_EVAL和RT-Thread實(shí)時(shí)操作系統(tǒng)開(kāi)發(fā)的工業(yè)級(jí)網(wǎng)絡(luò)-CAN總線透
求助,關(guān)于C代碼中的printf打印的疑問(wèn)求解
在使用E203 testbench執(zhí)行附帶的benchmark測(cè)試用例時(shí)候,得到如下打印信息:
CPU驗(yàn)證小白一枚,有個(gè)問(wèn)題不是很理解:黃色框框內(nèi)的字符看起來(lái)應(yīng)該是C代碼中的printf語(yǔ)句
發(fā)表于 11-10 07:54
使用VScode的PIO開(kāi)發(fā)GD32VF103,但是串口無(wú)法打印浮點(diǎn)數(shù)怎么解決?
我最近在使用VScode的PIO開(kāi)發(fā)GD32V,使用的是longan的模板,但是我將串口輸出重定義到printf函數(shù)中,發(fā)現(xiàn)無(wú)法使用%f輸出浮點(diǎn)數(shù),想問(wèn)問(wèn)應(yīng)該怎么
發(fā)表于 11-06 06:49
兆易創(chuàng)新GD32F5xx與GD32G5xx STL軟件測(cè)試庫(kù)獲頒IEC61508功能安全認(rèn)證
業(yè)界領(lǐng)先的半導(dǎo)體器件供應(yīng)商 兆易創(chuàng)新GigaDevice 宣布,其GD32F5xx與GD32G5xx系列MCU配套的STL(Software Test Library)軟件測(cè)試庫(kù)獲得德國(guó)萊茵TüV
MCU無(wú)法檢測(cè)到W5500是怎么回事?
在兆易創(chuàng)新 GD32F303,國(guó)民技術(shù) N32G457和ST STM32F103上試用了W5500以太網(wǎng)模塊(RT-Thread版本是rt-thread-4.1.1),
只有STM32F103上可以
發(fā)表于 10-14 07:38
NVIC中斷配置固件庫(kù)詳解
固件庫(kù)文件core_cm33.h的最后,還提供了NVIC的一些函數(shù),這些函數(shù)遵循CMSIS規(guī)則,只要是Cortex-M33的處理器都可以使用。
backtrace命令無(wú)法使用?為什么?
GD32F303,之前一直用nano,最近使用5.2.0標(biāo)準(zhǔn)版,工程使用最新版本bsp中的,直接下載,發(fā)現(xiàn)有backtrace命令,根據(jù)提示使用,一直提示無(wú)效輸入?是M核不支持嗎?還是我哪里沒(méi)有開(kāi)啟,雖然暫時(shí)沒(méi)用到,還是想多了解一下?
發(fā)表于 09-22 08:13
GD32F103RCT6 rt_kprintf無(wú)法打印怎么解決?
使用的芯片為GD32F103RCT6,文件夾board路徑里有一個(gè)不使用rt操作系統(tǒng)的串口打印配置,映射到printf,使用這個(gè)代碼配置的
發(fā)表于 09-19 07:42
GD32F103RCT6移植qboot,燒錄之后系統(tǒng)卡死怎么解決?
如題,我使用的是stm32的hal庫(kù)對(duì)STM32F103RCT6芯片進(jìn)行配置的代碼燒錄到GD32F103RCT6中,串口和PWM都調(diào)試成功,沒(méi)有問(wèn)題,所以開(kāi)始移植qboot。使用env
發(fā)表于 09-19 06:41
GD32的串口DMA收發(fā)數(shù)據(jù)失敗怎么解決?
我在使用RTT的GD32F303的BSP時(shí),配置使用串口DMA收發(fā)(rt_device_open),發(fā)現(xiàn)錯(cuò)誤,最終無(wú)法收發(fā)數(shù)據(jù),對(duì)比了STM32的BSP發(fā)現(xiàn)在drv_usart.c中
發(fā)表于 09-17 06:04
GD32F437開(kāi)發(fā)板添加lwip支持后ping不通電腦怎么解決?
使用GD32F437的開(kāi)發(fā)板,在studio中添加lwip的支持后,將開(kāi)板板設(shè)置和電腦相同的網(wǎng)段,并用網(wǎng)線連接開(kāi)發(fā)板和電腦,開(kāi)發(fā)板啟動(dòng)后ping不通電腦,如下:
發(fā)表于 09-09 07:43
高新興瑞聯(lián)推出新款LTE Cat.1高性能OBD產(chǎn)品GD303
2025年8月,高新興瑞聯(lián)新款LTE Cat.1高性能OBD產(chǎn)品——GD303正式上市!憑借卓越的性能、豐富的功能和廣泛的應(yīng)用場(chǎng)景適用性和易用性,GD303將豐富高新興瑞聯(lián)的OBD Tracker產(chǎn)品家族,滿(mǎn)足更多客戶(hù)在數(shù)字化車(chē)隊(duì)管理中的核心需求。
PRINTF函數(shù)無(wú)法打印出浮點(diǎn)數(shù)內(nèi)容是為什么?
1、MCXN947低功耗adc,歷程中使用官方提供的PRINTF無(wú)法打印出浮點(diǎn)數(shù)內(nèi)容。
2、同樣在mcuxpresso ide 也不可以打印浮點(diǎn)數(shù),這是為什么呢?
3、使用的歷程是lpadc歷程。
發(fā)表于 03-20 08:06
GD32F303固件庫(kù)開(kāi)發(fā)(7)----printf打印配置
評(píng)論