Например TDA7294

Форум РадиоКот • Просмотр темы - EEPROM AT24C256C не читается несколько байт подряд, почему?
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Пт апр 26, 2019 08:37:40

Часовой пояс: UTC + 3 часа [ Летнее время ]


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 15 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: EEPROM AT24C256C не читается несколько байт подряд, почему?
СообщениеДобавлено: Сб янв 19, 2019 02:03:20 
Прорезались зубы

Карма: -3
Рейтинг сообщений: -3
Зарегистрирован: Вт сен 09, 2008 19:17:27
Сообщений: 206
Рейтинг сообщения: 0
EEPROM AT24C256C не читается несколько байт подряд:
записываю в подряд 12 байт и пробую их прочесть, тоже в подряд,
читается только самый первый байт - остальные 11 байт нули!

Если задавать другие адреса чтения, и читать по одному байту, видно что записалось всё правильно,
проблема только с потоковым чтением!

Что может быть не так?

Прилагаю датаграмму с логического анализатора для KingstVIS 3.1.2


Вложения:
2019-01-19_01-57-15.zip [2.78 KiB]
Скачиваний: 12
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 07:24:42 
Открыл глаза
Аватар пользователя

Карма: 9
Рейтинг сообщений: 17
Зарегистрирован: Вс ноя 01, 2015 01:09:59
Сообщений: 50
Рейтинг сообщения: 0
У вас скорее всего не правильно происходить считывания массива. Считывания одно байта и массива байт, это разные вещи. В даташите есть пример считывания данных по I2C.

_________________
Для связи email: risctronix собака gmail.com


Вернуться наверх
 
JLCPCB, всего $2 за 10 ПП любого цвета!

Более 600 000 заказчиков по всему миру! Более 10 000 заказов в день!

Скидка до $20 на доставку для первого заказа:https://jlcpcb.com/quote

Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 07:48:35 
Модератор
Аватар пользователя

Карма: 77
Рейтинг сообщений: 773
Зарегистрирован: Пт мар 19, 2010 00:09:57
Сообщений: 4011
Откуда: Планета Земля
Рейтинг сообщения: 0
Медали: 1
Получил миской по аватаре (1)
DENIS451 писал(а):
Прилагаю датаграмму с логического анализатора для KingstVIS 3.1.2
Лучше бы код показали, чем файл какого-то неизвестного половине пользователям формата.

_________________
Я мненью вашему вращенье придавал, а осью был - мой детородный орган.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $88 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 08:04:34 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 88
Рейтинг сообщений: 1377
Зарегистрирован: Чт дек 28, 2006 09:19:56
Сообщений: 13471
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
После чтения каждого байта STOP передаёте, небось?

_________________
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
удивительно, но при взгляде на многих сверху ничего не меняется...


Вернуться наверх
 
Впервые на русском языке! «Поваренная книга разработчика аналоговых схем: Операционные усилители»

Практическое руководство «Разработчика аналоговой электроники по операционным усилителям», созданной инженерами компании Texas Instruments. Содержит схемы, примеры типовых расчетов с указанием формул и последовательности действий. Результаты расчетов дополнительно проверяются в программе SPICE-моделирования.
Подробнее>>
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 08:26:58 
Друг Кота
Аватар пользователя

Карма: 104
Рейтинг сообщений: 4954
Зарегистрирован: Сб сен 13, 2014 17:27:32
Сообщений: 21729
Откуда: СпиртоГонск созвездия Омега
Рейтинг сообщения: 0
уже не помню на вскидку но кажется 24с02 и 24с256 читают пишут иначе

_________________
Мудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет... и МЧС опаздает
и таки теперь Дураки и Толерасты умирают по пятницам!


Вернуться наверх
 
Впервые на русском языке! Работаем с микроконтроллерами STM32F7(на основе STM32F7 Online Training)

