Здесь принимаются все самые невообразимые вопросы... Главное - не стесняйтесь. Поверьте, у нас поначалу вопросы были еще глупее :)
Ответить

Как сделать задержку 30-40 мс на AT90S2313?????

Ср ноя 15, 2006 17:20:24

Помогите плиз! Нужно написать проверку на дребезг кнопок! На форуме почитал, что после первого срабатывания кнопки, надо сделать задержку 30-40 мс, а потом заново опросить!

Только начал работать на AT90S2313! Помогите, как это сделать? Желательно кусок кода, а то очень плохо ориентируюсь в таймерах и проч.

Спасибо!

Ср ноя 15, 2006 17:39:23

читал на форуме, хорошо
а на сайте в Обучалке есть примеры задержек, и не надо просить куски кода - они там уже готовые есть...

Ср ноя 15, 2006 18:59:58

Самый простой (ну имхо, имхо :wink: ) выход - заюзать макрос delay() из ВинАвра.
А потом, по необходимости, перетащить код в асм проект.

Ср ноя 15, 2006 21:20:06

Спасибо за ответы!

Только я вот чего подумал, а ведь фактически задержки надо рассчитывать исходя из частоты кварцевого резонатора????

Например, при одной частоте кварца 30 мс будет досточно, а при другой например - нет??

Я прав или это не связано с кварцом???

Ср ноя 15, 2006 21:31:30

MicroKot писал(а):... а ведь фактически задержки надо рассчитывать исходя из частоты кварцевого резонатора????
...
Я прав или это не связано с кварцом???


Абсолютная правда. Кварц влияет на частоту работы МК, а значит ВСЕ тайминги (ну для честности ВочДог - исключение, так как он от своего источника клока питается) зависят от кварца (или другого источника).

1 такт работы в секундах=частота кварца^-1

Пн ноя 20, 2006 16:08:50

Просто если будешь использовать delay(), то при изменении настроек частоты кварца в проекте макрос сам тебе пересчитает и все задержки останутся...
Ответить