EEPROM 24LC04B

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Trioni
Родился
Сообщения: 8
Зарегистрирован: Ср дек 04, 2024 19:24:18

EEPROM 24LC04B

Сообщение Trioni »

Доброго дня. Начал изучать i2c и на отладке установлена EEPROM 24LC04B.
Столкнулся с тем что не получаю от неё бит ACK.
По скольку работаю в первый раз то не могу понять не исправна же сама микросхема/отладка или я выставил не верные адреса/тайминги


даташит: https://static.chipdip.ru/lib/938/DOC011938526.pdf
Картинка с анализатора:
Изображение

(отладка AX309, SPARTAN6, выходы вроде выставил корректно: SDA P12, SCL N12)
Реклама
Аватара пользователя
BOB51
Друг Кота
Сообщения: 15583
Зарегистрирован: Вт мар 16, 2010 22:02:27
Откуда: ДОНЕЦК

Re: EEPROM 24LC04B

Сообщение BOB51 »

Или ошибка в программе...
:wink:
Реклама
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: EEPROM 24LC04B

Сообщение Martian »

Да, но это было бы лучше видно осциллографом, если имеется ввиду, что у мастера пин остался выходом с высоким уровнем.
Trioni
Родился
Сообщения: 8
Зарегистрирован: Ср дек 04, 2024 19:24:18

Re: EEPROM 24LC04B

Сообщение Trioni »

[uquote="BOB51",url="/forum/viewtopic.php?p=4656473#p4656473"]Или ошибка в программе...
:wink:[/uquote]
А что может не так быть?
По симуляции выход уходит в 'z' , да и как я понял slave же может всё равно просто на землю уронить линию, даже если мастер оставит высокий уровень.

Осцилогоафа нету проверить.
Делал на ардуинке i2c сканер и получал примерно такую же картину, из за чего сейчас в ступоре, ведь по моей логике всё должно было работать...
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: EEPROM 24LC04B

Сообщение shonty »

Trioni писал(а):А что может не так быть?
Всё что угодно. Мы даже не знаем, что у вас "так"))
Trioni писал(а):ведь по моей логике всё должно было работать..
логика тут ни при чём.
Вы лучше последовательность ваших действий опишите, начиная с первого и до того как ожидаете ACK.
Trioni писал(а):или я выставил не верные адреса/тайминги
И про это расскажите. Какую скорость задаёте?
Реклама
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: EEPROM 24LC04B

Сообщение Martian »

[uquote="Trioni",url="/forum/viewtopic.php?p=4656528#p4656528"]да и как я понял slave же может всё равно просто на землю уронить линию, даже если мастер оставит высокий уровень.[/uquote] Каким образом? Сопротивление верхнего ключа master против сопротивления нижнего ключа slave. Что будет посередине? Будет хрень, интерпретация которой логическим анализатором непредсказуема.
Trioni писал(а):По симуляции выход уходит в 'z'
так это симуляция или реальное устройство?
Реклама
Trioni
Родился
Сообщения: 8
Зарегистрирован: Ср дек 04, 2024 19:24:18

Re: EEPROM 24LC04B

Сообщение Trioni »

[uquote="Martian",url="/forum/viewtopic.php?p=4656548#p4656548"][uquote="Trioni",url="/forum/viewtopic.php?p=4656528#p4656528"]да и как я понял slave же может всё равно просто на землю уронить линию, даже если мастер оставит высокий уровень.[/uquote] Каким образом? Сопротивление верхнего ключа master против сопротивления нижнего ключа slave. Что будет посередине? Будет хрень, интерпретация которой логическим анализатором непредсказуема.
Trioni писал(а):По симуляции выход уходит в 'z'
так это симуляция или реальное устройство?[/uquote]

1) Думал будет просто 'кз' через подтягивающий резистор и транзистор slave => линия просто лежит в нуле

2) устройство.

(Код и симуляцию скину после работы уже только. Не думал что дойдёт)
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: EEPROM 24LC04B

Сообщение shonty »

