Книги
чёрным по белому
Главное меню
Главная О нас Добавить материал Поиск по сайту Карта книг Карта сайта
Книги
Археология Архитектура Бизнес Биология Ветеринария Военная промышленность География Геология Гороскоп Дизайн Журналы Инженерия Информационные ресурсы Искусство История Компьютерная литература Криптология Кулинария Культура Лингвистика Математика Медицина Менеджмент Металлургия Минералогия Музыка Научная литература Нумизматика Образование Охота Педагогика Политика Промышленные производства Психология Путеводители Религия Рыбалка Садоводство Саморазвитие Семиотика Социология Спорт Столярное дело Строительство Техника Туризм Фантастика Физика Футурология Химия Художественная литература Экология Экономика Электроника Энергетика Этика Юриспруденция
Новые книги
Цуканов Б.И. "Время в психике человека" (Медицина)

Суворов С. "Танк Т-64. Первенец танков 2-го поколения " (Военная промышленность)

Нестеров В.А. "Основы проэктирования ракет класса воздух- воздух и авиационных катапульных установок для них" (Военная промышленность)

Фогль Б. "101 вопрос, который задала бы ваша кошка своему ветеринару если бы умела говорить" (Ветеринария)

Яблоков Н.П. "Криминалистика" (Юриспруденция)
Реклама

AVR-RISC Микроконтроллерры - Трамперт В.

Трамперт В. AVR-RISC Микроконтроллерры — МК- Пресс , 2006. — 458 c.
ISBN 966-8806-07-7
Скачать (прямая ссылка): mikrokontrolerri2006.pdf
Предыдущая << 1 .. 67 68 69 70 71 72 < 73 > 74 75 76 77 78 79 .. 215 >> Следующая

¦ первый байт: адрес ведомого устройства + бит “Чтение” — 1010 1111 ь;
11 — 5-2384
162 Последовательная передача данных по шине I2C
¦ подтверждение от ведомого устройства;
¦ второй байт: считывается, например, байт данных F0|, (1111 ООООь) по адресу 20d;
¦ нет подтверждения от ведущего устройства (окончание операции чтения).
3. Ведущее устройство теперь изменяет считанный байт данных и хотело бы после этого опять записать результат в память RAM по адресу 20d. После выполнения операции чтения в действии 2, благодаря функции автоматического инкремента памяти RAM, внутренний адрес увеличен до 21d. По этой причине ведущее устройство перед повторной записью байта данных должно выполнить сброс указателя адреса RAM в 20d:
¦ изменение байта данных с F0], на 0Fh;
¦ повторяется условие начала передачи;
¦ первый байт: адрес ведомого устройства + бит '‘Запись” = 1010 1110ь;
¦ подтверждение от ведомого устройства;
¦ второй байт: указатель адреса ООО 1 0100ь;
¦ подтверждение от ведомого устройства;
¦ третий байт: измененный байт данных 0000 1111 b по адресу 20d;
¦ подтверждение от ведомого устройства.
4. Ведущее устройство теперь может или разблокировать шину, создав условие завершения передачи, или продолжить процесс дальше, опять повторив условие начала передачи с последующей адресацией.
Задержка такта
Непосредственно после передачи разряда подтверждения следует фаза низкого уровня тактирующего сигнала. Приемник независимо от того, является ли он ведущим или ведомым устройством, вследствие открытого коллектора может перевести тактовую шину в состояние низкого уровня и удержать ее в этом состоянии. В результате передатчик будет переведен в состояние ожидания. Он прерывает передачу до тех пор, пока тактовая шина SCL опять не окажется в состоянии высокого уровня. Так образуется особый вид взаимообмена, называемый “Handshaking” — “рукопожатие” (обмен с подтверждением связи), который позволяет обрабатывать принятые данные даже медленнодействующему приемнику (рис. 8.10).
Синхронизация такта
Наряду с задержкой такта после передачи полного байта данных дополнительно может выполняться синхронизация таким образом, что приемник “растягивает” период низкого уровня тактирующего сигнала. Эта особенность, например, полезна в том случае, когда приемником является микропроцессор, обслуживающий шину 12С с помощью программного обеспечения, который после приема должен обрабатывать каждый бит в отдельности. В таком случае такт будет синхронизирован с тактом ведущего устройства, в результате чего будет получен ре-
Особые случаи 163
зультируюиций такт, фаза низкого уровня которого имеет длину, соответствую-щую самому медленнодействующему, а фаза высокого уровня — самому быстродействующему устройству (рис. 8.11).
Состояние Нормэль-ожидания г— ное
* состояние --------
уСТрОИСТВЭ)
SCL2-(от ведомого устройства)
результ SCL "~ (монтажное "И")
IM/i'filfl/sifslR/ilR 1 F\ R\
MSB
LSB
SDA - выход ведущего устройства
SDA - выход ведомого устройства
*зулвт: ^и^хіхїіїхїхїші\________________azju
\л______F
(монтажное "И")
S MSB
LSB А
S: Условие начала D: Бит данных (не может быть изменен, когда SCL.выс. ур.)
А; Подтверждение (от приемника о получении байта)
MSB: Старший знэчёщий бит LSB: Млздший значащий бит
Рис. 8.10. Вставка состояния ожидания при передаче данных от ведущего устройства к ведомому
SCL1 — (от ведущего устройства) :
Сост-е
?ЖИД-Я
SCL2-(от ведомого устройства)
Г
Нормальная длительность им пульс а высокого уровня
п_л_^гг_г^.
результ. SCL (монтажное *И“)
FI
SDA
(монтажное
D7
I
06
жис
D4
JA_________R_______
s
WS
WS
WS
WS
WS
S: Условие начала WS: Состояние ожидания, выработанное ведомым устройством
Рис. 8.11. Уменьшение скорости передачи данных посредством задержки такта
И*
164 Последовательная передача данных по шине I2C
Арбитраж шины при работе с несколькими ведущими устройствами
Как видно из рис. 8.3, магистральные шины, наряду с выходными драйверами, имеют также и входной каскад, в котором устройство сравнивает сгенерированное внутреннее состояние с фактически присутствующим на шине. Эта особенность используется для арбитража шины (предоставление доступа к общей шине в режиме работы нескольких ведущих устройств).
В связи с тем, что шина 12С занимается асинхронно (то есть, не в точно установленный момент времени), может возникнуть случай, когда два или несколько ведущих устройств в один и тот же момент времени создают условие начала передачи. Каждое ведущее устройство на основании сигнала обратной связи через входной каскад создает впечатление, что именно оно является единственным передатчиком в данный момент времени. В связи с тем, что для тактового сигнала выполняется синхронизация, то это “впечатление” остается до тех пор, пока все передатчики передают в точности одну и ту же битовую комбинацию. Разногласие возникает только тогда, когда ведущее устройство, ожидающее появления на шине сигнала высокого уровня, вместо него обнаруживает сигнал низкого уровня. С этого момента данное ведущее устройство отзывает свою передачу данных, а другое или все остальные ведущие устройства по прежнему работают с шиной, поскольку не замечают возникшей проблемы. Таким образом ведущие устройства одно за другим освобождают шину до тех пор, пока наконец останется единственное ведущее устройство, которое “выиграло” процесс арбитража.
Предыдущая << 1 .. 67 68 69 70 71 72 < 73 > 74 75 76 77 78 79 .. 215 >> Следующая