Перейти к содержанию

Ключ Ibutton Ds1990a-f5


Рекомендуемые сообщения

Работаю с ключами iButton DS1990A-F5.Реализовал протокол обмена(а именно после посылаю reset импульс, а после ответа ключа команду 33H).Все работало.Проверял на одном ключе.Решил проверить работу на нескольких.В магазине продавец сказал, что есть новая партия DS1990A, и что мол если старые ключи прописывались не везде, то эти работают везде. Для верности еще купил ключ из старой партии.Так вот, ключи из старой партии работают, причем стабильно.А новые нет.На reset команду они отвечают, но после посылки 33H никаких данных не возвращают!На сайте никаких изменений в протоколе не нашел.Подскажите кто знает в чем может быть проблема!

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Проблема действительно существует, попадались и мне ключи, которые упорно не хотели прописываться. Причину так и не выяснил. Поэтому тоже очень хотелось бы услышать толковое объяснение.

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Работаю с ключами iButton DS1990A-F5.Реализовал протокол обмена(а именно после посылаю reset импульс, а после ответа ключа команду 33H).Все работало.Проверял на одном ключе.Решил проверить работу на нескольких.В магазине продавец сказал, что есть новая партия DS1990A, и что мол если старые ключи прописывались не везде, то эти работают везде. Для верности еще купил ключ из старой партии.Так вот, ключи из старой партии работают, причем стабильно.А новые нет.На reset команду они отвечают, но после посылки 33H никаких данных не возвращают!На сайте никаких изменений в протоколе не нашел.Подскажите кто знает в чем может быть проблема!

В крации, не совмнстимость контроллера с этими типами кода...возились долго и упорно в результате самое простое решение просто поменять ключи...

Ссылка на комментарий
Поделиться на другие сайты

в этих ключах может быть расхождения, а именно команда read rom может быть не только 33H, но и 0Fh

А эти модификации ключей в обозначении как-то указываются? А то получается несовместимость ключей с одинаковым обозначением. Я так понимаю, в микроконтроллере тогда нужно предусматривать read rom и 33H, и 0Fh:

MOVLW 0x33 ;Команда чтения ПЗУ

MOVWF RPZU

и далее добавить:

MOVLW 0x0F ;Команда чтения ПЗУ

MOVWF RPZU

Изменено пользователем Bar_boss
Ссылка на комментарий
Поделиться на другие сайты

Насколько мне известно обозначение не меняется.Не обязательно ж 10 ключей прописывать на одно устройство.Просто выкидать их тоде не надо, достаточно сменить команду.Или сделать две, как предложил Bar_boss.

Интересует ответ автора, помогла ли ему замена команды?!

security

Ссылка на комментарий
Поделиться на другие сайты

Но если обозначение не меняется. то ведь должны быть какие-то спецификации, где указывается номер ревизии ключа. Ведь кроме типа и номера ключа там есть обозначения типа А4, 01. Возможно, это и есть номера ревизий.

Ссылка на комментарий
Поделиться на другие сайты

А новые нет.На reset команду они отвечают, но после посылки 33H никаких данных не возвращают!
Можете указать, сколько нулей слева в номере новых DS1990A?
Ведь кроме типа и номера ключа там есть обозначения типа А4, 01. Возможно, это и есть номера ревизий.
Это не так, A4 - CRC (для каждого экземпляра свой), 01 - фирменный код для всех DS1990A и не только. :) Изменено пользователем biakss

Если лучшее враг хорошего, тогда худшее друг хорошего.

Ссылка на комментарий
Поделиться на другие сайты

К участникам форума. :rolleyes: Если обозначения у ключей разных модификаций одинаковые, то как их различать? По принципу - прописывается / непрописывается? :D

Изменено пользователем Bar_boss
Ссылка на комментарий
Поделиться на другие сайты

Если обозначения у ключей разных модификаций одинаковые, то как их различать?
DS1990A и DS2401 имеют одинаковый "8-bit family code" = 01. Другие изделия 1-wire продукты DALLAS имеют соответственно другие коды. Насчет модификаций DS1990A я не в курсе. Но при работе с 1-wire протоколом надо обращать внимание на разброс временных параметров записи-чтения. Временные параметры могут отличаться как в производстве у разных партий DS1990A, так и в условиях эксплуатации при изменении температуры.

