Part Number: PROCESSOR-SDK-OMAPL137
Tool/software: Code Composer Studio
I have the following working environment:
1. Code Composer Studio Version: 8.3.1.00004
2. Spectrum Digital EVM board: evm-OMAPL137
I have already tested the example C:\ti\pdk_omapl137_1_0_9\packages\MyExampleProjects\GPIO_LedBlink_evmOMAPL137_c674xTestProject and it is working fine under TI-RTOS. Now I'm trying to build a new bare-metal application to control the GPIO pin DS1 of my board. Following is the code listing of the source file:
#include <string.h>
#include <stdio.h>
#include <ti/board/board.h>
#include <ti/board/board_cfg.h>
#include <ti/drv/gpio/GPIO.h>
#include <ti/drv/gpio/soc/GPIO_soc.h>
//#include "GPIO_board.h"
// PROTOTYPES
//-------------------------------------------------------
void hardware_init(void);
void ledToggle (void);
void gpioPowerOn(void);
void delay(uint32_t count);
//-------------------------------------------------------
// Globals
//-------------------------------------------------------
volatile int16_t i16ToggleCount = 0; // keep track of # LED toggles
// main()
//---------------------------------------------------------------------------
void main(void)
{
{
ledToggle(); // toggle LED
}
// hardware_init()
//-----------------------------------------------------------------------------
void hardware_init(void) //called by main
{
boardCfg =
BOARD_INIT_PINMUX_CONFIG |
BOARD_INIT_MODULE_CLOCK |
BOARD_INIT_UART_STDIO;
Board_init(boardCfg);
GPIO_setConfig(LED_DS1,GPIO_CFG_OUTPUT);
// ledToggle() is called to toggle LED DS1
//-----------------------------------------------------------------------------
void ledToggle(void) //called by main
{
static uint32_t LED_state = 0; // used to toggle LED state
{
/* Write high to gpio pin to control LED1 */
GPIO_write((LED_DS1), 1u);
else // LED_state is "0" - OFF, turn LED OFF via GPIO
{
GPIO_write((LED_DS1), 0u);
}
void delay(uint32_t count)
{
volatile uint32_t tempCount = 0;
{
/* dummy loop to wait for some time */
}
}
**** Build of configuration Debug for project blink_target_CCS ****
Building file: "../main.c"
Invoking: C6000 Compiler
"C:/ti/ccsv8/tools/compiler/ti-cgt-c6000_8.3.4/bin/cl6x" -mv6740 --include_path="C:/TI_RTOS/C6000/Labs/Lab_02/Project" --include_path="C:/ti/pdk_omapl137_1_0_9/packages" --include_path="C:/ti/ccsv8/tools/compiler/ti-cgt-c6000_8.3.4/include" --define=evmOMAPL137 --define=SOC_OMAPL137 --define=omapl137 -g --diag_warning=225 --diag_wrap=off --display_error_number --preproc_with_compile --preproc_dependency="main.d_raw" "../main.c"
Finished building: "../main.c"
Building target: "blink_target_CCS.out"
Invoking: C6000 Linker
"C:/ti/ccsv8/tools/compiler/ti-cgt-c6000_8.3.4/bin/cl6x" -mv6740 --define=evmOMAPL137 --define=SOC_OMAPL137 --define=omapl137 -g --diag_warning=225 --diag_wrap=off --display_error_number -z -m"blink_target_CCS.map" --heap_size=0x800 --stack_size=0x800 -i"C:/ti/ccsv8/tools/compiler/ti-cgt-c6000_8.3.4/include" -i"C:/ti/ccsv8/tools/compiler/ti-cgt-c6000_8.3.4/lib" --priority --reread_libs --define=DSP_CORE=1 --diag_wrap=off --display_error_number --warn_sections --xml_link_info="blink_target_CCS_linkInfo.xml" --rom_model -o "blink_target_CCS.out" "./main.obj" "../OMAPL137.cmd" -llibc.a
<Linking>
undefined first referenced
symbol in file
--------- ----------------
Board_init ./main.obj
GPIO_init ./main.obj
GPIO_setConfig ./main.obj
GPIO_write ./main.obj
error #10234-D: unresolved symbols remain
error #10010: errors encountered during linking; "blink_target_CCS.out" not built
>> Compilation failure
makefile:141: recipe for target 'blink_target_CCS.out' failed
gmake[1]: *** [blink_target_CCS.out] Error 1
makefile:137: recipe for target 'all' failed
gmake: *** [all] Error 2
