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.
工具/软件:Code Composer Studio
我不熟悉编程、但我在 IAR 中与 TivaC 系列 MCU 合作取得了很大的成功、但使用较新的 MSP430FR5994却让我失望。 我似乎无法使用 IAR 或 CCS 连接到硬件。 我已经看过几个示例、并且在大多数情况下除了改变位数之外、使用了相同的代码、因为教程专门使用430g 模型、并且在不同的引脚上有 LED。 我已经在 IAR 和 CCS 中为项目设置了正确的器件类型、但是这两个器件都进入了调试模式并且调试 LED 亮起、并且它们会改变寄存器值、但是对于主板底部的实际引脚或 LED 没有任何反应。 我确实确保将调试器设置为器件而不是仿真器。 硬件未损坏、我可以从 Energia 运行闪烁程序、它运行正常。 我无法判断我做了什么错误、或者是否有错误的头文件等 如果能帮助解决这一令人沮丧的问题、我们将不胜感激。
```μ A
#include "io430.h"
int main( void )
{
//停止看门狗计时器以防止超时复位
WDTCTL = WDTPW + WDTHOLD;
PM5CTL0 = 0; //手动清零 LOCK 位以防发生错误
P1DIR = BIT0 + BIT1 + BIT2 + BIT3; //将前4位设置为输出
while (1){
P1REN = BIT0; //尝试使用上拉寄存器,但它也没有产生任何差异
P1OUT = BIT0 + BIT1 +BIT2 + BIT3;//手动将这些位设置为高电平
// for (int i = 0;i<2;i++){}
//P1OUT = 0;
//for (int j = 0;j< 2;j++){}
}
}
```μ A
>#include "io430.h"
我记得、只有 IAR 提供这个头文件。 CCS (和 IAR、我认为)提供"msp430.h"。 尝试:
>#include "msp430.h"
在我进行此更改后、我的 Launchpad 上的两个 LED 都亮起。
您好、Bruce、
感谢您的回答。
伊斯天
非常感谢、这是一个非常烦人的问题、它确实运行良好、但我仍然不理解导致问题的原因。 奇怪的是、如果我使用的头文件不能识别宏、例如 P1OUT、它不起作用、但它确实能识别它们、更重要的是、我可以看到寄存器值在调试期间发生了变化、但硬件并未发生变化、 这是不是由于该 io430.h 文件中缺少某种初始化代码?
我可以说的是、我的 CCS 版本(V8.3)根本没有"io430.h"、因此原始代码甚至不会生成。 我不确定您的接头来自何处(可能是 Energia 树?)
我使用 IAR 已经有一段时间了、但我模糊地记得它同时提供了"io430.h"和"msp430.h"、它们基本上是相同的、但出于任何原因、建议使用后者。
我的"第一个猜测"是为了确保我们谈论的是相同的事情。 如果它修复了更好的东西。
是的、io430.h 来自我下载的 MSP430 IAR 试用 IDE、 我有一个较新的 MSP430 fr5994、采用四通道样式而不是较旧的 DIP 样式、因此我猜 io430.h 可能只适用于旧型号、并且由于 msp430.h 存在且可与 FR5994芯片明显搭配使用、因此未进行更新。 但是、是的、感谢您的原始响应、在最初的障碍之后、我已经远远超过了 LED 闪烁的时间。
有关 io430.h 和 MSP430.h 之间的差异、请参阅以下主题: