Реклама на сайте English version  DatasheetsDatasheets

KAZUS.RU - Электронный портал. Принципиальные схемы, Datasheets, Форум по электронике

Новости электроники Новости Литература, электронные книги Литература Документация, даташиты Документация Поиск даташитов (datasheets)Поиск PDF
  От производителей
Новости поставщиков
В мире электроники

  Сборник статей
Электронные книги
FAQ по электронике

  Datasheets
Поиск SMD
Он-лайн справочник

Принципиальные схемы Схемы Каталоги программ, сайтов Каталоги Общение, форум Общение Ваш аккаунтАккаунт
  Каталог схем
Избранные схемы
FAQ по электронике
  Программы
Каталог сайтов
Производители электроники
  Форумы по электронике
Помощь проекту

Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей...

Закрытая тема
Опции темы
Непрочитано 11.02.2010, 15:08   #1
nsl2004
Почётный гражданин KAZUS.RU
 
Регистрация: 13.04.2009
Сообщений: 5,611
Сказал спасибо: 1,070
Сказали Спасибо 1,273 раз(а) в 884 сообщении(ях)
nsl2004 на пути к лучшему
По умолчанию Эмуляция 1-wire лючей DS2405 и DS2408

Уважаемые друзья. Меня интересует возможность эмуляции 1-wire устройств DS2405 и DS 2408. Какую задачу мне хотелось реализовать.
Необходимо , чтобы МК ( AVR ) - на запрос мастера сети давал отклик о состоянии. Включен или выключен. Для примера - у меня есть многопозиционный выключатель света, на АTiny2313, на пару ног выведены сигналы ( 1 или 0) , в зависимости от состояния включателя они меняются. Далее я планировал поставить ключи ( DS2405-08) для отслеживания состояния включателя. Но подумал, что наверно должно существовать решение которое позволит заставить МК отвечать на запросы 1-wire сети стандартным откликом DS2405.? Если подскажете направление , буду очень благодарен.
Отслеживать МК - датчики 1-wire это понятно, а вот можно ли сделать наоборот?
Реклама:
nsl2004 вне форума  
Непрочитано 11.02.2010, 15:46   #2
Classic001
Временная регистрация
 
Регистрация: 13.10.2009
Сообщений: 81
Сказал спасибо: 2
Сказали Спасибо 8 раз(а) в 8 сообщении(ях)
Classic001 на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Конечно возможно. Как пример можете посмотреть тот же эмулятор DS1990 - там как раз реализован 1-wire slave. Единственное - программу под Ваши цели Вам придётся скорее всего писать самостоятельно.
Classic001 вне форума  
Непрочитано 11.02.2010, 16:18   #3
nsl2004
Почётный гражданин KAZUS.RU
 
Регистрация: 13.04.2009
Сообщений: 5,611
Сказал спасибо: 1,070
Сказали Спасибо 1,273 раз(а) в 884 сообщении(ях)
nsl2004 на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Спасибо за ответ. Дело в том что инфу по 1990 , мне так показалось, все источники копируют из журнала Хакер, а там описание очень приближенное и в добавок кусок кода на ассемблере. Опытному человеку , достаточно намека, во всех остальных случаях хотелось бы что то более приближенное к теме.
nsl2004 вне форума  
Непрочитано 11.02.2010, 19:25   #4
Classic001
Временная регистрация
 
Регистрация: 13.10.2009
Сообщений: 81
Сказал спасибо: 2
Сказали Спасибо 8 раз(а) в 8 сообщении(ях)
Classic001 на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Вы сообщите пожалуйста - а настоящие устройства от далласа вы использовать будете ? А я вам попозже (сегодня часов в 11-12) постараюсь посоветовать.
Classic001 вне форума  
Непрочитано 11.02.2010, 19:34   #5
Kabron
Почётный гражданин KAZUS.RU
 
Аватар для Kabron
 
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,540
Сказал спасибо: 698
Сказали Спасибо 4,315 раз(а) в 1,979 сообщении(ях)
Kabron на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Здесь http://bascom.at.ua/publ/1-1-0-1
и здесь: http://www.mcselec.com/index.php?opt...=256&Itemid=57

описание моей конструкции:
Tiny AVR emulates Dallas DS2450 1-Wire Quad A/D Converter
Изучайте, мб поможет

Последний раз редактировалось Kabron; 11.02.2010 в 19:50.
Kabron вне форума  
Сказали "Спасибо" Kabron
nsl2004 (11.02.2010)
Непрочитано 11.02.2010, 20:01   #6
nsl2004
Почётный гражданин KAZUS.RU
 
