I have been testing Simplelink with CCS now some time. I am still stuck with the examples, although I have made some extensions.
I have a long background in realtime operating system, mainframes and Windows, so I started immediately with Tirtos. Doing all according to the manuals, Getting started and others, and trying to build gives only all kinds of mysterious error messages from linker, missing this and missing that. I tried to find some solution from internet. I noticed, that also others have had the same problem. Suggested solution were mainly as mysterious as the problem. Some referred to some Linux stuff, some found salvation uninstalling a competitive framework. All seemed a little far fetched. Just for sure I uninstalled and reinstalled CCS, but no help. After struggling a round I found a solution, when I could build the project without errors. In linker file search path I removed libc.a and added rtsv7M3_T_le_eabi.lib. All seem to work fluently. Only thing is, that I do not know, if this library is the right one. First of all M3 referes to M3 prosessort and CC3200 has M4. Trying to use some of those xxxM4xx libraries does not work, they seem to suppose, that the prosessor has a FPU, but CC3200 does not have. So,
- what are the right includes (minimum), I need to be able to compile the projects without errors
- what are the libraries I need to be able to link Tirtos for CC3200 projects. (Manuals are outdated.)
- where can I find information, what these libraries, e.g. mentioned above, are for.
After being able to build the project, it also seems to work, pretty well. I started with Tirtos I2C example and added there a SPI driver to add a LCD display. Writing to SPI is done using DMA in separate task. Communication is done based on the instructions in the manuals. Longer data strings is served to the DMA in 1024 blocks. All goes fine, initialisation of the LCD and also drawing, but after that there is a wait, Task_sleep(1000). When the program comes here, it jumps to loader_exit and prints to the console some register(?) values. I could not find in internet any good information about these.
This kind of problem seems to be quite common, what comes to embedded systems and realtime operating system, although I have experience only in some others, most (although not much) in FreeRTOS. Mainly the problem lies in the stack size. There are no good means to estimate the proper size, nor good means to track it's use, at least I do not know.
Are there any good instructions, how to estimate stack and heap sizes for Tirtos?
Ti is not a small player, I know it from the late 70's. In those days my hobby was building electronics, in work I used Intel prosessors and RMX, they were good. Also nowadays TI is not small, so it seemed safe to buy Simplelink board. TI has own framework, own operating system, own components, own boards, own examples... Have to say, I am little bit disappointed this far.
Is it possible to make examples, which work off the shelf, at least in Windows, Windows is still the main operating system in developing programs.