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.

[参考译文] AWR2944:如何启用 FRAME_START、啁啾_START 和啁啾_END 脉冲?

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/1249277/awr2944-how-to-enable-frame_start-chirp_start-and-chirp_end-pulses

器件型号:AWR2944
主题中讨论的其他器件:SysConfigDCA1000EVM

我要在定制电路板上的 AWR2944上启用 FRAME_START、CHIRP_START 和 CHIRP_END 脉冲。

定制板已确认可与来自 SDK 的 TI 示例以及高端角雷达实验室示例配合使用。

我已经对我的 PC 进行了设置、以便根据源代码重建应用映像、包括高端角雷达实验室示例和 SDK 中包含的演示。

该定制板的布局与 AWR2944EVM 几乎相同、可访问 R15、G15和 T17来测量信号。

我打开了 TI SysConfig GUI 工具以配置引脚映射、使用此工具分别向 R15、G15和 T17添加了 FRAME_START、CHIRP_START 和 CHIRP_END 信号。 我可以看到对 mss.syscfg 文件的修改、但右侧的所有其他文件都未更改。

当我尝试保存所有文件或 mss.syscfg 文件时、该工具抛出错误、抱怨 Chrome 扩展名。

无论要保存什么错误、我都已手动修改该文件、并使用这个新的 mss.syscfg 从源重新编译 appimages。 但是、在刷写新的 AWR2944 TDM 演示映像(现在重新构建)之后、当我使用毫米波可视化工具加载配置文件并看到传感器正在运行时、我已配置的这些引脚上未生成脉冲信号。 我将使用示波器进行测量、但这些线上没有发生任何情况。

mss.syscfg 文件的新增内容:

/**
 * These are the reserved peripherals and settings in this configuration
 */
const iCHIRP_END1           = scripting.addPeripheral("CHIRP_END");
iCHIRP_END1.$name           = "MyCHIRP_END1";
iCHIRP_END1.$assign         = "CHIRP_END0";
iCHIRP_END1.END.$assign     = "ball.T17";
const iCHIRP_START1         = scripting.addPeripheral("CHIRP_START");
iCHIRP_START1.$name         = "MyCHIRP_START1";
iCHIRP_START1.$assign       = "CHIRP_START0";
iCHIRP_START1.START.$assign = "ball.G15";
const iFRAME_START1         = scripting.addPeripheral("FRAME_START");
iFRAME_START1.$name         = "MyFRAME_START1";
iFRAME_START1.$assign       = "FRAME_START0";
iFRAME_START1.START.$assign = "ball.R15";

Question:

1.这是否预计将这3个新引脚添加到 mss.syscfg 中、TI SysConfig GUI 工具中的所有文件(即 mss 生成的文件)都保持不变?

2.如果我的这部分配置是正确的,我是否需要在 mss_main.c 文件中添加一些内容,以配置这些引脚来生成输出脉冲?

非常感谢您提供任何指导或帮助、

