Форум по Delphi программированию

 



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ] > Код на шару!
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 30.04.2020, 11:30
vodovoz vodovoz вне форума
Прохожий
 
Регистрация: 19.12.2017
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию Delphi7 и DS18B20

Добрый день.
Если кому не жалко дайте пример кода для чтения температуры с датчика
DS18B20. Есть желание попробовать сделать самописец, для записи температуры с 3х датчиков на компьютер, и построения графиков.
Ответить с цитированием
  #2  
Старый 30.04.2020, 15:08
Аватар для Guaho
Guaho Guaho вне форума
Начинающий
 
Регистрация: 27.08.2017
Сообщения: 122
Версия Delphi: Delphi7
Репутация: 10
По умолчанию

У меня есть опыт такой разработки, только для микроконтроллеров. Самый разумный вариант - контроллер, читающий температуру с датчиков, и выдающий результаты в порт. Но это совсем другая история...
Через какой интерфейс собираетесь делать обмен данными?
Там в протоколе есть местами довольно жёсткие требования по длительностям импульсов. Например, "не позднее чем через 10 мкс после ... мастер должен ...". Типовые временнЫе интервалы - 15 и 60 мкс. Плюс к этому у Вас несколько датчиков, и это значит, что либо Вы вешаете их на одну шину (протокол это позволяет сделать), но для этого надо предварительно прочитать ID-коды каждого датчика, либо делаете 3 канала с их мультиплексированием. Но главное - это способность Вашей системы формировать (и отслеживать) точные временнЫе интервалы, независимо от того, что делается на компьютере.
Так что не уверен, что так просто получится это сделать (хотя где-то глубоко в памяти сидит подозрение, что где-то такую реализацию я уже видел. Могу ошибаться, т.к. склероз).

Последний раз редактировалось Guaho, 30.04.2020 в 15:17.
Ответить с цитированием
  #3  
Старый 06.05.2020, 16:35
vodovoz vodovoz вне форума
Прохожий
 
Регистрация: 19.12.2017
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Недавно я закончил устройство которое измеряет температуру сохраняет её в памяти МК и затем считывается ПК и рисует график температуры,(суточный самописец). Сейчас стоит зада постоянно измерять температуру в 3-х точках, и записывать её в ПК. В дальнейшем планирую делать тоже самое только уже в 40 точках. Вот по этому хотел работать напрямую с ПК, без промежуточного МК. Сейчас пока пытаюсь снять показания с двух датчиков на одной линии с помощью МК. Не удаётся прочитать их ID, хотя МК видит что на линии 2 датчика.
Ответить с цитированием
  #4  
Старый 07.05.2020, 00:34
Аватар для Guaho
Guaho Guaho вне форума
Начинающий
 
Регистрация: 27.08.2017
Сообщения: 122
Версия Delphi: Delphi7
Репутация: 10
По умолчанию

Я поступал в такой ситуации тупо: каждый датчик (оба работали в паразитном режиме) включался в линию через свой джампер. Таким образом последовательно прочёл их ID. Знаю, что есть специальная процедура для чтения без отключения "лишних" датчиков на шине, но она шибко замудрёная, как по мне, и не стал я заморачиваться с этим.
Ответить с цитированием
  #5  
Старый 12.05.2020, 16:18
vodovoz vodovoz вне форума
Прохожий
 
Регистрация: 19.12.2017
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Вопрос остался, пример кода в Delphi7, для связи DS18B20 с компом. Подскажите кому не лень.
Ответить с цитированием
  #6  
Старый 12.05.2020, 20:27
Аватар для Guaho
Guaho Guaho вне форума
Начинающий
 
Регистрация: 27.08.2017
Сообщения: 122
Версия Delphi: Delphi7
Репутация: 10
По умолчанию

Вот оно:
http://we.easyelectronics.ru/electro...-s-kompom.html

Последний раз редактировалось Guaho, 12.05.2020 в 20:30.
Ответить с цитированием
  #7  
Старый 13.05.2020, 11:28
vodovoz vodovoz вне форума
Прохожий
 
Регистрация: 19.12.2017
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

Что то там нет доступа к исходнику, нужен реально работающий кусок программы что бы можно было запустить в Delphi и он работал. А затем уже разбираться с кодом. Иначе мало толку от каких то непонятных записей, всё равно не смогу разобраться. Для первого раза нужен рабочий пример.
Ответить с цитированием
  #8  
Старый 13.05.2020, 12:48
Аватар для Guaho
Guaho Guaho вне форума
Начинающий
 
Регистрация: 27.08.2017
Сообщения: 122
Версия Delphi: Delphi7
Репутация: 10
По умолчанию

Так напишите автору, попросите исходник. Других ссылок по теме я не нашёл.
Ответить с цитированием
  #9  
Старый 15.05.2020, 19:23
Аватар для dr. F.I.N.
dr. F.I.N. dr. F.I.N. вне форума
I Like it!
 
Регистрация: 12.12.2009
Адрес: Россия, г. Новосибирск
Сообщения: 640
Версия Delphi: D6/D7
Репутация: 26643
По умолчанию

Если Вам сложно разобраться с физической частью, то купите Ардуино самую простую и по примерам из интернета залейте в нее скетч с работой с датчиками ds18b20 по 1-wire и передачей данных к компьютеру через последовательный порт.

Задача решается тупым копированием скетчей и скачиванием компонента для работы с последовательным портом.

Беглый поиск дает нужные результаты:
Arduino+ds18b20
Delphi+Com-port
__________________
Грамотно поставленный вопрос содержит не менее 50% ответа.
Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть.

Последний раз редактировалось dr. F.I.N., 15.05.2020 в 19:26.
Ответить с цитированием
  #10  
Старый 18.05.2020, 09:41
vodovoz vodovoz вне форума
Прохожий
 
Регистрация: 19.12.2017
Сообщения: 5
Версия Delphi: Delphi 7
Репутация: 10
По умолчанию

В том то и дело, что с железом проблем нет. Я уже делал устройства управляемые с Com порта. Вопрос состоит в примере кода, получения температуры, с датчика DS18B20, а далее я уже используя этот пример буду развивать программу под свои нужды.
Ответить с цитированием
Ответ



Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:25.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources", 2004-2020

ВКонтакте   Facebook   Twitter