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/CC3220SF-LAUNCHXL: Getting linking error while working with CC3220SF-LAUNCHXL in CCS.

Part Number: CC3220SF-LAUNCHXL
Other Parts Discussed in Thread: CC3220SF

Tool/software: Code Composer Studio

Hello,

 

I am new to CCS IDE & using CC3220SF-LAUNCHXL and doing some basic experiments like GPIO, ADC,DAC, PWM, LCD,RTC and UART.

Every experiment I have successfully completed.

But while doing UART experiment I am getting the following error

 

  1. “Description Resource Path Location Type #10010 errors encountered during linking; "demo5_UART.out" not built demo5_UART C/C++ Problem”
  2. “Description Resource Path Location Type
  3. href="processors.wiki.ti.com/.../10234"> unresolved symbols remain demo5_UART C/C++ Problem”
  4. “Description Resource Path Location Type unresolved symbol main, first referenced in C:\ti\ccsv7\tools\compiler\ti-cgt-arm_16.9.1.LTS\lib\rtsv7M4_T_le_eabi.lib<args_main.obj> demo5_UART C/C++ Problem”

 

The error is not in the program but some other error while linking.

I am using CCS V_7.1.0 & SDK version simplelink_cc32xx_sdk_3_10_00_04

I have followed the following procedure for doing the experiment. I have also attached screen shots in attachments

//*****************************************************************************
// pin_mux_config.c
//
// configure the device pins for different signals
//
// Copyright (c) 2016, Texas Instruments Incorporated - http://www.ti.com/ 
// All rights reserved.
// 
//  Redistribution and use in source and binary forms, with or without 
//  modification, are permitted provided that the following conditions 
//  are met:
//
//    Redistributions of source code must retain the above copyright 
//    notice, this list of conditions and the following disclaimer.
//
//    Redistributions in binary form must reproduce the above copyright
//    notice, this list of conditions and the following disclaimer in the 
//    documentation and/or other materials provided with the   
//    distribution.
//
//    Neither the name of Texas Instruments Incorporated nor the names of
//    its contributors may be used to endorse or promote products derived
//    from this software without specific prior written permission.
//
//  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 
//  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 
//  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
//  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 
//  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 
//  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 
//  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
//  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
//  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 
//  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 
//  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
//
//*****************************************************************************

// This file was automatically generated on 7/10/2019 at 4:50:13 PM
// by TI PinMux version 4.0.1532 
//
//*****************************************************************************

#include "pin_mux_config.h" 
#include "hw_types.h"
#include "hw_memmap.h"
#include "hw_gpio.h"
#include "pin.h"
#include "gpio.h"
#include "prcm.h"

//*****************************************************************************
void PinMuxConfig(void)
{


    //
    // Set unused pins to PIN_MODE_0 with the exception of JTAG pins 16,17,19,20
    //
    PinModeSet(PIN_01, PIN_MODE_0);
    PinModeSet(PIN_02, PIN_MODE_0);
    PinModeSet(PIN_05, PIN_MODE_0);
    PinModeSet(PIN_06, PIN_MODE_0);
    PinModeSet(PIN_07, PIN_MODE_0);
    PinModeSet(PIN_08, PIN_MODE_0);
    PinModeSet(PIN_15, PIN_MODE_0);
    PinModeSet(PIN_18, PIN_MODE_0);
    PinModeSet(PIN_21, PIN_MODE_0);
    PinModeSet(PIN_45, PIN_MODE_0);
    PinModeSet(PIN_53, PIN_MODE_0);
    PinModeSet(PIN_58, PIN_MODE_0);
    PinModeSet(PIN_59, PIN_MODE_0);
    PinModeSet(PIN_60, PIN_MODE_0);
    PinModeSet(PIN_63, PIN_MODE_0);
    PinModeSet(PIN_64, PIN_MODE_0);
    
    //
    // Enable Peripheral Clocks 
    //
    PRCMPeripheralClkEnable(PRCM_UARTA1, PRCM_RUN_MODE_CLK);
    PRCMPeripheralClkEnable(PRCM_UARTA0, PRCM_RUN_MODE_CLK);

    //
    // Configure PIN_62 for UART1 UART1_RTS
    //
    PinTypeUART(PIN_62, PIN_MODE_3);

    //
    // Configure PIN_61 for UART1 UART1_CTS
    //
    PinTypeUART(PIN_61, PIN_MODE_3);

    //
    // Configure PIN_55 for UART1 UART1_TX
    //
    PinTypeUART(PIN_55, PIN_MODE_6);

    //
    // Configure PIN_57 for UART1 UART1_RX
    //
    PinTypeUART(PIN_57, PIN_MODE_6);

    //
    // Configure PIN_52 for UART0 UART0_RTS
    //
    PinTypeUART(PIN_52, PIN_MODE_6);

    //
    // Configure PIN_50 for UART0 UART0_CTS
    //
    PinTypeUART(PIN_50, PIN_MODE_12);

    //
    // Configure PIN_03 for UART0 UART0_TX
    //
    PinTypeUART(PIN_03, PIN_MODE_7);

    //
    // Configure PIN_04 for UART0 UART0_RX
    //
    PinTypeUART(PIN_04, PIN_MODE_7);
}
pin_mux_config.h.

  1. Create CCS project using following configuration 

