Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: I2C и Flash память
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Интерфейсы
Shivers
Есть вопрос. Обычная Параллельная флеш память (NOR,NAND) имеет механизмы определения Manufacturer ID и Device ID, по которым можно узнать и емкость чипа. У меня стоит задача - дергая выводами I2C интерфейса определить какая память подключена, если подключена. Изучил несколько даташитов на разные памяти и не нашел НИЧЕГО, что помогло бы мне понять как писать алгоритм распознавания чипа. Разве что - флешка опускает ACK, когда понимает, что контрольный байт обращен к ней. Т.е. я могу определить, что она физически подключена, но не более.

Вопрос - возможно ли написать автоопределение для I2C флешек?
zltigo
Интересно, кто нибудь вообще способен для начала просто расшифровать набор слов "обычная NOR,NAND I2C Flash"?
Shivers
Плохо написал. Имелась ввиду флеш память с параллельным интерфейсом.
Просто, у встреченной мной NOR и NAND памяти (с параллельным интерфейсом) сильно разнится механизм автоопределения.

Вопрос по I2C флеш памяти - существует ли ну нее вообще механизм автоопределения, и как его сделать?
zltigo
QUOTE (Shivers @ Aug 8 2011, 14:54) *
Вопрос по I2C флеш памяти - существует ли ну нее вообще механизм автоопределения, и как его сделать?

Не темните. Что такое "I2C Flash"? Сможете сказать что за чипы, сможете и прочитать в документации производителя о том, как их различать.

Shivers
Цитата(zltigo @ Aug 8 2011, 16:31) *
Не темните. Что такое "I2C Flash"?

Чипы флеш памяти с I2C интерфейсом.

Пример: флеш 24FC65 от микрочипа, с I2C интерфейсом. В даташите не указано ни спец. команд для доступа к служебным регистрам, ни собственно самих регистров с идентификационной информацией и прочим.

Что я хочу увидеть, примеры: NOR флеш с параллельным интерфейсом AM29F040 от амд , или NAND флеша от самсунга, также с парарллельным интерфейсом - они имеют хоть и разные, но механизмы идентификации. У первой надо выставить адрес 555 и ААА чтобы получить доступ к служебной информации, а у второй достаточно выставить команду 90, и можно считывать ID производителя и чипа.
zltigo
QUOTE (Shivers @ Aug 8 2011, 16:44) *
Чипы флеш памяти с I2C интерфейсом.
Пример: флеш 24FC65 от микрочипа, с I2C интерфейсом.

Для начала это совсем не Flash. Это однако EEPROM.
У EEPROM традиционно идентификаторов нет. Если У Вас в изделии допустимо устанавливать несколько разных типов EEPROM, то можете, например, разносить их по разным адресам и по адресу определять тип, или, как я в основном делаю, записываю свой идентификатор при первом программировании.
Shivers
Цитата(zltigo @ Aug 8 2011, 16:59) *
Для начала это совсем не Flash. Это однако EEPROM.

Гмм, и действительно. Причем это не ошибка - нагуглил еще пяток разных чипов памяти под i2c, и все eeprom. Досадно sad.gif

Спасибо за помощь!
Lexy_one
У меня была подобная задача....
сделал просто... при первом включении тестирую память путем записи в нее по крацним адресам данных...
а потом пытаюсь их от туда прочитать... если читается правильно с правильных адресов то устанавливаю соответствующий тип подключенной памяти..
zltigo
QUOTE (Lexy_one @ Aug 17 2011, 12:56) *
сделал просто... при первом включении тестирую память путем записи в нее по крацним адресам данных...

Очень ограниченный вариант - I2C EEPROM имеют еще и разные размеры блоков, разные варианты адресации, разные скорости работы....
Тоскливо на автомате все пытаться определять. Ну а идентификатор записать - про это я уже писал.
Dog Pawlowa
Цитата(zltigo @ Aug 17 2011, 14:30) *
Ну а идентификатор записать - про это я уже писал.

Простите, не догоняю.
Что дает идентификатор, если и при чтении нужно учитывать адресацию/размер страницы?
zltigo
QUOTE (Dog Pawlowa @ Aug 18 2011, 08:42) *
Простите, не догоняю.
Что дает идентификатор, если и при чтении нужно учитывать адресацию/размер страницы?

Идентификатор записывается по младшим адресам EEPROM нулевой страницы. Занимает, например, не более размера самой маленькой страницы. Ищется перебором только адресов чипа (если нужно). После считывания идентификатора чипа уже становится ясным, количество страниц, их размер и способ адресации страниц отличных от нулевой. Поскольку именно по считанному идентификатору все это и определяется.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.