РЕКЛАМА 
shop

Прерывания по переполнению таймера…

Опубликовано: 01.08.2009
Автор: Krik99
Рубрики: Обучалка

Бывает когда надо выполнять, не зависимо от основной программы код, например таже динамическая индикация и тогда приходит в помощь прерывания по переполнению таймера. Когда происходит прерывание по переполнению таймера, то основная программа останавливается и начинает выполняться код, записанный в самом прерывание, после завершения исполнения прерывания, МК возвращается к исполнению основной программы в том месте, где остановился. Но если у нас кусков программы, требующих прерывания больше одного, а таймер всего один, тогда можно воспользоваться простенькой конструкцией с использованием оператора switch. Тоесть каждый раз, попадая в прерывания будет выполняться следующий кусок программы и так по кругу. Сначала первый кусок кода, в следующий раз - второй и т.д. главное чтобы куски кода не занимали много времени, так как мы всё же в прерываниях. Оператор switch имеет такой вид:
switch(i) {
       case 0: { какой-то код 0 }
       case 1: { какой-то код 1 }
       case 2: { какой-то код 2 }
       case 3: { какой-то код 3 }
       case 4: { какой-то код 4 }
} Читать полностью »

Комментарии (2) »

Работа с матричной клавиатурой 4х4

Опубликовано: 20.06.2009
Автор: Krik99
Рубрики: Обучалка

Сегодня поговорим о работе МК с матричной клавиатурой. Собственно матричная клавиатура представляет собой n-количество кнопок подключённых матрицей, тем самым уменьшается количество используемых пинов МК, но для работы нужно использовать динамический опрос. Что касается динамического опроса, всё что нужно от МК, это поочёрёдно опускать столбцы матрицы в лог.0 и слушать строки, когда происходит нажатие кнопки, вычисляем в каком столбце и в какой строке было нажатие. А далее, обрабатываем полученные данные, как хотим. Читать полностью »

Комментарии (4) »

Использование внутренней EEPROM

Опубликовано: 11.06.2009
Автор: Krik99
Рубрики: Обучалка

Иногда нужно сохранить данные, да так, чтобы после выключения питания можно было их восстановить. Большинство это данные о последних настройках, последних событиях и т. п. Для этого нам подойдёт энергонезависимая память. Почти все микроконтроллеры AVR имеют ёё у себя на борту. О размере EEPROM можно прочитать в даташите на конкретный МК. В большинстве случаев у EEPROM есть 10000 перезаписей, хотя точную цифру можно посмотреть в том же даташите на конкретный МК. А теперь рассмотрим небольшой пример работы с EEPROM в компиляторе Code Vision AVR. Читать полностью »

Комментариев нет »

AVR и регистр сдвига 74HC164

Опубликовано: 18.05.2009
Автор: Krik99
Рубрики: Обучалка

Сегодня поговорим о регистрах сдвига (shift registr) на примере 74HC164. Бывают ситуации, когда у МК не хватает свободных портов, особенно если в устройстве используется светодиодная индикация, тогда и можно использовать регистр сдвига. Да, они широко используются и в бытовой аппаратуре для работы с дисплеем. Немного теории… Из управляющих входов у нас есть: DATA, RESET, CLK ,а на выходе мы получаем 8-выходов. Немного о назначение входов. О пине RESET – сброс установленных значений на выходе, обычно не используется, так как занимает лишний пин у МК. Он должен всегда быть поднятым, для этого подрубаем его к Vcc, а сбрасывать значение будем посылкой 8бит лог.1 Читать полностью »

1 Комментарий »

Форум….

Опубликовано: 02.04.2009
Автор: Krik99
Рубрики: Новости

Всем привет, давно меня тут не было… Эх… Моё отсутствие связано с нехваткой времени и творческим кризисом, хотя есть пару наработок. Когда освобожусь - выложу. Ну а пока вот установил форум. Ссылка находится в верхнем меню. На сайте разрешена регистрация. Что касается регистрации – она параллельная, так что регистрируемся только на сайте, а на форуме автоматом появляемся. Из-за большого количества спама в сообщениях и неуместных сообщений типа: «Спасибо!», комментарии теперь смогут добавлять только зарегистрированные юзеры. Надеюсь что-то из этого выйдет. Буду рад видеть вас всех на форуме.
ЗЫ. Ну да ладно, а я за учебники.

Комментарии (2) »

« Раньше


Управление

Свежие записи

Разделы