Всем доброго времени суток. Помогите оптимизировать код. Суть, регулировать паузу между включениями, так и время включенного состояния.
PORTB.0=1;
delay_ms(200);
PORTB.0=0;
delay_ms(10);
PORTB.0=1;
delay_ms(200);
PORTB.1=0;
delay_ms(10);
PORTB.1=1;
....
Заранее благодарен за помощь.
[uquote="Martian",url="/forum/viewtopic.php?p=4210892#p4210892"]ну, написать функцию с двумя параметрами задержек.
а вообще, лучшая оптимизация подобного - использование таймера.[/uquote]
Не подкинете пример?
А что тут оптимизировать? Если хотите избавиться от блокирующей задержки, тогда пишите, используя прерывания от таймера или флаги по истечении периода и КА со счетчиком состояний.
[uquote="НовыйДень",url="/forum/viewtopic.php?p=4210927#p4210927"]А что тут оптимизировать? Если хотите избавиться от блокирующей задержки, тогда пишите, используя прерывания от таймера или флаги по истечении периода и КА со счетчиком состояний.[/uquote]
Спасибо, я это понял. Не подскажите где глянуть на примере?
Вы пытаетесь научиться программировать микроконтроллеры без книжки? Практически в любой книжке есть пример написания функции с передачей и возвратом данных, это ведь азы программирования. Примеры с таймером несколько сложнее (относительно примера функции), но тоже есть в каждой книжке. То есть, на Ваши вопросы вся информация уже есть и в большом количестве.
Пробуйте написать сами. И если написанное почему-то не заработает, тогда уже имеет смысл уточнить здесь, что именно Вы не так поняли из книг (которых в электронном виде масса бесплатно в том числе и тут)
Вопрос снят. Всем спасибо за внимание.
PS. Уважаемый Мартин, не лень было столько писать? В вашем первом ответе все было сказано, остальное, извините, флуд.
amirus, у меня около 500 знаков в минуту скорость набора. Слепая печать. Своим ответом я наделся направить Вас на путь истинный, но, похоже, надо было просто обозвать дебилом.