Easyelectronics.ru

Электроника для всех
Текущее время: 23 июл 2018, 10:58

Часовой пояс: UTC + 5 часов



    • JLCPCB - Платы прототипов всего за 2$ c бесплатной доставкой (при первом заказе)
    • 10 PCBs за $2 для 2 слоев, $15 для 4 слойной, $74 для 6 слойной платы.
    • Крупнейший китайский производитель прототипных плат. 290000+ клиентов & 8000+ заказов в день!
    • LCSC - Крупнейший китайский онлайн магазин радиодеталей.

Начать новую тему Ответить на тему  [ Сообщений: 28 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 окт 2017, 20:56 
Заглядывает иногда

Зарегистрирован: 04 фев 2016, 12:43
Сообщения: 101
Откуда: BELARUS
Нашел один проект на гитхабе для libopencm3, о которой раньше не слышал переделал для stdperiph .Видео работы и проект прилагаю.
Видео https://youtu.be/miBf5bqynyo
проект https://drive.google.com/open?id=0ByRQu ... nRwZXJURFE


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 окт 2017, 21:13 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 2516
Откуда: КЧР, поселок Нижний Архыз
Вот тебе еще мое на таймере и DMA: https://github.com/eddyem/stm32samples/ ... /F1/1_wire
Цитата:
переделал для stdperiph

Сменил шило на мыло, вот уж делать нечего!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 окт 2017, 21:44 
Старожил
Аватара пользователя

Зарегистрирован: 22 июл 2017, 11:48
Сообщения: 1970
Ну молодец, конечно, похвально... Но был бы еще большим молодцом, ежели бы самостоятельно сделал, а не переделывал...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 окт 2017, 21:45 
Старожил
Аватара пользователя

Зарегистрирован: 13 май 2010, 01:32
Сообщения: 940
Откуда: Ижевск
молодец,жду теперь трёхфазный ШИМ генератор регулируемый.

_________________
Attiny13aПо20р.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 окт 2017, 22:24 
Старожил

Зарегистрирован: 11 сен 2012, 11:19
Сообщения: 4784
СерОжа, лично для тебя прыщавой, так и быть 50тыр.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 окт 2017, 23:02 
Старожил
Аватара пользователя

Зарегистрирован: 18 май 2013, 20:43
Сообщения: 3430
Откуда: Кемеровская область, Киселевск
не отказывайся, соглашайся. тебе сам dosikus_2 предлагает. просрешь шанс заиметь нормальный код трехфазника по низкой цене. ты будешь жалеть об этом всю свою жизнь.

_________________
RADIOWOLF.RU


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 21 окт 2017, 02:12 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 2516
Откуда: КЧР, поселок Нижний Архыз
Я бы даже демпинговал, но не знаю, какой чип нужен: не факт, что там будет три ноги с трех разных таймеров. Иначе регулировать только скважность получится (хотя, похоже, именно это и нужно, но я не уверен).


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 27 ноя 2017, 20:33 
Здравствуйте!

Зарегистрирован: 27 ноя 2017, 19:07
Сообщения: 4
Прошу прощения, что со своим вопросом вламываюсь сюда.
Пытаюсь подружить STM32F103 blue pill с ds18b20 и испытываю проблемы. Надеюсь на помощь опытных коллег)
Сконфигурировал USART в полудуплексном режиме и использую подход, описанный тут:http://we.easyelectronics.ru/STM32/esche-raz-o-stm32-i-ds18b20-podpravleno.html.

Датчик послушно отзывается на сигнал сброса.
Но когда доходит доходит до чтения его ответов, складывается ощущение что он не может подтянуть уровень к земле на достаточное время. На осцилограмме это выглядит так:
Show Чтение ответа датчика

Для сравнения вот как выглядит просто запись 0xff с отсутствующим датчиком:
Show Запись 0xff без присутствия датчика

Запись/чтение делаю вот таким кодом:
Код:
HAL_UART_Receive_DMA(&huart3, &ow_buf, 8);
if (HAL_UART_Transmit(&huart3, (uint8_t *) &ow_buf, 8, 100000)
      != HAL_OK) {
   // Transfer error in transmission process
   Error_Handler();
}
HAL_UART_DMAStop(&huart3);