post-28463-1200587173_thumb.jpg

Изменено пользователем biakss

Если лучшее враг хорошего, тогда худшее друг хорошего.

Ссылка на комментарий
Поделиться на другие сайты

У меня проблема однажды возникла с ключами с одной партии, которые по сравнению со "старыми" имели точно такое же обозначение: DS1990A-F5. В чём их отличие, так и не выяснил. Увы...

Ссылка на комментарий
Поделиться на другие сайты

А то даташиту, если не ошибаюсь, вообще 5,1 кОм :rolleyes: Что ж уж тогда снижать? Проблема видимо не в аналоговых настройках, а именно в протоколе обмена. Только Dallas хернёй занимается, что не указывает отличие в ключах с АБСОЛЮТНО ОДИНАКОВОЙ маркировкой. Или может быть мы плохо смотрим?

Ссылка на комментарий
Поделиться на другие сайты

Про разные команды знал..Поэтому сразу же когда данная проблема возникла проверил и 33h и 0Fh на старых ключах работают обе, на новых ни одна..

Количество нулей..В смысле в ID ключа? В старых два 0, а в новых которые не читаются пять 0..

Ссылка на комментарий
Поделиться на другие сайты

Количество нулей..В смысле в ID ключа? В старых два 0, а в новых которые не читаются пять 0..
Очень интересно! Из более чем 2тыс ключей, прошедших до настоящего времени через мои руки, все имели в ID ключа первые пять "0". Странный подход к нумерации у Далласа.

Если лучшее враг хорошего, тогда худшее друг хорошего.

Ссылка на комментарий
Поделиться на другие сайты

Действительно, и у меня "беспроблемные" ключи имеют первые пять нулей.
Я не зря задавал вопрос о количестве первых "0"-ей. Встречались контроллеры, которые первые пять "0"-ей не проверяли. Это было сделано для увеличения количества записываемых ключей. Серии ключей с ID в котором нулей менее чем пять, естественно на таких контроллерах не читаются.

Если лучшее враг хорошего, тогда худшее друг хорошего.

Ссылка на комментарий
Поделиться на другие сайты

Контроллеры, которые запрограммированы на считывание или несчитывание нулей - это уж как программист микрокод для контроллера написал. Это в принципе понятно. Вот непонятно, когда я беру из даташита на Dallas рекомендованный им же протокол обмена, засовываю это дело в микроконтроллер,(то есть разрабатываю собственное устройство) и одни ключи регистрируются, а другие нет. Тут уже на определённый тип контроллера нечего грешить, сделано всё, как советовал разработчик.

К счастью, мне только один раз попались два подобных ключа. Но проблема то действительно существует!

Ссылка на комментарий
Поделиться на другие сайты

Вот непонятно, когда я беру из даташита на Dallas рекомендованный им же протокол обмена, засовываю это дело в микроконтроллер,(то есть разрабатываю собственное устройство) и одни ключи регистрируются, а другие нет.
Какую длительность временных интервалов для протокола 1-WIRE вы запрограммировали?

Если лучшее враг хорошего, тогда худшее друг хорошего.

Ссылка на комментарий
Поделиться на другие сайты

При чем тут количество нулей и контроллер..Я сам программирую контроллер и реализую протокл обмена!Со старыми ключами все работает без сбоев..А новые не хотят!

Ссылка на комментарий
Поделиться на другие сайты

2 biakss

Описание на iButton гласит: "В цикле считывания идеальный момент стробирования считываемого данного - это 8мкс после начала временного сегмента". Эту длительность я и установил - в подпрограмме временной задержки чтения ключа подряд 8 команд NOP, что при кварце 4 МГц и следовательно при этом длительности машинного цикла 1 мкс составляет эти 8 мкс.

А вообще-то Ваш вопрос натолкнул меня на мысль, что не мешало бы действительно проверить всю программу.

Изменено пользователем Bar_boss
Ссылка на комментарий
Поделиться на другие сайты

