Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Помогите разобратся с чтением/записью в EEPROM

9.8K
24 апреля 2007 года
Фёдор Мегатроно
8 / / 27.05.2005
Здравствуйте! Прошу помощи, т.к. озадачило отсутвтвие практических данных в соответствующей литературе.

Короче у меня есть EEPROM микруха Atmel AT93C66A. Она четырьмя контактами (CS, SK, DI, DO) подведена к интеловскому эзернет контроллеру 82546GB, который использует её для хранения прошивки.

У этого контроллера есть регистр, 4 бита которого выведены на эти 4 провода. Эти биты там таки называются (CS, SK, DI, DO).

Прочитав весь интеловский даташит по этому контроллеру и даташит по самой микрухе Атмел я вроде бы всё понял, но при этом осталас куча чисто практических непоняток:

на пример вот если я хочу прочесть одино слово из епрома, то я должен что? выставить в бит CS 1, а потом в DI согласно протоколу передачи пихать побитно адрес ячейки, которую хочу прочесть, и сразу после этого читать побитно из DO значение ячейки?

Зачем тогда нужен сигнал SK ? и нужно ли мне постоянно поддерживать сигнал CS ? или одиночной записи и сброса после окончания операции чтения достаточно? И в каком месте я должен указывать оп-код операции (читать я хочу или писать?)

Нужно ли мне соблюдать все тайминги описанные в протоколе общения с микросхемой Atmel, или они соблюдаются уже внутренней логикой интеловского контроллера?.

непонятно.
391
24 апреля 2007 года
Archie
562 / / 03.02.2005

на пример вот если я хочу прочесть одино слово из епрома, то я должен что? выставить в бит CS 1, а потом в DI согласно протоколу передачи пихать побитно адрес ячейки, которую хочу прочесть, и сразу после этого читать побитно из DO значение ячейки?



Вообще-то EEPROM эта понимает обычный синхронный последовательный интерфейс, типа SPI. В твоем же случае, если контроллер не имеет SPI интерфейса, а управляющие выводы просто повешены на обычный цифровой порт, то весь протокол общения придется отрабатывать вручную, именно так, как ты сказал.

Цитата:

Зачем тогда нужен сигнал SK ? и нужно ли мне постоянно поддерживать сигнал CS ?



SK - это тактирующий сигнал (clock) его нужно генерировать обязательно (т.к. это все же синхронный последовательный интерфейс)
CS - (Chip Select), его нужно поддерживать постоянно, иначе микруха EEPROM отрубит свои порты от внешнего мира.

Цитата:

И в каком месте я должен указывать оп-код операции (читать я хочу или писать?)


Сначала шлешь 1, потом 2 бита опкод, потом адрес, потом данные, согласно протоколу (читай еще раз даташит от Атмела :) )

Цитата:

Нужно ли мне соблюдать все тайминги описанные в протоколе общения с микросхемой Atmel, или они соблюдаются уже внутренней логикой интеловского контроллера?.



Если контроллер сам генерирует все необходимые сигналы, то все проще. Но если все сигналы ты генерируешь вручную, то придется соблюдать все тайминги в рамках, указанных в даташите (внутри этих лимитов, времена могут варьироваться в принципе).

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог