Name
Timers — Use of on-chip timers
System Clock
The eCos kernel system clock is implemented using the BCM283X
System Timer device. By default, the system timer is
programmed to interrupt once every 10ms, corresponding to a
100Hz clock. This can be changed with the configuration option
CYGNUM_HAL_RTC_DENOMINATOR
which
corresponds to the clock frequency. Other clock-related
settings are recalculated automatically if the denominator is
changed. The system timer is clocked at 1MHz, so there are
limits on the accuracy of any frequency that is not a factor
of 1000000.
The same timer is also used to implement the HAL microsecond delay
function, HAL_DELAY_US
. This is used by some
device drivers, and in non-kernel configurations, such as
RedBoot, where this timer is needed for loading program images via
X/Y-modem protocols and debugging via TCP/IP. Standalone
applications which require RedBoot services, such as debugging,
should avoid use of this timer.
Timer-based Profiling Support
At present timer based profiling is not supported. This is mainly because the current profiling support is not SMP-aware.
2024-03-18 | eCosPro Non-Commercial Public License |