Other Parts Discussed in Thread: SYSBIOS
Tool/software: Code Composer Studio
Hello, I'm new to sysbios, I did find a Blinky project. Does someone have one to share.
it does not necessarily need to be specific to 28377.
thanks
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.
Tool/software: Code Composer Studio
Hello, I'm new to sysbios, I did find a Blinky project. Does someone have one to share.
it does not necessarily need to be specific to 28377.
thanks
Hi,
There are examples in the SYS/BIOS product. You need to
Todd
hello Todd, 6_76_02_02 is installed, which I found SYS/BIOS and Non-BIOS projects. Within the BIOS projects, I did not find a Blinky.
Starting with a non-BIOS Blinky project, I added RTSC configuration file. Which resulted in "linker" and "invalid re-declaration" "compiler errors, of which some I resolved.
My question is, Staring with any Non RTOS project is it possible to add SYS/BIOS, if so is there step-step process.
When using the BIOS, which includes and header files are not required, to blink a LED.
thanks
The SYS/BIOS product does not have any "peripheral" examples like blinky or serial. The only peripherals the kernel interfaces with are the timers and vector table.
I'd recommend starting with a SYS/BIOS example and add functionality onto it instead of taking a non-SYS/BIOS example and trying to add the kernel into it.
Todd
using SYSBIOS "Task" as the base project and adding :
//////////////////////////////////////////////////////////////////
InitSysCtrl();
InitGpio();
GPIO_SetupPinMux(BLINKY_LED_GPIO, GPIO_MUX_CPU1, 0);
GPIO_ SetupPinOptions(BLINKY_LED_GPIO, GPIO_OUTPUT, GPIO_PUSHPULL);
DINT;
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
EINT; // Enable Global interrupt INTM
ERTM; // Enable Global realtime interrupt DBGM
//////////////////////////////////////////////////////////////////
Task_Params taskParams;
/* Create a Semaphore object to be use as a resource lock */
sem = Semaphore_create(1, NULL, NULL);
/* Create two tasks that share a resource*/
Task_Params_init(&taskParams);
taskParams.priority = 1;
tsk1 = Task_create (task1, &taskParams, NULL);
Task_Params_init(&taskParams);
taskParams.priority = 2;
tsk2 = Task_create (task2, &taskParams, NULL);
BIOS_start(); /* does not return */
return(0);
this resulted in new code indiscreetly mixed with sysbios code (I'm guessing) and the code hanging in timer2 interrupt when running on the launch pad. .When the blinky code is removed, the base project run as expected.
Which sections of the blinky code are required for the sysbios project.
thank
Todd
You should not be managing the vector table directly. The kernel is manages this instead. For the timer, you need to use the ti.sysbios.hal.Timer module.
Can you confirm that the following items are not required:
InitSysCtrl();
DINT;
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
EINT; // Enable Global interrupt INTM
ERTM; // Enable Global realtime interrupt DBGM
thanks
jw said:Can you confirm that the following items are not required:
InitSysCtrl();
DINT;
InitPieCtrl();
IER = 0x0000;
IFR = 0x0000;
InitPieVectTable();
EINT; // Enable Global interrupt INTM
ERTM; // Enable Global realtime interrupt DBGM
Yes
The older workshop has been replaced with this: https://training.ti.com/getting-started-ti-rtos-training-series