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.

[参考译文] MSP430FR5994:如何克服错误98:使用MSPDebugStack时设备数据库未加载?

Guru**** 2193075 points
Other Parts Discussed in Thread: MSP430FR5994, MSPDS
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/641909/msp430fr5994-how-to-overcome-error-98-device-database-not-loaded-in-when-using-mspdebugstack

部件号:MSP430FR5994
主题中讨论的其他部分:MSPDS

我尝试将MSPDebugStack用作开放源代码软件包。 我按照开发人员指南中提供的步骤操作。 在初始化和设置Vcc之后,我调用MSP430_openDevice()。 此函数抛出错误98: Device Database Not Loaded。 重置功能的状态返回为STATUS_OK。 如何加载设备数据库? 我正在使用example.c来测试这个。

备注:当我使用mspdebug将'tilib作为我的端口连接到我的设备时,设备设置和连接工作正常。

谢谢你。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我在网上发现了一些类似的问题:

    github.com/.../28
    github.com/.../27

    您的libmsp430-so和操作系统版本是什么?正在使用哪种类型的FET? 我将在公共卫生和社会发展部的作者中提出他们对这一问题的意见。

    此致,
    Ryan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我正在Raspberry PI 3 Model B上使用Raspnian Stretch和libmsp430.so版本3。 此外,我还使用了使用'spdebug tileb'的mspdebug,它在我的PI上工作正常。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    感谢Ryan的回复。我以前没有访问我的设备的权限。 具体规格如下:
    操作系统:Linux raspberrypi 4.9 .41-v7+(Raspberry PI B型)
    libmsp430-so版本:MSP430-dll 3.3 .1.4
    由于我正在使用MSP430FR5994的启动板套件,我正在使用板载EZ-FET。( www.ti.com/.../msp-exp430fr5994)

    我还查看了您分享的问题。 我的问题与他们的问题相似。 唯一不同的是我尝试使用以下链接中的代码来启动设备,而不是通过mspdebug命令行进行连接。
    我正在尝试重复使用 github.com/.../energytrace-util.git中提供的代码 ,并独立使用能量跟踪技术。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    BTW,Raspberry Pi可与mspdebug配合使用,作为独立的JTAG/SBW主设备,无需任何TI软件/硬件。

    forum.43oh.com/.../  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢你Zrno。
    您是否尝试过在mspdebug中使用能量跟踪技术? 您是如何使用它的?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    否,我从未使用过mspdebug或/和能量跟踪。

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

    此致,
    Ryan
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    我的初始化代码如下所示:

    //一些基本的init函数

    STATUS_T STATUS,SECURE = STATUS_OK;
    CHAR*端口号;
    int版本;
    长VCC = 3300;
    Union device_T设备;
    端口号="TIUSB";

    printf("#Initializing the interface:");
    状态= MSP430_Initialize (portNumber,&version);
    printf ("#MSP4S_Initialize (portNumber=%s,version=%d)返回%d\n",portNumber,version,status);
    如果(status != status_OK){
    返回1;
    }

    //status = MSP430_Configure(et_CURRENTDRIVE_Fine,1);
    printf ("#MSP430_Configure(et_CURRENTDRIVE_Fine,1)=%d\n",状态);

    // 2. 设置设备Vcc。
    printf("#setting the device vcc:");
    状态= MSP430_VCC (VCC);
    printf ("#MSP430_VCC (%d)返回%d\n",VCC,状态);

    // 3. 打开设备。
    printf("#打开设备:");
    状态= MSP430_OpenDevice ("DEVICE_UNKNOWN","",0,0,DEVICE_UNKNOWN);
    printf("#MSP430_OpenDevice()返回%d\n",状态);
    // 4. 获取设备信息
    状态= MSP430_GetFoundDevice((ChAR*)&DEVICE, sizeof(device.buffer);
    printf("#MSP430_GetFoundDevice()返回%d\n",状态);

    //能量跟踪工具功能和关闭功能

    它与GitHub 中提供的相同:github.com/.../et.c
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请帮助澄清,您是使用开放源代码软件包还是下载了开发人员的软件包?

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

    我当前使用的是MSPDS-opensource软件包,并且版本是SLAC460V。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    请在MSP430_Initialize之后再次致电MSP430_LoadDeviceDb以解决此问题。 已在下一个开放源代码版本中提交了一份内部报告以改进此行为。

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

    谢谢你Ryan!

    我正在检查调用MSP430_LoadDeviceDb()的语法,并要求具有所需所有设备信息的zip存档的文件名。 在哪里可以找到此文件以及如何添加它?

    DLL430_SYMBOL STATUS_T WinAPI MSP430_LoadDeviceDb (const char*文件)

    此外,还可以在TI网站 www.ti.com/.../slau656上在线获得《MSP调试堆栈开发人员指南 》。 该指南是否适用于MSPDS开源软件包?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    MSP430_LoadDeviceDb的参数是可选的。 如果您提供具体文件,则该文件将用于设备数据库。 如果为函数提供NULL,则将装载内部设备DB。 内部设备数据库包含所有受支持的设备,可能是您要使用的设备。

    是的,SLAU656也适用于开源软件包。 在将来的版本中,用户不必在应用程序代码中使用MSP430_LoadDeviceDb。因为它将由dll代码自动完成。

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

    谢谢你Ryan!

    调用MSP430_LoadDeviceDB()成功! 我已将上一个答案标记为我的问题的解决方案。