Работа с датчиком температуры LM35 (BASCOM AVR) - BASCOM AVR - Микроконтроллеры - Каталог статей - Собери свою радиосхему! Сайт радиолюбителей.
Собери свою радиосхему!
Воскресенье, 11.12.2016, 05:15 Приветствую Вас Гость

Чебоксары

Главная | Регистрация | Вход | RSS

Каталог статей

Главная » Статьи » Микроконтроллеры » BASCOM AVR

Работа с датчиком температуры LM35 (BASCOM AVR)

Выкладываю на всеобщее обозрение пример работы с датчиком температуры LM35, данный датчик стоит заметно дешевле известного DS18B20. Проект реализован на микроконтроллере Atmega16, датчик подключен к порту PC0 (ADC0). Микросхема LM35 (у неё есть несколько аналогов) специально создана для измерения температуры. Всё, что нужно - это подключить 1 и 3 ногу к плюсу и минусу питания соответственно, и измерить напряжение на среднем выводе. Оно составляет 10 милливольт на каждый градус Цельсия температуры корпуса микросхемы (она сама выглядит как транзистор, кстати). Значит, если там напряжение 230мВ, то температура 23°С - все просто как три пальца об асфальт!

Схема подключения датчика:

Потребляет датчик около 130мкА, выход у неё низкоомный. Точность датчика составляет полградуса, и собственный перегрев порядка 0,1°С... В общем, круче некуда. Единственное - страдает она от слишком высоких температур - 150°С максимум. У датчика линейная шкала зависимости Градус/Вольт.  

Для правильной работы датчика необходимо вывода микроконтроллера AREF и AVCC подтянуть к плюсу питания, полную схему разрисовывать не стал (опущены элементы питания схемы). 

Код программы в BASCOM AVR:

$regfile = "m16def.dat"
$crystal = 1000000

Config Lcd = 16 * 2
Config Lcdpin = Pin , Db4 = Portd.4 , Db5 = Portd.5 , Db6 = Portd.6 , Db7 = Portd.7 , E = Portd.0 , Rs = Portd.1
Config Adc = Single , Prescaler = Auto


Dim A As Word
Dim B As Byte


B = 1
Start Adc

Cursor Off
Cls

Do

A = Getadc(0)
A = A / 2
Locate 1 , 2
Lcd "Temp =" ; A ; Chr(0) ; "c   "
Locate 1 , 16
Lcd Chr(b)
Waitms 500
Incr B
If B > 6 Then B = 1

Loop

End

 

Видео работы в симуляторе Proteus:

 

...похожая статья >> Термометр на датчике LM35 и LCD Winstar 

Скачать файлы проекта (~120кб.)

Категория: BASCOM AVR | Добавил: Адвансед (07.01.2015)
Просмотров: 3504 | Комментарии: 1 | Теги: lm35, 1602, BASCOM AVR, термометр, LCD, ATmega8 | Рейтинг: 5.0/1
Всего комментариев: 1
1  
Если не ошибаюсь, даный датчик является аналоговым, в сети есть простые схемы на транзисторах.

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Логин:
Пароль:
Категории раздела
Источники питания и приборы
Охрана и контроль доступа
Измерительные устройства
Часы, таймеры, счетчики
Световые эффекты
Защита и контроль
Для начинающих
Разное
BASCOM AVR
Информация по МК, FAQ
Поиск
Наш опрос
Проводит ли вода эл.ток?
Всего ответов: 52

Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
у нас тут все на bascom)

Подавляющее количество часов на Atmega8 выполнены с использо...

В чем тогда может быть причина, что у меня показывает лишь в...

Рейтинг@Mail.ru