А вообще-то Ваш вопрос натолкнул меня на мысль, что не мешало бы действительно проверить всю программу.
Так вот и я дважды пытался выяснить у уважаемого автора темы о временных интервалах, которые он запрограммировал в своем контроллере, но видимо нет желания слушать подсказки :(

Еще раз повторяю - какие у вас временные интервалы? См. http://forum.cxem.net/index.php?s=&sho...st&p=236317

Изменено пользователем biakss

Если лучшее враг хорошего, тогда худшее друг хорошего.

Ссылка на комментарий
Поделиться на другие сайты

Описание работы iButton. Так, на всякий случай :rolleyes:

Если к линии подключен прибор iButton, он обнаруживает отрицательный импульс длительностью более 480 мкс (неподключенный прибор iButton считает, что у него на линии присутствует длительный отрицательный импульс) и после паузы длительностью от 15 до 60 мкс вырабатывает нулевой (”отрицательный”) импульс опознавания длительностью от 60 до 240 мкс. Этот импульс воспринимается ведущим устройством и сообщает ему о том, что на линии присутствует как минимум один прибор iButton (точнее говоря, как минимум один прибор с интерфейсом Micro-LAN).

Следует сразу отметить, что очень часто опускается требование о том, что следующий цикл может начаться не раннее, чем через 480 мкс после завершения импульса сброса или не раннее, чем через 180 мкс после завершения импульса опознавания и перехода линии в высокое логическое состояние. С другой стороны, важно отметить, что интервалы между циклами (инициализации, чтения или записи бита) могут быть как угодно большими.

Циклы записи и чтения битов обычно имеют определенную длительность, называемую временем слота или временным сегментом. Длительность слота обычно выбирается равной 60 мкс и может находиться в интервале от 60 до 120 мкс. Каждый слот чтения или записи начинается с переключения уровня сигнальной линии с высокого на низкий логический уровень (отрицательного фронта), инициированного ведущим устройством. Важно отметить, что во всех сеансах обмена (передачах команд или данных) байты всегда передаются, начиная с младшего разряда.

Запись 1 в прибор iButton заключается в формировании ведущим устройством на сигнальной линии низкого логического уровня длительностью от 1 до 15 мкс, а затем восстановления линии в высокое логическое состояние на время, оставшееся до завершения выбранной длительности времени слота. При этом iButton определяет состояние сигнальной линии в интервале от 8-й до 15-й мкс слота. Запись 0 в прибор iButton заключается в формировании ведущим устройством на сигнальной линии низкого логического уровня длительностью, как минимум на 1 мкс меньше длительности слота. Описанные выше циклы записи 0 или 1 повторяются для каждого передаваемого бита. Важно отметить, что после каждого слота необходима пауза для восстановления длительностью не менее 1 мкс, но максимальная длительность паузы не оговорена и может быть неограниченно большой.

Чтение бита прибора iButton начинается с синхронизирующего сигнала ведущего устройства длительностью от 1 до 15 мкс. После этого ведущее устройство освобождает линию и переходит в состояние приема. Далее состояние линии определяется ведомым устройством, т. е. прибором iButton. Ведущее устройство должно проанализировать состояние линии в интервале от завершения стробирующего импульса (переднего фронта) до 15 мкс. Оптимальная длительность синхронизирующего импульса ведущего устройства — 5 мкс, оптимальное время чтения состояния линии, определяемого ведомым прибором iButton — 8 мкс. Среднее время удержания сигнала прибором iButton составляет примерно 45 мкс. Ведомое устройство, т. е. iButton, передает высоким логическим уровнем бит лог. 1, а низким логическим уровнем — бит лог. 0.

Изменено пользователем Bar_boss
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
  • Сообщения

    • Уважаемые товарищи, нужны схемы, либо НТД для ремонтов блоков очень срочно!!!! Всё кроме реле Р10ТМУ, уже нашёл не вашем форуме и их отремонтировали....любая помощь приветствуется
    • Все предложенные к рассмотрению источники питания работают примерно по одному принципу: сетевое напряжение выпрямляется, фильтруется (получаем чуть больше 300 вольт постоянного), затем преобразуется снова в переменное, но уже на частотах в несколько десятков килогерц, понижается на трансформаторе и снова выпрямляется. За счёт высокой частоты преобразования используется трансформатор на ферритовом, а не на стальном, сердечнике, гораздо меньших габаритов и стоимости. Минусы: значительное усложнение схемы блока и вероятность возникновения различных помех от него. Модули управления (кроме первого) также являются импульными преобразователями, с теми же достоинствами и недостатками. Если нужно по быстрому собрать некое подобие ЛБП, то уж лучше брать модуль вроде этого. Ну и блок питания к нему соответствующий. Но не очень понятно, какой практический опыт можно получить от соединения готовых модулей парой проводов.  
    • У меня больше всего вопросов вызвала необычная схема обеспечения отрицательного питания. Автор этой обстоятельной заметки пишет: For this supply to work correctly, the transformer must have a secondary voltage of at least 18V RMS.  Почему? Что будет не так с отрицательным питанием, если напряжение на трансформаторе будет меньше 18В?   https://tinyurl.com/23mlwxtt - я в простейшей эмуляции ставлю 12В пикового напряжения для трансформатора и на стабилитроне все как положено: -5.6В.
    • Согласен, очень криво объяснил. Это работа трёх вольтовой линии, просто на диод шотки сдвоенный, на один анод приходит сигнал напрямую с трансформатора, а на второй через дроссель. Вольт/деление 5 вольт в клетке, тайминг по моему 10 МС. Третья фотография это сигнал на катодах уровень земли ровно по центру экрана. Но все линии по итогу в порядке 3.3 в, 5, в, 12 в и -12 в. Нагрузить все линии не могу сразу ,так как тут же выгорают транзисторы (имеется нагрузка 250 ватт по 10 ампер на каждую линию за исключением-12в), поэтому нагружаю 3.3 вольтовую линию на 10 ампер,  подключаю переменный резистор 50 ватт на 15 ом на 5 вольтовую линию и постепенно довожу до той той картины с перекосом (это гдето  50 ватт общее). По поводу микросхемы, вверху имеется скрин где между импульсами проскакивает мини импульс, если так можно сказать, он проскакивает и на одной  и на второй ноге (7,8). Микросхема не tl 494, а lw4933/abx942.1/c9421646. Далее они приходят на базы транзисторов 945g  коллекторы этих транзисторов соединены с  выводами трансформатора. Просто схема типовая, легче мне кажется просто привести фото самого блока, для тех кто разбирается будет гораздо информативне.  Диод шотки по 12 вольтовой линии был подгоревший, заменил на донора. Приводить скрины не буду что бы не захламлять тему. В итоге, пока все так же, при достижении определенной нагрузки суммарно где-то 50 ватт, появляется этот "выброс и перекос". По этому имеются мысли на два варианта, это микросхема , этот мини импульс между периодами, на низкой нагрузке особо не влияет, но при достижении определенной приводит с самовозбуждению входной цепи и непроизвольному открытию транзистора нижнего плеча. Либо дело в "горячей части", плавающий дефект в обвязке силовых ключей.  Спасибо за ответ.
    • @Gomerchik а вы контролировали как меняется уровень сигнала на А1 ардуины?
    • Спасибо за совет. Автором данного проекта я не являюсь, мне нужно было воссоздать уличный датчик для метеостанции взамен пропавшего(( Из разного найденного в интернете этот проект работает с моей станцией Орегон (спасибо автору). В понедельник попробую последовать Вашему совету. Но все равно куча непоняток  как блин это работает)) Если дело в неправильной отправки команды, то как на это влияет подключение датчика температуры? Если совсем не подключать таймер, то передача идет один раз (как и прописано в программе), станция принимает и отображает, но минут через сколько-то естественно станция уже ни чего не показывает, но с таймером питание полностью не пропадает с ардуинки, но передача сигнала каким-то образом работает по таймеру.  В моем понимании данная команда подается один раз потому, что таймер должен отключать питание МК после передачи сигнала и каждые 43 сек снова подавать питание (так того требует станция).  Ардуино передает показания температуры отключается полностью и 43 секунды мк не работает.  Сейчас у меня питание пока сделано на подпитке от солнечной батареи, но пару пасмурных дней и аккумулятор съедается до отключения(
×
×
  • Создать...