标记

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

    尊敬的 Mark:

    我们将在内部与我们的团队进行核实、并在几天后与您联系并提供相关的更新信息。

    谢谢。

    Pradipta.

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

    您好!

    这方面的支持是否有任何更新?

    我已经尝试了一些东西给了某种成功,但不是完全什么我想要和不知道它是否是正确的方式去做。

    正如我在原帖中所述、添加引脚不会在 SysConfig 中对源代码文件进行任何更改、但是、如果我打开 SysConfig 并为 AWR294X 创建新设计(不选择 SDK)、我可以看到该代码是在 AWR294X_pinmux_data.c 文件中生成的。

    例如、当我添加 FRAME_START 信号时、会生成以下代码

    #include "AWR294X_pinmux.h"
    
    /** Peripheral Pin Configurations */
    
    
    static pinmuxPerCfg_t gMyframe_start0PinCfg[] =
    {
        /* MyFRAME_START1 -> FRAME_START -> R15 */
        {
            CSL_MSS_IOMUX_PADAY_CFG_REG, PIN_MODE(7) | \
            ((PIN_PULL_DISABLE) & (~PIN_PULL_DIRECTION))
        },
        {PINMUX_END}
    };
    static pinmuxModuleCfg_t gFrame_startPinCfg[] =
    {
        { 0, TRUE, gMyframe_start0PinCfg},
        {PINMUX_END}
    };
           
    
    pinmuxBoardCfg_t gAWR294XPinmuxData[] =
    {
        {0, gFrame_startPinCfg},
        {PINMUX_END}
    };

    我以这个为基础尝试了两种方法、即手动将这个添加到 ti_pinmux_config.c 中(在 mssgenerated 中)。

    1.我只取了生成的代码的第一部分、替换了引脚的定义、添加了以下内容:

    {
        PIN_PAD_AY, PIN_MODE(7) | \
        ((PIN_PULL_DISABLE) & (~PIN_PULL_DIRECTION))
    },

    2.我使用先前 ti_pinmux_config.c 中的内容作为基础并按如下方式添加引脚:

    {
        PIN_PAD_AY,
        ( PIN_MODE(7) )
    },

    结果:

    1.可能生成了 chirp_end 和 chirp_start 信号、但我无法测量或检测 FRAME_START 脉冲。

    2.与1相同的结果-显示生成 CHIRP_END 和 CHIRP_START 脉冲,但不生成 FRAME_START 脉冲。

    Question:

    1.这是正确的配置还是缺少了什么?

    2.当我用示波器测量 CHIRP_START 时,脉冲看起来只有几纳秒。 我不确定这是我的工作范围的限制还是意料之中的。 这些信号对应产生多长时间的脉冲?

    3. CHIRP_START 和 CHIRP_END 似乎起作用但 FRAME_START 不起作用有什么原因吗?

    谢谢。

    标记

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

    除了寻找上述正确方法的确认之外、您能否帮助说明以下内容:

    为什么我在 FRAME_START 行上看到单个帧的另外16个脉冲、而我应该看到一个脉冲? 加载配置文件配置以使用 LVDS 和 DCA1000EVM 捕获单个帧时、请参阅 FRAME_START 行的下图。

    上图的上下文:这是一个自定义配置文件、但对于将帧数设置为1而不是20的 profile_LVDS.cfg 的修改版本、我看到了类似的行为、而不是16个额外脉冲、测得12。 需要注意的是、这些测量和结果是可重复的。

    也可以在 CHIRP_END 线路上测量额外的脉冲。 在正确数量的 CHIRP_END 脉冲之前加载系统配置时开始产生的额外脉冲。

    另外、为了清楚起见、我已将 FRAME_START 行多路复用为 PIN_pad_AZ (G15)、信号在这条线路上工作。 但是、它仍然不能在 PIN_pad_AY (R15)上运行、我对此没有任何解释-如果我缺少一些关于它为什么不起作用的知识、我将非常感激。

    谢谢。

    标记

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

    尊敬的 Mark:

    我正在核对您分享的所有细节。 我需要一些时间来提出这方面的更新。 将尝试在一周结束之前回复。  

    谢谢。

    Pradipta.

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

    尊敬的 Mark:

    请在下面找到我的评论。

    1.这是否预计将这3个新引脚添加到 mss.syscfg 中、TI SysConfig GUI 工具中的所有文件(即 mss 生成的文件)都保持不变?

    注释)、因此"保留外设"选项卡未链接到 SDK 驱动程序或模块、因此当您在该选项卡中进行更改时、该选项卡不会更改任何源文件。

    2.如果我的这部分配置是正确的,我是否需要在 mss_main.c 文件中添加一些内容,以配置这些引脚来生成输出脉冲?

    注释)我将按如下方式列出的完整流程。

    要启用 Say 啁啾启动信号、您将需要进行以下修改。  

      a)在您的应用代码中、您需要按如下方式定义该数组。

    static Pinmux_PerCfg_t gPinMuxMainDomainCfg[] = {
        /* Unused PAD registers configuration - Start */
        {
            PIN_PAD_AD,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_AE,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_AF,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_AG,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_AR,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_BU,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_BV,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_BW,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_CT,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_CU,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_CV,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_CW,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_CX,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_CY,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        {
            PIN_PAD_CZ,
            ( PIN_FORCE_INPUT_DISABLE | PIN_FORCE_OUTPUT_DISABLE )
        },
        /* Unused PAD registers configuration - End */
        {PINMUX_END, PINMUX_END}
    };

     B)此处要提及所有引脚多路复用器的详细信息。 您可以参阅该器件的数据表、并找到 PIN_PAD 定义和模式要求。 一旦它在数组中启用,你将需要调用 pinmux_config()函数将这个新数组。 调用此 API 后、将使用所需的设置配置您的自定义 PIN。  

    为 DSS_UART 添加引脚定义、例如参考。

     /* DSS_UARTA_RX -> PAD_DD (B14) */
        {
            PIN_PAD_DD,
            ( PIN_MODE(1) | PIN_PULL_DISABLE | PIN_SLEW_RATE_LOW )
        },
     

    谢谢。

    Pradipta.

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

    尊敬的 Mark:

    请在下面查找我对待定问题的评论。

    1.这是正确的配置还是缺少了什么?

    注释)上面已经解释了配置此功能的正确方法。 如果您有任何疑问、请告诉我。  

    2.当我用示波器测量 CHIRP_START 时,脉冲看起来只有几纳秒。 我不确定这是我的工作范围的限制还是意料之中的。 这些信号对应产生多长时间的脉冲?

    注释)这是预期行为。 脉冲宽度将为5纳秒。

    3. CHIRP_START 和 CHIRP_END 似乎起作用但 FRAME_START 不起作用有什么原因吗?

    注释)请检查配置是否正确。  

    4.为什么我在一个帧的 FRAME_START 行上看到另外16个脉冲、而我应该看到一个脉冲呢? 加载配置文件配置以使用 LVDS 和 DCA1000EVM 捕获单个帧时、请参阅 FRAME_START 行的下图。

    注释)器件执行引导时校准。 在我的理解中 、它们是由于校准所致。 您是否可以禁用运行时和引导时校准、并告知我们您的观察结果是发生了变化还是保持不变。  

    5.另外要清楚,我已经将 FRAME_START 线路复用为 PIN_pad_AZ (G15),信号在这条线路上工作。 但是、它仍然不能在 PIN_pad_AY (R15)上运行、我对此没有任何解释-如果我缺少一些关于它为什么不起作用的知识、我将非常感激。

    注释)我们需要 在工作台上对此进行检查、以确认此行为。 根据我的理解、如果引脚配置正确、应该可以正常工作。  

    谢谢。

    Pradipta.

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

    您好 Pradipta,

    感谢您的响应、我已经在我的硬件上测试了建议的解决方案。

    1. 引脚多路复用配置可用于启用 FRAME_START、CHIRP_START 和 CHIRP_END 上的脉冲。 FRAME_START 似乎对引脚 R15起作用。 但是、与 G15相比、我在该引脚上测得的电压非常小。 低于400mV 时的测量值与 G15的大约1.7V 相比。
    2. 我已禁用源代码中 mss_main.c 中的校准
      calibrationCfg.u.chirpCalibrationCfg.enableCalibration = false; 
      这似乎是求解 FRAME_START 线路上的
    3. 上面的第2点解决了 FRAME_START 上来自上配置文件配置的第二个负载的额外脉冲。 但是、当在 AWR2944重新启动或复位后首次加载配置文件配置时、我会收到许多额外的脉冲。 大约 计数到300多个脉冲。 如果在源代码中禁用了校准、可能是什么导致了这些脉冲?
    4. 我尝试将配置文件配置中的 calibData 修改为1 0 0、但这不能解决上面的第3点问题。
    5. 一些额外的上下文信息、这些信息可能很重要:我使用的是 AWR2944 ES1.0器件、并且我使用的是 SDK 版本4.03.00.01 (由于最新的 SDK 不支持 ES1.0、仅支持 ES2.0)

    在优先级方面、我目前可以在 G15上使用 FRAME_START、因此我的最高优先级是找出在重新启动后首次加载配置文件配置时 FRAME_START 上出现额外脉冲的原因。

    1帧的 FRAME_START 脉冲、无额外脉冲-第二次在重新启动后加载配置文件配置:

    FRAME_START 在重新启动之后、配置文件配置的第一次加载上具有大量额外的脉冲(更多脉冲未在示波器时间刻度上捕获):

    非常感谢、

    标记

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

    尊敬的 Mark:

    按照我在调用 Profile Config API 时的理解、

    您可能会为 PF_CALLUT_UPDATE 字段使用0值来调用它。 因此、射频模拟参数将通过校准进行重新调整。  

    您能否确认这是0还是1 (在您的情况下为0)、以及如果您做出此1 (在您的情况下为0)、您的观察结果是什么?

    谢谢。

    Pradipta.

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

    您好 Pradipta,

    感谢您提供这些信息。

    我很难找到此参数的配置位置/我可以将值设置为1的位置。 我正在使用演示源代码、目前重点介绍 TDM (位于 C:\ti\mmwave_mcuplus_sdk_04_03_00_01\mmwave_mcuplus_sdk_04_03_00_01\ti\demo\awr294x\mmw)。

    In rl_sensor.hfile I see rlProfileCfg它包含pfCalLutUpdate并且对应于您在上面分享的文档片段。


    我使用的是 SDK 版本4.03.00.01、我不确定可以在哪里配置它。 您能帮助我找到可以修改的地方吗?

    谢谢。

    标记

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

    尊敬的 Mark:

    在演示应用中、进行这种更改是不可行的。 并不包含毫米波库提供的每一项功能。  

    谢谢。

    Pradipta.