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.

TMS320F280049C: Hardware Design

Part Number: TMS320F280049C
Other Parts Discussed in Thread: TMDSCNCD280039C, LAUNCHXL-F280049C

Dear TI Support Team,

I am using the TMS320F280049C microcontroller in my custom board design. I have observed that the 3.3 V supply rail remains stable at 3.3 V when the IC is not soldered, but as soon as I solder the IC, the voltage drops to around 2.2 V. The power supply section is otherwise functioning correctly, and there are no visible shorts or overheating components.Lorman_Master_TI.pdf 

I would like to request your assistance in verifying whether my power rail design and decoupling network comply with TI’s recommended design practices for this MCU. Please let me know what additional details (schematic, layout snippet, or current consumption measurements) you would require for analysis.

Thank you for your guidance and support.

Best regards,
SWAROOP D S
Apricot Technologies

  • Hi Swaroop,

    Right off the bat, I see that pin 28 (VDDIO) is missing a connection to 3.3V input. Note all the VDDIO/VDDA/VDDIO_SW should have connection to 3.3V, it is insufficient to supply to only a portion of these pins.

    Please refer to LAUNCHXL-F280049C or TMDSCNCD280039C for guidance on decoupling caps. The values are currently not visible on the provided schematic

    Regards,

    Peter

  • Voltage levels are rectified, now I am getting 1.2v and 3.3v respectively. But if I try to flash the code getting this below error. Pull up added to TMS 10k to 3.3v, Voltage levels are correct while flashing. please help me out for this issue.

    C28xx_CPU1: GEL Output:
    Memory Map Initialization Complete
    C28xx_CPU1: GEL Output: ... DCSM Initialization Start ...
    C28xx_CPU1: GEL Output: ... DCSM Initialization Done ...
    C28xx_CPU1: GEL Output: ... DCSM Initialization Start ...
    C28xx_CPU1: GEL Output: ... DCSM Initialization Done ...
    C28xx_CPU1: GEL Output: ... DCSM Initialization Start ...
    C28xx_CPU1: GEL Output: ... DCSM Initialization Done ...
    C28xx_CPU1: Error: (Error -1044 @ 0x0) The debug probe reported an error. Confirm debug probe configuration and connections, reset the debug probe, and retry the operation. (Emulation package 9.7.0.00213)
    C28xx_CPU1: Trouble Halting Target CPU: (Error -1135 @ 0xC07E) The debug probe reported an error. Confirm debug probe configuration and connections, reset the debug probe, and retry the operation. (Emulation package 9.7.0.00213)
    C28xx_CPU1: Unable to determine target status after 20 attempts
    C28xx_CPU1: Failed to remove the debug state from the target before disconnecting. There may still be breakpoint op-codes embedded in program memory. It is recommended that you reset the emulator before you connect and reload your program before you continue debugging
    C28xx_CPU1: Error occurred during flash operation: Could not write 0x00000064@Data: target is not connected
    C28xx_CPU1: Error occurred during flash operation: Could not read 0x00010E@Program: target is not connected
    C28xx_CPU1: Error occurred during flash operation: Could not read 0x000100@Program: target is not connected
    C28xx_CPU1: Error executing PLL configuration algorithm. Operation cancelled. (0x0)
    C28xx_CPU1: Perform a debugger reset and execute the Boot-ROM code (click on the RESUME button in CCS debug window) before erasing/loading the Flash. If that does not help to perform a successful Flash erase/load, check the Reset cause (RESC) register, NMI shadow flag (NMISHDFLG) register and the Boot-ROM status register for further debug.
    C28xx_CPU1: File Loader: Memory write failed: Unknown error
    C28xx_CPU1: GEL: File: C:\Users\USER\workspace_v11\empty_driverlib_project\CPU1_FLASH\empty_driverlib_project.out: Load failed.
    C28xx_CPU1: Error occurred during flash operation: Could not read register PC: target is not connected
    C28xx_CPU1: Error occurred during flash operation: Could not write register PC: target is not connected

  • Hi Swaroop,

    What are you using as the debugger for connecting to the device? An XDS110 probe or some equivalent board? Have you verified that the ccxml is correctly configured and does the "Test Connection" script work when connected? Sounds like this is a debugger connection issue rather than a MCU flashing issue

    Regards,

    Peter

  • Hello, 

    I am using XDS110 probe, Test connection Succedded. 

    "All of the values were scanned correctly.

    The JTAG DR Integrity scan-test has succeeded.

    [End: Texas Instruments XDS110 USB Debug Probe_0]" 

  • Hi Swaroop, 

    Can you double check that you are using the correct ccxml and it is reading as "Active"? If the test connection is working, it may be some other issue. Does this apply to both flash and ram? You can change the build configuration by right clicking the project and choose between FLASH and RAM

    Regards,

    Peter

  • we tried for both FLASH and RAM build, but still getting this error. Voltage levels are getting correct values 3.3v and 1.2v. XRSn is pulled up with 4.7K and TMS is pulled up with  10K.

  • Hi Swaroop, 

    Are you able to provide an updated schematic for this design? If the voltage levels are correct and JTAG testing is returning successful, you could further verify the XTAL input, voltage level of XRSn during loading. Also help to check the board with thermocam to see if there were any assembly issues. What current capacity does the 3.3V rail have? 

    Regards,

    Peter

  • Lorman_Master.pdf
    I am able to successfully blink an LED on my TMS320F280049C device when I flash the RAM build output file. However, when I try to program the device using the FLASH build output file, the upload fails and I consistently encounter an error during the flashing process. Check the updated schematic and error scren shots.

    #include "driverlib.h"
    
    void main(void)
    {
        // Disable watchdog immediately
        SysCtl_disableWatchdog();
    
        // Unlock GPIO
        GPIO_unlockPortConfig(GPIO_PORT_A, 0xFFFFFFFF);
        GPIO_unlockPortConfig(GPIO_PORT_B, 0xFFFFFFFF);
    
        // Configure GPIO0 as output (pin 52)
        GPIO_setPadConfig(0, GPIO_PIN_TYPE_STD);
        GPIO_setDirectionMode(0, GPIO_DIR_MODE_OUT);
        GPIO_setMasterCore(0, GPIO_CORE_CPU1);
    
        // Simple delay loop and toggle
        volatile uint32_t i;
    
        while(1)
        {
            GPIO_writePin(0, 1);  // LED ON
            for(i = 0; i < 500000; i++);  // Simple delay
    
            GPIO_writePin(0, 0);  // LED OFF
            for(i = 0; i < 500000; i++);  // Simple delay
        }
    }
    

  • Hi Swaroop,

    I see in your design that you have left both GPIO24/32 with pull ups. Can you try pulling GPIO24 low so that the device is entering WAIT mode instead of boot from flash mode? This WAIT mode sometimes helps with flashing issues since it prevents the device from running any code that was previously in flash

    Regards,

    Peter