程序卡在 B.处什么原因?如何处理?(串口配置无问题,重写putc无问题,但不打印)

文章目录

    • 前提
    • 现象:
    • debug:
    • 原因
    • 总结

前提

为了张流量券多加更一篇,是我2月份遇到的问题的总结,在我的笔记中,一直没发

现象:

已经配置好串口但不打印输出(printf指向串口1 的SR寄存器,其他引脚和usart配置无问题)

debug:

先运行,无error无warning
进行debug查询问题所在,发现串口初始化usart_init(115200);都没走到就卡死在如图下所示的 B .位置
在这里插入图片描述
经过这个现象,再去寻找答案

原因

程序卡死在B .处,说明有中断没处理
比如,启用了某个类型的中断,但是没有对应的中断处理函数,则会出现这种问题
知道是中断的原因后,我第一个想法是关于串口配置的中断,因为我现在做的是串口功能,检查
串口中断服务函数
中断配置位置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
检查后并无发现有问题
继续debug
在初始化发现根本还没来得及串口初始化便卡死在B.也就是说是串口之前的初始化工作中的中断出了问题,继续debug
发现在sys_init();函数中卡死
在这里插入图片描述
卡在126行,但是125是赋值,所以我当时并不能确定是126行的错误,也不能说是125行(126还没运行,卡死的是125,但是125没有写逻辑只是进行了赋值)
我们就知道是SYS_TICK()出了问题,结合前面卡在B.位置,大约已经能够确定是系统初始化的中断没有打开,在stm32f4xx_it.c文件中找到了我们需要的函数
在这里插入图片描述
默认情况下该函数是被屏蔽的,打开问题解决,串口打印也成功。

总结

.B处一般是中断配制出错的问题
检查之后没有出错
可以看看是不是systick_handler是不是初始化了
本篇文章仅供解决问题参考。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/661954.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

CentOS下安装SVN客户端及使用方法

一、前言 Subversion(SVN)是一款开源的版本控制系统,它可以帮助开发者追踪和管理代码、文档或其他文件的更改历史。在Linux系统中,特别是在CentOS环境下,安装和使用SVN客户端是日常工作中常见的任务。本文将介绍如何在…

Neovim 配置全面解析(下)

Neovim 配置全面解析(下) 原文:Neovim 配置全面解析(下) - 知乎 (zhihu.com) 环境:Ubuntu 20.04 宿主机:windows (windows terminal)WSL 2 NVIM:v 0.10.0-de…

如何解压忘记了密码的加密zip压缩包?这两个方法收藏好!

加密是一种保护信息不被未经授权访问的重要手段。ZIP压缩包作为一种常见的文件压缩格式,zip文件加密是很多人都回去做的一件事情,那么zip加密文件如何解密?有几种方法可以解密呢?今天介绍几种方法给大家。 一、尝试常用密码 我们…

【Python】解决Python报错:TypeError: ‘xxx‘ object does not support item assignment

🧑 博主简介:阿里巴巴嵌入式技术专家,深耕嵌入式人工智能领域,具备多年的嵌入式硬件产品研发管理经验。 📒 博客介绍:分享嵌入式开发领域的相关知识、经验、思考和感悟,欢迎关注。提供嵌入式方向…

【busybox记录】【shell指令】unlink

目录 内容来源: 【GUN】【unlink】指令介绍 【busybox】【unlink】指令介绍 【linux】【unlink】指令介绍 使用示例: 删除文件 - 默认 常用组合指令: 指令不常用/组合用法还需继续挖掘: 内容来源: GUN &#x…

xcode依赖包package已经安装,但是提示No such module ‘Alamofire‘解决办法

明明已经通过xcode自带的swift包管理器安装好了依赖包,但是却还是提示:No such module,这个坑爹的xcode,我也只能说服气,但是无奈,没办法攻打苹果总部,只能自己想解决办法了 No such module Ala…

ClickHouse 与其他数仓架构的对比——Clickhouse 架构篇(四)

文章目录 前言ClickHouse与Hive的对比计算引擎的差异ClickHouse比Hive查询速度快的原因 ClickHouse与HBase的对比HBase的存储系统与ClickHouse的异同HBase的适用场景及ClickHouse不适合的原因 ClickHouse与Kylin的对比Kylin的架构Kylin解决性能问题的思路Kylin方案的缺陷ClickH…

