人工智能深入参与嵌入式控制器调试---ChatGPT回答TC377 PSRi寄存器ACT位置位失效问题

做嵌入式开发的小伙伴们,有福利了!

当遇到调试过程中遇到难题,我们往往会找手册,上网搜索,找FAE来解决, 现在有了ChatGPT,尝试问了下调试的问题,如下

 首先我的问题描述

当设置 MCMCAN 控制器模式时,当 CCCRi.INT 被设置为 NORMAL 时,什么会导致 TC377 cpu PSRi 寄存器 ACT 位未从同步变为空闲?

ChatGPT: 

TC377 CPU 是一个复杂的系统,在设置 MCMCAN 控制器模式时,PSRi 寄存器 ACT 位没有从同步变为空闲可能有多种原因。但是,以下是可能导致此行为的一些可能原因:

1. 未启用中断:MCMCAN 控制器需要启用中断才能使 PSRi 寄存器从同步变为空闲。如果未启用中断,则 ACT 位将保持在同步状态。

2. MCMCAN 控制器未正确初始化:MCMCAN 控制器需要正确初始化才能开始发送和接收消息。如果控制器没有正确初始化,它可能无法转换到空闲状态。

3. MCMCAN 控制器配置不正确:MCMCAN 控制器有各种配置参数需要正确设置以确保正常运行。如果这些参数设置不正确,控制器可能无法转换到空闲状态。

4.总线争用:如果 CAN 总线上存在总线争用,则 MCMCAN 控制器可能无法完成其初始化序列,这可能会阻止其转换为空闲状态。

5. 硬件问题:TC377 CPU 或 MCMCAN 控制器可能存在硬件问题,阻止 ACT 位转换为空闲状态。

要确定问题的根本原因,可能需要执行进一步的分析,例如调试软件或检查硬件设置。

 继续追问:

第一条原因的基本原理是什么?

ChatGPT:

当然,我很乐意解释我提到的第一个可能原因背后的基本原理。

当有新数据要传输或接收时,MCMCAN 控制器会产生中断以向 CPU 发出信号。中断允许 CPU 快速响应新数据并启动必要的处理。 TC377 CPU 中的 PSRi 寄存器指示 MCMCAN 控制器的当前状态,包括它是空闲还是正在同步。

当 MCMCAN 控制器在初始化或同步过程中时,PSRi 寄存器中的 ACT 位将被设置为同步状态。一旦控制器完成初始化并准备好发送或接收数据,ACT 位应转换为空闲状态。

但是,如果不启用中断,CPU 将无法响应 MCMCAN 控制器的中断请求。因此,MCMCAN 控制器可能无法完成其初始化序列,并且 ACT 位可能会停留在同步状态。

因此,启用中断是确保 MCMCAN 控制器可以正确运行以及 PSRi 寄存器可以转换为空闲状态的关键步骤。通过启用中断,CPU 将能够接收和响应 MMCCAN 控制器的中断请求,从而使其完成初始化序列并转换到空闲状态。

 继续深入:

能给我关于第二个原因的更多信息吗?(第二个原因即“未正确初始化”)

ChatGPT:

当然!以下是我提到的第二个可能原因的更多详细信息:

MCMCAN 控制器需要正确初始化才能开始发送和接收消息。初始化通常涉及配置控制器的寄存器、设置消息对象以及配置 CAN 总线的时钟和波特率设置。如果这些步骤中的任何一个没有正确执行,控制器可能无法转换到空闲状态,并且 PSRi 寄存器的 ACT 位可能会停留在同步状态。

要诊断问题是否与 MCMCAN 控制器初始化有关,您可以尝试以下步骤:

1. 验证 MCMCAN 控制器是否已正确启用和配置以进行操作。

2. 确保 CAN 总线的时钟和波特率设置正确。

3. 检查消息对象是否已正确初始化并在应用程序代码中正确使用。

4. 确保软件正确配置控制器的寄存器,尤其是那些与初始化相关的寄存器。

5. 检查总线是否正确终止,并且不存在总线争用或其他与硬件相关的问题。

通过验证 MCMCAN 控制器是否已正确初始化并且没有与硬件或软件相关的问题,您可以帮助确保 PSRi 寄存器的 ACT 位将按预期转换为空闲状态。

继续...

如何验证始终和波特率被正确配置?

ChatGPT:

要验证 CAN 总线的时钟和波特率设置是否已正确设置,您可以执行以下步骤:

 1. 检查 CAN 模块的时钟控制寄存器 (CCR) 中的设置。CCR 控制 CAN 模块的时钟源和频率,用于生成 CAN 总线的波特率。确保 CCR 设置与 CAN 模块所需的时钟源和频率一致。

 2. 计算 CAN 总线上使用的实际波特率。实际波特率 c 可以根据位时序寄存器 (BTR) 中使用的位时序设置来计算。 BTR 设置控制 CAN 总线信号的时序,并取决于所需的波特率、时钟频率和采样点。