I have selected the board as CC3220SF, debugger as TI XDS110 USB Debug Probe.

Then I have added necessary libraries as

  1. The following in the include options under ARM compiler
    1. "C:\ti\simplelink_cc32xx_sdk_3_10_00_04\kernel\nortos"
    2. "C:\ti\simplelink_cc32xx_sdk_3_10_00_04\kernel\nortos\posix"
    3. "C:\ti\simplelink_cc32xx_sdk_3_10_00_04\source"
    4. "C:\ti\simplelink_cc32xx_sdk_3_10_00_04\source\ti\devices\cc32xx\driverlib"
    5. "C:\ti\simplelink_cc32xx_sdk_3_10_00_04\source\ti\devices\cc32xx\inc"
    6. "C:\ti\simplelink_cc32xx_sdk_3_10_00_04\source\ti\drivers\uart"

 

  1. The following in the File search path under ARM Linker
  2. "C:\ti\simplelink_cc32xx_sdk_3_10_00_04\source\ti\devices\cc32xx\driverlib\ccs\Release\driverlib.a"

The Program I am using is as follows

 

#include "rom.h"

#include "rom_map.h"

#include "hw_memmap.h"

#include "hw_common_reg.h"

#include "hw_types.h"

#include "hw_ints.h"

#include "uart.h"

#include "interrupt.h"

#include "utils.h"

#include "prcm.h"

unsigned int i;

#include "pin_mux_config.h"

unsigned char msg[]={"Embedded LAB - UART Demo"};

voidmain()

{

PinMuxConfig();

UARTConfigSetExpClk(UARTA1_BASE, PRCMPeripheralClockGet(PRCM_UARTA1), 115200,

(UART_CONFIG_WLEN_8 | UART_CONFIG_STOP_ONE | UART_CONFIG_PAR_NONE));

while(1)

{

for(i=0; msg[i]!='\0'; i++)

UARTCharPut(UARTA1_BASE, msg[i]);

UARTCharPut(UARTA1_BASE,0x0D);

UARTCharPut(UARTA1_BASE,0x0A);

UtilsDelay(8000000);

}

}

 

I have also generated pin_mux_config.h & pin_mux_config.c using PINMUX tool for which screen shot is as follows

And then downloaded the pin_mux_config.h & pin_mux_config.c and added them in program.

After building my project I am getting no errors in the program but only errors for linking only which I have mentioned above in the document. The screen shot of the error are in attachments.

 I have also attached pin_mux_config.h & pin_mux_config.c in the attachments.

 

Note:- The above mentioned procedure I have followed for other experiments and they work just fine. I have tried other versions of the compilers and the other sdk version simplelink_cc32xx_sdk_3_20_00_06 but I am getting the same error. I have also added a word file mentioning the above data & error.UART_error.docx

 Kindly guide me.