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-GANG:将从 GANG430升级到 MSP_GANG

Guru**** 2482225 points
Other Parts Discussed in Thread: MSP-GANG

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1234724/msp-gang-hwo-to-upgrade-to-msp_gang-from-gang430

器件型号:MSP-GANG

尊敬的所有人

  我们使用 MSP-GANG 是因为 GANG430不是生产性的。 作为参考 MSG-GANG.pdf ,4.1 Gang430.dll 包装程序说明, 我们使用包装程序 GANG430.dll-, GANG430.ini, msp-Gang.dll,将这些文件复制到工作目录。 例如、需要将程序下载到 MSP2132 MCU。 首先,我们可以下载程序成功,但重新下载,有一个问题目标 Init 失败。

我们比较 GANG430.ini:

GANG430
[MSP430 F2132]
设备 ID = 0xF213
设备 IdxD= 0x02
MemDef1= R、0x0200、0x0200
MemDef2= I、0x1000、0x0040
MemDef3= I、0x1040、0x0040
MemDef4= I、0x1080、0x0040
MemDef5= I、0x10C0、0x0040
MemDef6= C、0x10F8、0x0008
MemDef7= M、0xE000、0x2000
VppToTest=1
SbwAble=1
VPP = 22


wrraper

[MSP430 F2132]
组= 2
设备 ID = 0xF213
设备 IdxD= 0x02
MemDef1= R、0x0200、0x0200
MemDef2= I、0x1000、0x0040
MemDef3= I、0x1040、0x0040
MemDef4= I、0x1080、0x0040
MemDef5= P、0x10C0、0x0040
MemDef6= C、0x10C0、0x0040
MemDef7= M、0xE000、0x2000
VppToTest=1
SbwAble=1
VPP = 22

