• Join
  • Sign In with my.TI Login
Texas Instruments
  • Products
  • Applications
  • Tools & Software
  • Support & Community
  • Sample & Buy
  • About TI
Sample & Purchase Cart Sample & Purchase Cart
  • Search
  • Advanced
TI E2E™ Community
  • Support Forums
  • Blogs
  • Groups
  • Videos
  • 简体中文
  • More ...
TI Home » TI E2E Community » Support Forums » Digital Signal Processors (DSP) » C6000 Single Core DSP » C67x Single Core DSP Forum » Code not wroking while booting up from Flash- 6713 DSK
Share
C6000 Single Core DSP
  • Forums
  • Announcements
Options
  • Subscribe via RSS

Code not wroking while booting up from Flash- 6713 DSK

Code not wroking while booting up from Flash- 6713 DSK

This question is answered
Tariq Siddiqui
Posted by Tariq Siddiqui
on Mar 01 2012 12:57 PM
Expert1920 points
Hi Guys,
I have 6713 DSK attached with ADC which is sampling signal with maximum frequency 150 kHz then computing FFT. I burn all the codes to boot from Flash and it is working quite fine. After FFT I am writing FFT values to Flash memory.
For some reason, I am not getting the correct FFT peak from the values saved in Flash. I am sampling 10 kHz signal and the peak shows as it was 50 kHz signal. When I run the same code with CCS, it shows the peak at right sample i.e., 10 kHz.
I am wondering what is causing the change of sampling frequency while booting up from Flash ?
I will appreciate if some one comment on this issue.
Regards,

Tariq

Report Abuse
  • Reply
