прошу написать примерчик как это меряется, знаю что таймер надо как то использывать но вот пока с ним работать не умею. сам тут уже разобратся не могу.
заранее спасибо
GP1 писал(а):тут есть два пути:
1. измерять частоту
2. измерять период
оба метода абсолютно равнозначны
примерчик бы накидал но у меня с Си проблема
несовсем такКашпо писал(а):если ты считаешь дневной и суточный пробеги - значит как-то отмеряешь время. т.е. где-то внутри контроллера "тикают" твои секунды (или не секунды, ну в общем какие-то подобные интервалы). ну вот и смотри сколько метров намотал одометр между двумя тиками (или между 10, 100, 1000 тиками, если твои "тики" очень быстрые)
посути твой суточный одометр это спидометр который показывает скорость в км/сут
GP1 писал(а):в таймере Т1 есть вход ICP организуется прерывание, скажем по нарастающему фронту, а сам счетчик заполняем тактовой частотой, т.е. между двымя импульсами получим некоторое число в TCNT1 которое будет пропорционально скорости.а дальше чистая математика.
Код: Выделить всё
interrupt [EXT_INT0] void ext_int0_isr(void)
{
i++;
}
interrupt [TIM1_COMPA] void timer1_compa_isr(void)
{
TCNT1H=0x00;
TCNT1L=0x00;
speed=//i*2 - м в 1 сек *3600 - м за 1 час /1000 - км за 1 час
i=0;
}
Далеко не равнозначны... Подумайте о границах применимости двух методов...GP1 писал(а):тут есть два пути:
1. измерять частоту
2. измерять период
оба метода абсолютно равнозначны...