0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

在 QSPI flash 上运行毫米波芯片的测试代码

电子设计 来源:电子设计 作者:电子设计 2021-11-10 09:36 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

Other Parts Discussed in Post: AWR6843ISK, UNIFLASH, IWR6843

作者:Chris Meng

毫米波的软件包mmWave SDK里有很多驱动的测试代码,包括外设驱动,mmWave link驱动等。例如\packages\ti\control\mmwavelink\test\xwr68xx目录下的测试代码。这些测试代码都需要编译生成MSS或者DSS的可以执行文件,然后通过CCS下载到板子上运行。但如果TI的毫米波评估板或者客户的板子上没有JTAG口/仿真器,那就不能方便的使用这些测试代码了。本文就是基于这个问题,尝试把MSS的测试代码直接烧写到QSPI flash上运行,并且通过GPIO点灯的状态来反映测试情况,来解决没有JTAG/仿真器情况下的测试问题。

本文运行环境,硬件:AWR6843ISK revC;软件:mmwave_sdk_03_04_00_03。

首先需要在命令行下编译出测试需要的mss可执行文件。

以xWR6843的Link test为例,用户可以在测试代码里面添加GPIO点灯的功能,来反映测试状态。例如可以根据自己的需求在某个测试通过后点亮LED灯,从而获知测试的结果。下面是本文尝试修改点灯的相关代码。实现的功能是上电后关闭LED,表示测试开始。最后mmwavelink测试全部结束后,灯会再次亮起。本文利用的是AWR6843ISK上的D7 LED,使用GPIO_2来控制灯的点亮和关闭,如图1所示。

pYYBAGGKSDqASNqqAAALQm_43tQ323.png

图1 测试使用的AWR6843ISK revC上的LED

1. 修改测试文件

C:\ti\mmwave_sdk_03_04_00_03\packages\ti\control\mmwavelink\test\xwr68xx\ main_mss.c

a. 在文件开始的位置添加包含GPIO驱动的头文件相关代码:
#include

b. 在MmwaveLink_initTask()函数开始位置添加GPIO初始化和关闭LED的代码。

GPIO_init();

Pinmux_Set_OverrideCtrl(SOC_XWR68XX_PINK13_PADAZ, PINMUX_OUTEN_RETAIN_HW_CTRL, PINMUX_INPEN_RETAIN_HW_CTRL);

Pinmux_Set_FuncSel(SOC_XWR68XX_PINK13_PADAZ, SOC_XWR68XX_PINK13_PADAZ_GPIO_2);

GPIO_setConfig(SOC_XWR68XX_GPIO_2, GPIO_CFG_OUTPUT);

GPIO_write(SOC_XWR68XX_GPIO_2, 0U);

c. 在MmwaveLink_initTask()函数结尾位置添加GPIO点亮LED灯的代码。

GPIO_write(SOC_XWR68XX_GPIO_2, 1U);

2. 修改mssTest.mak,在编译器连接时添加GPIO库和include路径(标黄相关代码)。

MMWAVE_MSS_UNIT_TEST_STD_LIBS = $(R4F_COMMON_STD_LIB) \

-llibpinmux_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT) \

-llibcrc_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT) \

-llibmailbox_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT) \

-llibtestlogger_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT) \

-llibadcbuf_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT) \

-llibedma_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT) \

-llibmmwavelink_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT) \

-llibgpio_$(MMWAVE_SDK_DEVICE_TYPE).$(R4F_LIB_EXT)

MMWAVE_MSS_UNIT_TEST_LOC_LIBS = $(R4F_COMMON_LOC_LIB) \

-i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/pinmux/lib \

-i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/adcbuf/lib \

-i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/crc/lib \

-i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/mailbox/lib \

-i$(MMWAVE_SDK_INSTALL_PATH)/ti/utils/testlogger/lib \

-i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/edma/lib \

-i$(MMWAVE_SDK_INSTALL_PATH)/ti/control/mmwavelink/lib \

-i$(MMWAVE_SDK_INSTALL_PATH)/ti/drivers/gpio/lib

3.单独编译测试代码(不编译相关库)。

a. 首先需要设置好编译的环境变量,方法和编译mmw demo时候的环境变量设置方法一致。具体请参考C:\ti\mmwave_sdk_03_04_00_03\docs\ mmwave_sdk_user_guide.pdf的设置环境变量章节的内容(4. 5. 2. Setting up build environment)。基本流程如下:

  • 修改C:\ti\mmwave_sdk_03_04_00_03\packages\scripts\windows\setenv.bat,例如:set MMWAVE_SDK_DEVICE=awr68xx。
  • 在DOS命令行窗口切换到setenv.bat所在目录,并且运行setenv.bat。

