ВУЗ:
Составители:
241
Рис. 3.13. Запись и чтение байта по интерфейсу I
2
C
Адресация Slave-устройства 7-битовая, а адрес ячейки I2C EEPROM пе-
редается двумя байтами, тат как микросхема имеет емкость больше 256 байт.
Первые четыре бита в 7-битовом адресе Slave-устройства являются маской, ус-
тановленной разработчиками стандарта для микросхем EEPROM I
2
C, – 1010, а
оставшиеся три бита образуют собственный адрес Slave-устройства на шине –
111. Этот адрес задается подачей на адресные входы DD2 A0, A1, A2 (рис. 3.12)
соответствующих (высоких) логических уровней.
При нажатии на кнопку «0» производится перебор адресов ячеек для за-
писи данных в I
2
C EEPROM. Выбранное значение адреса ячейки в десятичном
виде отображается на ЖКИ с адреса 0 ОЗУ ЖКИ. При нажатии на кнопку «1»
производится выбор байта данных для записи в I2C EEPROM. Выбранный байт
данных в ASCII-коде индицируется по адресу 64 ОЗУ ЖКИ. При нажатии на
кнопку «2» производится запись выбранного байта данных в EEPROM по вы-
бранному ранее адресу. Записанный байт данных индицируется по адресу 70
ОЗУ ЖКИ. При нажатии на кнопку «3» производится чтение байта данных из
I
2
C EEPROM по выбранному ранее адресу. Прочитанный байт данных в ASCII-
коде индицируется по адресу 72 ОЗУ ЖКИ.
Для обеспечения возможности записи и чтения по произвольным адресам
программа производит процедуру так называемой фиктивной записи – обраще-
ние к ячейке памяти без собственно записи или чтения (указание на ячейку для
последующих записи или чтения). Эта процедура реализована в подпрограмме
Pod_PWRITE_I2C. В случае осуществления записи после этой процедуры
Master-устройство выдает на шину байт данных записи, дожидается от Slave-
устройства подтверждения и завершает всю процедуру обмен условием «Stop».
Запись байта данных в I
2
C EEPROM по произвольному адресу реализуется
подпрограммой Pod_WRITE_I2C. В случае осуществления чтения после проце-
дуры фиктивной записи Master-устройство повторно генерирует условие
«Start», повторно выдает на шину адрес Slave-устройства уже с признаком чте-
ния, дожидается подтверждения, а затем принимает байт данных чтения, пере-
даваемых Slave-устройством. По завершении приема Master-устройство выдает
на шину бит неподтверждения и завершает всю процедуру чтения выдачей ус-
Страницы
- « первая
- ‹ предыдущая
- …
- 239
- 240
- 241
- 242
- 243
- …
- следующая ›
- последняя »
