реклама на сайте
подробности

 
 
> atMega16
neggatif
сообщение Apr 4 2011, 17:25
Сообщение #1





Группа: Новичок
Сообщений: 1
Регистрация: 4-04-11
Пользователь №: 64 125



Помогите, пожалуйста, написать программу для решения поставленной задачи:

Организовать подсчёт нажатий на кнопку SW3, подключённую к PB1, и
выдачу 4-битного результата в двоичном коде на выводы PB4, PB3, PB2, PB0
(светодиоды VD4-VD1).

Используется компилятор AVRstudio.
Буду благодарен, я сам чайник, но хочу разобраться на конкретном примере.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Xenia
сообщение Apr 4 2011, 18:11
Сообщение #2


Гуру
******

Группа: Модератор FTP
Сообщений: 4 479
Регистрация: 20-02-08
Из: Москва
Пользователь №: 35 237



Пин PB1 на контроллере этого типа является по совместительству счетным входом 1-го таймера (Timer/Counter1 External Counter Input).
Отсюда следует самый простой алгоритм решения задачи: Timer1 программируется в режим счета внешних импульсов, а младшие 4 бита двоичного счетчика этого таймера оправляются в порт зажигать светодиоды.

Косвенным свидетельством того, что задача решается именно так, является использование для кнопки именно PB1, несмотря на то, что порядок пинов, зажигающих светодиоды при этом нарушается: PB4, PB3, PB2, PB0, где PB1 пропущен. Если бы задача решалась периодическим опросом пина с кнопкой, то не имело бы смысла устраивать чехарду с порядком пинов.

Поскольку автор топика утверждает, что он в этом деле чайник, то очевидно, что данная задача чисто учебная. В противном случае автор должен был бы знать причину, по которой ему приспичило использовать для кнопки именно PB1, но тогда бы он и сам знал, как эта задача решатся.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 06:58
Рейтинг@Mail.ru


Страница сгенерированна за 0.01361 секунд с 7
ELECTRONIX ©2004-2016