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.

LAUNCHXL2-570LC43: LAUNCHXL2-570LC43 example LED blinking code not functional

Part Number: LAUNCHXL2-570LC43
Other Parts Discussed in Thread: HALCOGEN,

Tool/software:

Hello,

Followed instructions in "C:\ti\Hercules\HALCoGen\v04.07.01\examples\TMS570LC43x\example_rtiBlinky.c" to have created the HALCoGen project and the corresponding CCS project. However, when the built project image is running on the LAUNCHXL2-570LC43 eval board, no LED blinking was observed at all.

Please advise. Thank you.

  • Hi John,

    Can you please zip it and attach your project, i had launchpad board, so i can quickly test and let you know what went wrong.

    --
    Thanks & regards,
    Jagadish.

  • Hi Jagadish,

    Thank you for the reply. Please refer to the attached CCS project, which I created by following the instructions in "C:\ti\Hercules\HALCoGen\v04.07.01\examples\TMS570LC43x\example_rtiBlinky.c", and also tested it on our LAUNCHXL2-570LC43 eval board, but observed no blinking LED at all.

    When following the instructions in the example_rtiBlinky.c, I noticed that there is no mentioning of any GIO configuration. Is this expected? If so, then how will the LEDs at GIOB_6 or GIOB_7 (per the eval board schematic) be driven to blink?

    I also checked the TMS570LC4357 tutorial that you showed in another thread, but, the tutorial is for using another entirely different eval board from TI. Thank you and I look forward to your reply.

    TMS570LC43x_BlinkLED.zip

  • One more note, Jagadish: I also commented out the function definition/declaration of rtiNotification in "...source\HL_notification.c", and then build the project and test it on our LAUNCHXL2-570LC43 eval board, but still, no blinking LED was observed at all. Thanks.

  • Hi Jagadish,

    I was able to revise the TI sample code in "C:\ti\Hercules\HALCoGen\v04.07.01\examples\TMS570LC43x\example_rtiBlinky.c", and now have software that can run on the TMS570LC43 eval board, to blink the two user green LEDs. The revised HL_sys_main.c is attached.

    I am also wondering: So, for which TI eval board, was the source code in "C:\ti\Hercules\HALCoGen\v04.07.01\examples\TMS570LC43x" developed for?

    Please advise. Thanks!

    /** @file HL_sys_main.c 
    *   @brief Application main file
    *   @date 11-Dec-2018
    *   @version 04.07.01
    *
    *   This file contains an empty main function,
    *   which can be used for the application.
    */
    
    /* 
    * Copyright (C) 2009-2018 Texas Instruments Incorporated - www.ti.com  
    * 
    * 
    *  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.
    *
    */
    
    
    /* USER CODE BEGIN (0) */
    /* USER CODE END */
    
    /* Include Files */
    
    #include "HL_sys_common.h"
    
    /* USER CODE BEGIN (1) */
    #include "HL_system.h"
    #include "HL_sys_core.h"
    #include "HL_mibspi.h"
    #include "HL_esm.h"
    #include "HL_rti.h"
    #include "HL_gio.h"
    #include "HL_het.h"
    /* USER CODE END */
    
    /** @fn void main(void)
    *   @brief Application main function
    *   @note This function is empty by default.
    *
    *   This function is called after startup.
    *   The user can use this function to implement the application.
    */
    
    /* USER CODE BEGIN (2) */
    /* USER CODE END */
    
    int main(void)
    {
    /* USER CODE BEGIN (3) */
    
    	/* Initialize RTI driver */
        systemInit();
        gioInit();
    	rtiInit();
    
        /* Set high end timer GIO port hetPort pin direction to all output */
    	// gioSetDirection(hetPORT1, 0xFFFFFFFF);
    
        /* Enable RTI Compare 0 interrupt notification */
    	rtiEnableNotification(rtiREG1,rtiNOTIFICATION_COMPARE0);
    
        /* Enable IRQ - Clear I flag in CPS register */
        /* Note: This is usually done by the OS or in an svc dispatcher */
    	_enable_IRQ_interrupt_();
    
        /* Start RTI Counter Block 0 */
    	rtiStartCounter(rtiREG1,rtiCOUNTER_BLOCK0);
    
        /* Run forever */
    	while(1);
    
    /* USER CODE END */
    }
    
    
    /* USER CODE BEGIN (4) */
    
    
    /* Note-You need to remove rtiNotification from notification.c to avoid redefinition */
    void rtiNotification(rtiBASE_t *rtiREG, uint32 notification)
    {
    /*  enter user code between the USER CODE BEGIN and USER CODE END. */
        /* Toggle HET pin 0 */
    	// gioSetPort(hetPORT1, gioGetPort(hetPORT1) ^ 0x00000001);
    
        /* Toggle GIOB6 and GIOB7 for user green LEDs 1 and 2 on TMS570LC43 eval board*/
        gioSetBit(gioPORTB, 6, gioGetBit(gioPORTB, 6) ^ 0x00000001);
        gioSetBit(gioPORTB, 7, gioGetBit(gioPORTB, 7) ^ 0x00000001);
    }
    /* USER CODE END */