stm32L476RG,通过串口打印信息

2023-05-16

调试STM32L476RG时,想要通过串口打印信息方法:

1.通过官方的历程,移植USART的程序,

位置STM32Cube_FW_L4_V1.13.0/Projects/NUCLEO-L476RG/Examples/UART/UART_TwoBoards_ComIT,这里选择串口中断的程序,将main.c 和 mian.h 中关于USART的程序CPOY出来,放在自己的程序当中,

这时候会提示 UART_HandleTypeDef 这个没有定义的错误,

解决方法:打开stm32l4xx_hal_conf.h(路径:工程文件夹下的Inc文件下)配置文件,将宏定义 #define HAL_UART_MODULE_ENABLED打开,这样就可以了

2.配置好串口后,打信息方法:

第一种:在usart.c中添加代码

/* USER CODE BEGIN 0 */
#include "stdio.h"
//加入以下代码,支持printf函数,而不需要选择use MicroLIB      
#if 1
#pragma import(__use_no_semihosting)             
//标准库需要的支持函数                 
struct __FILE
{
    int handle;
};

FILE __stdout;       
//定义_sys_exit()以避免使用半主机模式    
void _sys_exit(int x)
{
    x = x;
}
//重定义fputc函数
int fputc(int ch, FILE *f)
{     
    while((USARTx->ISR &0X40)==0);//循环发送,直到发送完毕   
    USARTx->TDR  = (uint8_t) ch;  
    return ch;
}
#endif

使用Printf打印

第二种方法:

直接调用函数:HAL_UART_Transmit_IT(&UartHandle, (uint8_t*)ErrorBuf, ERR_SIZE);就可以实现串口打印调试信息

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

stm32L476RG,通过串口打印信息 的相关文章

  • 模拟银行系统 Java 四份代码(三种交互方式,两种数据存储方式)

    环境 编程语言 xff1a Java 14 0 1IDE xff1a intelliJ IDEA 2020 1 2有 Java demo 涉及到使用 idea 编辑器创建文件 读取文件 xff1b 有关编码问题 xff0c 请参考下图 id
  • Java 模拟数据库连接池 + 模拟ORM框架

    环境 编程语言 xff1a Java 14 0 1数据库 xff1a MySQL 8 0 xff08 用户名与密码都是root xff0c ip及端口是localhost 3306 xff09 JDBC xff1a mysql connec
  • Java 模拟考试系统(Swing + IO)

    编程语言 xff1a Java 14 0 1IDE xff1a intelliJ IDEA 2020 1 2 使用了MVC分层架构思想 xff0c 并且仅涉及JavaSE内容 功能 xff1a 登录 43 考试UI xff1a Swing数
  • Java IO 基础知识总结

    观前提示 xff1a 本文涉及的代码演示部分 xff0c 为了文章的观赏性 xff0c 许多代码演示中有意忽略了导包 异常处理 所谓 IO xff0c I xff08 input xff09 O xff08 output xff09 xff
  • Java 模拟浏览器与服务器之间请求与响应的过程

    环境与MVC分层架构思想 编程语言 xff1a Java 14 0 1IDE xff1a intelliJ IDEA 2020 1 2 V View视图层String html jspC Controller控制层Servlet 控制的是相
  • helm部署相关服务过程中问题记录

    在学习helm部署相关服务过程中出现一些相关问题 xff0c 自己记录并供大家一起学习 xff01 xff01 xff01 问题1 部署helm 获取软件包失败 在通过wget https storage googleapis com ku
  • J2EE JSP 基础知识总结

    Tomcat 9Java Server Page xff08 Java 服务页 xff09 一 xff1a JSP 初识 使用 JSP 文件 JSP 是 HTML 文件与 Java 文件的混合文件 xff0c HTML 文件可以直接通过浏览
  • Java 模拟购物系统(Servlet + JSP + EL + JSTL)

    目的是将后端逻辑 流程 业务写清楚 xff0c 所以前端代码很简陋 xff08 丑 xff09 功能一 xff1a 登录 功能二 xff1a 注册 功能三 xff1a 欢迎界面 功能四 xff1a 商品分类界面 功能五 xff1a 购物界面
  • J2EE EL + JSTL 基础知识总结

    Tomcat 9EL Expression Language xff0c 表达式语言JSTL JSP Standard Tag Library xff0c JSP 标准标签库 JSP 代码并不好写 xff0c 因为包含前端代码与 Java
  • J2EE 文件上传下载

    Tomcat 9 文件上传 文件上传本质上是 I O 读写 客户端 xff08 浏览器 xff09 发送文件使用 HTTP 协议 xff0c 将文件的内容写出去 xff1a 客户端本地输入流 gt 内容 gt 网络输出流服务器 xff08
  • J2EE Filter 基础知识总结

    Tomcat 9 Filter xff08 过滤器 xff09 Tomcat 提供的一个组件 xff0c 类似 Servlet 机制与使用方式是一个特殊的 Servlet过滤什么 什么时候使用 一 xff1a Filter 的基本使用 自己
  • J2EE Listener 浅谈

    Tomcat 9 xff0c 四个组件 Servlet JSP Filter Listener 中 xff0c Listener 是最早加载的 Listener 监听器是 Tomcat 提供的一个组件 xff0c 监听域对象包括 reque
  • Java XML 文件的 DTD 解析规则,DOM 方式解析 XML

    HTML xff0c Hyper Text Markup Language xff0c 超级文本标记 标签 语言 出现目的是服务器给浏览器发送响应信息 xff0c 浏览器按照规则解析语言并进行展示 XML xff0c eXtensible
  • J2EE Cookie 基础知识总结

    Tomcat 9 在讲述 Cookie 之前 xff0c 有必要谈谈 Session session 对象是服务器管理的 xff08 session对象存储在服务器端 xff09 session 对象是无状态的 xff08 每一个sessi
  • Java ThreadLocal 管理机制

    ThreadLocal 类在线程中的作用相当于 Session xff0c 其常用方法有三个 xff1a set get remove ThreadLocal 源码 set span class token keyword public s
  • J2EE WEB注解 使用语法

    Tomcat 9 WEB 容器给我们提供了很多组件 xff0c 比如 xff1a Servlet JSP Filter Listener JSP 使用特殊 xff0c WEB 容器内部的 web xml 配置文件替我们已做好配置并找到解析引
  • openssh 登录报错所走过的坑~~~Password authentication failed

    报错 提示Password authentication failed 一般是关闭防火墙 systemctl stop firewalld amp amp systemctl disable firewalld 修改 etc ssh ssh
  • 快速开发一个 ChatGPT 应用的保姆级教程

    本文转自 GitHub xff0c 原文 xff1a https github com easychen openai gpt dev notes for cn developer xff0c 版权归原作者所有 欢迎投稿 xff0c 投稿请
  • J2EE AJAX + JSON 使用语法

    AJAX xff1a Asynchronus Javascript And Xml xff0c 异步 JavaScript 和 XML 技术 AJAX 技术的使用 xff0c 可以替代 JSP 并且效率高很多 xff1b 使用 AJAX 与

随机推荐