You have posted to a forum that requires a moderator to approve posts before they are publicly available.
All Replies
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 01 2012 13:55 PM
    Expert2655 points

    Al Salam,

    Watch clkout2 or clkout3 while running using CCS vs Flash.  It may tell if the device is under-run when booting from Flash due to some missing initialization.

    Good Luck,

    Sam

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tariq Siddiqui
    Posted by Tariq Siddiqui
    on Mar 01 2012 14:02 PM
    Expert1920 points

    Walaikum as Salam,

    Where can I check clkout2 and clkout3 ?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 01 2012 14:06 PM
    Expert2655 points

    On your C6713 DSK, R25 runs clkout2 and R26 runs clkout3.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 01 2012 14:08 PM
    Expert2655 points

    They are also on J1 pin 5 for clkout3 and pin 80 for clkout2.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tariq Siddiqui
    Posted by Tariq Siddiqui
    on Mar 05 2012 06:59 AM
    Expert1920 points

    Sam,

    I checked clkout3 and clkout2. They are running with the same speed with CCS and Flash.

    clkout3 = 6.25 MHz

    clkout2 = 25 MHz

    Any other suggestions ?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 05 2012 07:25 AM
    Expert2655 points

    Greetings,

    Can you share with me the Gel file you use under CCS, please.  Your issue is likely between init_emif and init_pll.

    Sam

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tariq Siddiqui
    Posted by Tariq Siddiqui
    on Mar 05 2012 11:37 AM
    Expert1920 points

    Sam,

    I figured out that ADC's sampling frequency is changing when booting from Flash. For example, I set the sampling frequency to 351 kHz but when measured the ADC's clock while booting from Flash, it was showing 77 kHz. Just to make sure that it is running the same code, I checked with different sampling frequencies and realized that every time it is dividing the sampling frequency with 4 then showing the peak according to the this 'new' sampling frequency.

    I will share the GEL file soon.

    Thanks for your precious time.

    BAS

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 05 2012 11:41 AM
    Expert2655 points

    Very good.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tariq Siddiqui
    Posted by Tariq Siddiqui
    on Mar 06 2012 02:11 AM
    Expert1920 points

    Sam,

    Here attached GEL file.

    /*--------------------------------------------------------------*/
    /* DSK6713.gel                                                  */
    /* Version 3.00                                                 */
    /*                                                              */
    /* This GEL file is designed to be used in conjunction with     */
    /* CCS 3.X and the TMS320C6713 based DSK.                       */
    /*                                                              */
    /*--------------------------------------------------------------*/

    /*--------------------------------------------------------------*/
    /* StartUp()                                                    */
    /* This function is called each time CCS is started.            */
    /* Customize this function to perform desired initialization.   */
    /*--------------------------------------------------------------*/
    StartUp()
    {
        setup_memory_map();

        /*------------------------------------------------------*/
        /* Uncomment the OnTargetConnect() call for CCS 2.X     */
        /* support.                                             */
        /*                                                      */
        /*                                                      */
        /*------------------------------------------------------*/
        //OnTargetConnect();
    }

    /*--------------------------------------------------------------*/
    /* OnTargetConnect()                                            */
    /* This function is called by CCS when you do Debug->Connect on */
    /* CCS 3.X.  When using CCS 2.X, the OnTargetConnect() call     */
    /* should be uncommented from the StartUp() function.           */
    /*--------------------------------------------------------------*/
    OnTargetConnect()
    {
        /*------------------------------------------------------*/
        /* GEL_Reset() is used to deal with the worst case      */
        /* senario of unknown target state.  If for some reason */
        /* a reset is not desired upon target connection,       */
        /* GEL_Reset() may be removed and replaced with         */
        /* something "less brutal" like a cache initialization  */
        /* function.                                            */
        /*------------------------------------------------------*/
        //GEL_Reset();

        init_emif();

        GEL_TextOut("GEL StartUp Complete.\n");
    }

    /*--------------------------------------------------------------*/
    /* OnReset()                                                    */
    /* This function is called by CCS when you do Debug->Resest.    */
    /* The goal is to put the C6x into a known good state with      */
    /* respect to cache, edma and interrupts.                       */
    /*--------------------------------------------------------------*/
    OnReset( int nErrorCode )
    {
        /*------------------------------------------------------*/
        /* A debugger reset or GEL_Reset() does NOT reset the   */
        /* C6713 pll. Uncomment the following line if you want  */
        /* your pll reset.                                      */
        /*------------------------------------------------------*/
        //reset_pll();

        init_emif();
    }

    /*--------------------------------------------------------------*/
    /* OnPreFileLoaded()                                            */
    /* This function is called automatically when the 'Load Program'*/
    /* Menu item is selected.                                       */
    /*--------------------------------------------------------------*/
    OnPreFileLoaded()
    {
        /*------------------------------------------------------*/
        /* GEL_Reset() is used to deal with the worst case      */
        /* senario of unknown target state.  If for some reason */
        /* a reset is not desired upon target connection,       */
        /* GEL_Reset() may be removed and replaced with         */
        /* something "less brutal" like a cache initialization  */
        /* function.                                            */
        /*------------------------------------------------------*/
        GEL_Reset();

        flush_cache();
        IER = 0;
        IFR = 0;
        init_emif();
    }

    /*--------------------------------------------------------------*/
    /* OnRestart()                                                  */
    /* This function is called by CCS when you do Debug->Restart.   */
    /* The goal is to put the C6x into a known good state with      */
    /* respect to cache, edma and interrupts.                       */
    /* Failure to do this can cause problems when you restart and   */
    /* run your application code multiple times.  This is different */
    /* then OnPreFileLoaded() which will do a GEL_Reset() to get the*/
    /* C6x into a known good state.                                 */
    /*--------------------------------------------------------------*/
    OnRestart(int nErrorCode )
    {
        /*------------------------------------------------------*/
        /* Turn off L2 for all EMIFA CE spaces.  App should     */
        /* manage these for coherancy in the application.       */
        /* GEL_TextOut("Turn off cache segment\n");             */
        /*------------------------------------------------------*/
        *(int *)0x01848200 = 0;             // MAR0
        *(int *)0x01848204 = 0;             // MAR1
        *(int *)0x01848208 = 0;             // MAR2
        *(int *)0x0184820c = 0;             // MAR3

        /*------------------------------------------------------*/
        /* Disable EDMA events and interrupts and clear any     */
        /* pending events.                                      */
        /* GEL_TextOut("Disable EDMA event\n");                 */
        /*------------------------------------------------------*/
        *(int *)0x01A0FFE8 = 0;             // CIERL
        *(int *)0x01A0FFF4 = 0;             // EERL
        *(int *)0x01A0FFF8 = 0xFFFFFFFF;    // ECRL

        /* Disable other interrupts */
        IER = 0;
        IFR = 0;
    }

    /*--------------------------------------------------------------*/
    /* setup_memory_map()                                           */
    /* Memory map setup                                             */
    /*--------------------------------------------------------------*/
    setup_memory_map()
    {
        GEL_MapOn();
        GEL_MapReset();

        /* On-chip memory map */
        GEL_MapAdd(0x00000000, 0, 0x00030000, 1, 1); // Internal RAM (L2) mem
        GEL_MapAdd(0x01800000, 0, 0x00000024, 1, 1); // EMIF control regs
        GEL_MapAdd(0x01840000, 0, 0x00000004, 1, 1); // Cache configuration reg
        GEL_MapAdd(0x01844000, 0, 0x00000018, 1, 1); // L2 base addr & count regs
        GEL_MapAdd(0x01844020, 0, 0x00000018, 1, 1); // L1 base addr & count regs
        GEL_MapAdd(0x01845000, 0, 0x00000008, 1, 1); // L2 flush & clean regs
        GEL_MapAdd(0x01848200, 0, 0x00000010, 1, 1); // CE0 mem attribute regs
        GEL_MapAdd(0x01848240, 0, 0x00000010, 1, 1); // CE1 mem attribute regs
        GEL_MapAdd(0x01848280, 0, 0x00000010, 1, 1); // CE2 mem attribute regs
        GEL_MapAdd(0x018482c0, 0, 0x00000010, 1, 1); // CE3 mem attribute regs
        GEL_MapAdd(0x01880000, 0, 0x00000004, 1, 1); // HPI control reg
        GEL_MapAdd(0x018c0000, 0, 0x00000028, 1, 1); // McBSP0 regs
        GEL_MapAdd(0x01900000, 0, 0x00000028, 1, 1); // McBSP1 regs
        GEL_MapAdd(0x01940000, 0, 0x0000000c, 1, 1); // Timer0 regs
        GEL_MapAdd(0x01980000, 0, 0x0000000c, 1, 1); // Timer1 regs
        GEL_MapAdd(0x019c0000, 0, 0x0000000c, 1, 1); // Interrupt selector regs
        GEL_MapAdd(0x019c0200, 0, 0x00000004, 1, 1); // Device configuration

        GEL_MapAdd(0x01a00000, 0, 0x00000800, 1, 1); // EDMA parameter RAM
        GEL_MapAdd(0x01a0ff00, 0, 0x00000010, 1, 1); // EDMA event selector
        GEL_MapAdd(0x01a0ffe0, 0, 0x00000020, 1, 1); // EDMA control regs

        GEL_MapAdd(0x01b00000, 0, 0x00000028, 1, 1); // GPIO
        GEL_MapAdd(0x01b40000, 0, 0x0000003c, 1, 1); // I2C0
        GEL_MapAdd(0x01b44000, 0, 0x0000003c, 1, 1); // I2C1
        GEL_MapAdd(0x01b4c000, 0, 0x00000300, 1, 1); // McASP0
        GEL_MapAdd(0x01b50000, 0, 0x00000300, 1, 1); // McASP1
        GEL_MapAdd(0x01b7c000, 0, 0x00000128, 1, 1); // PLL

        GEL_MapAdd(0x01bc0000, 0, 0x00000050, 1, 1); // Emulation regs
        GEL_MapAdd(0x02000000, 0, 0x00000014, 0, 1); // QDMA regs
        GEL_MapAdd(0x02000020, 0, 0x00000014, 0, 1); // QDMA pseudo-regs
        GEL_MapAdd(0x30000000, 0, 0x04000000, 1, 1); // McBSP0 data
        GEL_MapAdd(0x34000000, 0, 0x04000000, 1, 1); // McBSP1 data

        GEL_MapAdd(0x3c000000, 0, 0x00010000, 1, 1); // McASP0 data
        GEL_MapAdd(0x3c100000, 0, 0x00010000, 1, 1); // McASP1 data

        /* Off-chip memory map */
        GEL_MapAdd(0x80000000, 0, 0x01000000, 1, 1); // CE0, SDRAM, 16 MBytes
        GEL_MapAdd(0x90000000, 0, 0x00040000, 1, 1); // CE1, 8-bit ROM, 256KBytes
        GEL_MapAdd(0x90080000, 0, 0x00000008, 1, 1); // CE1, 8-bit I/O port
        GEL_MapAdd(0xA0000000, 0, 0x10000000, 1, 1); // CE2 - Daughtercard
        GEL_MapAdd(0xB0000000, 0, 0x10000000, 1, 1); // CE3 - Daughtercard
    }

    /*--------------------------------------------------------------*/
    /* clear_memory_map()                                           */
    /* Memory map disable                                           */
    /*--------------------------------------------------------------*/
    clear_memory_map()
    {
        GEL_MapOff();
    }

    /*--------------------------------------------------------------*/
    /* CPLD DEFINITIONS                                             */
    /*--------------------------------------------------------------*/
    #define CPLD_STAT         0x90080000
    #define CPLD_DC           0x90080001
    #define CPLD_REV          0x90080004
    #define CPLD_MISC         0x90080006

    #define Get_Board_Rev     ((*(char *)CPLD_REV) & 0x07)
    #define Get_Cpld_Rev      ((*(char *)CPLD_REV>>4) & 0x0F)
    #define Get_Switches      ((*(char *)CPLD_STAT>>4) & 0x0F)

    #define LED0_on           *(char *)CPLD_STAT = 0x01
    #define LED1_on           *(char *)CPLD_STAT = 0x02
    #define LED2_on           *(char *)CPLD_STAT = 0x04
    #define LED3_on           *(char *)CPLD_STAT = 0x08
    #define LEDs_off          *(char *)CPLD_STAT = 0x00

    /*--------------------------------------------------------------*/
    /* init_emif()                                                  */
    /* Emif initialization                                          */
    /*--------------------------------------------------------------*/
    init_emif()
    {
        #define EMIF_GCTL       0x01800000
        #define EMIF_CE1        0x01800004
        #define EMIF_CE0        0x01800008
        #define EMIF_CE2        0x01800010
        #define EMIF_CE3        0x01800014
        #define EMIF_SDRAMCTL   0x01800018
        #define EMIF_SDRAMTIM   0x0180001C
        #define EMIF_SDRAMEXT   0x01800020
        #define EMIF_CCFG       0x01840000;     // Cache configuration register

        /* EMIF setup */
        *(int *)EMIF_GCTL     = 0x00000068;
        *(int *)EMIF_CE0      = 0xffffbf33;     // CE0 SDRAM
        *(int *)EMIF_CE1      = 0x02208802;     // CE1 Flash 8-bit
        *(int *)EMIF_CE2      = 0x22a28a22;     // CE2 Daughtercard 32-bit async
        *(int *)EMIF_CE3      = 0x22a28a22;     // CE3 Daughtercard 32-bit async

        if (Get_Board_Rev == 2)
        {
            *(int *)EMIF_SDRAMCTL = 0x57115000; // SDRAM control (16 Mb)
        }
        else
        {
            *(int *)EMIF_SDRAMCTL = 0x47115000; // SDRAM control (8 Mb)
        }
        *(int *)EMIF_SDRAMTIM = 0x00000578;     // SDRAM timing (refresh)
        *(int *)EMIF_SDRAMEXT = 0x000a8529;     // SDRAM Extension register
    }

    /*--------------------------------------------------------------*/
    /* flush_cache()                                                */
    /* Flush L1 & L2 cache                                          */
    /*--------------------------------------------------------------*/
    flush_cache()
    {
        /* Invalidate L1P and L1D */
        *(int *)0x01840000 = (*(int *)0x01840000 | 0x00000300);

        /* Clean L2 */
        *(int *)0x01845004 = 0x1;
    }

    /*--------------------------------------------------------------*/
    /* init_cpld()                                                  */
    /* CPLD Initialization                                          */
    /*--------------------------------------------------------------*/
    init_cpld()
    {
        *(char*)CPLD_STAT = 0;
        *(char*)CPLD_DC   = 0;
        *(char*)CPLD_MISC = 0;
    }

    /*--------------------------------------------------------------*/
    /* C6713 PLL SUPPORT                                            */
    /*--------------------------------------------------------------*/
    #define PLL_BASE_ADDR   0x01b7c000
    #define PLL_PID         ( PLL_BASE_ADDR + 0x000 )
    #define PLL_CSR         ( PLL_BASE_ADDR + 0x100 )
    #define PLL_MULT        ( PLL_BASE_ADDR + 0x110 )
    #define PLL_DIV0        ( PLL_BASE_ADDR + 0x114 )
    #define PLL_DIV1        ( PLL_BASE_ADDR + 0x118 )
    #define PLL_DIV2        ( PLL_BASE_ADDR + 0x11C )
    #define PLL_DIV3        ( PLL_BASE_ADDR + 0x120 )
    #define PLL_OSCDIV1     ( PLL_BASE_ADDR + 0x124 )

    #define CSR_PLLEN          0x00000001
    #define CSR_PLLPWRDN       0x00000002
    #define CSR_PLLRST         0x00000008
    #define CSR_PLLSTABLE      0x00000040
    #define DIV_ENABLE         0x00008000

    /*--------------------------------------------------------------*/
    /* reset_pll()                                                  */
    /* Pll Reset                                                    */
    /*--------------------------------------------------------------*/
    reset_pll()
    {
        /* Set the PLL back to power on reset state*/
        *(int *)PLL_CSR     = 0x00000048;
        *(int *)PLL_DIV3    = 0x00008001;
        *(int *)PLL_DIV2    = 0x00008001;
        *(int *)PLL_DIV1    = 0x00008000;
        *(int *)PLL_DIV0    = 0x00008000;
        *(int *)PLL_MULT    = 0x00000007;
        *(int *)PLL_MULT    = 0x00000007;
        *(int *)PLL_OSCDIV1 = 0x00080007;
    }

    /*--------------------------------------------------------------*/
    /* init_pll()                                                   */
    /* Pll Initialization                                           */
    /*--------------------------------------------------------------*/
    init_pll()
    {
        /*------------------------------------------------------*/
        /* When PLLEN is off DSP is running with CLKIN clock    */
        /* source, currently 50MHz or 20ns clk rate.            */
        /*------------------------------------------------------*/
        *(int *)PLL_CSR  &= ~CSR_PLLEN;

        /* Reset the pll.  PLL takes 125ns to reset. */
        *(int *)PLL_CSR  |= CSR_PLLRST;

        /*------------------------------------------------------*/
        /* PLLOUT = CLKIN/(DIV0+1) * PLLM                       */
        /* 450    = 50/1 * 9                                    */
        /*------------------------------------------------------*/
        *(int *)PLL_DIV0    = DIV_ENABLE + 0;
        *(int *)PLL_MULT    = 9;
        *(int *)PLL_OSCDIV1 = DIV_ENABLE + 4;

        /*------------------------------------------------------*/
        /* Program in reverse order.                            */
        /* DSP requires that pheriheral clocks be less then     */
        /* 1/2 the CPU clock at all times.                      */
        /*------------------------------------------------------*/
        *(int *)PLL_DIV3    = DIV_ENABLE + 4;
        *(int *)PLL_DIV2    = DIV_ENABLE + 3;
        *(int *)PLL_DIV1    = DIV_ENABLE + 1;
        *(int *)PLL_CSR    &= ~CSR_PLLRST;

        /*------------------------------------------------------*/
        /* Now enable pll path and we are off and running at    */
        /* 225MHz with 90 MHz SDRAM.                            */
        /*------------------------------------------------------*/
        *(int *)PLL_CSR |= CSR_PLLEN;
    }

    /*--------------------------------------------------------------*/
    /* DSK6713 MENU                                                 */
    /*--------------------------------------------------------------*/
    menuitem "DSK6713 Functions";

    hotmenu Reset()
    {
        GEL_Reset( );
    }

    hotmenu InitEmif()
    {
        init_emif();
    }

    hotmenu InitPll()
    {
        init_pll();
    }

    hotmenu InitCpld()
    {
        init_cpld();
    }

    /*--------------------------------------------------------------*/
    /* RESET MENU                                                   */
    /*--------------------------------------------------------------*/
    menuitem "Resets";

    hotmenu ClearBreakPts_Reset_EMIFset()
    {
        GEL_BreakPtReset();
        GEL_Reset();
        init_emif();
    }

    hotmenu FlushCache()
    {
        flush_cache();
    }

    hotmenu ResetPll()
    {
        reset_pll();
    }

    /*--------------------------------------------------------------*/
    /* MEMORY MAP MENU                                              */
    /*--------------------------------------------------------------*/
    menuitem "Memory Map";

    hotmenu SetMemoryMap()
    {
        setup_memory_map();
    }

    hotmenu ClearMemoryMap()
    {
        clear_memory_map();
    }

    /*--------------------------------------------------------------*/
    /* LED_cycle()                                                  */
    /*--------------------------------------------------------------*/
    LED_cycle()
    {
        LED3_on;
        LED2_on;
        LED1_on;
        LED2_on;
        LED3_on;
        LEDs_off;
    }

    /*--------------------------------------------------------------*/
    /* Check DSK MENU                                               */
    /*--------------------------------------------------------------*/
    menuitem "Check DSK";
    hotmenu QuickTest()
    {
        LED_cycle();
        LED_cycle();
        LED_cycle();
        GEL_TextOut(" Switches: %d  Board Revision: %d CPLD Revision: %d\n\n",
                     "DSKOutput", 1, 1, 1, Get_Switches, Get_Board_Rev, Get_Cpld_Rev);
    }

    Regards,

    BAS

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 06 2012 06:57 AM
    Expert2655 points

    Al Salam,

    Your Flash based runtime need to do what the following does

    OnPreFileLoaded()
    {
        /*------------------------------------------------------*/
        /* GEL_Reset() is used to deal with the worst case      */
        /* senario of unknown target state.  If for some reason */
        /* a reset is not desired upon target connection,       */
        /* GEL_Reset() may be removed and replaced with         */
        /* something "less brutal" like a cache initialization  */
        /* function.                                            */
        /*------------------------------------------------------*/
        GEL_Reset();

        flush_cache();
        IER = 0;
        IFR = 0;
        init_emif();
    }
    Good Luck,

    Sam

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 06 2012 06:58 AM
    Expert2655 points

    Along with the PLL init etc...

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tariq Siddiqui
    Posted by Tariq Siddiqui
    on Mar 06 2012 08:27 AM
    Expert1920 points

    Walaikun As Salam,

    I am sorry but I didn't get what you mean.

    How could I debug what is causing the problem in Flash based routine ?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 06 2012 08:33 AM
    Expert2655 points

    What I meant is your Flash based run time start up need to do the same sequence of initialization done in the Gel.  You have the ability to set HW breakpoints in CCS to step through the code.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Tariq Siddiqui
    Posted by Tariq Siddiqui
    on Mar 06 2012 09:23 AM
    Expert1920 points

    Sam,

    How can I use HW break point to analyze the gel file ? I know I can do that with main.c but how to see Gel file sequence of initilization ?

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
  • Sam Kuzbary
    Posted by Sam Kuzbary
    on Mar 06 2012 10:58 AM
    Expert2655 points

    I am sorry but Gel code can not be debugged, it execute in the background.  You can make a C module containing the same code, dispose then from the use of the Gel at CCS start up, load your version of start up, then you can debug the sequence of start up code.

    Report Abuse
    • Reply
    You have posted to a forum that requires a moderator to approve posts before they are publicly available.