Trioni писал(а):(Код и симуляцию скину после работы уже только. Не думал что дойдёт)
Код вторичен. Это всего навсего реализация алгоритма.

А вы словами не можете выразить, что вы делаете и в какой последовательности.
Trioni писал(а):Делал на ардуинке i2c сканер и получал примерно такую же картину, из за чего сейчас в ступоре,
Возможно по этому результат и стабилен :dont_know:
jcxz
Мудрый кот
Сообщения: 1731
Зарегистрирован: Вт авг 15, 2017 10:51:13

Re: EEPROM 24LC04B

Сообщение jcxz »

[uquote="Trioni",url="/forum/viewtopic.php?p=4656377#p4656377"]Картинка с анализатора:
Изображение[/uquote]Какое-то странно длинное старт-условие.... :shock:
Хотя конечно криминала здесь нет.

Разрешение картинки такое, что понять по ней что-либо трудно. Например - не происходят ли фронты по SDA и SCL одновременно? Это может восприниматься ведомым как стоп-условие и тогда он конечно не станет выставлять ACK. Внутри ведомого фронт по SDA может чуть запоздать, и это будет выглядеть для него как СТОП.
Trioni
Родился
Сообщения: 8
Зарегистрирован: Ср дек 04, 2024 19:24:18

Re: EEPROM 24LC04B

Сообщение Trioni »

[uquote="jcxz",url="/forum/viewtopic.php?p=4657002#p4657002"]Какое-то странно длинное старт-условие.... :shock:
Хотя конечно криминала здесь нет.[/uquote]

Игрался просто с разными таймингами, в том числе давая больше времени на старт.

[uquote="jcxz",url="/forum/viewtopic.php?p=4657002#p4657002"]Разрешение картинки такое, что понять по ней что-либо трудно. Например - не происходят ли фронты по SDA и SCL одновременно? Это может восприниматься ведомым как стоп-условие и тогда он конечно не станет выставлять ACK. Внутри ведомого фронт по SDA может чуть запоздать, и это будет выглядеть для него как СТОП.[/uquote]
Скрин симуляции, вроде наложений нет, один такт scl разбивал на 4 мини-тактка
Изображение
Вложения
Снимок экрана (64).png
(6.82 КБ) 128 скачиваний
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: EEPROM 24LC04B

Сообщение Martian »

Не понимаю. То устройство, то опять симуляция... Вы уж определитесь, где не работает.
Trioni
Родился
Сообщения: 8
Зарегистрирован: Ср дек 04, 2024 19:24:18

Re: EEPROM 24LC04B

Сообщение Trioni »

Изначально же сказал: на устройстве не получаю бит ACK.

Симуляцию скинул просто вместо сотен строчек кода, ясное дело там никакого ответного сигнала не будет.
veso74
Поставщик валерьянки для Кота
Сообщения: 1915
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария
Контактная информация:

Re: EEPROM 24LC04B

Сообщение veso74 »

Читаете или пишете в EEPROM? Какая частота SCL? Программной реализацией I2C или аппаратной? Являются ли выводы SDA и SCL открытым стоком? Есть подтягивающие резисторы? Куда они включены и какое значение? Фото экспериментальной установки? Хотя бы фрагмент реализации I2C?

Напр. данные ниже взяты из лог. анализатора. Детали комуникации видны, а также распознавание функций в I2C (к PCF8574). В вашем случае что есть что, только догадываемся и предполагаем.

Изображение,
Изображение
Последний раз редактировалось veso74 Сб дек 07, 2024 11:10:32, всего редактировалось 1 раз.
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: EEPROM 24LC04B

Сообщение Martian »

[uquote="Trioni",url="/forum/viewtopic.php?p=4657245#p4657245"]Изначально же сказал: на устройстве не получаю бит ACK.
Симуляцию скинул просто вместо сотен строчек кода, ясное дело там никакого ответного сигнала не будет.[/uquote] Ясно. Ну, шлите дальше красивые картинки.
jcxz
Мудрый кот
Сообщения: 1731
Зарегистрирован: Вт авг 15, 2017 10:51:13