Цикл материалов на основе STM32F7 Online Training от компании STMicroelectronics.
Описаны функциональные блоки и инструменты разработки для семейства микроконтроллеров STM32F7, охватывающие тематику системной периферии, памяти, безопасности, аналоговой периферии, цифровой периферии, таймеров, экосистемы.
Подробнее...
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 10:50:23 
Друг Кота
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1848
Зарегистрирован: Чт сен 12, 2013 01:54:12
Сообщений: 4121
Откуда: ЗаМКАДье. Там, где ЦУП
Рейтинг сообщения: 0
Медали: 5
Получил миской по аватаре (5)
DENIS451, Выложите Printscreen экрана ЛА. Скорее всего, ошибка в Restart-е после записи адреса стартового адреса чтения.
P.S.
На всякий случай, напомню: У 24C256 страница записи 64 байта. Т.е., если вы, к примеру, захотите записать несколько байт подряд с адреса 63h - будет ошибка (данные, ожидаемые по записи по адресу 64h, окажутся по адресу 0h).
Т.ч, при записи, если вы переходите на следующую страницу, нужно дать Stop, подождать пока она запишет (можно проверять по ACK-у на её адрес), и продолжить запись с начала следующей страницы (Start, Device Adress и т.д.).


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 12:10:14 
Прорезались зубы

Карма: -3
Рейтинг сообщений: -3
Зарегистрирован: Вт сен 09, 2008 19:17:27
Сообщений: 206
Рейтинг сообщения: 0
Выложил скрины ЛА1.png и ЛА2.png

На всякий случай прога: https://yadi.sk/d/DV2zN0L6A3v0hA (она бесплатная, скачал с оф сайта производителя ЛА Kingst LA1010)

Код под STM32F105 нет смысла выкладывать - там софтовый I2C я могу нарисовать любую датаграмму, логический анализатор не самый плохой,
на двух каналах выборка 100мГц заметит любую иголку на которую способна среагировать EEPROM.

Писать и читать пытаюсь с нулевого адреса.

Покупал тут: https://www.chipdip.ru/product/at24c256c-sshl-t

Ещё вопрос, что означает параметр из датащита "Write Cycle Time" равный 5 миллисекунд?


Вложения:
ЛА2.png [51.95 KiB]
Скачиваний: 57
ЛА1.png [62.46 KiB]
Скачиваний: 58
Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 12:42:04 
Друг Кота
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1848
Зарегистрирован: Чт сен 12, 2013 01:54:12
Сообщений: 4121
Откуда: ЗаМКАДье. Там, где ЦУП
Рейтинг сообщения: 0
Медали: 5
Получил миской по аватаре (5)
DENIS451 писал(а):
...что означает параметр из датащита "Write Cycle Time" равный 5 миллисекунд?
Это время записи страницы из буфера AT24C256C в физическую Flash (стартует после команды Stop). В течении этого времени (это максимальное время), AT24C256C не будет выдавать ACK на свой адрес.
Что касается основного вопроса - посмотрите в файле. Я отметил два "скользких момента" (первое, на что обратил внимание):
1. Обозначил как Err. Здесь "игра на фронтах" может быть воспринята как команда Stop.
2. Обозначил как t=?. Не понял реальное время, но как мне показалось, времена команды Start не соблюдены.
В общем, более тщательно проверьте/исправьте все времена и всё заработает.
/картинка кликабельна/
Изображение
Вложение:
ЛА1_1.gif [49.93 KiB]
Скачиваний: 58

P.S.
По 'Err': Рекомендуется выдерживать время не менее 300nS после спада по SCL.


Последний раз редактировалось Albert_V Сб янв 19, 2019 15:10:50, всего редактировалось 2 раз(а).

Вернуться наверх
 
Prist.ru- удобный сайт для поиска, сравнения и покупки радиоизмерительных и электроизмерительных приборов, таких как: осциллограф, анализатор спектра, генератор сигналов, частотомер, мультиметр, лабораторный источник питания и др. На сайте есть актуальная информация о ценах и наличии приборов на складе.

Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 13:09:09 
Прорезались зубы