请帮助,谢谢!!!

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

    你好,耶鲁,

    该错误可能是由硬件连接问题引起的。 您是否可以尝试使用 MSP-GANG GUI 对板进行一次编程并查看结果是什么?

    使用 GUI 时、您是否还可以让他们检查 Gang 软件版本和固件版本?

    此致、
    布兰登·费舍尔

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

    Brandon,

    使用  MSP-GANG GUI、使用交互模式、它可以对电路板进行编程。

    Gang 版本如下:

    --

    谢谢、此致

    耶鲁

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

    谢谢耶鲁大学

    使用  MSP-GANG GUI、使用交互模式、它可以对电路板进行编程。

    [/报价]

    我觉得这可能不是硬件问题。  您是否可以让它们下载并尝试最新版本的 MSP-GANG DLL 和 GUI?

    https://www.ti.com/tool/download/MSP-GANG-SOFTWARE

    它应为01.03.07.00。

    他们的应用程序是用 C 语言还是其他语言编写的? 它们是否能够共享试图在器件上写入的存储器区域、是否会将 JTAG/SBW 作为代码的一部分锁定?  

    此致、
    布兰登·费舍尔

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

    尊敬的 Brandon:

    客户的跟进:

    我们必须使用 VB6.0从 GANG430升级到 MSP-GANG、有2种解决方案:

    1.对于  MSP-GANG.pdf 4.1,请使用包装程序,将 GANG430.dll、GANG430.ini、MSG-Gang.dll 复制到工作目录。  我们只能进行1次编程、然后进行2次

    LCD 显示目标初始化失败。

    2.对于软件示例 c#,c,重写 VB6.0,可以加载 Image,可以下载并得到正确的结果,但有一个错误的运行时'49',错误的 DLL 惯例。  

    私有声明函数 MSPang_GetProgressStatus Lib "msp-Gang.dll"(lpData 视为任意)

    私有声明子 CopyMemory Lib "kernel32"别名"RtlMoveMemory"(目标为任意、源为任意、ByVal nLength 为长)
    私有声明函数 VarPtr Lib "MSVBVM60"(var as any)

    DIM pOutputArray 的长度
    DIM tempBData 作为字节
    DIM outputArray (0到51)作为字节
    pOutputArray = VarPtr (OutputArray (0))

    VGangGetResult = MSPang_GetProgressStatus (pOutputArray) 此处将报告错误。

    如果 VGangGetResult = 0、则

    CopyMemory OutputArray (0)、pOutputArray、52
    tempBData = outputArray (10)

    因此、请提供帮助! 非常感谢!

    --

    谢谢、此致

    耶鲁

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

    你好,耶鲁,

    1. 对于  MSP-GANG.pdf 4.1,请使用包装程序,将 GANG430.dll、GANG430.ini、MSG-Gang.dll 复制到工作目录。  我们只能编程1次,然后编程2次

    这至少工作一次的事实令人困惑。 第一个程序没有错误?

    2. 对于软件示例 c#,c,由 VB6.0重写,可以载入 Image,可以下载并得到正确的结果,但有一个错误的运行时'49',错误的 DLL 惯例。  [/报价]

    "错误的 DLL 惯例"错误似乎与 DLL 和代码之间的参数类型不匹配有关。 自这些示例发布后、lpData 结构中的某些内容可能已更新。

    除了这些 DLL 惯例错误外、我在解释您的响应 时是否正确、因为使用这些示例、您能够对代码进行编程并观察应用运行? 如果是这样、则表明问题可能不在您的应用程序代码方面。  

    此致、
    布兰登·费舍尔

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Brandon:
    感谢您的详细答复!
    1.使用包装器、它可以在第一次编程、  我们 认为一些内存地址被擦除、因此 MSP-GANG 编程器不能重新连接 MCU。 虽然我们使用 GANG430 F
    2132单位资料。 如果使用此解决方案、我们需要更改少量代码、  

    2.你是对的。 它应该与 void *pointer 的 lpData 的参数不匹配。 无论如何、我无法找到在 C#中匹配 void *的正确方法。 在 Windows10操作系统中使用 vb6.0、并将 msp-gand.dll 复制到工作目录。

    例如,我们需要***参数来检查  当前信道的结果值。 作为第3个通道,结果值是 00100000 ,我们可以得到它。    由于我们需要 调用 MSPang_GetProgressStatus (void *lpData)函数、因此在执行下载函数后出现错误的 DLL 惯例错误。  我不确定哪一项 与某些 VB 语法相冲突  

    4.虽然我们可以通过 c#示例下载成功,但红色指示灯和绿色指示灯都亮起。 但未处于 GUI 接口中、只有绿灯亮起。

    非常感谢您的帮助!

    --

    Br

    耶鲁

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

    您好、Brandon

    关于使用 VB6.0和 MSP-Gang.dll、MSPang_GetProgressStatus(void* lpdata)这里是指向"按参考文档结构" 的指针,在 C#示例中,这是一个 byte*,在 C 示例中,这是 一个指向 UNION 的指针。 但我们在 VB6.0中使用了任意配置、存在错误:

    DIM pOutputArray 的长度
    DIM tempBData 作为字节
    DIM outputArray (0到51)作为字节


    pOutputArray = VarPtr (OutputArray)

      此处是 VGangGetResult = MSPGang_GetProgressStatus (pOutputArray)错误。

    现在、我们在调用下载函数 运行调试模式之前添加了一个"On Error Resume Next"、可以下载该函数。 但使 exe 文件、 此应用界面退出。

    如果  MSPang_GetProgressStatus (void* lpdata)与 GANG430_GetGangResult (void* lpdata)之间存在不同,请帮助 我!

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

    您好!

    Brandon 已经离岗了、所以我会帮忙解答这个问题。 这里需要什么支持?  

    根据我对该线程的阅读、这似乎是客户应用程序 VB6.0和 GANG DLL 之间的 API 问题。 是这样吗?

    这对于调试来说可能是一个很棘手的问题、因为 DLL 由第三方开发、MSP 没有 VB6.0编程专业知识。 请告诉我下一步应该是什么。

    此致、

    埃文