Судя по MPLAB C guide , самый большой целочисленный тип данных, поддерживаемый компилятором C, - 32-битный. Из того, что я могу найти в другом месте, счетчик тиков составляет шесть байтов - TickGetDiv256
возвращает «среднюю четверку» этих байтов.
Поскольку полные шесть байтов счетчика тиков не могут вписаться в 32-разрядное целое число, вы должны использовать TickGetDiv256
для извлечения средних байтов и, таким образом, иметь количество прошедших интервалов «256 тиков» так как счетчик был запущен. Конечно, это не совсем верно, так как он игнорирует старший байт счетчика тиков. Вы бы использовали эту функцию, если младшие четыре байта счетчика тиков не обеспечивают достаточный диапазон для интересующего вас промежутка времени.