Карма: -3
Рейтинг сообщений: -3
Зарегистрирован: Вт сен 09, 2008 19:17:27
Сообщений: 206
Рейтинг сообщения: 0
Спасибо, но я сейчас ухожу, проверить смогу только после 16:00.

Может нарисуете от руки в паинте, как по вашему мнению, должен правильно выглядеть этот участок датаграммы?

Сделал более подробный скрин с этим подозрительным участком: ЛА3.png


Вложения:
ЛА3.png [47.73 KiB]
Скачиваний: 64
Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 14:32:17 
Друг Кота
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1848
Зарегистрирован: Чт сен 12, 2013 01:54:12
Сообщений: 4121
Откуда: ЗаМКАДье. Там, где ЦУП
Рейтинг сообщения: 0
Медали: 5
Получил миской по аватаре (5)
На этом "переходе", время "единички" у SCL должно быть не менее 2-ух времён "единички" при обмене данными.
Если делаете "нечто", у чего должна быть высокая повторяемость - лучше выжидайте время не менее 1/Fclk_max/2 (для 400kHz это 1.25µS). Не думаю что это время сильно "затормозит" работу вашего изделия...
Вот пример с моего ЛА (SLA5032):
/у меня частота по SCL чуть выше 260kHz/
Изображение


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 17:30:29 
Прорезались зубы

Карма: -3
Рейтинг сообщений: -3
Зарегистрирован: Вт сен 09, 2008 19:17:27
Сообщений: 206
Рейтинг сообщения: 0
Сделал тайминги побольше(см. ЛА4.png), ничего не изменилось.

Навсякий случай функция чтения блока (выполняется с задержкой не менее 5мс. после записи,
(закомментированные задержки не помогли)):


Вложения:
ЛА4.png [49.93 KiB]
Скачиваний: 48
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 17:59:02 
Друг Кота
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1848
Зарегистрирован: Чт сен 12, 2013 01:54:12
Сообщений: 4121
Откуда: ЗаМКАДье. Там, где ЦУП
Рейтинг сообщения: 0
Медали: 5
Получил миской по аватаре (5)
У AT24C256C "керамика" по питанию поставлена?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 18:39:15 
Прорезались зубы

Карма: -3
Рейтинг сообщений: -3
Зарегистрирован: Вт сен 09, 2008 19:17:27
Сообщений: 206
Рейтинг сообщения: 0
Да.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 19:09:44 
Друг Кота
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1848
Зарегистрирован: Чт сен 12, 2013 01:54:12
Сообщений: 4121
Откуда: ЗаМКАДье. Там, где ЦУП
Рейтинг сообщения: 0
Медали: 5
Получил миской по аватаре (5)
Разделите проверку на две части.
Запишите AT24C256C на внешнем программаторе и прочтите данные или запишите своей программой и прочтите программатором.
На данный момент, вы не можете быть уверенным что данные реально записываются в EEPROM.
Дело в том что декодеры протокола ПО логических анализаторов не "ругнутся" если где-то есть "игра на фронтах" или некое время по I2C не соответствует стандарту.

Добавлено after 10 minutes 32 seconds:
Re: EEPROM AT24C256C не читается несколько байт подряд, почему?
P.S.
Извиняюсь, предположение из серии "дурдома": После чтения первого байта вы точно сами не "роняете" линию SDA в "ноль"?
Смущает то, что у стёртой/новой AT24C256C по всем адресам должны быть 0FFh...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: EEPROM AT24C256C не читается несколько байт подряд, поче
СообщениеДобавлено: Сб янв 19, 2019 19:25:43 
Прорезались зубы

Карма: -3
Рейтинг сообщений: -3
Зарегистрирован: Вт сен 09, 2008 19:17:27
Сообщений: 206
Рейтинг сообщения: 0
Цитата:
Извиняюсь, предположение из серии "дурдома": После чтения первого байта вы точно сами не "роняете" линию SDA в "ноль"?


Да, это так, спасибо!

Совсем забыл что надо отпустить линию после формирования ACK со стороны мастера, всё заработало!


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 15 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 4


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y