Главная Термометры на PIC контроллерах 2-х канальный термометр на PIC16F628A и LCD от Nokia 3310
Кто на сайте
Сейчас 27 гостей онлайн
Гарантия низких цен

2-х канальный термометр на PIC16F628A и LCD от Nokia 3310

Рейтинг пользователей: / 5
ХудшийЛучший 

 

 

2-х канальный цифровой термометр состоит из трех основных компонентов:

  • микроконтроллера фирмы Microchip PIC16F628A;
  • жидкокристаллического графического индикатора от мобильного телефона Nokia 3310;
  • двух датчиков температуры фирмы Maxim DS18B20 или DS18S20, DS1820.

Измерение температуры выполняется цифровыми датчиками DS18B20 (DS18S20, DS1820). Данные цифровые датчики позволяют измерять температуру от -55 до +125°С, причем в интервале -10...+85°С производитель гарантирует абсолютную погрешность измерения не хуже ±0,5°С. На границах диапазона измеряемых температур точность ухудшается до ±2°С.Индикация показаний термометра во всем диапазоне измеряемых температур выполняется с точностью ±0.1°C, при использовании DS18B20, и с точностью ±0.5°C, при использовании DS18S20.

Схема

Принципиальная схема 2-х канального термометра на PIC16F628A и LCD Nokia3310

Управляющие команды от микроконтроллера  к датчикам, а также данные об измеренной температуре от датчиков в микроконтроллер передаются  по однопроводному последовательному интерфейсному каналу типа 1-Wire. Для упрощения программного обеспечения  термометра для каждого датчика выделен отдельный канал. К термометру одновременно должны подключаться только датчики одного типа. Тип датчиков определяется программным обеспечением при занесении кода программы в микроконтроллер.

Микроконтроллер  PIC16F628A, получив информацию о значениях температур от датчиков, преобразует  её для отображения на ЖКИ (LCD) индикаторе от мобильного телефона Nokia 3310.  Вывод полученной от датчиков D2, D3 и обработанной микроконтроллером D1 информации на индикатор E1 осуществляется по последовательному интерфейсному каналу типа SPI.

Разъем Х1 служит для осуществления внутрисхемного программирования. Тип разъема и его цоколевка контактов обеспечивают подключения устройства к программатору типа PICKit2. Если под микроконтроллер устанавливается панелька типа TRS18, то разъем Х1 можно не устанавливать, а программирование микроконтроллера осуществлять с помощью любого другого программатора отдельно от устройства.

Питание термометра осуществляется от источника постояного тока с напряжением 3,3В.

Описание работы.

После включении питания выполняется:

  • инициализациия микроконтроллера и LCD дисплея;
  • тест наличия и исправности цифровых датчиков температуры. При этом если какой нибудь датчик не подключен или его неисправность характеризуется наличием на линии DQ постоянного высокого уровня, при обращении к нему микроконтроллера, то на индикаторе в большинстве версий программы будет выводится значение "Обрыв" на месте отображения показаний от этого датчика . А вот если линия DQ какого либо датчика имеет замыкание на 0В, либо эту линию сам датчик, при наличии неисправности его внутренней схемы, подтягивает к 0В, то на индикаторе будет выводится значение "К.З.";
  • подача датчикам команд на начало измерения температуры.
  • получение микроконтроллером данных об измеренной температуре от датчиков;
  • преобразование полученных значений температуры  в данные для вывода на индикатор.
Программное обеспечение

Программное обеспечение 2-х канального цифрового термометра написано на языке С. Существует несколько версий программного обеспечения. Отличие версий друг от друга заключаются в дизайне выводимой на экран информации, а также в возможности работать с тем или другим датчиком температуры.

Внешний вид  для версии програмы 1.0

Внешний вид индикатора 2-х канального цирового термометра на PIC16F628A и LCD Nokia 3310 версии 1.0

Существуют две подверсии версии программы 1.0:

  • v1.0b - работает с датчиком температуры DS18B20:
  • v1.0s - работает с датчиком температуры DS18S20 или DS1820:

Исходный код программы v1.0s - здесь.

Внешний вид для версии программы 1.1

Существуют две подверсии версии программы 1.1:

  • v1.1s - работает с датчиками: DS18S20, DS1820

Внешний вид индикатора 2-х канального цирового термометра на PIC16F628A и LCD Nokia 3310 версии 1.1s

Подключены оба датчика DS18S20.

Внешний вид индикатора 2-х канального цирового термометра на PIC16F628A и LCD Nokia 3310 версии 1.1s.

Датчик "Дом" не подключен.

Внешний вид индикатора 2-х канального цирового термометра на PIC16F628A и LCD Nokia 3310 версии 1.1s.

Оба датчика не подключены

Внешний вид индикатора 2-х канального цирового термометра на PIC16F628A и LCD Nokia 3310 версии 1.1s.

Датчик "Улица" имеет замыкание сигнального вывода и вывода питания (GND)

  • v1.1b - работает с датчиком: DS18B20

Внешний вид индикатора 2-х канального цирового термометра на PIC16F628A и LCD Nokia 3310 версии 1.1b

Подключены оба датчика DS18B20

Внешний вид для версии программы 1.2

v1.2b - работает с датчиком DS18B20  и показания температуры выводятся большим шрифтом:

v1.2b_china - работает с датчиком DS18B20  и показания температуры выводятся большим шрифтом:

Внешний вид индикатора 2-х канального цирового термометра на PIC16F628A и LCD Nokia 3310 версии 1.2.b

 

По просьбе  автолюбителей:

v1.2b_avto - работает с датчиком DS18B20

v1.2s_avto - работает с датчиком DS18S20

Внешний вид индикатора 2-х канального цирового термометра на PIC16F628A и LCD Nokia 3310 верси 1.2_avto

v1.2b_avto1 - работает с датчиком DS18S20

v1.2s_avto1 - работает с датчиком DS18S20

 

Прошивка с надписями Салон/Улица большими буквами - здесь. Работает с DS18B20.

 

 

Источник: http://www.vnnik71.narod.ru/termo_ds18b20_lcd_nokia3310_pic16f628a.html




Скачать:
Скачать этот файл (termo_18b20_ulicha_salon.hex)termo_18b20_ulicha_salon.hex[Прошивка - Салон/Улица большими буквами]10 Kb
Скачать этот файл (termo_3310_16f628.hex)termo_3310_16f628_1.2b_china[код программы термометра с большими буквами под китайский индикатор]10 Kb
Скачать этот файл (termo_3310_16f628_ds18b20_v1.0b.hex)termo_3310_16f628_ds18b20_v1.0b.hex[Код программы v1.0b 2-х канального термометра]10 Kb
Скачать этот файл (termo_3310_16f628_ds18b20_v1.1b.hex)termo_3310_16f628_ds18b20_v1.1b.hex[Код программы v1.1b 2-х канального термометра]10 Kb
Скачать этот файл (termo_3310_16f628_ds18s20_v1.0s.hex)termo_3310_16f628_ds18s20_v1.0s.hex[Код программы v1.0s 2-х канального термометра]10 Kb
Скачать этот файл (termo_3310_16f628_ds18s20_v1.1s.hex)termo_3310_16f628_ds18s20_v1.1s.hex[Код программы v1.1s 2-х канального термометра]10 Kb
Скачать этот файл (termo_3310_16f628_v1.2b.hex)termo_3310_16f628_v1.2b.hex[Код программы v1.2b 2-х канального термометра]10 Kb
Скачать этот файл (termo_3310_16f628_v1.2b_avto.hex) termo_3310_16f628_v1.2b_avto.hex[Код программы v1.2b_avto 2-х канального термометра]10 Kb
Скачать этот файл (termo_3310_16f628_v1.2b_avto1.hex) termo_3310_16f628_v1.2b_avto1.hex[Код программы v1.2b_avto1 2-х канального термометра]10 Kb
Скачать этот файл (termo_3310_16f628_v1.2s.hex)termo_3310_16f628_v1.2s.hex[Прошивка 2-канального термометра с большими цифрами и под датчик DS18S20 (испр.)]10 Kb
Скачать этот файл (termo_3310_16f628_v1.2s_avto.hex) termo_3310_16f628_v1.2s_avto.hex[Код программы v1.2s_avto 2-х канального термометра]10 Kb
Скачать этот файл (termo_3310_16f628_v1.2s_avto1.hex) termo_3310_16f628_v1.2s_avto1.hex[Код программы v1.2s_avto1 2-х канального термометра]]10 Kb
 