图片处理软件有哪些?这三款软件好用

图片处理软件有哪些?在当今这个数字化时代,图片处理软件成为了我们日常生活和工作中不可或缺的工具。无论是为了修饰个人照片,还是为了设计专业海报,这些软件都能帮助我们轻松实现创意和美化。那么,究竟有哪些热门的图…

CEEMDAN +组合预测模型(CNN-Transfromer + XGBoost)

注意:本模型继续加入 组合预测模型全家桶 中,之前购买的同学请及时更新下载! 往期精彩内容: 时序预测:LSTM、ARIMA、Holt-Winters、SARIMA模型的分析与比较-CSDN博客 VMD CEEMDAN 二次分解,Transformer-BiGRU预测模…

read test

功能性语言: 在.sh脚本下,read -p ——答应 read -t 时间 ——时间完成限制 特别注意空格。 test -n测试是内容一定要加双引号。 test 变量1 -ne 变量2 即比较大小。

视频汇聚EasyCVR平台视图库GA/T 1400协议与GB/T 28181协议的区别

在公安和公共安全领域,视频图像信息的应用日益广泛,尤其是在监控、安防和应急指挥等方面。为了实现视频信息的有效传输、接收和处理,GA/T 1400和GB/T 28181这两个协议被广泛应用。虽然两者都服务于视频信息处理的目的,但它们在实际…

22net冒泡排序与插入排序

冒泡排序 观看视频 【python练习题】每日一练_第八天_冒泡排序_哔哩哔哩_bilibilihttps://www.bilibili.com/video/BV1QT4y197pa/?spm_id_from333.337.search-card.all.click&vd_source498ae9e9c7a8a7d16da872c9d74cdc38PS:视频中用的了numpy库,大…

10W QPS高并发,如何防止重复下单?

小北说在前面 10wqps高并发,如何防止重复提交/支付订单? 10wqps高并发,如何防止重复下单? 10wqps高并发,如何防止重复支付? 10wqps高并发,如何解决重复操作问题? 最近有小伙伴在面试…

这有一封“数字赋能 强农兴村”的邀请函,请查收→

2024年6月5日至7日,以“数字赋能 强农兴村”为主题的2024中国(南京)数字乡村博览会暨第八届中国(南京)国际智慧农业博览会将在江苏南京举办。珈和科技在农业AI大数据展区的H16展位与您相约,共襄盛会。 私信…

iPhone用户推荐使用的藏汉翻译小助手:藏汉翻译通小程序,支持藏文OCR识别文字提取,卫藏语、安多语、康巴语学习背单词!

网上冲浪时,遇到不会的汉语词汇,可以复制到藏汉翻译通小程序中进行翻译。如果不会拼音,可以使用图片识别功能扫一扫文字,即可OCR识别提取文字。 此外,藏汉翻译通小程序现在还支持背单词和会话速成课程,支持…

java调用远程接口下载文件

在postman中这样下载文件 有时下载文件太大postman会闪退,可以通过代码下载,使用hutool的http包

HAL库使用FreeRTOS实时操作系统时配置时基源(TimeBase Source)

需要另外的定时器,用systic的时候生成项目会有警告 https://blog.51cto.com/u_16213579/10967728

java高级——Collection集合之List探索(包含ArrayList、LinkedList、Vector底层实现及区别,非常详细哦)

java高级——Collection集合之List探索 前情提要文章介绍提前了解的知识点1. 数组2. 单向链表3. 双向链表4. 为什么单向链表使用的较多5. 线程安全和线程不安全的概念 ArrayList介绍1. 继承结构解析1.1 三个标志性接口1.2 AbstractList和AbstractCollection 2. ArrayList底层代…

企业网站有必要进行软件测试吗?网站测试有哪些测试流程?

企业网站在现代商业中扮演着重要的角色,它不仅是企业形象的重要体现,也是与客户、合作伙伴进行沟通与交流的重要渠道。然而,由于企业网站的复杂性和关键性,其中可能存在各种潜在的问题和隐患。因此,对企业网站进行软件…

HTB-SherlocksDFIR

Sherlocks 中关于 DFIR 的一些内容,按照时间线整理,尚未完成,持续更新​ Brutus 和上一次做的 Recollection 机器一样,主要学习一下相关的知识,练习一下。按照机器描述,在学习完成后将熟悉 auth.log 和 wtm…