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.

[参考译文] MMWAVE-STUDIO:无论脚本是否成功执行、从 Matlab 控制 mmWave Studio 都会返回相同的错误代码

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

https://e2e.ti.com/support/sensors-group/sensors/f/sensors-forum/963575/mmwave-studio-controlling-mmwave-studio-from-matlab-returns-the-same-error-code-regardless-of-the-script-executing-successfully-or-not

器件型号:MMWAVE-STUDIO

大家好。  

我使用 MATLAB 通过 mmWave Studio 用户指南中提供的示例代码来控制 mmWave Studio。 无论命令是否成功、它都会返回"30000"。 在此片段中、

%example Lua Command
strFilename ='C:\\ti\\mmwave_studio 03_00_14\\mmWaveStudio\\Scripts\\Cascade \\Cascade _Configuration_MIMO.lua ';
Lua_String = sprintf ('ofile ("%s")'、strClientStatus=RttNetClient.LuttAPI
; 

无论是否在 mmWave Studio 中成功执行 Lua 脚本、勘误状态都将始终包含30000。 在自动化系统中使用此逻辑将不起作用、因为系统不知道 LUA 脚本是否失败。

是否有 API 可以告诉 Matlab 在 mmWave Studio 中执行脚本是否失败?

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

    Asher、您好!

    您这次是否在连接电路板的情况下尝试过该实验? 您是否也可以发送输出日志的片段?

    此致、

    石田  

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

    Ishita、您好!  

    是的、我在连接电路板的情况下进行了实验。 我将在下面附加3个文件。  成功日志是脚本成功的时候。 故障日志是指我故意混淆了帧参数。 脚本故障是指我为器件 FW 包提供了错误的路径。  

    在所有这些情况下、勘误状态的值均为30000

    e2e.ti.com/.../Failure-log.txt

    e2e.ti.com/.../Script-Failure-log.txt

    e2e.ti.com/.../Success-log.txt

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

    Asher、您好!

    我试图了解您的失败和成功日志脚本、但这两个脚本对我来说似乎都是正确的。 如果"错误"、则器件能够在两种情况下成功配置线性调频脉冲和帧。

    也许我仍然无法理解您在哪里得到此错误。   

    此致、

    石田

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

    您好 Ishita、在成功日志中、器件是根据级联_configure_MIMO.Lua 进行配置的

    在故障日志中、我将帧周期(帧间间隔)更改为非常低的数字(第86行)、 当我运行它时、我在 mmWave Studio 上看到一个弹出窗口、指出数字太低、所需的帧周期为 x、并且您已将周期设置为 y。此外、Matlab 仅在我在弹出窗口上按 OK 后恢复。

    在脚本失败日志中、我输入了错误的器件固件路径(第32行)、以便器件无法在指定位置找到任何内容。  

    在这3种情况下、我在 Matlab 上收到的返回代码为30000。 我要附加用于执行本实验的 LUA 脚本(它随 mmWave Studio 安装一起提供)

    我无法在此处发布 lua 文件、因此我将以代码格式粘贴该文件。  

    -[[[
    遵循
    
    A 配置的序列
    1.连接到 TDA
    1.从 SOP 配置主器件、直至通道配置
    2.从 SOP 依次配置从器件(I)、直到 SPI 连接。 I = 1、2、3
    3.从 F/W 下载到通道配置一起配置从器件
    4.从 LDO 旁路到帧配置将所有器件一起配置
    
    注:
    在运行之前、相应地更新脚本中的以下内容
    第32行上的 metaImage F/W 路径
    2. TDA 主机板 IP 地址在第39行
    --]]
    
    -------------------------------------- 用户常量-------------------------------------------------------
    
    DEV_LIST ={1、2、4、8} --设备映射
    RadarDevice ={1、1、1、1} --{dev1、dev2、dev3、dev4}、1:启用、 0:禁用
    级联_mode_list ={1、2、2} -- 0:单芯片,1:主,2:从
    
    -- F/W 下载路径
    
    --如果要弹出一个对话框以选择固件映像文件,请取消注释下一行
    --否则,请对以下固件计量路径进行硬编码
    --默认情况下,固件文件名为:xwr22xx_metaImage.bin
    
    -- metaImagePath = RSTD.BrowseForFile (RSTD.GetSettingPath(),“bin”,“Browse to .bin file”)
    --对于2243 ES1.1器件
    -- metaImagePath ="C:\\ti\\mmwave_DFP_02_02_01\\firmware\\xwr22xx_metaImage.bin"
    --适用于2243 ES1.0器件
    metaImagePath ="C:\\ti\\mmwave_DFP_02_01_05_03\\firmware\\xwr22xx_metaImage.bin"
    
    -- TDA2主板的 IP 地址
    --根据设置
    
    TDA_IPAddress 进行相应更改 ="192.168.33.180"
    
    --待 TDA 启用的所有设备的设备映射
    ---- 1 -主设备;2- slave1;4- slave2;8- slave3
    
    deviceMapOverall = RadarDevice[1]+(RadarDevice[2]*RadarSlav2)+(RadarDevice[3]*4)+(RadarMapDevice[4]+(4]*Disable)*Device[4*4]+(Radardevice=*4*4]+(RadarDevice*4]+)*4*4*RadarDevice[4]+(RadarDevice*4*4]+)*4*4*4*4*Disable (RadarDevice[4]+)*4*
    
    
    
    这在启动
    
    TEST_SOURC_ENABLE = 0期间很有用 -- 0:禁用,1:启用
    
    ------------------------------------------ 传感器配置-------------------------------------------------------
    -[[[传感器
    配置包含3个部分:
    1)配置文件配置(所有4个 AWR 器件均采用)
    2)线性调频脉冲配置(每个 AWR 器件都具有唯一性-主要是因为要使用的 TXS
    
    1)帧配置(除主器件的触发模式外、所有4个 AWR 器件都相同)
    根据需要更改以下值。 --]]
    
    --配置文件配置
    本地 profile_indx = 0
    本地 start_freq = 77 -- GHz
    局部斜率 = 15 -- MHz/us
    本地 idle_time = 4 - us
    local ADC_START_TIME = 5 -我们
    使用本地 ADC_SAples = 256 --每个线性调频脉冲的样本数
    LOCAL SAMPLE_FREQ = 15000 -- ksps
    本地 RAMP_END_TIME = 23 --我们
    本地 Rx_gain = 48 -- dB
    本地 tx0OutPowerBackoffCode = 0
    本地 tx1OutPowerBackoffCode = 0
    本地 tx2OutPowerBackoffCode = 0
    本地 tx0PhaseShifter = 0
    本地 tx1PhaseShifter = 0
    本地 tx2PhaseShifter = 0
    本地 txStartTimeUSec = 0
    本地 hpfCornerFreq1 = 0 0:175KHz、1:235KHz、2:350kHz、3:700kHz
    本地 hpfCornerFreq2 = 0 -- 0:350kHz,1:700kHz,2:1.4MHz,3:2.8MHz
    
    --帧配置
    LOCAL START_CHIRP_TX = 0
    本地 END_CHIRP_TX = 11
    个本地 nchirp_loops = 128 --每帧的线性调频脉冲数
    ,本机 nframe_master = 50 --主
    本地 nframes_slave 的帧数 = 50 --从机
    本地 Inter_Frame_Interval 的帧数 = 100 - ms
    本地触发延迟 = 0 我们
    的本地 trig_list ={1、2、2}- 1:软件触发器、2:硬件触发
    
    器-[[[
    用于配置特定于器件的线性调频脉冲的函数
    12个线性调频脉冲配置如下:针对每个 AWR 器件单独配置|---
    
    |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |
    | |开发1 |开发1 |开发1 |开发2 |开发2 |开发2 |开发3 |开发3 |开发4 |开发4 |
    开发4 |线性调频脉冲| TX0 | TX1 | TX2 | TX 0 | TX1 | TX2 | TX0 | TX1 | TX2 | TX0 | TX1 | TX2 |
    |--- |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |
    | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
    | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
    | 2 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
    | 3 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
    | 4 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
    | 5 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
    | 6 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
    | 7 | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
    | 8 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
    | 9 | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
    | 10 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
    | 11 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
    |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |---- |
    -]]
    -注:此 API 的语法为
    :- ar1.ChirpConfig_mult (RadarDeviceId、chirpStartIdx、chirpEndIdx、profileID、startFreqVar、
    -- freqSlopeVar、idleTimeVar、adcStartTimeVar、tx0Enable、tx1Enable、 Tx2Enable)
    
    函数 Configure_chirps (I)
    
    如果(i = 1)、则
    
    线性调频脉冲0
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、0、0、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲0配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲0配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲1
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、1、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲1配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲1配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲2.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、2、2、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲2配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲2配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲3.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、3、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲3配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲3配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲4.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、4、4、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲4配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲4配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲5
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、5、5、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲5配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲5配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲6.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、6、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲6配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲6配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲7
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、7、7、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲7配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲7配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲8.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、8、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲8配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲8配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲9.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、9、9、0、0、0、 0、0、0、0、0、 1))那么
    WriteToLog ("设备"..I.") :线性调频脉冲9配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲9配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲10
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、10、0、0、0、 0、0、0、0、1、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲10配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲10配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲11.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、11、11、0、0、0、 0、0、0、1、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲11配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲11配置失败\n","红色")
    返回-4
    结束
    
    然后、Elseif (I ==2)
    
    线性调频脉冲0
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、0、0、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲0配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲0配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲1
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、1、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲1配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲1配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲2.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、2、2、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲2配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲2配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲3.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、3、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲3配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲3配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲4.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、4、4、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲4配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲4配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲5
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、5、5、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲5配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲5配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲6.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、6、0、0、0、 0、0、0、0、0、 1))那么
    WriteToLog ("设备"..I.") :线性调频脉冲6配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲6配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲7
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、7、7、0、0、0、 0、0、0、0、1、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲7配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲7配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲8.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、8、0、0、0、 0、0、0、1、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲8配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲8配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲9.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、9、9、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲9配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲9配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲10
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、10、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲10配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲10配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲11.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、11、11、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲11配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲11配置失败\n","红色")
    返回-4
    结束
    
    那么、Elseif (i ==3)
    
    线性调频脉冲0
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、0、0、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲0配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲0配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲1
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、1、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲1配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲1配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲2.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、2、2、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲2配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲2配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲3.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、3、0、0、0、 0、0、0、0、0、 1))那么
    WriteToLog ("设备"..I.") :线性调频脉冲3配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲3配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲4.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、4、4、0、0、0、 0、0、0、0、1、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲4配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲4配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲5
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、5、5、0、0、0、 0、0、0、1、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲5配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲5配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲6.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、6、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲6配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲6配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲7
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、7、7、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲7配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲7配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲8.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、8、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲8配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲8配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲9.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、9、9、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲9配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲9配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲10
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、10、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲10配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲10配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲11.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、11、11、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲11配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲11配置失败\n","红色")
    返回-4
    结束
    
    然后、Elseif (I ==4)
    
    线性调频脉冲0
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、0、0、0、0、0、 0、0、0、0、0、 1))那么
    WriteToLog ("设备"..I.") :线性调频脉冲0配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲0配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲1
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、1、0、0、0、 0、0、0、0、1、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲1配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲1配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲2.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、2、2、0、0、0、 0、0、0、1、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲2配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲2配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲3.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、3、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲3配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲3配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲4.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、4、4、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲4配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲4配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲5
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、5、5、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲5配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲5配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲6.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、6、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲6配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲6配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲7
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、7、7、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲7配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲7配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲8.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、8、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲8配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲8配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲9.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、9、9、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲9配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲9配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲10
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、10、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲10配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲10配置失败\n","红色")
    返回-4
    结束
    
    线性调频脉冲11.
    如果(0 = AR1.ChirpConfig_mult (DEV_LIST[i]、11、11、0、0、0、 0、0、0、0、0、 0))
    WriteToLog ("设备"..I.") :线性调频脉冲11配置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :线性调频脉冲11配置失败\n","红色")
    返回-4
    结束
    
    端
    
    部
    
    --- API 配置-------------------------------------------------------
    
    -- 1. 连接到 TDA。 2.选择级联/单芯片。 3.选择2芯片/4芯片
    
    WriteToLog ("为级联设置 Studio 已启动..\n"、"蓝色"
    
    ) if (0 = AR1.ConnectTDA (TDA_IPAddress、5001、deviceMapOverall))(然后)
    WriteToLog ("ConnectTDA 成功\n"、"绿色")
    否则
    WriteToLog ("ConnectTDA 失败\n"、"红色")
    如果
    
    
    (0 = ar1.selectCascadeMode(1))则返回-1结束
    WriteToLog ("selectCascadeMode Successful (选择级联模式成功)\n"、"绿色")
    否则
    WriteToLog ("selectCascadeMode Failed\n"、"red")
    返回-1
    结束
    
    WriteToLog ("为层叠设置 Studio 已结束。。\n\n "、"蓝色")
    
    --Master Initialization
    
    -- SOP 模式配置
    ,如果(0 == AR1.SOPControl_mult (1、4))则
    WriteToLog ("主控:SOP 重置成功\n"、"绿色")
    否则
    WriteToLog ("主控:SOP 重置失败\n"、"红色")
    返回-1
    结束
    
    -- SPI 连接
    (如果(0 = AR1.PowerOn_mult (1、0、1000、0、0))))
    WriteToLog ("主设备:SPI 连接成功\n"、"绿色环保")
    否则
    WriteToLog ("主设备:SPI 连接失败\n"、"红色")
    返回-1
    结束
    
    --固件下载。 (SOP 4 - MetaImage)
    如果(0 = AR1.DownloadBssFwOvSPI_mult (1、metaImagePath))则
    WriteToLog ("主设备:固件下载成功\n"、"绿色环保")
    否则
    WriteToLog ("主控:固件下载失败\n"、"红色")
    返回-1
    结束
    
    --如果
    (0 = AR1.RfEnable_mult (1)))则为射频加电
    WriteToLog ("主设备:RF 加电成功\n"、"绿色环保")
    否则
    WriteToLog ("主设备:射频上电失败\n"、"红色")
    返回-1
    结束
    
    --通道和 ADC 配置
    ,如果(0 =AR1.ChannAdcConfig_mult (1、1、1、1、1、1、1、1、2、1、0)))则
    WriteToLog ("主设备:通道和 ADC 配置成功\n"、"绿色")
    否则
    WriteToLog ("主设备:通道和 ADC 配置失败\n"、"红色")
    返回-2
    端
    
    -- I=2的从器件初始化
    
    、table.getn (RadarDevice)执行
    本地状态= 0
    如果((RadarDevice[1]=1)和(RadarDevice[I]=1))、则为
    
    -- SOP 模式配置
    如果(0 = AR1.SOPControl_mult (DEV_LIST[i]、4))、则
    WriteToLog ("设备"..I.") :SOP 重置成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :SOP 重置失败\n","红色")
    返回-1
    结束
    
    -- SPI 连接
    如果(0 = AR1.AddDevice (DEV_LIST[i]))则
    WriteToLog ("设备"..I.") :SPI 连接成功\n","绿色")
    其他
    WriteToLog ("设备"..I.") :SPI 连接失败\n","RED")
    返回-1
    结束
    
    结束结束
    
    
    --固件下载。 (SOP 4 - MetaImage)
    如果(0 = AR1.DownloadBssFwOvSPI_mult (deviceMapSlaves、metaImagePath))则
    WriteToLog ("从属设备:固件下载成功\n"、"绿色环保")
    否则
    WriteToLog ("从属设备:固件下载失败\n"、"红色")
    返回-1
    结束
    
    --射频上电
    IF (0 = AR1.RfEnable_mult (deviceMapSlaves))
    WriteToLog ("从属设备:RF 上电成功\n"、"绿色环保")
    否则
    WriteToLog ("从属设备:射频上电失败\n"、"红色")
    返回-1
    结束
    
    --通道和 ADC 配置
    ,如果(0 == AR1.ChannAdcConfig_mult (deviceMapSlaves,1,1,1,1,1,1,1,2,1,0,2))则
    WriteToLog ("从属设备:通道和 ADC 配置成功\n"、"绿色")
    否则
    WriteToLog ("从属设备:通道和 ADC 配置失败\n"、"红色")
    返回-2
    端
    
    所有器件一起工作
    
    这取决于所使用的电路板类型。
    --如果
    (0 = AR1.RfLdoBypassConfig_mult (deviceMapOverall、3)),则为 LDO 配置
    WriteToLog ("LDO 旁路成功\n"、"绿色环保")
    否则
    WriteToLog ("LDO 旁路失败\n"、"红色")
    返回-2
    结束
    
    --低功耗模式配置
    ,如果(0 = AR1.LPModConfig_mult (deviceMapOverall、0、0)))则
    WriteToLog ("低功耗模式配置成功\n"、"绿色环保")
    否则
    WriteToLog ("低功耗模式配置失败\n"、"红色")
    返回-2
    结束
    
    --杂项控制配置
    ,如果(0 == AR1.SetMiscConfig_mult (deviceMapOverall,1,0,0,0)))则
    WriteToLog ("其他控制配置成功\n"、"绿色")
    否则
    WriteToLog ("其他控制配置失败\n"、"红色")
    return -2
    end
    
    --编辑此 API 以启用/禁用引导时间校准。 默认情况下启用。
    --射频 Init 校准配置
    if (0 == AR1.RfInitCalibConfig_mult (deviceMapOverall、1、1、1、1、1、1、 1、1、1、65537)))
    WriteToLog ("RF Init Calibration Successful (RF Init 校准成功)"、"绿色")
    否则
    WriteToLog ("射频 Init 校准失败\n"、"红色")
    返回-2
    端
    
    --如果
    (0 = AR1.RfInit_mult (deviceMapOverall))则为射频初始化
    WriteToLog ("射频初始化成功\n"、"绿色")
    否则
    WriteToLog ("射频初始化失败\n"、"红色")
    返回-2
    结束
    
    ------------------------------------------------------- 数据配置---
    
    --数据路径配置
    ,如果(0 =AR1.DataPathConfig_mult (deviceMapOverall,0,1,0)))则
    WriteToLog ("数据路径配置成功\n"、"绿色")
    否则
    WriteToLog ("数据路径配置失败\n"、"红色")
    返回-3
    end
    
    --时钟配置
    (如果(0 == AR1.LvdsClkConfig_mult (deviceMapOverall、1、1)))则
    WriteToLog ("时钟配置成功\n"、"绿色")
    否则
    WriteToLog ("时钟配置失败\n"、"红色")
    返回-3
    结束
    
    -- CSI2配置
    if (0 == AR1.CSI2LaneConfig_mult (deviceMapOverall、1、0、2、0、0、 4、0、5、0、3、 0、0))
    WriteToLog ("CSI2配置成功\n"、"绿色")
    否则
    WriteToLog ("CSI2配置失败\n"、"红色")
    返回-3
    端
    
    --- 测试源配置-------------------------------------------------------
    这对于初始启动很有用。
    --每个设备都配置了不同位置的测试对象。
    
    如果(test_source_enable = 1)则
    
    if (RadarDevice[1]= 1)则
    -- 5米处物体,x = 4m,y = 3m
    如果(0 = AR1.SetTestSource_mult (1、4、3、0、0、0、 0、0、-327、0、-327、 327、327、-2.5、327、 327、0、
    0、0、0、-327、0、 -327、327、327、327、-95、 0、0、0.5、0、1、 0、1.5、0、0、0、 0、0、0、0、0))
    WriteToLog ("设备1:测试源配置成功\n"、"绿色环保")
    其他
    WriteToLog ("设备1:测试源配置失败\n"、"红色")
    返回-3
    结束
    结束
    
    if (RadarDevice[2]= 1)则
    -- 5米处物体,x = 3m,y = 4m
    如果(0 = AR1.SetTestSource_mult (2、3、4、0、0、0、 0、0、-327、0、-327、 327、327、-2.5、327、 327、0、
    0、0、0、-327、0、 -327、327、327、327、-95、 0、0、0.5、0、1、 0、1.5、0、0、0、 0、0、0、0、0))
    WriteToLog ("设备2:测试源配置成功\n"、"绿色环保")
    其他
    WriteToLog ("设备2:测试源配置失败\n"、"红色")
    返回-3
    结束
    结束
    
    if (RadarDevice[3]=1)
    -- 13米处的物体,x = 12m,y = 5m
    如果(0 = AR1.SetTestSource_mult (4、12、5、0、0、0、 0、0、-327、0、-327、 327、327、-2.5、327、 327、0、
    0、0、0、-327、0、 -327、327、327、327、-95、 0、0、0.5、0、1、 0、1.5、0、0、0、 0、0、0、0、0))
    WriteToLog ("设备3:测试源配置成功\n"、"绿色环保")
    其他
    WriteToLog ("设备3:测试源配置失败\n"、"红色")
    返回-3
    结束
    结束
    
    if (RadarDevice[4]= 1)则
    -- 13米处的物体,x = 5米,y = 12米
    如果(0 = AR1.SetTestSource_mult (8、5、12、0、0、0、 0、0、-327、0、-327、 327、327、-2.5、327、 327、0、
    0、0、0、-327、0、 -327、327、327、327、-95、 0、0、0.5、0、1、 0、1.5、0、0、0、 0、0、0、0、0))
    WriteToLog ("设备4:测试源配置成功\n"、"绿色环保")
    其他
    WriteToLog ("设备4:测试源配置失败\n"、"红色")
    返回-3
    结束
    结束
    
    结束
    
    ------------------ 传感器配置---
    
    --配置文件配置
    if (0 = AR1.ProfileConfig_mult (deviceMapOverall、0、start_freq、idle_time、adc_start_time、 RAMP_END_TIME、
    0、0、0、0、0、 0、斜率、0、ADC_SAMPLE、SAMPLE_FREQ、 0、0、RX_GAIN)))
    WriteToLog ("配置文件配置成功\n"、"绿色")
    否则
    WriteToLog ("配置文件配置失败\n"、"红色")
    返回-4
    结束
    
    --
    针对 i=1、table.getn (RadarDevice) DO 的线性调频脉冲配置
    如果((RadarDevice[1]=1)和(RadarDevice[I]=1))、则为
    CONFIG_CHIRPS (I)
    结束
    结束
    
    ----启用/禁用测试源
    如果(test_source_enable = 1)则
    AR1.EnableTestSource_mult (deviceMapOverall、1)
    WriteToLog ("启用测试源配置成功\n"、"绿色环保")
    结束
    
    --帧配置
    --主
    IF (0 = AR1.FrameConfig_mult (1、start_chirp_TX、end_chirp_TX、nframe_master、nchirp_loops、nchirp_loops、
    Inter_Frame_Interval、0、1))
    WriteToLog ("主设备:帧配置成功\n"、"绿色")
    否则
    WriteToLog ("主站:帧配置失败\n"、"红色")
    结束
    --如果(
    0 = AR1.FrameConfig_mult (deviceMapSlaves、start_chirp_TX、end_chirp_TX、nframe_slave、nchirp_loops、nchirp、
    Inter_Frame_Interval、0、2))
    WriteToLog ("从属设备:帧配置成功\n"、"绿色")
    否则
    WriteToLog ("从属设备:帧配置失败\n"、"红色")
    结束 

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

    Asher、您好!

    我现在理解您的担忧。 我已经联系了这些脚本的作者、以获得有关这方面的一些见解。 让我尽快回复您。 但无论哪种方式、我都将向您发送通知(将尝试在星期四之前回复一个答案)。

    感谢您的耐心等待。

    此致、

    石田

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

    Ishita、非常感谢您的帮助。 我将等待您的回答  

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

    Asher、您好!

    恐怕我在这里不能提供太多帮助。 虽然我们确实使用 MATLAB 是因为它在算法开发中的简便性、但我们对此提供的支持有限。

    换句话说、我们不建议将此方法用于生产测试级别。

    此致、

    石田

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

    感谢您的回复、Ishita。 你们是否有办法推荐?  

    到目前为止、我唯一的问题是 MATLAB 不知道毫米波中的脚本执行是否失败。 该解决方案不必是生产级的。  

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

    Asher、您好!

    我们有时还遇到错误、但我们的团队没有花太多时间了解 Matlab 控制工作室的可靠性。 您必须自己逐步调试此内容。 它看起来只是一些小错误、但 我无法在这方面为您提供大量帮助。

    我们也会收到很多有关 python 可控性的查询、也许您可以在我们的论坛上查找一些类似的线程并获得一些想法。

    真诚的道歉。

    此致、

    石田

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

    我知道。 感谢您的回答。