Опрос
Какая ОС стоит на вашем смартофоне?
Календарь
« Апрель 2013 » Пн Вт Ср Чт Пт Сб Вс 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Arduino + аналоговый температурный датчик LM35
Arduino
автор: dimon , опубликовано: 27 апреля 2013
Подключим аналоговый температурный датчик LM35 к Arduino, температуру будем выводить на дисплей 1602.
/*
Баловство аналоговым температурным датчиком LM35.
дисплей 1602, LM35, потенциометр для подсветки дисплея
Подклюение дисплея 1602:
Контакт дисплея Контакт Arduino Значение
1 GND Vss
2 5V Vdd
3 GND Vo (контрастность)
4 digital 12 RS
5 digital 11 R/W
6 digital 10 ENABLE
11 digital 5 DB4
12 digital 4 DB5
13 digital 3 DB6
14 digital 2 DB7
15 5V LED+
16 GND LED-
*/
// подключаем библиотеку для работы с LCD
#include <LiquidCrystal.h>
// инициализируем LCD, указывая контакты данных
LiquidCrystal lcd(12, 11, 10, 5, 4, 3, 2);
// задаем переменные
int Count = 0; // счетчик обновлений
int tempPin = 0; // пин куда подключен датчик
float tempc = 0; // переменная для температуры
float maxi = 0, mini = 30; // max/min значения температуры
void setup() {
// красивая "загрузка" программы при старте :)
lcd.begin(16, 2);
lcd.print("Loading");
delay(500); // ждем 0.5 секунды
lcd.print(".");
delay(500); // ждем 0.5 секунды
lcd.print(".");
delay(1000); // ждем 1 секунду
lcd.clear(); //очистка экрана
// Задаем режим работы портов
}
void loop() {
lcd.clear(); //очистка экрана
// считываем и вычисляем температуру
tempc = ( 5.0 * analogRead(tempPin) * 100.0) / 1024.0;
if(tempc > maxi) {maxi = tempc;} // max температура?
if(tempc < mini) {mini = tempc;} // min температура?
lcd.setCursor(0, 0); // устанавливаем курсор в 0-ом
// столбце, 1 строке (начинается с 0)
lcd.print("T=");
lcd.print(tempc); // выводим текущую температуру
lcd.print(" C");
lcd.setCursor(13, 0); // устанавливаем курсор в 12-ом столбце, 1 строке
lcd.print(Count); // выводим кол-во измерений
lcd.setCursor(0, 1); // устанавливаем курсор в 0-ом столбце, 2 строке
lcd.print(mini); // выводим min температуру
lcd.print("<T<");
lcd.print(maxi); // выводим max температуру
delay(5*1000); // задержка перед повторением измерений
Count++; // инкремент счетчика измерений
}
Схема подключения LM35 к Adruino LM35 и Adruino на макетке
Ключевые теги: Arduino , LM35 , LCD , 1602
Голосов: 7 , рейтинг:
Уважаемый посетитель, Вы зашли на сайт как незарегистрированный пользователь. Чтобы Вам были доступны все функции Вам необходимо либо зарегистрироваться, либо зайти на сайт под своим именем.
Другие новости по теме:Баловство с кнопками на Arduino Ethernet погодная станция Восстановление RDP после Trojan-Spy.Win32.Zbot Как заставить min-height работать Настройка DNS (BIND)
Просмотрено: 10436 раз
| Напечатать | Комментарии (0)
Мы будем благодарны если Вы поделитесь ссылкой на эту новость со своими друзьями.
BB-код (для вставки на форумы):
HTML-код (для вставки в ЖЖ и сайты):
Для отправки по почте:
Информация
Посетители, находящиеся в группе Гости , не могут оставлять комментарии к данной публикации.
Облако тегов
Android , Arduino , backup , CentOS , cmd , css , DLE , DLE хаки , domoticz , dzvents , Home Assistant , HomeAssistant , Linux , log , Monster , ogf3 , RDP , Template , VBS , w2k8 , windows , WSH , xiaomi , бумага , бумажный самолетик , верстка , иструкция , Карты , кино , Навигация , оригами , программа , рецензия , рецепт , скрипт , фигуры , шаблон , Яндекс , яндекс-карты Показать все теги