Регистрация: 13.04.2009
Сообщений: 5,611
Сказал спасибо: 1,070
Сказали Спасибо 1,273 раз(а) в 884 сообщении(ях)
nsl2004 на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Сообщение от Classic001 Посмотреть сообщение
Вы сообщите пожалуйста - а настоящие устройства от далласа вы использовать будете ? А я вам попозже (сегодня часов в 11-12) постараюсь посоветовать.
Сейчас так - устройство собрано и тестируется. Все очень просто. через ноги МК подключаются DS2405 - получается что то типа сухого контакта - мастер 1-wire фирменный, на сом порт. Компом считываю состояние DS2405 оттуда в базу. Дальше что хочешь. Так вот хочу эти датчики убрать, если есть МК то зачем лишняя рассыпуха. Тем более что они используются только как контрольные, что бы отметить горю, не горю.
nsl2004 вне форума  
Непрочитано 11.02.2010, 21:20   #7
nsl2004
Почётный гражданин KAZUS.RU
 
Регистрация: 13.04.2009
Сообщений: 5,611
Сказал спасибо: 1,070
Сказали Спасибо 1,273 раз(а) в 884 сообщении(ях)
nsl2004 на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Сообщение от Kabron Посмотреть сообщение
Здесь http://bascom.at.ua/publ/1-1-0-1
и здесь: http://www.mcselec.com/index.php?opt...=256&Itemid=57

описание моей конструкции:
Tiny AVR emulates Dallas DS2450 1-Wire Quad A/D Converter
Изучайте, мб поможет
Ух ты. Спасибо. Попробую разобратся, опыта честно говоря маловато. Но уже в том направлении.
nsl2004 вне форума  
Непрочитано 11.02.2010, 21:56   #8
Classic001
Временная регистрация
 
Регистрация: 13.10.2009
Сообщений: 81
Сказал спасибо: 2
Сказали Спасибо 8 раз(а) в 8 сообщении(ях)
Classic001 на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Разбирайтесь. Как раз подходит под честный Microlan

Хотя есть один трик: использовать одну процедуру и для приёма и для передачи байта через 1-wire.

Цитата:
uint8_t slave_xtx(uint8_t data)
{
uint8_t i;
uint8_t result =0;
for(i=0;i‹8;i++)
{
while (PINB & (1 ‹‹ PB0)); // wait for sync pulse begins

if (data & 1) DDRB &= (1 ‹‹ PB0); // set appropriate state of pin
else DDRB |= (1 ‹‹ PB0); // accord least bit state

data ››= 1; // rotate data right
result ››= 1; // rotate result right

__usdelay(30); // delay before pin samplen
if (PINB & (1 ‹‹ PB0)) result |= 0x80; // sample pin state
else result &= ~0x80;

__usdelay(70); // delay to frame end

DDRB &= ~(1 ‹‹ PB0); // release pin

__usdelay(1); // recovery time
}
return (result);
}
Для приёма используем:
x = slave_xtx(0xff);

Для передачи:
slave_xtx(x);

Последний раз редактировалось Classic001; 13.02.2010 в 20:58.
Classic001 вне форума  
Сказали "Спасибо" Classic001
nsl2004 (12.02.2010)
Непрочитано 13.02.2010, 02:27   #9
nsl2004
Почётный гражданин KAZUS.RU
 
Регистрация: 13.04.2009
Сообщений: 5,611
Сказал спасибо: 1,070
Сказали Спасибо 1,273 раз(а) в 884 сообщении(ях)
nsl2004 на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Интересный BASCOM. Придется разборки разделить на две части - сперва смоделировать в Proteuse что то типа мастера, чтобы читал DS2405, потом попробовать уже смоделировать DS2405. Иначе что то ничего не продвигается.
nsl2004 вне форума  
Непрочитано 13.02.2010, 02:57   #10
Kabron
Почётный гражданин KAZUS.RU
 
Аватар для Kabron
 
Регистрация: 12.11.2004
Адрес: Москва
Сообщений: 8,540
Сказал спасибо: 698
Сказали Спасибо 4,315 раз(а) в 1,979 сообщении(ях)
Kabron на пути к лучшему
По умолчанию Re: Эмуляция 1-wire лючей DS2405 и DS2408

Успехов. В Протеусе моделируется один в один с реалом.
Kabron вне форума  
Закрытая тема

Закладки

Метки
1-wire, ds2405, ds2408


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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 22:34.


Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot