主题中讨论的其他器件: MSP432E401Y、 MAX3223、 UNIFLASH
朋友好!
我之前曾在 TI 客户支持聊天(案例号:CS0419030)上发表过文章,mister Jonathan Navor 回答说:“这需要与我们的下一级支持进行讨论”。 他给了我一个链接 https://e2e.ti.com/p/addpost 、以便根据产品线将我连接到经验丰富的工程应用专家。 我重复我的帖子。 我有两个问题。
我使用 MSP-EXP432E401Y 评估板、在 Code Composer Studio 中编写汇编代码。 我通常在 SWD 模式下使用 MSP-EXP432E401Y 的集成 USB D-bug 适配器。
第一个问题(最重要的问题)。
意外地、我通过将内核时钟切换到完全禁用的 MOSC 来锁定微控制器。 我可以详细描述我的步骤。
1) 1)我没有更改 MOSCCTL 寄存器的复位值。 其复位值为0xC。 这意味着:
a) MOSC 电路断电;
b)主振荡器电路断电。
2) 2)我将0x03设置为 RSCLKCFG 寄存器的位域 OSCSRC。 这意味着 MOSC 是振荡器源。 但 MOSC 已完全禁用! 这是我的致命错误。 我已经对8位微控制器进行了编程,并对其时钟电路和 PLL 进行了多次配置,因此我很伤心,因为我的愚蠢错误。
3) 3)在这种情况下、微控制器的操作由 MOSCCTL 寄存器的 MOSCIM 位(复位值为0)控制:"无论采取何种操作、如果 MOSC 发生故障、振荡器源都会自动切换至 PIOSC。 如果 MOSC 发生故障,将生成 MOSC 故障复位并重新启动到 NMI 处理程序”[SLAU723A–2017年10月–2018年10月修订版,第238页]。
因此、我的微控制器反复处于复位状态。 执行步骤(2)后、D 触发器失去与微控制器的连接。 我无法再次将新代码加载到设备中,并且无法连接到设备。 当我开始调试时、我看到错误:
"Cortex_M4_0:连接到目标时出错:(错误-613 @ 0x0)目标表示它正忙。 再次尝试 SWD 请求、或中止事务。 (仿真包9.2.0.00002)”
我已执行以下文章中描述的步骤:
https://e2e.ti.com/support/microcontrollers/msp430/f/166/p/508198/1854733#1854733
但它没有帮助。 我看到相同的误差。 我做了一些屏幕短接,并将它们连接到我的帖子。
出厂重置脚本:
使用 密码重置出厂设置的脚本
用于 带 密码恢复出厂设置的脚本(Reboot_Reset)
我注意到、当我首次添加脚本(GEL 文件)"msp432出厂复位"时、它显示为"存储器擦除"。 但之后、当我再次添加此 GEL 文件时、它显示为"出厂复位"。
我已发布此问题(案例号:CS0418250)。 由于我尚未得到任何答复,我正在寻找其他方法来解决我的问题。
第二个问题与第一个问题有关。 我尝试使用其引导加载程序接口解锁 MSP432E401Y。 下面我将重复我之前的帖子(案例号:CS0419030):
我有基于 MAX3223的简单 RS232转 UART 桥接器。 我将一根电缆连接到我的 PC、将另一根电缆连接到 MSP-EXP432E401Y 的 BSL 端口。 我已经设置了0电阻器 R5和 R6来选择 UART。 但我不知道、我要对复位引脚做什么?
因此、我认为逻辑上:UART 连接到引脚 PA0和 PA1;它们可能已经在主用户代码中使用(配置为 O/I、连接到外围设备等);因此、引导加载程序会在代码启动之前停止用户代码的运行; 唯一的方法是复位器件。 但是、微控制器处于硬件复位状态时能否加载?
因此、我想了解在 UART 引导加载程序会话期间复位引脚的作用。 当引导加载程序接口的引脚配置为 GPIO 时、会发生什么情况?
我尝试使用 UniFlash 加载映像、但我的器件没有响应(我尝试加载将微控制器保持在硬件复位状态或没有保持状态的情况下)。 在示波器中、我看到来自 PC 的脉冲、但微控制器仍然保持静音状态。
如果可能、请回答我的问题。 我想说,我非常高兴 TI 提供了客户支持服务。
还有一件事。 Mister Jonathan Navor 问我:“发布后,请与我分享链接,以便我可以跟踪我们的产品专家,以获得最快的响应”。 但现在我无法打开我之前的案例、因为我更改了 TI 帐户中的电子邮件地址。 我有一个个人电子邮件地址,但使用该地址,我无法发送附加的帖子(https://e2e.ti.com/p/addpost),因为我看到错误“非公司电子邮件地址”。 我将个人地址更改为公司地址,但当我尝试打开我的案例时,我看到“未找到请求的记录”。 请向 Navister 咨询我的新帖子。