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/UCD3138_FW_SDK: Started with prior version and trying to restart project with newer CCS version

Part Number: UCD3138

Tool/software: Code Composer Studio

Hello,

 

I'm using a much newer revision of CCS (9.0.1.00004), Comes with much newer compiler version that I originally built the project on (18.12.1.LTS), Downloaded and installed the version that I originally built with (v5.2.2)

 

Project opens fine, but generates the following build errors

 

Description         Resource             Path       Location               Type

#1559 Interrupt handlers must be compiled in ARM mode            interrupts.c        /DIVSYS_PSBv2 line 16   C/C++ Problem

#1559 Interrupt handlers must be compiled in ARM mode            interrupts.c        /DIVSYS_PSBv2 line 21   C/C++ Problem

#1559 Interrupt handlers must be compiled in ARM mode            interrupts.c        /DIVSYS_PSBv2 line 27   C/C++ Problem

#1559 Interrupt handlers must be compiled in ARM mode            interrupts.c        /DIVSYS_PSBv2 line 35   C/C++ Problem

#1559 Interrupt handlers must be compiled in ARM mode            software_interrupt.c      /DIVSYS_PSBv2 line 17   C/C++ Problem

#1559 Interrupt handlers must be compiled in ARM mode            standard_interrupt.c      /DIVSYS_PSBv2 line 11   C/C++ Problem

gmake: *** [all] Error 2  DIVSYS_PSBv2                                  C/C++ Problem

gmake[1]: *** [interrupts.obj] Error 1     DIVSYS_PSBv2                                  C/C++ Problem

gmake[1]: *** [software_interrupt.obj] Error 1   DIVSYS_PSBv2                                  C/C++ Problem

gmake[1]: *** [standard_interrupt.obj] Error 1   DIVSYS_PSBv2                                  C/C++ Problem

gmake[1]: Target 'main-build' not remade because of errors.       DIVSYS_PSBv2                                  C/C++ Problem

This project is currently in 'manual' Parser Preprocessing mode - no dependency graph is automatically generated. This mode should only be temporarily used to generate various pre-processor listing files. Please switch the Parser Preprocessing mode back to 'automatic' for you regular builds.   DIVSYS_PSBv2                   properties           Problem

 

Been trying to dig through Power forums to see if someone has seen/solved this. Other than suggestions to back down to a 5.x version of the compiler (already done), I’m really not sure what the problem is.

 

What I’m doing today, is just importing all my project code (file by file, line by line) into the UCD3138HSFBEVM_029 firmware project. Downloaded and built this just fine yesterday. Not real thrilled with that idea, but it might be better long term solution than continuing and finishing the project out on a quite old version of the TI ARM compiler.

 

Thoughts?

  • We don't recommend using anything but version 6.2 because of issues like this, and because we haven't tested our code on these versions.  We have to do a few things in assembly language, and they are dangerous across versions.  

    If you want to try, you need to set those files up to compile in 32 bit ARM mode.  You also need to do the same for clear integrity word and clear or erase program flash.  Those won't give you errors if you don't put them in ARM mode, but they won't work reliably either.  They're some of the relatively tricky and dangerous things we are doing.  When you switch versions, you tend to lose all the custom build options for individual files.  

  • So, to further muddy the waters. Something has gone horribly wrong and I can’t even build the canned HSFB project. It began giving me the same #1559 Interrupt handlers must be compiled in ARM mode as my legacy project.

     

    So, this afternoon I’ve since:

      1. Uninstalled and re-installed the HSFB code from TI

      1. Same problem

      1. Uninstalled Code Composer Studio completely

      1. Re-installed

      1. Re-updated everything

      1. Re-installed HSFB code

      1. Open and same #1559!!

      1. Try switching to most recent compiler, nope

      1. Try downloading and installing 5.2.9, nope

     

    I’m getting extremely frustrated with these tools (and remembering PTSD-flashback-like all the problems I had with getting code written and programmed for the UCD3138 the first time!).

     

    Need some serious reset/help with getting a base environment and ANY code to build!

     

    What I have on-hand is the UCD3138064EVM-166. Just ANY project that actually builds and can be programmed would be a HUGE help. And doesn’t seem to unreasonable!


     

     

     

     

     

    Building (first/current big issue)

    Thanks for the information. Still scrambling over here. Tried to setting properties for the  _interrupt files as 32-bit. This just winds up with the (foreseen by you) erase_program_flash, et. Al.  Haven’t been able to unwind how to solve that issue? I’m also thinking of trying an Import Legacy CCSv3.3 Projects within the projects tab…

     

    Will this help? I’m set my milestone on jumping the ARM compiler forward (probably all the way to current build), BUT also really trying to get the project moving. We want to finish a board evaluation so that final boards can be ordered and produced. So, trying to run both paths at once (quickly get old project back to build/program/debug, while also creating new project framework based on updated toolchain).

     

     

    Programming (next big issue):

    Programming the chips. I’d thought we’d been doing the programming and debugging of the chips via a XDS100V2 JTAG. But the board itself we only laid in a header that has PMBUS_ (CTRL, ALERT, DATA, CLK).

    Which leads me to believe that JTAG was never a viable option? And we had to do everything through the

    https://www.ti.com/tool/USB-TO-GPIO

    and then use

    https://www.ti.com/tool/FUSION_DIGITAL_POWER_DESIGNER

    to program as well as “debug” (live look at variables?)

     

  • I use CCS 6.2.0.00048.  It seems to take the EVM codes without a burp.  Then you shouldn't even have to put in the 32 bit mode, it should be retained.  

    It should be OK if you put the 32 bit mode for the other two files I mentioned as well.  

    Make sure you install the TMS470 compiler, I think the EVMs actually use that, not the UCD3138.  

    And use the import existing CCS project to get the project - go through the downloaded code to get to the folder with the .project file in it, and use that folder to import the CCS project from.  

    For all of this, the secret is to watch through the video training.  The first thing is a pipe cleaner project that gets everything going - CCS, first project, download, and debug.  It's at https://training.ti.com/ucd3138-digital-power-training-series

  • I'm going to assume this is resolved.