Why is it 30000 in the figure
Scheduling OsScheduleTableExpiryPoint why is the number in the table as shown in figure
And system time, oscounttickPerBase why is it 10
Hello,
OSScheduleTableDuration refers to modulus of the schedule table, or the schedule table duration.
In OsScheduleTable, OsScheduleTableCounterRef refers to /Os/Os/SYSTEMTIMER. Each tick in SYSTIMER can be calculated based on /Os/Os/os1/OsTargetMCU/OsTargetMCU/OsSysTimer.
This timer based on EMIOS_0. Prescaler is 2 (OsValue). By default, EMIOS_0 uses FS80 as clock source, and FS80 is 8MHz. So each schedule table will have a period of 30000 * (1/8000000) = 3.75ms
OsCounterTicksPerBase is implementation specific and as I know, not used in this package.
Thanks for your reply, I have understood a little. In addition, isn't the main clock frequency of MPC5748G 160M? Isn't the main core used in this project
However, the NS of system time after system EB is configured is 750 ticks of MPC5748G. Is this parameter also calculated according to 160M? As shown in the figure,
EB parameter is successfully configured
These code is just a kind of example (with Core CLK 16MHz, using EMIOS/PIT/...), and tick to base (ns, ms, second) conversion is pretty much depended on how you choose the HW counter, clock,... Let's say that in case that you choose the PLL for Core CLK (which could be 160MHz) then you have to manually calculate the conversion ratio value.