|
| |||||||
|
Опубликовано 2010-03-21 17:40:28 автором Ruslan Как подключить к микроконтроллеру кнопки. Урок AVR 5В предыдущих уроках я рассказывал, как с мк вывести информацию: подключения семисегментного индикатора и Lcd дисплея . А в этом уроке мы будем вводить информацию при помощи кнопок. Кнопки бывают нескольких видов: фиксирующие и тактовые.Из названия кнопки понятен принцип ее работы: тактовая - нажал, контакты замкнулись, разжал - разомкнулись; фиксирующие фиксируют своё состояние: нажал - замкнулись контакты, еще раз нажал - разомкнулись.Стандартная схема подключения кнопок очень простая, выглядит так
#include <mega8.h>
#include <delay.h>
void main(void)
{
// инициализация порта D
PORTD=0b00000000;
DDRD=0b10000000;
while (1)
{
if (PIND & 0b00000100) /*проверяем, какой логический уровень у нас на ножке знак & - означает побитовое 'И'
например в PIND в нас находится 0b00000100, тогда 0b00000100 & 0b00000100 = 0b00000100,
то есть true, а если в PIND у нас 0b00000000, то 0b00000000 & 0b00000100 = 0b00000000 а это false */
PORTD=0b00000000; // записываем ноль в седьмой бит порта D
else
PORTD=0b10000000; // записываем единицу в седьмой бит порта D
};
delay_ms(100); // делаем задержку в 100 милисекунд для защиты от дребезга контактов
}В большинстве современных микроконтроллеров есть встроенный подтягивающий резистор R1, поэтому внешний можно и не ставить
Комментарии - (0) Добавить комментарийДля отправки комментария вы должны авторизоваться. |
|||||||