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.

[参考译文] MSP-EXP430G2ET:MSP430G2553重校准

Guru**** 2463330 points
Other Parts Discussed in Thread: MSP-EXP430G2ET, MSP430G2553

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1403176/msp-exp430g2et-msp430g2553-recalibration

器件型号:MSP-EXP430G2ET
主题中讨论的其他器件: MSP430G2553

工具与软件:

我有一个 MSP-EXP430G2ET 评估板、并且无意中删除了校准表。 我下载了 msp430x21x2_DCO_flashcal.s43、并尝试运行它、但 LOCKA 未在任何位置定义。 如何重新校准处理器?

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

    LOCKA 在器件头文件 msp430g2553.h 中定义 您引用的示例有#include 如果您正确设置了目标 CPU、这应该会引入该文件。

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

    设备选择不正确。 代码运行时没有 警告或错误、但在 我正在处理的工程中 CALBC1仍为0xFF。  除非有人可以提供已知的良好代码、否则我将丢弃此评估板、并用完好的校准数据替换它。  感谢你的帮助。

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

    是否应丢弃评估板、而不是仅替换插座目标器件? 对我来说是愚蠢的。

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

    我有额外的开发板。

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

    1) 1)您知道常数是如何从一开始被擦除的吗? 我不知道您是否计算并存储了常量、但是之后再次将它们擦除。 我忘记了 IAR 的工作方式、但是 CCS 提供了"Project->Properties->Debug->MSP430 Flash Settings->Erase Options"、其中之一是 "Erase main、information、and protected information memory"、这是可以意外选择的。 此外、BSL 也使得意外擦除常量变得十分容易。  

    2) 2)开箱即用、G2ET Launchpad 不连接32kHz 晶体。 R5和 R7上的焊接桥可以解决这个问题。 (您可以移除 R3/R9上的0欧姆电阻、或者只承诺不要将任何东西连接到 P2.6/.7引脚。) 如果没有晶体、则会生成错误的常量、但我不希望出现0xFF。

    3) 3)我建议您先从 G2553为例、而不是从 F21x2开始。 我在后者中看到的唯一"魔术常量"是栈指针、我认为它会(意外)起作用、但为了避免这个问题会更容易。 并且/或者切换到 C 程序而不是汇编程序(这样、构建系统就可以为你做得更好)。

    您可能需要特别在拔出新板之前整理(1)、否则您可能会发现自己与新板处于相同的位置。

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

    1) 1)当我尝试确定如何写入闪存信息存储器时、常数被擦除。  更好的此示例代码将会很有帮助。   

    2) 2)在尝试重新校准之前、我移动了跳线。

    3)我遵循了我能找到的重新校准的指示。  如果您有更好的东西、我会很感激。

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

    我想到的是这个(msp430g2xx3_DCO_flashcal.c):

    https://dev.ti.com/tirex/explore/node?node=A__AFMTmvVTDg38Cm2Bz0SZEQ__msp430ware__IOGqZri__LATEST

    简单看一下、我希望它能与 IAR 配合使用。  

    我已经使用这个程序数年(包括那些我意外地重新擦除他们之后)。

    [编辑:我现在明白了"更好的示例代码"的意思了。 以下是一个示例(msp430g2xx3_flashwrite_01.c):

    https://dev.ti.com/tirex/explore/node?node=A__AM00PDEdsVyGemKvLOkiSg__msp430ware__IOGqZri__LATEST

    这只适用于 C 段和 D 段、而常数位于 A 段。只要你从不触摸 LOCKA、你应该没有问题。]

    [编辑(2):我更仔细地看了,这个程序设置 LOCKA=0没有好的理由(" FCTL3 = FWKEY ;"),即使它只适用于 Segs C 和 D。我不知道作者在这里有什么想法,但我不推荐它。 没关系、这实际上只是正常的。]