Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств
Шаг 6. Осваиваем все возможности микроконтроллера ATtiny23 13 503 12-разрядный таймер/счетчик. Объединение 4-разрядного счет чика USI и таймера/счетчика 0 позволяет использовать их как один 12-разрядный счетчик. Запускаемое фронтом внешнее прерывание. При записи в счетчик максимального значения (OxF) он может работать как дополнительное внешнее прерывание. В этом случае флаг прерывания по переполнению счетчика и бит разрешения прерывания используются для управления этим внешним прерыванием. Этот режим выбирается при помощи бита USICS1. Программное прерывание. Прерывание по переполнению счетчика может использоваться как программное прерывание, вызванное стробом тактового сигнала. Рассмотрим подробно регистры USI. Регистр данных USI — USIDR Номер бита 765432 10 j MSB | | | | | | I LSB I USIDR Чтение(А)/Запись(УУ) R/W R/W R/W R/W R/W R/W R/W R/W Начальное значение 00000000 Модуль USI не использует буферизации, то есть при записи или чте нии информации из регистра USIDR процессор непосредственно обра щается к сдвиговому регистру. Если тактовый сигнал поступает на сдви говый регистр в том же самом цикле, когда происходит запись значения в регистр, приращение регистра не выполняется, и в регистре останется только что записанное значение. Выполнение операции сдвига (влево) зависит от установки битов USICS1 — 0. Операция сдвига может производиться: ♦ по фронту внешнего синхроимпульса; ♦ по переполнению таймера/счетчика 0; ♦ непосредственно программным путем с использованием бита USICLK в качестве строба. Внимание. Даже если не выбран ни один из двух режимов работы USI (USIWM 1 — 0=0), оба внешних контакта — линия данных (DI/SDA) и линия тактового сигнала (USCK/SCL) — могут использоваться сдвиговым регистром. Выход данных (в зависимости от выбранного режима это DO или SDA) соединен через внутренний электронный переключатель со стар шим разрядом (бит 7) регистра данных. Триггер-защелка: ♦ открыт (прозрачен) в течение первой половины цикла сдвига, если выбран внешний источник тактового сигнала (USICS1 = 1);
Made with FlippingBook
RkJQdWJsaXNoZXIy MTExODQxMg==