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.

[参考译文] MSP430F5529:如何在 MSP Bootloader 示例中整合使用中断的 USB 库

Guru**** 2603095 points
Other Parts Discussed in Thread: MSP430F5529

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1084112/msp430f5529-how-to-incorporate-usb-libraries-that-use-interrupts-in-msp-bootloader-example

部件号:MSP430F5529

您好,

我已根据以下应用说明生成了一个 MSPBoot 项目: https://www.ti.com/lit/an/slaa600d/slaa600d.pdf?ts=1646674745928

但是,我想将更多的库整合到我的基本引导加载程序映像中,因为它也将作为我在该领域的最小映像;我想首先整合基本的 USB CDC。

我有一个 TI 的 USB CDC 工作示例,该示例只将文本打印到终端;但我一直在努力使其与 MSP Boot 项目集成。 我认为这是由于中断向量重定向代理表,因为在我的主函数中运行__enable_interrupt ()后调试器丢失。

如果我在执行 USB_setup (TRUE,TRUE)后尝试运行__enable_interrupt (),它将崩溃,因此在 USB_setup 中执行的操作会导致崩溃,但不清楚发生了什么, 但是,这应该与矢量代理表有关,因为无法正确处理用户不可伪装的中断(可能),但没有示例说明如何在 MSP Boot 项目中使用中断来修复与此相关的任何问题。

如果有人对此有经验或能提供一些建议,我将不胜感激。  

附件是我的 MSP430f5529发布项目 pad.e2e.ti.com/.../MSPBoot_5F00_F5529_5F00_USB.zip

谢谢!

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

    你好,尼古拉斯,

    这似乎是一个相当大的挑战。  让我四处询问。

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

    谢谢丹尼斯,任何帮助或建议都是极好的!

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

    你好,尼古拉斯,

    很抱歉地说,我是空手而归的。

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

    不用担心,我就明白了。 我只需要创建一个文件,将实际 ISR 重定向到中断向量的代理表;这就是我运行 enable_interrupts ()时它们链接在一起的方式