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.

CCS/AWR1843: 1843

Part Number: AWR1843
Other Parts Discussed in Thread: SYSBIOS, UNIFLASH,

Tool/software: Code Composer Studio

Hi!

   Is there a Programmer's Guide/Reference about the API's contained within mmWave SDK?

Thanks in advance

  • Hi,

    All the source code in the application and libraries are well documented. Even mmw demo provides the doxygen document 

    C:\ti\mmwave_sdk_03_02_00_04\packages\ti\demo\xwr18xx\mmw\docs\doxygen\html\index.html

    SDK provides the user guide document (mmwave_sdk_user_guide.pdf) under docs directory which you can refer for this purpose.

    Regards,

    Jitendra

  • Hi,

     Ok, is there a guide (that can help understand how demo works) how to write a mmWave sensor app from scratch?

    Thanks

  • Hi,

    Here are the steps to create a CCS project for mmwave sensor application

    1)      Open CCS GUI and make sure that latest version of ‘mmwave radar device support’ is installed in CCS.

    • How to check if it is installed: Menu Help->About Code Composer Studio-> Installation Details: search ‘mmwave’.
    • How to install: Menu->Help->Install New Software: select ‘All Available Site’ & search and select ‘mmWave Radar Device Support’. Install the selected tool.

    2)      Select File-> New-> CCS Project

    a)      In the pop-up window, select Target as ‘mmWave Sensors’ and required device type

    b)      Tool-Chain: follow snapshot

    c)       Project templages->SYS/BIOS->TI Target Examples->Typical

    d)      If selected device has DSP on it, then follow similar setting for C67xx project.

    e)      Click next and provide Target & Platform Info for Cortex-R and C67XX cores

    f)       Cortex-R- Target-> ti.targets.arm.elf.R4F; Platform-> ti.platforms.cortexR:AWR16XX:false:200

    g)      C67XX- Target-> ti.targets.elf.C674; Platform-> ti.platforms.c6x:AWR16XX:false:600

    h)      Click Finish to create MSS and DSS CCS project.

    3)      These steps will create a basic sysbios application for mmwave sensor where default linker-command and sysbios-config (app.cfg) is generated from CCS. User needs to amend these files as per their application need.

    4)      Add search path, MACRO definition and libraries here- Project Properties->Build->ARM/C6000 compiler->Include Options; ProjectProperties->Build->ARM/C6000 Compiler->Predfined Symbols; Project Properties->Build->ARM/C6000 Linker->File Search Path. Refer any TI-Rex lab CCS project for reference.

    5)      This is code snippet to add basic bootup to your application (common across all applications).

    MSS (main.c)

    DSS (main.c)

    #include <ti/drivers/soc/soc.h>

    #include <ti/drivers/esm/esm.h>

    #include <ti/common/sys_common.h>

    int main(void)

    {  

        int32_t         errCode;

        SOC_Handle     socHandle;

        SOC_Cfg         socCfg;

     

        /* Initialize the ESM: Don’t clear errors as TI RTOS does it */

        ESM_init(0U);

     

        /* Initialize the SOC confiugration: */

        memset ((void *)&socCfg, 0, sizeof(SOC_Cfg));

     

        /* Populate the SOC configuration: */

        socCfg.clockCfg = SOC_SysClock_INIT;

        socCfg.mpuCfg = SOC_MPUCfg_CONFIG;

    /* require to unhalt the DSS if this core is available in selected device */

        socCfg.dssCfg = SOC_DSSCfg_UNHALT;

     

        /* Initialize the SOC Module: This is done as soon as the application is started

           * to ensure that the MPU is correctly configured. */

        socHandle = SOC_init (&socCfg, &errCode);

    #include <ti/drivers/soc/soc.h>

    #include <ti/drivers/esm/esm.h>

    #include <ti/common/sys_common.h>

    int main (void)

    {

        int32_t         errCode;

        SOC_Handle     socHandle;

        SOC_Cfg         socCfg;

     

        /* Initialize and populate the demo MCB */

        memset ((void*)&gMmwDssMCB, 0, sizeof(MmwDemo_DSS_MCB));

     

        /* Initialize the SOC confiugration: */

        memset ((void *)&socCfg, 0, sizeof(SOC_Cfg));

     

        /* Populate the SOC configuration: */

        socCfg.clockCfg = SOC_SysClock_BYPASS_INIT;

     

        /* Initialize the SOC Module: This is done as soon as the application is started

           * to ensure that the MPU is correctly configured. */

        socHandle = SOC_init (&socCfg, &errCode);

     

    6)      Now you can refer even mmw demo or any TI-Rex lab application to embedded multiple peripheral and signal processing features in your application.

    Regards,

    Jitendra

  • Tank you VM!

    I intrested about programming debug too

    At demo board JTAG connected by TM4C1294NCPDTT3  to Any Flash

    In custom board whitch way to connect to Anyflash? Do Ti sell JTAG programmers are I have place chip like FTDI ( jtag to usb)?

    BR

  • When building C647 part (DSS):

    undefined first referenced
    symbol in file
    --------- ----------------
    ti_sysbios_family_c64p_Cache_l1dSize C:\Users\Domovoy\workspace_v9\Radar-C\src\sysbios\sysbios.ae674<BIOS.obj>
    ti_sysbios_family_c64p_Cache_l1pSize C:\Users\Domovoy\workspace_v9\Radar-C\src\sysbios\sysbios.ae674<BIOS.obj>
    ti_sysbios_family_c64p_Cache_l2Size C:\Users\Domovoy\workspace_v9\Radar-C\src\sysbios\sysbios.ae674<BIOS.obj>

    error #10234-D: unresolved symbols remain

    When building R4F part:

    error #10264: DEFAULT memory range overlaps existing memory range RAM
    error #10010: errors encountered during linking; "Radar-R.out" not built

    It's just a main.c files from template, even without includes from mmWave SDK

    Another one fault: mmWave SDK doesn't provide actual path to the include files, so all mmWave SDK includes fails finding include file

    What should I do to fix these errors?

  • Hi Dim,

    I have uploaded the CCS project which I have created from above-mentioned steps. Please refer this.

    5481.AWR1843_sysBios_CCSv9_Project.zip

    With mmWave Sensor you can program connected flash over UART only using UniFlash tool.

    However here you can find the supported flash with mmwave sensor device. 

    And for JTAG connection you can use any other chip which supports JTAG to USB emulation and connect over JTAG pins to mmWave Sensor.

    Regards,

    Jitendra

  • Thank you for project example!

    I interested about HIL - which way to use it?  Is it working with MATLAB ? which PC port use ?

    BR

  • Hello Dim,

    Could you elaborate what you mean by HIL ? Do you want to feed the ADC data back to the AWR device bypassing the front end?

    regards,

    Vivek

  • Hello Dim,

    Any update on this?

    Regards,

    Vivek

  • hallo!

    I try compile project, but have error ( pictured)

    arm v18.12 compiler installed

  • Hi Dim,

    Even after this error CCS should able to import the project. Now you need to change the compiler version to existing installed one (CCS project properties->General->Project-> Tool Chain-> Compiler version).

    Or open .ccsproject from Test_MSS directory in the notepad and update the compiler version manually.

    <codegenToolVersion value="18.12.2.LTS"/>

    Regards,

    Jitendra

  • When compiling a project for the ARM-core of the AWR1843 MCU - the project does not find a library. Specifically not found on "libc.a". Toolchain: ARMv18.12. What might be the problem ?

  • Hi Dim,

    libc.a is available in compiler's lib directory, refer below snapshot. Make sure that required compiler is installed in the CCS installation and CCS is able to find that path in the application CCS project properties (as snapshot).

    Regards,

    Jitendra