В своем СДК я определил SamplingCycle, но его работоспособность не проверял.
В своих программах я использовал простейший путь решения проблемы:
int i;
while(1){
if ((i % 10) == 0) {
//тут обрабатываем кнопки
}
i++;
}
Смысл именно модульности. Тоесть i по модулю 10. Клава обрабатывается каждый 10 тиков.