Если осциллятор делится нацело на 1000гц(1мс), то лехко.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)
Отправлено
=mse=
22 сентября 2004 г. 10:22
В ответ на:
Возможно ли на микроконтроллере (msp430, avr, pic, ...) получить заданный интервал времени, допустим, 1мс с систематической ошибкой =0, определяемой не кратностью делителя частоты осциллятора?
отправлено bzx 22 сентября 2004 г. 10:18
Составить ответ
|||
Конференция
|||
Архив
Ответы
Это всё верно, но...
—
bzx
(22.09.2004 11:11, 644 байт)
Сталкивался однажды с такой ситуации. Решение довольно простое (+)
—
†
(22.09.2004 12:14, 355 байт)
вот-вот. Тебе уже подсказали - capture-compare и flip выхода при совпадении. Человеческий фактор понадобится только в случае...
—
=mse=
(22.09.2004 11:25, 233 байт)
Все правильно, временной интервал таймера может измениться. Но только
—
Bill
(22.09.2004 11:23, 289 байт)
Да всё правильно, если идёт речь о автоперезагрузке.
—
bzx
(22.09.2004 11:53, 41 байт)
Если таймер с автоперезагрузкой (а это так в большинстве современных процессоров), то фигня - все на аппаратном уровне - просто следующий интервал уменьшится.
—
-=John=-
(22.09.2004 11:17,
пустое
)
В большинстве современных процессоров -да, но не в большенстве микроконтроллеров. :) Например, у многих пиков нет автоперезагрузки.
—
bzx
(22.09.2004 11:56,
пустое
)
Так используй те, в которых есть, что за вопрос!
—
Dіr
(22.09.2004 14:17, 182 байт)
чё-то слова какие-то непонятные. В процессорах таймеров вообще нет...
—
=mse=
(22.09.2004 12:30, 339 байт)
А не проще использовать Output Compare Match режим? Здесь вообще никаких программных манипуляций не требуется.
—
Bill
(22.09.2004 15:27,
пустое
)
Про это ужо было указано, на что возражено: "а если нет OCxx?"
—
=mse=
(22.09.2004 15:56,
пустое
)
Я про то же.
—
bzx
(22.09.2004 13:07,
пустое
)
В таком случае нужно остановить процессор (командой HALT etc.) Тогда можно рассчитать к-во тактов точно
—
NickB
(22.09.2004 11:17,
пустое
)
А в чём задача заключается-то? Регистры Capture/Compare к примеру работают с клоком аппаратно и там тех траблов, что вы описали нет
—
-=Shura=-
(22.09.2004 11:15,
пустое
)
А переменный коэфициент деления.?
—
D.A.
(22.09.2004 10:33,
пустое
)
ну нормально, я же не зря написал "леХко" Какой переменный коэффициент будет для часового кварца? Или для ПСшного 14.31818?
—
=mse=
(22.09.2004 11:00,
пустое
)
А есть такие, что не делятся? ;-)
—
-=Shura=-
(22.09.2004 10:24,
пустое
)
часовые, например ;О)
—
=mse=
(22.09.2004 10:31,
пустое
)
Да, про них забыл :-)
—
-=Shura=-
(22.09.2004 10:33,
пустое
)
14.7456 MHz
—
=TriD=
(22.09.2004 10:30,
пустое
)
Перейти к списку ответов
|||
Конференция
|||
Архив
|||
Главная страница
|||
Содержание
|||
Без кадра
E-mail:
info@telesys.ru