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.

[参考译文] CC2340R5:hw_fcfg.h->deviceInfo 中的元素 majorRev 和 minorRev

Guru**** 2595770 points
Other Parts Discussed in Thread: UNIFLASH, CC2340R5

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

https://e2e.ti.com/support/wireless-connectivity/bluetooth-group/bluetooth/f/bluetooth-forum/1339330/cc2340r5-element-majorrev-and-minorrev-in-hw_fcfg-h--deviceinfo

器件型号:CC2340R5
主题中讨论的其他器件:UNIFLASH

在 hw_fcfg.h 中、deviceInfo 结构如下:

我有两个问题:
1.作为注释, majorRev 的默认值应该是1 ,但我读出0。

2.这些元素 是只读的,如何更改值。

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

    您好 Xuefeng!

    感谢您的联系。

    该信息是特定于该器件的、正如您所指出的、它是只读的。

    请告诉我您是如何阅读设备信息的(minorRev 和 majorRev)的?

    Br、

    大卫。

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

    尊敬的 David:

    我看它像这样

    sprintf(firmwareRev, "%02d.%02d.%02d", fcfg->deviceInfo.partId.majorRev, fcfg->deviceInfo.partId.minorRev, FIRMWARE_PATCH_NUM);

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

    另一个 partIdValid 值为1。

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

    您好 Xuefeng!

    您是否能够正确读取其他值或它们是否也为零?

    您在代码的哪个位置运行上一个打印命令?

    Br、

    大卫。

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

       同一结构值中的另一个元素 partIdValid 为1。

    我在 app_dev_info.c->DevInfo_start 中运行代码。

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

    您好 Xuefeng!

    您是否曾使用其他电路板尝试过此设计、并得到相同的结果?

    Br、

    大卫。

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

    尊敬的 David:

    我使用了两个板来检查这一点、它们具有相同的结果。

      sprintf(firmwareRev, "partIdValid:%d,majorRev:%02d,minorRev:%02d",
              fcfg->deviceInfo.partId.partIdValid, fcfg->deviceInfo.partId.majorRev, fcfg->deviceInfo.partId.minorRev);
      MenuModule_printf(APP_MENU_PROFILE_STATUS_LINE1, 0, "firmwareRev:%s", firmwareRev);

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

    您好 Xuefeng!

    我懂了。 我也在仔细检查、我将报告这一点。 谢谢你。

    您能否确认您正在使用的 SDK 版本?

    同时、您能否确认您能够从 UNIFLASH 获取此信息? 将设备连接到 uniflash、转到"Settings & Utilities"、向下滚动并单击"Read Device Info"。 修订版本信息应为 B (2.0)。

    Br、

    大卫。

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

    尊敬的 David:

    我使用 Uniflash 读取信息、版本为 B (2.0)。

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

    您好 Xuefeng!

    谢谢。 我已报告此问题。 我会在收到团队的回复后立即回复您。

    您能否确认您正在使用的 SDK 版本?

    我想问一下、这是否阻碍了目前的开发工作、用例是什么?

    Br、

    大卫

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

    您能否确认您正在使用的 SDK 版本?

    [/报价]

    我的 SDK 版本是 simplelink_lowpower_f3_sdk_7_20_00_29

    我想问一下、这是否阻碍了目前的开发工作、用例是什么?

    [/报价]

    我们希望将其用作我们的固件版本标头。 我们可以等待几天、但希望尽快解决此问题。

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

    您好 Xuefeng!

    我懂了。 谢谢。

    我会尽快更新您的信息。

    简单来说一下、您是否希望通过低功耗蓝牙发送此信息? 请参阅 basic_ble 示例( \examples\rtos\LP_EM_CC2340R5\ble5stack) Inside Services -> DEV_INFO_SERVICE.c (hardware_REV_UUID)。 但首先我们需要正确获取信息。

    Br、

    大卫。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    是否要通过低功耗蓝牙发送此信息?

    是的、此信息需要与其他设备共享。

    我使用 const 值 临时、等待获取正确的信息。

    此致。

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

    您好 Xuefeng!

    我懂了。 我只是想确认你在 DevInfo_start ()函数内使用了 DevInfo_SetParameter ()和 DevInfo_hardware_REV 参数。 我将随时向您通报最新情况。 感谢您的耐心。

    Br、

    大卫。

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

    尊敬的 David:

    有新 SDK 发布的任何消息吗?

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

    您好 Xuefeng!

    感谢您的耐心等待。

    majorRev 和 minorRev 并不用于识别器件版本/ PG。 我仍然需要与团队进一步讨论是否需要在结构中修改此字段以避免混淆。

    但是、为了读取修订版本、我会要求您以 UNIFLASH 相同的方式来读取、方法是读取以下寄存器:SYS0:DEVICEID。 存储器地址:0x400043F8。 您可能应该读回0x1BB8402F0 (具体取决于具体器件)、其中版本号在位[31:28]中定义。 PG 2.0由0b0001表示、PG 1.0由0b0000表示。

    希望这对您有所帮助。

    Br、

    大卫。

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

    尊敬的 David:

    如何使用代码读取寄存器信息?

    Br

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

    您好 Xuefeng!

    我建议在调试模式下首先检查该寄存器(请参阅寄存器窗口并搜索 SYS0:DEVICEID)。

    如果要读取地址,可以使用地址为0x400043F8的源指针执行 memcpy()。

    让我知道情况如何。

    David:

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

    尊敬的 David:

    这是我的存储器信息、我还没有找到2.0数据

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

    您好 Xuefeng!

    版本号在位[31:28]中定义。 PG 2.0由0b0001表示、PG 1.0由0b0000表示。

    Br、

    大卫。

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

    哪个部分是目标位、似乎不是自然顺序。

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

    您好 Xuegeng:

    地址0x400043F8中的值为0x1BB8402F (00011011101110000100000000101111)、其中[31:28]表示版本。 PG 2.0由0b0001表示、PG 1.0由0b0000表示。

    Br、

    大卫。

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

    尊敬的 David:

    非常感谢。

    我想知道、 SYS0_DEVICEID 是否始终在地址 0x400043F8内 ?

    是否有一种使用变量的方法可以在程序中使用、而不是直接写入地址?

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

    您好!

    由于节假日、该线程中可能会出现意外延迟。 对此可能造成的不便、我深表歉意。 对于寄存器地址、我建议使用基地址定义、而不是使用原始地址。 对于 SYS0、这是 SYS0_BASE、可在 hw_memmap.h 文件中找到。 对于 DeviceID 部分、您应该使用 SYS0_O_DEVICEID (此定义位于 hw_sys0.h 中)。 要写入/读取寄存器、请使用 HWREG、而不是在期间直接处理地址。 此函数在 hw_types.h 中定义。 您应该执行以下操作:

    HWREG (SYS0_BASE + SYS0_O_DEVICEID)

    此致、

    1月

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

    HWREG (SYS0_BASE + SYS0_O_DEVICEID)

    [/报价]

    大家好、Jan、

    通过这个、我 在 chipinfo.h 中找到了 ChipInfoGetVersion、而该返回值1。 但我读取的版本是带 Uniflash 的2.0。

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

    您好!

    您能分享您读取注册信息的位置吗? 这是在正常应用程序代码期间还是在启动期间?

    此致、

    1月

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

    我在 App_Stack 451->DevInfo_start 读到过这篇文章。

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

    您好 Xuefeng!

    我想这是因为、如前所述、PG 2.0由0b0001表示、PG 1.0由0b0000表示。

    Br、

    大卫。

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

    谢谢、明白了。