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的文件名。

审核编辑:符乾江

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

    关注

    456

    文章

    50908

    浏览量

    424482
  • 嵌入式处理
    +关注

    关注

    0

    文章

    341

    浏览量

    10026
  • 毫米波
    +关注

    关注

    21

    文章

    1925

    浏览量

    64866
收藏 人收藏

    评论

    相关推荐

    引领毫米波技术革新,正和微芯发布新一代4uA 24G毫米波传感SoC芯片

    珠海,2024年12月5日 —— 毫米波领域不断突破创新的珠海正和微芯科技有限公司(以下简称“正和微芯”),今日宣布推出其最新研发的超低功耗24G毫米波传感SoC芯片RS2111,标
    的头像 发表于 12-09 10:45 246次阅读
    引领<b class='flag-5'>毫米波</b>技术革新,正和微芯发布新一代4uA 24G<b class='flag-5'>毫米波</b>传感SoC<b class='flag-5'>芯片</b>

    毫米波雷达信号的传输特性

    1. 引言 毫米波雷达作为一种高精度的探测技术,其信号的传输特性对于系统的性能至关重要。本文将探讨毫米波雷达信号的传输特性,包括其传播损耗、多径效应、雨衰等,并分析这些特性对雷达系统的影响。 2.
    的头像 发表于 12-04 09:12 415次阅读

    毫米波雷达的基频和调制技术 毫米波雷达机器人导航中的应用

    毫米波雷达的基频和调制技术 毫米波雷达的基频通常指的是其工作频段,一般30GHz至300GHz之间。在这个频段内,毫米波雷达能够利用短波波长的电磁
    的头像 发表于 12-03 17:50 530次阅读

    毫米波雷达工作原理 毫米波雷达应用领域

    毫米波雷达工作原理 1. 毫米波雷达的基本结构 毫米波雷达系统通常由以下几个主要部分组成: 发射器 :产生毫米波信号。 天线 :发射和接收毫米波
    的头像 发表于 12-03 17:21 502次阅读

    什么是毫米波雷达?毫米波雷达模组选型

    一、什么是毫米波雷达毫米波雷达是一种非接触型的传感器,其工作频率范围涵盖10毫米(30GHz)至1毫米(300GHz)的波段。这种技术具备精确的定位感知能力,可准确测定目标的位置、速度
    的头像 发表于 09-06 17:38 1256次阅读
    什么是<b class='flag-5'>毫米波</b>雷达?<b class='flag-5'>毫米波</b>雷达模组选型

    毫米波生产测试概述

    电子发烧友网站提供《毫米波生产测试概述.pdf》资料免费下载
    发表于 08-27 09:44 0次下载
    <b class='flag-5'>毫米波</b>生产<b class='flag-5'>测试</b>概述

    简述毫米波雷达的结构、原理和特点

    毫米波雷达是一种利用毫米波段电磁进行探测和测量的雷达系统,具有高分辨率、高灵敏度、高抗干扰能力等特点,军事、航空、航天、交通、气象等领域得到广泛应用。 一、
    的头像 发表于 08-16 10:05 2088次阅读

    毫米波雷达具有哪些特点和优势

    毫米波雷达是一种利用毫米波段电磁进行探测和测量的雷达系统。它具有许多特点和优势,使其许多领域得到广泛应用。以下是毫米波雷达的一些主要特点
    的头像 发表于 08-16 10:04 1611次阅读

    基于毫米波雷达的手势识别算法

    的时空特征来描述手势的细节。其次,我们设计了一个CNN来分别学习提取特征的变化模式并输出识别结果。我们通过商品毫米波雷达实施,对我们提出的系统进行了全面评估。此外,我们还提供了更广泛的评估,以证明
    发表于 06-05 19:09

    基于毫米波的人体跟踪和识别算法

    了RadHAR,这是一种使用稀疏和非均匀点云执行精确HAR的框架。RadHAR利用滑动时间窗口来累积毫米波雷达的点云,并生成体素化表示,作为分类器的输入。 我们收集的具有5种不同活动的人类活动数据集
    发表于 05-14 18:40

    毫米波雷达日常生活中的应用

    欢迎关注全耀传感No.61前言毫米波雷达,是指工作频段毫米波段的雷达系统。毫米波是指波长在1毫米至10
    的头像 发表于 04-17 08:11 967次阅读
    <b class='flag-5'>毫米波</b>雷达<b class='flag-5'>在</b>日常生活中的应用

    毫米波雷达智能网联汽车中的应用

    毫米波雷达(MMW)是一种新型的雷达技术,逐渐智能网联汽车中得到广泛应用。它利用毫米波频段的电磁进行探测和测距,具有高分辨率、高精度、高可靠性等优点。本文将详细介绍
    的头像 发表于 01-31 10:41 3089次阅读

    毫米波雷达的作用 毫米波雷达与超声波雷达的区别

    毫米波雷达是一种高频率雷达系统,可以毫米波频段(30-300 GHz)进行物体探测和测距,由于其具有高分辨率、较低的互相干扰和较强的透射穿透能力,被广泛应用于众多领域。而超声波雷达则是一种利用
    的头像 发表于 01-19 11:14 6786次阅读

    4D毫米波成像雷达的测试要求都有哪些嗯?

    毫米波雷达智能驾驶起到什么作用,这个纯视觉的方案的替代下,引发了我们的思考。4D毫米波成像雷达,可以说原有的
    的头像 发表于 01-18 15:54 653次阅读
    4D<b class='flag-5'>毫米波</b>成像雷达的<b class='flag-5'>测试</b>要求都有哪些嗯?

    毫米波雷达输出信号

    毫米波雷达是一种使用毫米波频段进行雷达探测的设备。它是一种高频雷达,工作频段通常在30 GHz到300 GHz之间。相比于传统的千兆赫雷达,毫米波雷达具有更高的分辨率和更好的精度,可以
    的头像 发表于 01-09 16:56 1070次阅读