3.验证计算出的实际波特率是否与所需的波特率匹配。如果计算出的实际波特率与所需波特率明显不同,则时钟或波特率设置可能存在问题。

 4. 使用示波器或 CAN 总线分析仪来验证 CAN 总线信号的波形。波形应与所需波特率和位时序设置的预期波形相匹配。如果波形与预期波形不匹配,则时钟或波特率设置可能存在问题。

根据ChatGPT的指引,我检查了中断注册、CAN的时钟配置、波特率、以及CAN controller的邮箱配置,通过观察初始化后的相关寄存器,未发现时钟或波特率配置问题。排除了总线被占用问题。问题的排查防线就到了CAN 控制器与通信的同步机制上。

用示波器测量CAN收发器的EN和STB_N管脚,分别是高和低,再通过CANOE上位机发送报文去测量RX TX管脚,发现都是持续的低信号,没有任何信号。去查看CAN收发器的手册,发现收发器的工作模式设置出现问题,如果要让收发器处于Normal的工作模式,需要EN和STB_N管脚都置HIGH。

改了STB_N管脚为HIGH后,上位机发报文,测量RX管脚,出现了信号,此时再去观测PSRi.ACT位,在CCCRi.INIT变为Normal后,PSRi.ACT位立即变为了Idle。

问题得到解决!

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

仅此一文,图文并茂保姆式教你取得自己的GPT开发者帐号

前言 6月14日OpenAI毫无预告地发布了ChatGPT的重大更新。从官网信息梳理来看,OpenAI的更新主要包括以下六个方面的内容: 在Chat Completions API新增函数调用(Function call)功能改进了gpt-4和gpt-3.5-turbo版本更新了gpt-3.5-turbo的16k上下文版本嵌入式模型降低了75%的成…

Writsonic?文案型chatGPT?为文字工作者打造的顶级工具?

Writsonic?文案型chatGPT?为文字工作者打造的顶级工具? 故事 一天,小陈在摸鱼,在看到chatGPT的威压在还是屈服了,他就努力~努力地去寻找文案chat,他成功了,还是找到了。 &#xf…

类ChatGPT产品Claude上线Slack平台,一手实测体验在此

文章目录 Claude-in-Slack自我介绍成语接龙数学能力代码能力其他总结 Claude-in-Slack Claude是Anthropic推出的类ChatGPT对话机器人。Anthropic是一家由前OpenAI团队成员创立的人工智能初创公司。Claude免费、支持中文、无需注册,好心动,立刻上手测试。…

【AIGC】Visual ChatGPT 视觉模型深度解析

欢迎关注【youcans的AGI学习笔记】原创作品 【AIGC】Visual ChatGPT 视觉模型深度解析 1. 【Visual- ChatGPT】火热来袭2. 【Visual-GPT】操作实例2.1 处理流程2.2 操作实例 3. 【Visual-GPT】技术原理分析3.1 技术原理3.2 系统架构3.3 模块说明3.4 Prompt Manager 功能与规则3…

万字长文解析!复现和使用GPT-3/ChatGPT,你所应该知道的

About The Author 关于作者 英文原版作者:杨靖锋,现任亚马逊科学家,本科毕业于北大,硕士毕业于佐治亚理工学院,师从 Stanford 杨笛一教授。 杨昊桐 译,王骁 修订 感谢靳弘业对第一版稿件的建议&#xff0c…

在苹果电脑 mac 上安装原神(playCover)

该方法只能在 M1、M2 mac 上安装原神 目录 前言一、首先下载安装 playCover1. playCover 下载2. playCover 安装安装出现问题解决方法 二、下载安装原神1.安装包下载2.安装原神 三、登录、键盘映射及版本更新等问题登录键盘映射版本更新 前言 最近买了新的mac,作者…

ChatGPT背后:从0到1,OpenAI的创立之路

来源:OneFlow 作者:Greg Brockman 编译:OneFlow 翻译:徐佳渝、贾川 ChatGPT一出,OpenAI名声大震,CEO Sam Altman也成为聚光灯下的C位主角,有些报道甚至开始了对他的“造神”运动。年少成名&…

ERNIE源码学习与实践:为超越ChatGPT打下技术基础!

★★★ 本文源自AlStudio社区精品项目,【点击此处】查看更多精品内容 >>> ERNIE学习与实践:为超越ChatGPT打下技术基础! ERNIE是BERT相爱相杀的好基友,由ERNIE发展起来的文心大模型,是GPT3.0的强劲竞争对手…