123
TI E2E™ Community
  • Support Forums
  • Blogs
  • Videos
  • Groups
  • Site Support & Feedback
  • Settings
TI E2E™ Community Groups
  • TI University Program
  • Make the Switch
  • Microcontroller Projects
  • Motor Drive & Control
Other Communities
  • Deyisupport
  • Designsomething.org
  • beagleboard.org
  • TI on Element 14
  • TI on TechXchangeSM
Other Technical & Support Resources
  • WEBENCH® Design Center
  • Product Information Centers
  • Technical Documents
  • TI Design Network
  • TI Technical Articles
  • TI Training

All content and materials on this site are provided "as is". TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with regard to these materials, including but not limited to all implied warranties and conditions of merchantability, fitness for a particular purpose, title and non-infringement of any third party intellectual property right. TI and its respective suppliers and providers of content make no representations about the suitability of these materials for any purpose and disclaim all warranties and conditions with respect to these materials. No license, either express or implied, by estoppel or otherwise, is granted by TI. Use of the information on this site may require a license from a third party, or a license from TI.

Content on this site may contain or be subject to specific guidelines or limitations on use. All postings and use of the content on this site are subject to the Terms of Use of the site; third parties using this content agree to abide by any limitations or guidelines and to comply with the Terms of Use of this site. TI, its suppliers and providers of content reserve the right to make corrections, deletions, modifications, enhancements, improvements and other changes to the content and materials, its products, programs and services at any time or to move or discontinue any content, products, programs, or services without notice.

Follow Us Texas Instruments on Facebook Texas Instruments on Twitter Texas Instruments on LinkedIn Texas Instruments on Google+
TI Worldwide | Contact Us | my.TI Login | Site Map | Corporate Citizenship | mobile m.ti.com (Mobile Version)

TI is a global semiconductor design and manufacturing company. Innovate with 100,000+ analog ICs and
embedded processors, along with software, tools and the industry’s largest sales/support staff.

© Copyright 1995-2013 Texas Instruments Incorporated. All rights reserved.
Trademarks | Privacy Policy | Terms of Use