Комментарии  

 
0 #42 vasek 10.02.2017 18:51
Возможна ли замена дисплея от нокии 3310 на 3110 без изменения прошивки.Если возможно переделать прошивку под 3110 буду очень благодарен.
Цитировать
 
 
+1 #41 сергей 06.12.2016 12:50
собрал с большими цифрами дом улица .запускался через раз ,помогла емкость с 4 вывода микросхемы на корпус 10 мкф
Цитировать
 
 
0 #40 Serg 08.04.2016 13:25
Спасибо за ответ.Попробовал две прошивки 08.termo3310big_font_v2.5 и 27_termo_lcd_62 8_18b20_big_china1 контрастность осталась прежней. Дисплей у меня NOKIA3310 KIT (сдуру купил в чип и дип) http://www.chipdip.ru/product/lcd-display-nokia3310-kit/ теперь не знаю что с ним делать... С уважением, Сергей.
Цитировать
 
 
0 #39 Администратор 08.04.2016 08:19
Serg! Если у Вас применен модуль LCD Nokia5110 то попробуйте прошивки отсюда: http://elshema.info/index.php/project-podmenu/menu-termometr/6-2termo-628-3310-5110
Они были адаптированы под данный индикатор. И к сожалению исходники на этот проект не сохранились и в следствии этого дальнейшей поддержки данного проекта не будет.
Цитировать
 
 
0 #38 Serg 07.04.2016 17:41
Повторил схему с китайским дисплеем и прошивкой termo_3310_16f628_1.2b_china. Заработал сразу без проблем, разница между двумя рядом установленными датчиками около 0.2 градусов. Спасибо автору за отличный термометр. Единственное что огорчает, слабая контрастность дисплея. Нельзя ли это как-то поправить? Заранее спасибо.
Цитировать
 
 
0 #37 Serg 29.10.2015 11:08
Собрал. Работает и радует с китайским дисплеем.Спасибо!
http://s8.hostingkartinok.com/uploads/images/2015/10/b037e229015d22eac8aedf0aad325d35.jpg
Цитировать
 
 
0 #36 Serg 29.10.2015 10:51
Собрал.Работает,радует , с китайским дисплеем. Спасибо.
http://s8.hostingkartinok.com/uploads/images/2015/10/b037e229015d22eac8aedf0aad325d35.jpg
Цитировать
 
 
0 #35 Иван 06.07.2012 15:58
Спасибо автору за поддержку китайских стекляшек собрал с этой прошивкой v1.2b_china работает на ура!!! Вопрос можно ли добавить регистрацию минимальных и максимальных температур, видел на радиокоте данную схему но там шрифт больно мелкий!
Цитировать
 
 
0 #34 Сергей 09.06.2012 05:28
Добрый день!
Собрал устройство с китайским дисплеем, к сожалении с прошивкой для китаца не работает, признаки жизни подает только с самой первой прошивкой(изобр ажение мерцает с частотой 1-2Гц).
Цитировать
 
 
0 #33 Сергей 09.06.2012 05:18
Добрый день!
Собрал данное устройство, с китайским дисплеем, но вот не задача признаки жизни подает только с самой первой прошивкой для оригинального дисплея (на дисплее мигает изображение с частотой 1-2ГЦ) со всеми остальными не работает... :sad:
Цитировать
 

Добавить комментарий


Защитный код
Обновить

Find the Best Web Hosting which offers reliable service and top quality support
Реклама
Яндекс.Метрика