Re: EEPROM 24LC04B

Сообщение jcxz »

[uquote="Trioni",url="/forum/viewtopic.php?p=4657178#p4657178"]Скрин симуляции, вроде наложений нет, один такт scl разбивал на 4 мини-тактка
Изображение[/uquote]Не понял - а какое отношение имеет эта картинка к скриншоту осциллографа из первого поста? Там совершенно ясно видны совершенно другие временные соотношения.
К тому-же - даже по этой картинке - разве не видите странностей? Между рисками "1 мкс" и "19 мкс" попадает примерно ~8.5 периодов SCLK.
Т.е. = 8.5/18e-6 = ~472 кГц. При том что по даташиту 24LC04B умеет максимум 400 кГц.
Не многовато вы хотите от 24LC04B? На такую осц. она имеет полное право отвечать NACK.

Добавлено after 6 minutes 29 seconds:
[uquote="Trioni",url="/forum/viewtopic.php?p=4657245#p4657245"]Симуляцию скинул просто вместо сотен строчек кода, ясное дело там никакого ответного сигнала не будет.[/uquote]Да уж.... с логикой явно серьёзные проблемы.... :dont_know:

Вы когда придёте к врачу лечить какую-то болячку, например - перелом, тоже скажете: "Доктор, давайте не будем делать рентген перелома, я вам просто нарисую как я думаю выглядит кость, а вы по моему рисунку и лечите". :)))
Trioni
Родился
Сообщения: 8
Зарегистрирован: Ср дек 04, 2024 19:24:18

Re: EEPROM 24LC04B

Сообщение Trioni »

Ну наверно можно завершать. Нормальных ответов я так и не получу всё равно.
А скидывать код на 300+ строк вызовет лишь очередной виток вопросов о вечном, а если скину краткие выдержки то вопросы что "код не весь".

Про тайминги отвечал ещё в первом посте. Где на картинке видно "T = 10uS", скрин симуляции был прилеплен что бы показать итоговое значение кода (например что sda уходит в Z-стейт) (далее уже самостоятельно не раз менял тайминги проверяя на 100 и 400кГц - отсюда и разности между картинкой и симуляцией)
jcxz
Мудрый кот
Сообщения: 1731
Зарегистрирован: Вт авг 15, 2017 10:51:13

Re: EEPROM 24LC04B

Сообщение jcxz »

[uquote="Trioni",url="/forum/viewtopic.php?p=4657520#p4657520"]Ну наверно можно завершать. Нормальных ответов я так и не получу всё равно.[/uquote]Чтобы получить "нормальный ответ", нужно сначала задать "нормальный вопрос".
Чего вы до сих пор так и не сделали. И даже как видно - не стремитесь это сделать. :dont_know:
Причём тут некий "код на 300+ строк", которым вы всё пугаете - вообще не понятно.
Аватара пользователя
shonty
Мучитель микросхем
Сообщения: 473
Зарегистрирован: Ср янв 11, 2012 18:20:26

Re: EEPROM 24LC04B

Сообщение shonty »

Trioni писал(а):А скидывать код на 300+ строк вызовет лишь очередной виток вопросов о вечном, а если скину краткие выдержки то вопросы что "код не весь".
Ну если стартовое_условие+адрес+проверка_состояния это 300+ строк, тогда лучше не нужно скидывать))

Но код всегда вторичен) даже третичен, если не четверичен или пятеричен))
Trioni
Родился
Сообщения: 8
Зарегистрирован: Ср дек 04, 2024 19:24:18

Re: EEPROM 24LC04B

Сообщение Trioni »

Всем спасибо. Разобрался сам - неисправна микросхема EEPROM похоже(или её адрес).
Смог достать дисплей на i2c и он вполне отзывается.
Martian
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32
Контактная информация:

Re: EEPROM 24LC04B

Сообщение Martian »

Увы, но это не указывает на неисправность EEPROM
Ответить

Вернуться в «Периферия»