This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
读取寄存器 PC 时出现问题:
(错误-1156 @ 0x0)
器件可能在低功耗模式下运行。 是否要使其退出此模式? 选择"是"以强制器件唤醒、然后重试此操作。 选择"否"以在不唤醒器件的情况下重试此操作。
(仿真包9.2.0.00002)
当我为电路板加电时、我首先插入仿真器、然后加电。 使用 CCS10.0将程序下载到 RAM、可以正常下载。 但是、当您选择下载到闪存时、将报告错误、如上所示。
我的电路板使用的电源芯片是:TPS62420DRCR
该芯片的输出有两个通道。 电流可以达到1000mA (1.2V)、而电流可以达到600mA (3.3V)。
对于芯片、负载上会有一定的压力(我想问这是否是上述误差的原因)。 (错误-1156 @ 0x0)
我考虑过这种情况、因此移除了电路板上的许多组件(LED 灯、直流/直流模块)、触摸电源芯片一段时间、发现温度正常。 在焊接之前拆下的小 LED 灯和直流/直流模块时、电源芯片将会很热。
卸下 LED 指示灯和直流/直流模块后、打开电路板电源并将程序下载到闪存中、仍会出现上述错误。 (错误-1156 @ 0x0)
下载到 RAM、它仍然可以正常下载。
来询问
谢谢!
Vince
尊敬的 Vince:
当您尝试将代码编程到闪存中时、您可以对 TPS62420DRCR 的 Vout 进行范围控制吗? 我感觉电源上的压摆率很慢、因此在您尝试对闪存进行编程时无法支持瞬时电流尖峰。
此致、
Nirav
您好,Nirav Ginwala
该电源芯片具有双通道输出。 我分别测试了3.3V 和1.2V 的电压范围、结果如下:
让我谈谈我的理解。 在 CCS10.0中、开始将程序下载到闪存。 TPS62420DRCR 的3.3V 电压之一波动:从3.331V 至3.330V、1.2V 的其他电压也以相同的方式变化。
然后、在下载过程中、将报告错误:
(错误-1156 @ 0x0)
器件可能在低功耗模式下运行。 是否要使其退出此模式? 选择"是"以强制器件唤醒、然后重试此操作。 选择"否"以在不唤醒器件的情况下重试此操作。
(仿真包9.2.0.00002)
再次下载、它将报告 PRSC 错误
谢谢
Vince
您好、Nirav Ginwala
您提到无法对闪存进行编程以支持瞬时电流尖峰。 是什么导致了这种情况?
我认为可能有两个原因:
1.电源芯片两个通道的输出电流相对较小。
2.电源芯片的输入电压为5.5V,电流为2A。 输入电压提供的电流是否可能无法满足整个电路板的功耗要求?
谢谢
Vince
Vince、
是的、您的理解是正确的!
当闪存开启时、如果您的电源无法提供电流、则会出现瞬时电流尖峰、您需要进行更改、然后您可能会遇到这些问题。
此致、
曼诺伊
大家好、Manoj Santha Mohan
我计划在这里尝试用两个输出通道替换电源芯片、最大电流分别为800mA。 (模型为 TPS62410DRCR)
您认为我的想法是可行的吗?
谢谢
Vince
大家好、我的引导选择电路是否有问题?
1.当我关闭开关、将程序下载到 RAM、并且可以正常下载、但一旦我单击运行、就会报告错误:
停止目标 CPU 时出现问题:
(错误-1156 @ 0x0)
器件可能在低功耗模式下运行。 是否要使其退出此模式? 选择"是"以强制器件唤醒、然后重试此操作。 选择"否"以在不唤醒器件的情况下重试此操作。
(仿真包9.2.0.00002)
将程序下载到闪存、报告错误:
连接到目标时出错:
(错误-6001)内部错误:PRSC 模块检测到未知故障。
(仿真包9.2.0.00002)
2.打开交换机时,我将程序下载到 RAM,下载失败,并报告错误:
连接到目标时出错:
(错误-6001)内部错误:PRSC 模块检测到未知故障。
(仿真包9.2.0.00002)
将程序下载到闪存、报告错误:
连接到目标时出错:
(错误-6001)内部错误:PRSC 模块检测到未知故障。
(仿真包9.2.0.00002)
我们如何解决这一两难问题?
谢谢
Vince
Vince、
关闭开关和打开开关之间有何区别? 对我来说、它看起来是一样的。 我认为您的引导模式引脚电路不会导致这个问题。
您是否曾尝试过在任何其他可靠的电路板设置中对 RAM 代码(或)闪存代码进行编程? 例如、TI 控制卡/TI 评估板?
您能否共享与 VDDIO/VDD 电源相关的 PCB 原理图? 此外、您将旁路电容器放置在器件附近的距离有多近? 如果旁路电容器不够近、则可能无法满足突发 浪涌电流要求。
此致、
曼诺伊
您好,Manoj Santha Mohan
大家好、同一个项目(led_ex1_blinky.c)已经过测试并在 TMDSCNCD28388D 上运行、一切正常。
如果您放弃设计的电路板、通常会出现两个问题:
1、连接到目标时出错:
(错误-6001)内部错误:PRSC 模块检测到未知故障。
(仿真包9.2.0.00002
2、停止目标 CPU 时出现故障:
(错误-1156 @ 0x0)
器件可能在低功耗模式下运行。 是否要使其退出此模式? 选择"是"以强制器件唤醒、然后重试此操作。 选择"否"以在不唤醒器件的情况下重试此操作。
(仿真包9.2.0.00002)
[引用 userid="16855" URL"~/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/1006588/tms320f28388d-c2000/3722705 #3722705")您能否共享与 VDDIO/VDD 电源相关的 PCB 原理图? 此外、您将旁路电容器放置在器件附近的距离有多近? 如果旁路电容器 ar[/quot]
PCB 图如下、旁路电容器放置在28388D 下方(28388D 位于顶层、而旁路电容器位于底层)
谢谢
Vince
Vince、
我想尝试减少 CPU 时钟、看看我们是否可以让 LED 闪烁代码稳定地运行。 这将帮助我们确定是否存在电流电源问题(然后我们可以调试发生更多问题的原因)。
在 blinky 项目的 device.h 文件中、您将在第214行看到这一点 、我已将 IMULT 修改1/2、因此我们将以100MHz 与200MHz 的频率运行器件。
请尝试使用此更改重新编译、让我们看看情况是否更稳定。 如果不起作用、您可以尝试8的 IMULT 等
请确认您的输入时钟为25MHz (与 controlCARD 相同)、因为我们将查看这部分代码。
#define DEVICE_OSCSRC_FREQ 25000000U // // Define to pass to SysCtl_setClock(). Will configure the clock as follows: // PLLSYSCLK = 25MHz (XTAL_OSC) * 16 (IMULT) / (2 (REFDIV) * 2 (ODIV) * 1(SYSDIV)) // #define DEVICE_SETCLOCK_CFG (SYSCTL_OSCSRC_XTAL | SYSCTL_IMULT(16) | \ SYSCTL_REFDIV(2) | SYSCTL_ODIV(2) | \ SYSCTL_SYSDIV(1) | SYSCTL_PLL_ENABLE | \ SYSCTL_DCC_BASE_1) // // 100MHz SYSCLK frequency based on the above DEVICE_SETCLOCK_CFG. Update the // code below if a different clock configuration is used! // #define DEVICE_SYSCLK_FREQ ((DEVICE_OSCSRC_FREQ * 16) / (2 * 2 * 1)) // // 25MHz LSPCLK frequency based on the above DEVICE_SYSCLK_FREQ and a default // low speed peripheral clock divider of 4. Update the code below if a // different LSPCLK divider is used! // #define DEVICE_LSPCLK_FREQ (DEVICE_SYSCLK_FREQ / 4)
最棒的
Matthew
您好、MatthewRate
我很荣幸能得到你的帮助。
首先、我的硬件电路设计和材料选择基于 TMDSCNCD28388D 的设计。
上图是有源晶体振荡器的总和值。
以下两个图是原始程序的值和修改后的值。
1.更改为16后、开始将程序下载到电路板的 RAM 中、可以正常下载该程序、但在单击运行后、会出现以下错误:
但是、在这种情况下、我关闭电路板电源并重新打开电源、然后将程序烧写到闪存中、并成功烧写到闪存中。
再次燃烧、它将不起作用。 误差结果如下:
2.接下来,我将16改为8,如下所示:
此时、成功将程序下载到 RAM、单击 Run、然后开始报告错误:
然后、关闭电路板电源、再次打开电源、将程序编程到闪存、并报告错误:
不确定、我明白你的意思了! 根据我的理解,上述测试已经完成。
谢谢
Vince
Vince、
感谢您这么做;我不熟悉 XDS200的 PRSC 错误、我不确定路由器会出现什么错误。
我将建议您在运行代码后、建议我们单步执行代码、直到我们单击导致仿真中断的 C 指令、然后注意、并使用该信息回复此帖子。
现在、让我们坚持使用100MHz、以便为 CPU 时钟留出一定的裕度。 通过执行上述操作、我们可以缩小根本原因、此时仿真器错误可能有许多不同之处。
最棒的
Matthew
您好,MatthewRate
谢谢,我将分步运行和调试。
如果发现原因、将在此处报告情况。
谢谢
Vince