你还在用听不懂人话的 ChatGPT 吗?

👉腾小云导读 近年来,大模型如 ChatGPT 等愈发强大的生成能力一次次引爆行业讨论。你真的玩明白 GPT 等等 AIGC 工具了吗?它是否足够“听话”、理解并满足你所有的需求?提示词工程是激活大模型能力的关键所在。可以说谁掌握 Promp…

ChatGPT 讲的笑话90%是重复的?归纳出来只有这25个?

作者 | 小戏、Python 幽默,似乎一直是一种专属于人的语言技巧,通过一些简单的谐音、双关,让错位的事张冠李戴,让一些可能普普通通的事变得荒诞,神奇的就可以在人际之间的心照不宣中获得幽默,让人捧腹&#…

使用chatgpt的api实现个人聊天机器人demo(可实现多轮对话)

之前写过一篇文章,初步实现调用chatgpt的api实现与机器人的对话,但是并没有提及多轮对话如何实现。在这篇文章中,我将介绍如何利用openai的api实现聊天机器人的多轮对话。 第一步:官网申请api,可参考我之前的博文&…

ChatGPT宝藏插件丨装上之后,上网、语音聊天、一键分享对话……简直让你爽到起飞!

今天分享4个让你的 ChatGPT 功能更强大的浏览器插件,装上就能用,每一个都是精挑细选。 1. WebChatGPT 很多小伙伴在用 ChatGPT查阅信息时,发现它有一个致命的问题: ChatGPT的知识库全部截止到 2021年9月,正常情况下…

chatgpt的语音机器人

准备工作 一.OpenAi的Api 1.登录openai 2.点击Develovpers的overview ### 3.点击右上角的Login in ### 4.点击右上角的view apikey ### 5.点击Creat new secret key 这样就会得到一个chatgpt的api,请妥善保存这个api,当你关闭这个网页的时候&#xff…

【ChatGPT】对话体验

如何使用 https://zhuanlan.zhihu.com/p/615721084 hello,ChatGPT! 来自它的自我介绍: 我是一种称为ChatGPT的大型语言模型,由OpenAI公司开发。我的设计目的是使用人工智能技术来进行自然语言处理和语言生成,以便向人类用户提供有…

【一分钟学会】用python做一个语音对话ChatGPT的程序——打造私人语音助手

本项目灵感来源是我的一个专业课程设计,当时耗时近四天在网上都没找到十分有用的信息。 以下是本项目完整的步骤流程,算是对自己工作的一个阶段性总结。希望同感兴趣的小伙伴们相互探讨、交流和学习。 一、准备工作 首先,需要准备①最新版的…

【插件分享】对Chatgpt的对话内容进行滚动截屏

问题描述 在和Chatgpt进行了一番友好的对话后,想要把对话内容截取出来与朋友分享,但是由于对话内容比较多,无法显示在一页里,因此需要使用滚动截屏。但是edge浏览器自带的网页捕获功能在chatgpt的聊天界面里无法实现滚动截屏。 解…

基于ChatGPT的端到端语音聊天机器人项目实战(一)

基于ChatGPT的端到端语音聊天机器人项目实战 ChatGPT API后台开发实战 本节主要是跟大家分享一个端到端的基于模型驱动的对话机器人,会有前端和后端,也会有一些具体模型的调用,读者需具有Python语言编程的基础,这是前置性的条件,有了这个基础,理论上讲本节所有的内容,…

ChatGPT专业应用:生成海外KOL合作邮件

正文共 475 字,阅读大约需要 2 分钟 品牌/媒介运营必备技巧,您将在2分钟后获得以下超能力: 快速生成海外KOL合作邮件模板 Beezy评级 :B级 *经过简单的寻找, 大部分人能立刻掌握。主要节省时间。 推荐人 | Alice 编辑…

用一杯星巴克的钱,训练自己私有化的ChatGPT

点击蓝字 关注我们 文章摘要:用一杯星巴克的钱,自己动手2小时的时间,就可以拥有自己训练的开源大模型,并可以根据不同的训练数据方向加强各种不同的技能,医疗、编程、炒股、恋爱,让你的大模型更“懂”你….…

ChatGPT怎么突然变得这么强?华人博士万字长文深度拆解GPT-3.5能力起源

文章目录 一、2020 版初代 GPT-3 与大规模预训练二、从 2020 版 GPT-3 到 2022 版 ChatGPT三、Code-Davinci-002和 Text-Davinci-002,在代码上训练,在指令上微调四、text-davinci-003 和 ChatGPT,基于人类反馈的强化学习的威力五、总结当前阶…