Migrating to TivaWare

By now you know StellarisWare is gone, and TivaWare has replaced it. For the most part it is a name change, but there are a few things you should know before you upgrade.

TivaWare is a rebranding, but it is also an upgrade. Aside from the obvious name changes of the chips (so previous lm4fxxx.h/.c files are now tm4cyyy.h/.c) there is also an upgrade from C89 type defs to C99 type defs. What this means is declarations have changed:

long int->int_32t

unsigned int -> uint_32t

short->uint_16t

char-> uint_8t (except when used for characters, then still a char, functions that print are picky)

And because the Stellaris Team (yes, they’re still called that) uses Hungarian notation

global variable names -> g_*

pointer variable names -> p*

structure variable names -> s*

enumeration variable names -> e*

so for example a global pointer to an unsigned integer named variable would be

int32_t g_pui32variable

Aside from that not much has changed, the majority of the API’s are the same, the Direct Register Access defines are the same, its really just replacing the old part number .h file and changing the definitions of variables that has changed.

 

Some handy dandy app notes on the transition

App Note on transitioning designs from Stellaris LM3S to Tiva Series Microcontrollers

http://www.ti.com/lit/pdf/spma049

App Note on Migrating from StellarisWare to TivaWare:

http://www.ti.com/lit/pdf/spma050

App note on Differences between LM3S and Tiva C-Series:

http://www.ti.com/lit/pdf/spma035

App Note on System Design Guidelines:

http://www.ti.com/lit/an/spma051/spma051.pdf