Zig 38 25 апреля Опубликовано 25 апреля · Жалоба Хочется странного. Нужна микросхема памяти на 1 - 2 Мбит совместимая по выводам с микросхемами I2C EEPROM памяти типа M24M01 или AT24CM02, но с интерфейсом SMBus, а не I2C. В изделии применен чип CYUSB3014 с автозагрузкой ПО по I2C интерфейсу. Если сбросить CYUSB3014 во время загрузки, вывод SDA может залипнуть в нуле (если было чтение и перед сбросом и исчезновением тактов читался ноль), а CYUSB3014 не умеет при сбросе подавать лишние такты на SCL и освобождать залипшую шину. В интерфейсе SMB оговорена минимальная скорость с которой может работать интерфейс и если она ниже порога - слэйв уходит в сброс и освобождает шину, что в принципе и нужно. Пересмотрел кучу производителей I2C EEPROM. У всех в описаниях оговаривается только максимальная частота, но не минимальная. Датчики температуры с SMBus совместимые с I2C встречал. Например UMW LM75B. А вот EEPROM не получается найти... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 25 апреля Опубликовано 25 апреля · Жалоба Может лучше попробовать использовать I2C EEPROM или FRAM со входом RESET и сбрасывать её вместе с CYUSB3014? У Infineon (бывшие Cypress) есть такая память с RESET. Если конечно хватит объёма. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 87 25 апреля Опубликовано 25 апреля · Жалоба В 25.04.2024 в 15:39, Zig сказал: Пересмотрел кучу производителей I2C EEPROM. У всех в описаниях оговаривается только максимальная частота, но не минимальная. У i2c нет минимальной частоты, можно хоть на 0,1 Гц работать. Я помнится вручную кнопочками нащелкивал адрес и данные) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zig 38 25 апреля Опубликовано 25 апреля · Жалоба 42 минуты назад, jcxz сказал: У Infineon (бывшие Cypress) есть такая память с RESET. Если конечно хватит объёма. Спасибо. Ищу. Пока не получается. Название не подскажете. 2 минуты назад, HardEgor сказал: У i2c нет минимальной частоты, можно хоть на 0,1 Гц работать. Я помнится вручную кнопочками нащелкивал адрес и данные) А я как раз с SMBus нажегся. Писал тест микросхемы через ногодрыг по JTAG и не получал ACK от микросхемы, хотя при штатной работе она отвечала. Долго тормозил пока не догадался, что частота SCL через ногодрыг получалась ниже минимальной. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 25 апреля Опубликовано 25 апреля · Жалоба Если нужна память с RESET, то она делается из любой одним n-канальным полевиком. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 25 апреля Опубликовано 25 апреля · Жалоба 17 минут назад, aaarrr сказал: Если нужна память с RESET, то она делается из любой одним n-канальным полевиком. При любой коммутации питания не надо забывать про паразитную запитку через сигнальные линии в высоком состоянии. А для современных малопотребляющих EEPROM даже тока через подтяжки может хватить для такой запитки. Тем более, что ног с подтяжками много. Так что - "одного полевика" может не хватить. И такой RESET может превратится в тыкву. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 25 апреля Опубликовано 25 апреля · Жалоба 11 minutes ago, jcxz said: При любой коммутации питания А я где-то предлагал коммутировать питание? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 242 25 апреля Опубликовано 25 апреля · Жалоба 2 минуты назад, aaarrr сказал: А я где-то предлагал коммутировать питание? А что тогда вы предлагали делать полевиком? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 25 апреля Опубликовано 25 апреля · Жалоба 1 minute ago, jcxz said: А что тогда вы предлагали делать полевиком? Вам - ничего. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
mantech 53 29 апреля Опубликовано 29 апреля (изменено) · Жалоба В 25.04.2024 в 11:39, Zig сказал: В изделии применен чип CYUSB3014 с автозагрузкой ПО по I2C интерфейсу. Ммда, вот такого изврата я еще не встречал, может гении киприса еще запилят чип с загрузкой по 1wire, они ж любят все такое)))) А этот суперчип случаем не умеет грузиться с человеческого spi например? В 25.04.2024 в 11:39, Zig сказал: Если сбросить CYUSB3014 во время загрузки, вывод SDA может залипнуть в нуле Т.е. еще и сделали это криво, чтоб потом мучались разработчики.... В 25.04.2024 в 11:39, Zig сказал: с которой может работать интерфейс и если она ниже порога - слэйв уходит в сброс Вы ж понимаете, что это костыль, и далеко не факт, что он решит все ваши проблемы... Ну вернее проблемы "гениев", придумавших такую загрузку и реализовав ее криво. ЗЫ. И вот еще мысль, согласно канонам i2c обе линии должны иметь подтяжку к плюсовой шине, а при сбросе я еще не встречал, чтобы линии МК не уходили в Z состояние, ну или становились входами, т.е. залипнуть в 0 даже в теории не должно... Изменено 29 апреля пользователем mantech Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zig 38 29 апреля Опубликовано 29 апреля · Жалоба 6 минут назад, mantech сказал: А этот суперчип случаем не умеет грузиться с человеческого spi например? К сожалению партия плат уже готова. И требуется доработка без существенной трудоемкости. Пока нашел SMBus память у st. Называется SPD EEPROM M34E04, но к сожалению на большой объем их нет. Только до 4 кбит. А хотелось 2 Мбит. Еще, как вариант, рассматриваю схему на таймере 555, которай выдаст пачку импульсов SCL пока не отпустится SDA при условии отсутствия тактов на SCL и SDA==0 некоторое время (таймаут). В штатном режиме при SDA==SCL==1 и при активности на шине такая схема не будет мешать, а при залипании SDA во время сброса быстро освободит шину. Таймер с обвесом можно будет разместить на мелкой плате и запаять на 4 провода (SDA,SLC,VCC,GND) поверх EEPROM. Есть еще вариант с выключением питания EEPROM, наподобие обсужденного @aaarrr и @jcxz, но с закорачиванием питания EEPROM при ресете, но доработка имеющихся плат при этом будет трудоемкой. С напайкой платы поверх чипа EEPROM будет проще. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 29 апреля Опубликовано 29 апреля · Жалоба 12 minutes ago, Zig said: с закорачиванием питания EEPROM при ресете Зачем закорачивать? N-канальным полевиком отключаете EEPROM землю по сбросу. 1 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zig 38 29 апреля Опубликовано 29 апреля · Жалоба 2 минуты назад, aaarrr сказал: Зачем закорачивать? N-канальным полевиком отключаете EEPROM землю по сбросу. На шине две EEPROM. У одной адресные выводы установлены в 000, у другой 001. Плюс у каждой по выводу GND. Все эти семь выводов через переходные отверстия подключены к внутренним слоям. Просто поставить NFET в землю сложно. Проще запитать EEPROM от PullUp резистора RESET, но для этого нужно отрезать переходные отверстия от вывода питания EEPROM к слою питания и паять провода от RESET к питаниям EEPROM. Пока мне кажется, что технологичнее будет костыль в виде платы с таймером. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
aaarrr 69 29 апреля Опубликовано 29 апреля · Жалоба 4 minutes ago, Zig said: адресные выводы Адресные выводы отключать нужды нет. 5 minutes ago, Zig said: Пока мне кажется, что технологичнее будет костыль в виде платы с таймером. Если всё уже собрано - да, технологичнее будет что-то добавить сверху. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Zig 38 29 апреля Опубликовано 29 апреля · Жалоба 24 минуты назад, aaarrr сказал: Если всё уже собрано - да, технологичнее будет что-то добавить сверху. Обдумал ваше решение. Спасибо, что подсказали. Надо посмотреть внимательнее на дорабатаваемую плату. Можно сделать плату переходник. Тонкую однослойную. На ней разместить обе EEPROM и транзистор. Приклеить ее к основной плате и через торцевые полуотверстия припаять к основной. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться