Timers and counting semaphore

osThreadDef(T1, Thread1, osPriorityNormal, 0, configMINIMAL_STACK_SIZE);

osThreadDef(T2, Thread2, osPriorityBelowNormal, 0, configMINIMAL_STACK_SIZE);

osThreadDef(T3, Thread3, osPriorityLow, 0, configMINIMAL_STACK_SIZE);


ThreadId1 = osThreadCreate(osThread(T1), NULL);
ThreadId2 = osThreadCreate(osThread(T2), NULL);
ThreadId3 = osThreadCreate(osThread(T3), NULL);



	// timer definition
	osTimerDef(Thread1timer, osTimerCallback1);
	osTimerDef(Thread2timer, osTimerCallback2);
	//osTimerDef(Thread3timer, osTimerCallback3);

    	// timer creation
	osTimerId osTimer1 = osTimerCreate(osTimer(Thread1timer), osTimerOnce, NULL);
	osTimerId osTimer2 = osTimerCreate(osTimer(Thread2timer), osTimerOnce, NULL);
	//osTimerId osTimer3 = osTimerCreate(osTimer(Thread3timer), osTimerOnce, NULL);
		/* Start Timer */

	osTimerStart(osTimer1, 700);
	osTimerStart(osTimer2, 2100);

	//osTimerStart(osTimer3, 3000);

	osSemaphoreDef(sem);

	semid = osSemaphoreCreate(osSemaphore(sem), 1);

	
osKernelStart();

// I’m wotking wit the CMSIS API, I don’t know how to translate it in freeRTOS // API.
// if timer3 is enabled, when pausing the debugger, the code executed is in kernel start