b. 然后在同一个窗口下使用命令切换到link test目录,例如:

cd C:\ti\mmwave_sdk_03_04_00_03\packages\ti\control\mmwavelink 并执行下面的代码。

gmake mssTestClean

gmake mssTest

c. 编译结束后,会在C:\ti\mmwave_sdk_03_04_00_03\packages\ti\control\mmwavelink\test\xwr68xx目录下生成更新的可执行文件:xwr68xx_link_mss.xer4f。

接下来是生成可以烧写到QSPI flash的bin文件。

1.首先复制MSS可执行xwr68xx_link_mss.xer4f文件到C:\ti\mmwave_sdk_03_04_00_03\packages\scripts\ImageCreator目录。

2.然后复制BSS firmware C:\ti\mmwave_sdk_03_04_00_03\firmware\radarss\ xwr6xxx_radarss_rprc.bin到同一目录。

3.接下来将编译脚本image_create_mss_only.bat也复制到相同目录。image_create_mss_only.bat编译脚本的具体内容如下:

cd out2rprc

out2rprc.exe ..\%1 ..\mss_rprc.bin

cd ..\

cd multicore_image_generator

MulticoreImageGen.exe LE 37 0x02000006 ..\metaImage.bin 0x35510000 ..\mss_rprc.bin 0xB5510000 ..\xwr6xxx_radarss_rprc.bin

cd ..\

cd crc_multicore_image

crc_multicore_image.exe ..\metaImage.bin 0

cd ..\

cd append_bin_crc

gen_bincrc32.exe ..\metaImage.bin

cd ..\

4.接下来在DOS命令行窗口切换到ImageCreator这个目录

cd C:\ti\mmwave_sdk_03_04_00_03\packages\scripts\ImageCreator

然后运行下面的命令:

image_create_mss_only.bat xwr68xx_link_mss.xer4f

5.运行结束后会在同一个目录下生成metaImage.bin,用于QSPI flash烧写。

最后使用UniFlash将metaImage.bin烧录到IWR6843板子上的QSPI Flash上,然后运行。

这个mmwavelink测试代码的运行时间较长,大概在20s以内会看到LED灯点亮。

总结:

本方法也同样适用于其他测试例程以及其他毫米波芯片。如果更换毫米波芯片,请注意复制正确的bss firmware到ImageCreator目录,并修改image_create_mss_only.bat里面bss firmware的文件名。

