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.

TMS320F28377S: Need complete Driverlib function explanations for TMS320F2837xS (similar to F28004x Workshop Guide)

Part Number: TMS320F28377S
Other Parts Discussed in Thread: TMS320F2810, C2000WARE

Tool/software:

Hello TI Team,

I am working on migrating firmware developed for TMS320F2810 (Bitfield version) to Driverlib APIs on the TMS320F2837xS device.

While going through the available training material, I noticed a significant difference between two workshop documents: 

The F28004x Workshop document explains Driverlib functions for each peripheral (e.g., in the ADC section it lists ADC_setInterruptSOCTrigger(), ADC_readResult(), etc., with parameter descriptions).
However, the F2837xD Workshop only shows block diagrams and functional diagrams; it does not include similar Driverlib function explanations.

For example, in the F28004x ADC chapter, the following functions are documented in detail:

ADC DriverlibFunctions
Configure an interrupt start-of-conversion trigger
ADC_setInterruptSOCTrigger(base, socNumber, trigger);
Set EOC source for an ADC interrupt
ADC_setInterruptSource(base, adcIntNum, socNumber);
ADC_[enable|disable]Interrupt(base, adcIntNum);
Force an SOC conversion (software trigger)
ADC_forceSOC(base, socNumber);
Configure ADC EOC interrupt pulse generation
ADC_setInterruptPulseMode(base, pulseMode);
Read ADC result register
ADC_readResult(resultBase, socNumber);

with parameters like:

  • base: ADCx_BASE (x = A to C)

  • socNumber: ADC_SOC_NUMBERx (0–15)

  • trigger: ADC_INT_SOC_TRIGGER_*

  • adcIntNum: ADC_INT_NUMBERx (1–4)

  • pulseMode: ADC_PULSE_END_OF_*

  • resultBase: ADCxRESULT_BASE


My Query

Is there any document, training, or reference guide for TMS320F2837xS/D that describes all Driverlib functions for each peripheral (like the F28004x Workshop Guide does)?
A single source listing the APIs, their purpose, and parameters would make it much easier to migrate Bitfield-based firmware to Driverlib.

If such a document is not available, could you please suggest the recommended approach (e.g., header files, Doxygen-generated API docs, or any other resource) for getting detailed descriptions of all Driverlib functions for F2837x devices?

Any links or guidance would be highly appreciated.

  • Hi Venkatesh,

    Full explanations of the F2837x (and all C2000 MCUs) are available in the driverlib files themselves. Above each function, in both the C and header files, you will find details on function purpose and usage. In addition, here is a one-stop-shop page of all the available Device Migration resources, including C2000 IDEA (real-time coding support) and migration guides.

    Best Regards,

    Aishwarya

  • Hi Aishwarya,

    Thanks for sharing the driverlib path and resources. I went through
    C:\ti\c2000\C2000Ware_5_05_00_00\driverlib\f2837xs\driverlib,
    but the adc.c/h files don’t give the same step-by-step usage notes that appear in the F28004x workshop (e.g., explanations of each ADC_* API, trigger values, result base, etc.).

    I’m developing custom functionality in e.g. adc.c for F2837x, so I’m looking for material that explains the framework and intended usage of each driverlib function — something similar to the “ADC Driverlib Functions” section of the F28004x workshop guide.

    Could you please let me know:

    1. Is there a comparable workshop, application note, or user guide for F2837x driverlib?

    2. Are there any example projects in C2000Ware that demonstrate the recommended configuration flow for F2837x ADC (SOC trigger, interrupt source, result reading, etc.)?

    3. If such documentation doesn’t exist, is it reasonable to use the F28004x workshop as a conceptual reference while checking the exact function signatures/limits in f2837xs\driverlib headers and the F2837x TRM?

    Any pointers would be greatly appreciated.

    Best regards,
    Venkatesh

  • Venkatesh,

    You should already be referring to the many C2000WARE examples and the TRM which has detailed explanations of the various topics. The examples go through various applications of the modules. You can also utilize the F28004x workshop guide as a general reference as the functions + usage are very similar across devices, if not the same. 

    Best Regards,

    Aishwarya

  • Hi Aishwarya,

    Thanks for clarifying that I can use the F28004x workshop as a reference and rely on the TRM + C2000Ware examples for F2837x.

    Before I proceed further, could you please help me with a few points:

    1. Are there any plans (or existing material) for a dedicated F2837x workshop or manual similar to the F28004x guide that explains each driverlib function?

    2. Which C2000Ware example(s) for F2837x demonstrate the complete ADC configuration flow — SOC trigger, interrupt, result reading, etc.?

    3. Is there an official mapping (or table) between F2837x driverlib APIs and the corresponding hardware registers described in the TRM?

    These would help me structure my learning and migration work from F2810 to F2837x driverlib more efficiently.

    Best regards,
    Venkatesh

  • Venkatesh,

    Are there any plans (or existing material) for a dedicated F2837x workshop or manual similar to the F28004x guide that explains each driverlib function?

    No, because there is already similar content for F28004x as you have mentioned and this content is explained in similar ways in the other resources provided. Another resource to check out is C28x Academy.

    Which C2000Ware example(s) for F2837x demonstrate the complete ADC configuration flow — SOC trigger, interrupt, result reading, etc.?

    Refer to C:\ti\c2000\C2000Ware_6_00_00_00\driverlib\f28p65x\examples\c28x\adc to select the example that is best suited for your application as all of them include ADC initialization and operation code.

    Is there an official mapping (or table) between F2837x driverlib APIs and the corresponding hardware registers described in the TRM?

    Yes, this is available along with the list of SW examples and registers at the end of every TRM chapter. Included a snippet below:

    Best Regards,

    Aishwarya