Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

CTRLA - регистр управления А подчиненного модуля TWI

Поиск
Бит                  
+0x00 INTLVL[1:0] DIEN APIEN ENABLE PIEN PMEN SMEN CTRLA
Чтение/запись Чт/Зап Чт/Зап Чт/Зап Чт/Зап Чт/Зап Чт/Зап Чт/Зап Чт/Зап
Нач значение                

· Биты 7:6 - INTLVL[1:0]: уровень прерывания подчиненного модуля TWI

С помощью бит INTLVL можно задать уровень прерываний подчиненного модуля TWI.

· Бит 5 - DIEN: разрешение прерывания по данным

Установка бита DIEN разрешает прерывание по данным при установке флага DIF в регистре STATUS. Чтобы генерация прерываний стала возможной, биты INTLVL должны иметь отличное от нуля значение.

· Бит 4 - APIEN: разрешение прерывания по адресу/условию STOP

Установка бита APIEN разрешает генерацию прерывания при установке флага прерывания по адресу/условию STOP (APIF) в регистре STATUS. Чтобы генерация прерываний стала возможной, биты INTLVL должны иметь отличное от нуля значение.

· Бит 3 - ENABLE: разрешение работы подчиненного модуля TWI

Установка бита ENABLE активизирует работу подчиненного модуля TWI.

· Бит 2 - PIEN: разрешение прерывания по условию STOP

Установка бита PIEN разрешает генерацию прерывания при установке флага APIF в регистре STATUS, вызванное обнаружением условия STOP.

· Бит 1 - PMEN: разрешение работы в режиме PROMISCUOUS

После установки бита PMEN логика сравнения адресов подчиненного устройства будет реагировать на все принятые адреса. Если же данный бит равен нулю, то логика сравнения адресов будет считать собственным адресом значение в регистре ADDR.

· Бит 0 - SMEN: разрешение режима SMART

Установка бита SMEN активизирует работу в режиме SMART. В этом режиме, сразу после считывания регистра DATA отправляется бит подтверждения со значением, заданным битом ACKACT в регистре CTRLB.

CTRLB - регистр управления В починенным модулем TWI

Бит                  
+0x01
- - - - - ACKACT CMD[1:0]
CTRLB
Чтение/запись Чт/Зап Чт/Зап Чт/Зап Чт/Зап Чт/Зап Чт/Зап Чт/Зап Чт/Зап
Нач значение                

· Бит 7:3 - Res: резервные биты

Данные биты не используются и зарезервированы для использования в будущем. В целях совместимости с более новыми МК, выполняя запись в этот регистр, всегда записывайте нули в резервные биты.

· Бит 2 - ACKACT: выбор подтверждения

С помощью бита ACKACT можно задать значение бита подтверждения, который передается после приема от ведущего устройства байта адреса или данных. Передача этого бита выполняется после записи команды в биты CMD. Если бит SMEN в регистре управления CTRLA равен единице, то заданный бит подтверждения передается при чтении из регистра DATA.

Описание настроек бита ACKACT представлено в таблице 19.6.

Таблица 19.3. Описание бита ACKACT

ACKACT Действие
  Отправляется ACK
  Отправляется NACK

· Биты 1:0 - CMD[1:0]: команда

Запись в биты CMD инициирует выполнение подчиненным устройством операции в соответствии с таблицей 19.7. Биты CMD являются стробами и всегда считываются с нулевым значением. Выполняемая операция зависит от состояния флагов прерываний DIF и APIF подчиненного модуля. Подтверждение, заданное битом ACKACT, передается только при приеме от ведущего устройства байт данных или байта адреса.

Таблица 19.7. Команды подчиненного модуля TWI

CMD[1:0] DIR Команда
  X Нет операции
  X (резерв)
  Используется для завершения транзакции
  Выполнить заданное битом ACKACT подтверждение и перейти к ожиданию любого условия START (S/Sr)
  Ожидать любое условие START (S/Sr)
  Используется для ответа на принятый байт адреса (APIF = 1)
  Выполнить заданное битом ACKACT подтверждение, а затем принять очередной байт
  Выполнить заданное битом ACKACT подтверждение перед установкой флага DIF
Используется для ответа на принятый байт данных (DIF = 1)
  Выполнить заданное битом ACKACT подтверждение, а затем перейти к ожиданию очередного байта
  Нет операции

Запись команды в биты CMD приводит к сбросу флагов прерываний подчиненного модуля и флага CLKHOLD, а также освобождению линии SCL. Бит ACKACT и биты CMD можно записывать одновременно. В таком случае, перед запуском команды, будет выполнено обновление заданного подтверждения.



Поделиться:


Последнее изменение этой страницы: 2016-12-30; просмотров: 244; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.218.63.176 (0.007 с.)