Белов, А.В. Микроконтроллеры AVR: от азов программирования до создания практических устройств

504 Микроконтроллеры AVR от азов программирования... ♦ открыт постоянно, если используется внутренний источник такто- вого сигнала (USICS1 = 0). Сигнал на выходе будет изменен немедленно, если в момент появления нового значения MSB триггер-защелка находится в прозрачном состоя ­ нии. Применение триггера-защелки гарантирует, что момент считывания данных на входе и момент их изменения на выходе будут синхронизиро ­ ваны противоположными фронтами тактового сигнала. И Это интересно знать. Для того чтобы данные с выхода сдвигового регистра могли посту ­ пать на внешний контакт микросхемы, необходимо сконфигуриро ­ вать его как выход. Регистр состояния USI — USISR Номер бита 7 ______ 6 ________ 5 _________ 4 _______ 3 ________ 2 _______ 1 ___________ 0 I USISIF | USIOIF | USIPF | USIDC |USICNT3|USICNT2| USICNT1 |uSICNT0| USISR 4TeHMe(R)/3anncb(W) R/W R/W R/W R R/W R/W R/W R/W Начальное значение 00000000 Регистр состояния содержит флаги прерывания, флаги состояния линии и значение счетчика. Бит 7 — USISIF: Флаг прерывания по обнаружению стартового усло ­ вия. Если выбран двухпроводный режим работы, то флаг USISIF устанав ­ ливается (в единицу), если обнаружено стартовое условие. Если выбран режим отключения выхода или в трехпроводном режиме выбрана одна из комбинаций битов (USICSx = Obi 1 и USICLK = 0 или USICS = 0Ь 10 и USICLK = 0), то флаг устанавливается по любому фронту на входе SCK. Прерывание будет сгенерировано в том случае, когда установлены в единицу: ♦ данный флаг; ♦ бит разрешения прерывания USISIE регистра USICR; ♦ флаг глобального разрешения прерывания (I). Флаг может быть очищен только путем записи логической единицы в разряд USISIF. В двухпроводном режиме очистка этого бита освобождает линию USCL, удержание которой начинается с момента обнаружения стартового условия. Прерывание по обнаружению стартового условия приводит к пробуждению процессора из всех спящих режимов. Бит 6 — USIOIF: Флаг прерывания по переполнению счетчика. Этот флаг устанавливается (в единицу) в том случае, когда переполняется 4-разрядный счетчик (то есть при переходе его содержимого от 15 к 0). Прерывание будет сгенерировано, если установлены: ♦ данный флаг;

RkJQdWJsaXNoZXIy MTExODQxMg==