0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

GD32F303固件库开发(7)----printf打印配置

嵌入式单片机MCU开发 来源:嵌入式单片机MCU开发 作者:嵌入式单片机MCU开 2022-11-28 17:10 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

概述

本章主要配置printf进行打印。 查阅手册可以得知,PA9、PA10为串口0的输出和输入口。需要GD样片的可以加群申请:615061293。

在这里插入图片描述

样品申请

https://www.wjx.top/vm/wFGhGPF.aspx#

硬件准备

这里准备了2块开发板进行验证,分别是GD32303C_START开发板。

在这里插入图片描述

keil配置

microlib 进行了高度优化以使代码变得很小。 它的功能比缺省 C 库少,并且根本不具备某些 ISO C 特性。 某些库函数的运行速度也比较慢,如果要使用printf(),必须开启。

在这里插入图片描述

串口初始化

对串口进行配置。

/* 使能GPIOB时钟*/
    rcu_periph_clock_enable(RCU_GPIOA);    
        /*设置PA0为浮空输入 */
        gpio_init(GPIOA, GPIO_MODE_IN_FLOATING, GPIO_OSPEED_50MHZ, GPIO_PIN_0);


  /* 使能GPI0A,用PA9、PA10为串口 */
    rcu_periph_clock_enable(RCU_GPIOA);

    /*使能串口0的时钟 */
    rcu_periph_clock_enable(RCU_USART0);

    /*配置USARTx_Tx(PA9)为复用推挽输出*/
    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);//设置串口USART0波特率为115200
    usart_receive_config(USART0, USART_RECEIVE_ENABLE);//启用USART0接收
    usart_transmit_config(USART0, USART_TRANSMIT_ENABLE);//启用USART0发送
    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;
}

打印测试

while(1){
            printf("串口0打印!");
            delay_1ms(1000);
            }

测试结果

在这里插入图片描述

审核编辑 黄昊宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 固件库
    +关注

    关注

    2

    文章

    98

    浏览量

    15522
  • Printf
    +关注

    关注

    0

    文章

    84

    浏览量

    14629
  • gd32f303
    +关注

    关注

    4

    文章

    38

    浏览量

    4136
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用VScode的PIO开发GD32VF103,但是串口无法打印浮点数怎么解决?

    我最近在使用VScode的PIO开发GD32V,使用的是longan的模板,但是我将串口输出重定义到printf函数中,发现无法使用%f输出浮点数,想问问应该怎么
    发表于 11-06 06:49

    MCU无法检测到W5500是怎么回事?

    在兆易创新 GD32F303,国民技术 N32G457和ST STM32F103上试用了W5500以太网模块(RT-Thread版本是rt-thread-4.1.1), 只有STM32F103上可以
    发表于 10-14 07:38

    GD32F103RCT6 rt_kprintf无法打印怎么解决?

    使用的芯片为GD32F103RCT6,文件夹board路径里有一个不使用rt操作系统的串口打印配置,映射到printf,使用这个代码配置
    发表于 09-19 07:42

    GD32的串口DMA收发数据失败怎么解决?

    我在使用RTT的GD32F303的BSP时,配置使用串口DMA收发(rt_device_open),发现错误,最终无法收发数据,对比了STM32的BSP发现在drv_usart.c中
    发表于 09-17 06:04

    STM32/GD32开发板基本串口RS232\\RS485通信及CAN接口 usbhid升级 U盘升级 sd卡升级升级学习方案开发

    STM32F103/STM32F407/gd32F103/GD32F303开发板,例程用标准
    发表于 02-27 14:56

    GD-LINK无法在KEIL上调试怎么解决?

    :startup_stm32f10x_hd.s。 驱动:st的标准驱动,如stm32f10x_gpio.c。 KEIL配置:芯片型号GD32F30
    发表于 02-27 08:24

    GD32F1x0硬件开发指南

    电子发烧友网站提供《GD32F1x0硬件开发指南.pdf》资料免费下载
    发表于 02-09 15:39 0次下载
    <b class='flag-5'>GD32F</b>1x0硬件<b class='flag-5'>开发</b>指南

    GD32F10x硬件开发指南

    电子发烧友网站提供《GD32F10x硬件开发指南.pdf》资料免费下载
    发表于 02-07 17:30 0次下载
    <b class='flag-5'>GD32F</b>10x硬件<b class='flag-5'>开发</b>指南

    GD32F30x和GD32F403硬件开发指南

    电子发烧友网站提供《GD32F30x和GD32F403硬件开发指南.pdf》资料免费下载
    发表于 02-07 17:21 2次下载
    <b class='flag-5'>GD32F</b>30x和<b class='flag-5'>GD32F</b>403硬件<b class='flag-5'>开发</b>指南

    GD32F4xx硬件开发指南

    电子发烧友网站提供《GD32F4xx硬件开发指南.pdf》资料免费下载
    发表于 02-07 17:20 3次下载
    <b class='flag-5'>GD32F</b>4xx硬件<b class='flag-5'>开发</b>指南

    GD32F3x0硬件开发指南

    电子发烧友网站提供《GD32F3x0硬件开发指南.pdf》资料免费下载
    发表于 02-07 17:19 1次下载
    <b class='flag-5'>GD32F</b>3x0硬件<b class='flag-5'>开发</b>指南

    GD32F20x硬件开发指南

    电子发烧友网站提供《GD32F20x硬件开发指南.pdf》资料免费下载
    发表于 02-07 16:19 0次下载
    <b class='flag-5'>GD32F</b>20x硬件<b class='flag-5'>开发</b>指南

    AN136 基于GD32F30x系列的IEC60730 ClassB移植指南

    电子发烧友网站提供《AN136 基于GD32F30x系列的IEC60730 ClassB移植指南.pdf》资料免费下载
    发表于 01-17 16:22 2次下载
    AN136 基于<b class='flag-5'>GD32F</b>30x系列的IEC60730 ClassB<b class='flag-5'>库</b>移植指南

    AN118 GD32H7系列预授权固件安装概述

    电子发烧友网站提供《AN118 GD32H7系列预授权固件安装概述.pdf》资料免费下载
    发表于 01-17 15:51 0次下载
    AN118 <b class='flag-5'>GD32H7</b>系列预授权<b class='flag-5'>固件</b>安装概述

    基于GD32F3x0系列的IEC60730 ClassB移植指南

    电子发烧友网站提供《基于GD32F3x0系列的IEC60730 ClassB移植指南.pdf》资料免费下载
    发表于 01-17 14:41 3次下载
    基于<b class='flag-5'>GD32F</b>3x0系列的IEC60730 ClassB<b class='flag-5'>库</b>移植指南