Hello,
I'm a newbie on TI Sys/Bios.. I was trying to create a program with Sys/Bios using two tasks and semaphores, the lowest priority task was created to send some float values to the PC using sprintf function.
This sprintf function was causing a stack overflow error, while I was looking for clues to solve the problem (namely heap size, memory allocation, stack size) I found that the error was dependent on the way that I create the project.
If I create the project using sample CCS project C28x "Task" example it would gave me no error, otherwise, if I create a CCS generic project using "Task Mutex" example the sprintf function would block the code execution due to overflow.
Then I've found, through ROV, that my tasks wouldn't show up (in ROV) unless I create them in the configuration file (*.cfg).
I this normal? Which is the best way to create tasks?? Main code (*.c file) or *.cfg file?
It seems to happen with the semaphores too, when I create semaphores in the main file I can't see them in ROV.
Does anyone knows why?
Is the initialization of semaphores and tasks inside *.cfg file a better pratice?
Now that created a task o the *.cfg file and the semaphores are still initialized on the main file, the code seems not to respect the semaphore and the timing respecting the task initialized in the *.cfg file. (instead of sending to the PC every 500 ms it keeps sending without stop)
Thanks in advance.
Mário Silva