zoukankan      html  css  js  c++  java
  • 串口助手输出乱码或无输出问题

    问题描述:使用stm32的板子下载好程序之后,想通过串口助手查看调试结果却发现串口没有输出或者输出的是乱码。

    情景一:如果你想要使用c标准中的printf函数打印字符到串口助手,那么你需要先重定义fputc函数,这样才可以正常使用printf函数。

    /******************************************************
    *@brief 重定义fputc函数
    *@param ch:返回的字符
    *     
    *******************************************************/
    int fputc(int ch, FILE *f)
    {     
        USART_SendData(USART1,ch);
        while(USART_GetFlagStatus(USART1,USART_FLAG_TXE)==RESET);  
        return ch;
    }   

    情景二:如果你的fputc函数已经重定义了,但是还是输出不了字符,那么有可能是以下问题:

    问题1:keil软件中没有配置好,具体配置方法如下:

     1、选择输出中文选项

      

                                 

    2、勾选Use MicroLIB

    问题2:时钟的频率没有修改正确,具体修改步骤如下

    1、修改频率

    2、修改频率的时候如果文件有没有写入权限,我们需要先把只读权限去掉具体操作如下:

    注意一下,修改完频率之后,记得重新把文件的写权限加上,重新把文件的只读属性勾选上即可。

    以上是我在实践中遇到的串口助手输出的问题,可能还有其他的情况我没有发现,如果朋友们有其他的问题或者有更好的解决方法,希望留下你们的宝贵意见。

  • 相关阅读:
    WPF Step By Step -基础知识介绍
    WPF Step By Step 系列
    设计模式的六大原则
    Java实现二维码生成的方法
    Java 导出Excel
    解析图书 XML
    Maven搭建Spring+SpringMVC+Mybatis+Shiro项目详解
    springboot配置文件的所有属性
    SpringBoot中 application.yml /application.properties常用配置介绍
    Linux 系统目录结构
  • 原文地址:https://www.cnblogs.com/wurenzhong/p/8526463.html
Copyright © 2011-2022 走看看