审核编辑:符乾江

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    463

    文章

    54389

    浏览量

    469047
  • 嵌入式处理
    +关注

    关注

    0

    文章

    341

    浏览量

    10533
  • 毫米波
    +关注

    关注

    21

    文章

    2059

    浏览量

    67984
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    4D毫米波雷达是如何识别高度信息的?

    自动驾驶感知系统中,毫米波雷达有着不可替代的作用。由于其工作微波频段,能够轻易穿透雨、雪、雾、烟尘等介质,并在强光、黑暗或光线剧烈变化的极端环境下保持高度的稳定性,因此一直是车辆感知环境的坚实
    的头像 发表于 03-14 10:13 1664次阅读
    4D<b class='flag-5'>毫米波</b>雷达是如何识别高度信息的?

    深度解析 AWR6443 和 AWR6843 毫米波传感器芯片

    深度解析 AWR6443 和 AWR6843 毫米波传感器芯片 如今的汽车电子和工业传感领域,毫米波传感器凭借其高精度、高可靠性等优势,成为了众多应用的核心组件。TI 推出的 AWR
    的头像 发表于 01-26 17:15 702次阅读

    南柯电子|EMI测试系统:毫米波时代挑战!满足“全球”认证标准

    南柯电子|EMI测试系统:毫米波时代挑战!满足“全球”认证标准
    的头像 发表于 01-22 09:32 293次阅读

    毫米波雷达气密性检测仪

    选对气密性检测仪,是保障毫米波雷达质量的关键环节。毫米波雷达因其结构精密、泄漏标准严苛,传统检测方法往往难以满足其严苛要求。为帮助您精准选择、避开常见误区,我们梳理出以下四大选购要点,助您轻松把好
    的头像 发表于 12-18 14:28 437次阅读
    <b class='flag-5'>毫米波</b>雷达气密性检测仪

    科普|浅谈毫米波PTCRB认证中的应用

    毫米波,早些年应用于军事场景较为广泛,现在伴随5G技术逐渐走进大众视野,走进民用通信。俗称FR2,当然这个是3GPP定义毫米波的时候给出的技术标准分类,随着6G技术的研发推进,也越来越常见
    的头像 发表于 12-10 15:23 441次阅读
    科普|浅谈<b class='flag-5'>毫米波</b><b class='flag-5'>在</b>PTCRB认证中的应用

    微波雷达和毫米波雷达有什么区别

    。今天就和大家说谁微波雷达和毫米波雷达有什么区别 微波雷达和毫米波雷达的区别 其实微波雷达和毫米波雷达主要的区别就在于频段,两者本质其实是一样的,但是从名称中也可以看出来
    的头像 发表于 10-30 16:56 2230次阅读
    微波雷达和<b class='flag-5'>毫米波</b>雷达有什么区别

    车载毫米波雷达的工作原理和功能

    毫米波(mmWave)严格意义是指波长在1到10毫米之间、频率范围是30GHz-300GHz的电磁
    的头像 发表于 09-08 10:37 2134次阅读
    车载<b class='flag-5'>毫米波</b>雷达的工作原理和功能

    恩智浦如何释放毫米波雷达的技术潜力

    智能出行变革浪潮中,毫米波雷达正成为汽车感知系统的核心支柱。展望未来,下一代毫米波雷达将如何演进并赋能哪些创新应用?这无疑是开发者关心的话题。
    的头像 发表于 08-19 14:25 1802次阅读

    毫米波雷达重塑煤矿感知能力

    毫米波雷达煤矿行业展现出巨大的应用潜力。随着技术的不断成熟、成本的下降以及针对煤矿特殊环境的优化,毫米波雷达将为提升煤矿安全生产水平和智能化程度提供强有力的支持。
    的头像 发表于 08-14 13:50 729次阅读
    <b class='flag-5'>毫米波</b>雷达重塑煤矿感知能力

    一文带你了解海凌科毫米波雷达

    什么是毫米波雷达?毫米波雷达有什么特点?毫米波雷达有什么作用?海凌科有哪些系列毫米波雷达?一文带你了解!毫米波的定义
    的头像 发表于 08-11 12:04 2005次阅读
    一文带你了解海凌科<b class='flag-5'>毫米波</b>雷达

    科普|看懂毫米波雷达,这一篇就够啦!

    今天这篇文章,我们来聊聊最近很火的一个概念——“毫米波”。█什么是毫米波毫米波(mmWave),是一种频率30GHz至300GHz之间的极高频(EHF)无线电磁
    的头像 发表于 07-26 04:06 2057次阅读
    科普|看懂<b class='flag-5'>毫米波</b>雷达,这一篇就够啦!

    看懂毫米波雷达,这一篇就够啦!

    今天这篇文章,我们来聊聊最近很火的一个概念——“毫米波”。█什么是毫米波毫米波(mmWave),是一种频率30GHz至300GHz之间的极高频(EHF)无线电磁
    的头像 发表于 07-09 19:02 2352次阅读
    看懂<b class='flag-5'>毫米波</b>雷达,这一篇就够啦!

    泰克示波器TBS1102C毫米波雷达研发中的关键测试方案

    的触发模式与高级分析功能,成为毫米波雷达研发团队不可或缺的工具。本文将深入探讨TBS1102C毫米波雷达研发中的关键测试方案,助力工程师高效完成信号验证、性能评估与故障诊断。   一
    的头像 发表于 07-02 14:22 752次阅读
    泰克示波器TBS1102C<b class='flag-5'>在</b><b class='flag-5'>毫米波</b>雷达研发中的关键<b class='flag-5'>测试</b>方案

    自动驾驶毫米波雷达之间会相互干扰吗?

    等优点,被广泛应用于自动驾驶和高级辅助驾驶系统。近年来,量产车型毫米波雷达的装配率不断提高,小鹏P7就配备了5颗毫米波雷达,理想ONE配备了4颗毫米波雷达,而华为支持的极狐阿尔法S高
    的头像 发表于 06-16 09:01 2098次阅读
    自动驾驶<b class='flag-5'>毫米波</b>雷达之间会相互干扰吗?

    Leadway测试级铠装精密稳相毫米波线缆(110GHz)

    运行。l 科研与实验室测试:适用于矢量网络分析仪(VNA)、频谱分析仪等精密仪器的信号传输,保障测试结果的准确性。l 工业自动化与智能制造:支持毫米波传感器、工业雷达等设备的
    发表于 05-19 09:53