Полная версия этой страницы:
1-Wire DS1977
Таблетка с 32KB EEPROM, ток потребления в режиме программирования - до 7mA (в прочих режимах - микроамперы). Исполнитель использовал стандартную для других 1-Wire (например DS1995) схему подключения (ПЛИС + для защиты БВВ 2 инвертора с ОК один - на вход, другой - на выход). Подтягивающий резистор - 1k. При тестировании наблюдаю массовые глюки при работе с таблетками. Исполнитель пытается меня убедить, что у меня неисправные таблетки (а у него все работает), хотя сам их мне предоставил для тестирования. Я, в свою очередь, пытаюсь его убедить, что делать нужно сообразно документации производителя, который требует ставить параллельно PULLUP'у MOSFET и включать его в определенные моменты.
Вопросы:
1) Кто прав?
2) Сталкивался ли кто-нибудь с данными таблетками и как реализовано было сопряжение? Насколько стабильно работает данный тип iButton?
3) Допустимо ли вместо MOSFETа поставить буфер с третьим состоянием и соответствующей нагрузочной способностью и подпитывать таблетку подавая на выход активную '1'?
4) Может еще какие-то варианты предложите попроще (все равно сопли вешать, так как плата уже разведена)?
Видимо, зря я запостил тему в пятницу вечером ...
Так что никому не приходилось с DS1977 работать?
Ну я с ними работал. Нормально работают. Вешал 2 способами - на DS2480 и на ножку MSP430 (от 3.3 вольт). В качестве промежуточной меры можно посоветовать уменьшить подтяжку на питание - поставить где-нибудь 500 Ом (точнее надо смотреть в даташите на DS1977).
Судя по документации DS2480 имеет внутри Strong PULLUP, с этим ясно. А что касается MSP - давайте поподробней. Как там нога была сконфигурирована, которая линией управляла? Что подавалось на нее в тот момент, когда нужно по документации включать Strong PULLUP - '1' или 'Z'? Если '1', то прав похоже все-таки я. Если даже уменьшить сопротивление резистора подтяжки до разрешенных 0,6k, то падение напряжения на нем при указанном макс. токе потребления 7мА будет составлять 4,2В. Т.е. таблетке от 5В останется 0,8В, что вряд ли положительно скажется на ее работе.
Цитата(BSV @ Dec 11 2007, 00:43)

Судя по документации DS2480 имеет внутри Strong PULLUP, с этим ясно. А что касается MSP - давайте поподробней. Как там нога была сконфигурирована, которая линией управляла? Что подавалось на нее в тот момент, когда нужно по документации включать Strong PULLUP - '1' или 'Z'? Если '1', то прав похоже все-таки я. Если даже уменьшить сопротивление резистора подтяжки до разрешенных 0,6k, то падение напряжения на нем при указанном макс. токе потребления 7мА будет составлять 4,2В. Т.е. таблетке от 5В останется 0,8В, что вряд ли положительно скажется на ее работе.
Естественно, 1. Правда, последовательно с ножкой был ещё включен резистор на 100 Ом.
Еще одна возможная причина - большая емкость защитных диодов. Работа с 1977 скорее всего ведется в режиме overdrive, в котором используются микросекундные импульсы. Защита может валить фронты этих импульсов.
Спасибо большое за консультацию, примерно так я и думал. Овердрайв вроде бы там не используется.
Буду очень признателен, если ответит еще кто-нибудь. Так сказать статистику набрать.
vol2003
Feb 7 2008, 09:13
Если еще интересно (а может и кому-нибудь другому понадобится), делал на Atmega8L с подтягивающим резистором, никаких внешних транзисторов не ставил. Нога переключается на "выход" в момент передачи, в момент приема - "вход" c pull-up. Иногда появлялись ошибки передачи, но очень редко.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.