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.

[参考译文] UCD3138:如何更改堆栈值

Guru**** 2539500 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1049014/ucd3138-how-to-change-stack-value

器件型号:UCD3138

这与相关  

https://e2e.ti.com/support/power-management-group/power-management/f/power-management-forum/1035477/ucd3138-timerinit-problem-ucd3138

谢谢你,伊恩!

但我不明白如何更改 load.asm 中的栈值
我有类似的起始地址、但不知道正确的范围
 
SUP_STACK_TOP  .equ 0x19ffc;监控器模式(SWI 堆栈)从存储器顶部开始
fiq_stack_top .equ 0x19e00;为监控器堆栈分配256个字节、然后执行 FIQ 堆栈
IRQ_STACK_TOP .equ 0x19d00;为 FIQ 堆栈分配256个字节、然后启动 IRQ 堆栈
USER_STACK_TOP .equ 0x19b00;为 IRQ 堆栈分配512个字节、常规堆栈处于静止状态、一直到变量
来解决该问题
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    通常这些设置都是可以的。  我们通常会留出比所需空间更大的空间。  假设您有足够的空间、您可以通过查看您正在使用的堆栈来检查使用情况。  load.asm 通常会将所有 RAM 清零、因此为了查看堆栈利用率、您可以使用器件 GUI 中调试选项卡中的存储器透视检查函数来查看 RAM、并查看非零值。   

    如果您具有类似的数字、堆栈不应成为问题。  如果是、禁用快速中断需要极少的字节。   

    您如何知道此特定命令导致了此问题?

    如果是、您应该能够将代码减至禁用快速中断、init_PMBus 和调用 PMBus 处理程序的 for 循环。  当然还有 PMBus 文件。

    您可以取出任何专有元素。

    然后、您可以向我发送整个文件集、我可以查看并尝试查看正在发生的情况。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    谢谢!!!

    如何发送整个文件集?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    发送朋友请求、我将尝试设置一个方框供您使用。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您似乎已将 load.asm 和 cyclone 头文件从 Device 目录复制到主目录。  我不知道这是怎么做的。  这些是我看到的唯一变化。  

    我建议您返回到原始 EVM 代码、然后一次对要更改的文件进行一次更改、看看它是否仍然正常工作。  更改设备目录中的文件、不要将其复制到主目录中。   

    如果你遇到一些你不理解的事情、请告诉我。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    已经一周了、因此我假设这已经解决了问题、我将关闭此主题。   

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    很抱歉,我仍然没有找到这样的决定。 我尝试根据您在链接中的建议更改栈值、但不成功。

    在 SWI 指令时、MCU 转到地址8、其中没有命令、并获取 en error - No source avaibable

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Ivan、如果您返回到 TI 网站的原始代码、它是否正常工作?  我建议您从网站重新下载代码、对其进行编译、然后查看代码是否正常工作。  然后一次更改一行代码、并对其进行测试以查看其是否仍然有效。  然后告诉我变化是什么、或者看看导致问题的具体行将会向您明确说明。