Поведение сохраняется как при трехпроводной схеме подключения с полноценным питанием, так и в случае паразитного питания. Напряжение 3.3В, резистор 4к7. Все делаю на макетной плате, расстояния минимальные. Сам датчик рабочий -- с ардуиной пашет на ура.
Может у кого нибудь есть мысли, в чем корень моих проблем?
Спасибо

*Вынес вопрос в отдельную ветку: http://forum.easyelectronics.ru/viewtopic.php?f=35&t=33729


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 31 дек 2017, 02:55 
Заглядывает иногда

Зарегистрирован: 04 фев 2016, 12:43
Сообщения: 101
Откуда: BELARUS
BusMaster писал(а):
Ну молодец, конечно, похвально... Но был бы еще большим молодцом, ежели бы самостоятельно сделал, а не переделывал...

Ну разбираясь в чужом коде тоже учишься.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 31 дек 2017, 02:57 
Заглядывает иногда

Зарегистрирован: 04 фев 2016, 12:43
Сообщения: 101
Откуда: BELARUS
selevo писал(а):
молодец,жду теперь трёхфазный ШИМ генератор регулируемый.

https://youtu.be/-gX1sVRkOC4 это что ли?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 03 янв 2018, 20:34 
Старожил
Аватара пользователя

Зарегистрирован: 13 май 2010, 01:32
Сообщения: 940
Откуда: Ижевск
на видео там кода нет
ничё интересного,я так же могу показать на Ali вот это
и сказать что до 9КВт здесь надо просто добавить кондёров заменить диодный мост IGBT модуль и цепь обратной связи по напряжения и току.
То есть сэкономить 10т.р-20т.р..


кстати перестала работать ссылка в первом сообщении.


Вложения:
2018_01_03_19_2636.jpg
2018_01_03_19_2636.jpg [ 23 Кб | Просмотров: 1470 ]
2018_01_03_19_2822.jpg
2018_01_03_19_2822.jpg [ 72.96 Кб | Просмотров: 1470 ]

_________________
Attiny13aПо20р.


Последний раз редактировалось selevo 04 янв 2018, 18:14, всего редактировалось 1 раз.
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 04 янв 2018, 01:34 
Заглядывает иногда

Зарегистрирован: 04 фев 2016, 12:43
Сообщения: 101
Откуда: BELARUS
Для STM32Cube HAL короткий обзор https://youtu.be/uVVhgYG-n2I
проект https://drive.google.com/file/d/1rzVoUx ... sp=sharing внутри есть файл обязательно почитать!!!!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 04 янв 2018, 16:29 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 2516
Откуда: КЧР, поселок Нижний Архыз
За калокуб минус.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 04 янв 2018, 18:21 
Старожил
Аватара пользователя

Зарегистрирован: 13 май 2010, 01:32
Сообщения: 940
Откуда: Ижевск
ооо,круто )))
куб - это хорошо куб - это быстро куб - наглядно

_________________
Attiny13aПо20р.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 04 янв 2018, 22:55 
Заглядывает иногда

Зарегистрирован: 04 фев 2016, 12:43
Сообщения: 101
Откуда: BELARUS
Eddy_Em писал(а):
За калокуб минус.
так попросили люди я последнее время юзаю stdperiph + CMSIS. Недавно работал с I2c в HAL для этого мк это просто ппц.. То BUSY то TIMEOUT то... переделал все на CMSIS и забыл.В stdperiph все завелось с пол тыка.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 19 июл 2018, 18:33 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2657
Возник следующий вопрос по 1-wire, в частности DS18B20+.
Использую USART+DMA, полудуплекс (пин только Tx) подтяжка 1к, питание активное +5В
Без проблем все читается, ищутся устройства, запускается измерение температуры и читается, crc совпадает. Вопрос один - в ДШ на датчик сказано, что после запуска измерения в ответ на чтение таймслота датчик будет отдавать 0, пока идёт измерение:
Цитата:
If the DS18B20 is powered by an
external supply, the master can issue read time slots after the Convert T command and the DS18B20 will
respond by transmitting a 0 while the temperature conversion is in progress and a 1 when the conversion
is done.

Дело в том, что при чтении таймслота(бита) после запуска измерения (CONVERT T 0x44) я всегда вычитываю единичку: отправляю в uart 0xFF и получаю на приемнике 0xFF, датчик не притягивает линию. При этом чтение и запись таймслота прекрасно работает при поиске устройств на шине (чтение битов и их комплиментарных пар), так что исключается софтовая трабла.
Осцилл также показывает что датчик и stm32 отлично подтягивают линию на землю, аппаратных косяков нет.
Что я упустил? Проверял на нескольких датчиках, пробовал отправлять команду 0x44 повторно и сразу после неё читать таймслот, пробовал отправлять команду и читать байт - ничего не меняется.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 19 июл 2018, 19:02 
Старожил
Аватара пользователя

