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.

TMS320C6746: How to start developing from zero

Part Number: TMS320C6746
Other Parts Discussed in Thread: SYSBIOS, OMAP-L138

Hello,

I'm working on a project where we need a low cost DSP to interface to an ADC, and we found the TMS320C674x series of processors that seem to have the UPP peripheral that would apparently interface seamlessly to the ADC.

We bought a 6748 LCDK evaluation board to start tinkering with the processor (in the end we plan on using a C6746 but they should be compatible), even though it doesn't seem to be any available way to expowse the uPP peripheral on this board. We just want to get familiar with the processor and start developing things for it. We have experience with other processrors such as MPS430, some OMAP's running linux, PIC, ARM cortex M devices and such. We also have an XDS100v3 debugger.

The experience so far has been frustrating. First of all the LCDK doesn't boot the demo application, even after reflashing it twice with this (also erasing before flash): http://processors.wiki.ti.com/index.php/File:C6748_LCDK_Demo.zip 

Looks like the processor is fine and can run code (we managed to run a hello world trhough debugger example from a Code Composer Studio template project, but we're not sure about the NAND flash.

Then, while looking at the development tools there seem to be several options, some of them seemingly obsolete, and in the end we just don't know where to start. There's the SYSbios, the Starterware and the We want to build applications as bare-metal as possible (no OS), with full access to peripherals, through a hardware abstraction layer if possible. We also want to know how to develop a custom board for a TMS320C6746, I mean, when we choose the DRAM chip and the reference oscillator frequency and such, how to calibrate the RAM, clocks and everything neccesary to generate the configuration required to boot the custom board.

So, right now, in February 2018, which software should I install on my computer (Windows 10) and why to start developing bare-metal applications for this platform, with full peripheral control and with the most up-to-date toolchain/middleware/libraries available? How do I intergrate all the software together to get a functional development workstation? eWhere can I find example code? 

Also, any clue about why our LCDK board might not be booting the example facedetect application? How to check if the board is OK?

  • Hi David,

    The most up-to-date toolchain/middleware/libraries available are located in the TI RTOS: www.ti.com/.../toolssoftware

    How do I intergrate all the software together to get a functional development workstation? eWhere can I find example code?


    You can find adopt the rtos approach to create your workstation. There is the CSL (Chip support library) which contains a low level initialization of the SoC & the peripheral interfaces, and then on top of it create your own applications. Example code for the peripherals drivers is available in the pdk folder (after you install the rtos).

    Here is the wiki containing the TI Processor SDK RTOS documentation:

    processors.wiki.ti.com/.../Processor_SDK_RTOS_Software_Developer_Guide

    Best Regards,
    Yordan
  • Hi, thanks for your answer. I tried working with Starterware and I could get some examples to run and I modified some on my own to use several peripherals without problems (except for the EDMA example failing in stock configuration). The examples correlate very well with the datasheet, knowing what to include is obvious and, alhough the documentation isn't the best, at least the API is relatively well documented and things get easy once you get familiar.

    I however haven't managed to even turn on an LED using the most up-to-date TI-RTOS SDK, and it's not because I don't know what to do to turn on an LED (I know I have to configure the pinmuxes, setup the power domains and all that stuff) but because I just don't know how this SDK integrates with CCS, what's the relationship between SYSBIOS, TI RTOS and the rest of the included middleware, how do I create a project that includes whatever is provided in this SDK package or how do I even run/compile the example code (which I'm not sure if it's for my platform or not). WHen you look at the documentation, like the link you provided, everything seems to be oriented towards the OMAP L-138 and the C66x or AM57X series processors and there's little to no documentation on what to do with the C6748 , apart from running a Hello world example which is obvious. Also, the video tutorials don't seem to solve my issues either. I'd love to get a detailed step-by-step tutorial on how to blink an LED using the TI RTOS SDK on my board, from installation to CCS project creation, and a guide on how to use the peripherals and such. I mean, I want to know where the equivalent of the Starterware stuff resides within this new SDK, what exactly is the TI RTOS and SYSBIOS, how to include that stuff within a CCS project and, essentially, how to start.
    I also can't find the code for the facedetect demo anywhere, I'd like to see it.

    Thanks,
    David
  • I reply to myself: I think THIS: software-dl.ti.com/.../index.html is what I needed. Watching it right now, things start to make sense

    EDIT: this path also leads to failure. I install the C6748 RTOS SDK linked from the C6748 product page: http://www.ti.com/tool/PROCESSOR-SDK-C6748  (which is the L138 RTOS SDK) and I follow the steps provided in the video to generate the example projects. However, I don't get the C6748 PDK installed but only the OMAP L138 one (i assumed they were the same at first) and the only board available is the lcdkOOMAPL138. Then I try to build the projects with this command:

    C:\ti\PDK_OM~1\packages>pdkProjectCreate.bat C6748 lcdkOMAPL138 little gpio dsp

    I get this:

    Checking Configuration...
    ERROR: Board (lcdkOMAPL138) is invalid for the specified SOC (C6748)
    Exiting...

    EDIT 2:

    Examples generate but with this line: C:\ti\PDK_OM~1\packages>pdkProjectCreate.bat C6748 all little all all dsp

    If you set board to anything but "all" it fails. Also you have to set project type to all (the third all of the line, not documented in the video)

  • Hi,

    Sorry for the delay.

    The problem with the "baord" is a issue with the SDK.

    The problem with the project is that not all examples are supported for the OMAP-L138. Once you generate all projects you can see which are supported on C6748.

    After you generate the projects, you should import them to CCS and then build the project using CCS. After that load and run the out file generated by the build.

    Best Regards,
    Yordan
  • Hi,


    Thanks, I already figured how to run the demos. However I've decided to go the StarterWare route for now, as I want to know the processor better before digging into layers and layers of middleware. I'm learning a lot about the processor, then I'll try to lean the RTOS/SYSBIOS stuff.

  • Ok, thanks for updating the thread.

    Best Regards,
    Yordan