23 августа 2012 г.

Подсчет нажатий с 8-сегментным индикатором

Я доработал программу, которая считает количество нажатий кнопки. Теперь количество отображается с помощью 8-сегментного светодиодного индикатора. Для простоты я использовал один индикатор, соответственно отобразить можно только одну цифру. Поэтому программа считает до 9, а при следующем нажатии сбрасывает счетчик.

19 августа 2012 г.

Первый блин на Tiny26

Моя первая программа на МК. Каждые 2 секунды меняет уровень на первом контакте порта A на противоположный. Так сказать, программа типа "помигать диодом".

Прерывание по уровню и фронту

Программа считает количество прерываний по линии INT0 и выводит его в порт А. Я отдельно рассматриваю случаи, когда прерывание вызывается низким уровнем сигнала, передним или задним фронтом и изменением уровня.

18 августа 2012 г.

Обработка прерываний. Регистр GIFR.

Чтобы вызвать прерывание от внешнего источника, на соответствующей ножке МК нужно создать необходимые электрические условия. Например, прерывание можно вызвать изменением потенциала с высокого на низкий. При этом, чтобы был вызван обработчик, прерывания в МК, необходимы следующие условия:
  • прерывания должны быть разрешены глобально (бит I в регистре SREG должен быть установлен);
  • конкретное прерывание должно быть разрешено (установлен соответствующий прерыванию бит в регистре GIMSK).