Зарегистрирован: 27 мар 2015, 04:10
Сообщения: 1614
Откуда: Харьков
Питание не паразитное случайно?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 июл 2018, 00:43 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2657
Нет, питание активное.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 июл 2018, 02:31 
Старожил
Аватара пользователя

Зарегистрирован: 27 мар 2015, 04:10
Сообщения: 1614
Откуда: Харьков
Значит просто быстро замеряет. Температуру то правильно выдает? Обычно он делает замер сильно быстрее чем в ДШ об этом написано.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 июл 2018, 11:46 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2657
Не может он так быстро замерять. 50 мс против 750 как-то совсем не верится. Температуру выдаёт правильно, и обновляет её естественно раз в примерно 750 мс. Пытаюсь еще раз всё перебрать, но пока какая-то магия.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 июл 2018, 12:46 
Старожил
Аватара пользователя

Зарегистрирован: 27 мар 2015, 04:10
Сообщения: 1614
Откуда: Харьков
Вполне может, у меня такое поведение на всех датчиках которые я заказывал на али. Он быстро отпускает ногу, но видимо делает это раньше времени т.к. показание отстает на один замер.
Например если сделать замер при комнатной температуре, затем резко нагреть датчик, например зажигалкой и сделать еще один замер, то он выдаст тоже комнатную, а следующий замер выдаст уже высокую температуру.
Попробуйте и у себя такой эксперимент провести.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 июл 2018, 17:12 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2657
Проверил всё еще раз, магия. Добавил функцию READ POWER SUPPLY [B4h], которая определяет есть ли датчики с паразитным питанием на шине, последовательность проста - [CC]->[B4]->[READ TIME SLOT]. Здесь чтение таймслота работает корректно, определяется паразитное или активное питание. Короче хрен его знает, поставил опрос с частотой 800мс, на всё хватит. А так было бы удобно: можно менять разрешение (и время измерения), и как линию отпустят тут же запускать новое.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 июл 2018, 17:16 
Старожил
Аватара пользователя

Зарегистрирован: 27 мар 2015, 04:10
Сообщения: 1614
Откуда: Харьков
Эти датчики не рекомендуется опрашивать чаще чем раз в секунду иначе у них саморазогрев влияет на температуру.
А вообще датчики говененькие, и на рынке одни подделки китайские. Лучше на другое что-то переходить.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 июл 2018, 17:25 
Старожил

Зарегистрирован: 16 ноя 2012, 07:47
Сообщения: 2657
Разогрев не грозит - они в гильзе, а та в среде с хорошей теплопроводностью. Во всяком случае, показания не скачут. А измерять надо часто. Датчики покупаем через офиц. поставщиков, не думаю что там тоже китай.

UPD: Блин, победил... после старта измерений нельзя отправлять команду сброса! После сброса видать сбрасывается его внутренняя логика, и он перестаёт отдавать ноль на чтение таймслота при идущем измерении. А заковыка крылась в том, что я смотрел не отвалилась ли линия в цикле опроса, а смотрел естественно командой ресета. Теперь всё верно, измерение идёт около 620-660 мс, и раньше замечал что он быстрее чем в ДШ.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: STM32F103 DS18B20 1WIRE USART
СообщениеДобавлено: 20 июл 2018, 17:55 
Старожил

Зарегистрирован: 26 ноя 2012, 10:28
Сообщения: 2516
Откуда: КЧР, поселок Нижний Архыз
Если понадобится простой термодатчик с высокой точностью (±0.05°C) в не очень широком диапазоне, посмотрите в сторону TSYS01. Я на них термомониторинг 6-метрового зеркала пилю. Очень хорошо откалиброваны на заводе: из пяти десятков, когда в кучку собрал, только у пары датчиков температуры неправильные показывались (на 0.2°C отличались от средней по всем датчикам). У остальных отлично укладывались в ±0.05 (среднеквадратическое было вообще в районе 0.02).


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 28 ]  На страницу 1, 2  След.

Часовой пояс: UTC + 5 часов


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


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

Найти:
Перейти:  

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB