В данной статье пойдет речь о том, как подключить датчик температуры DS18B20 к ATtiny2313 и отображать данные на ЖКИ-дисплее 16×1 на базе HD44780. Для проверки работоспособности программы и схемы я использовал эмулятор Proteus 7 (ISIS 7 Professional). Код программы (проект в Atmel Studio 7 целиком) вы сможете скачать по ссылке в конце статьи. Прошивку (.hex файл) можно установить и на реальный микроконтроллер ATtiny2313, программа будет работать нормально, главное не забыть менять фьюзы: CKSEL3…0 = 0100 – Внутренний тактовый генератор — частота 8 МГц и поставить галочку на SCKDIV8 – деление тактовой частоты на 8.
- 1 Цифровой датчик температуры DS18B20
- 2 Пример программы в Atmel Studio 7
- 3 Схема подключения LSD дисплея на базе HD44780 и датчика температуры DS18B20 к ATtiny2313 в ISIS 7 Professional — Proteus. Симуляция.
- 4 Купить ATTINY2313A на Aliexpress
- 5 Купить LCD1602 HD44780 на Aliexpress
- 6 Купить DS18B20 на Aliexpress
- 7 Похожие записи
Цифровой датчик температуры DS18B20
DS18B20 цифровой датчик температуры (термометр) с программируемым разрешением, от 9 до 12–bit, которое может сохраняться в EEPROM памяти прибора. DS18B20 обменивается данными по 1-Wire шине и при этом может быть как единственным устройством на линии так и работать в группе. Все процессы на шине управляются центральным микропроцессором: AVR, PIC, Arduino, STM, Raspberry Pi и др..
Диапазон измерений от –55°C до +125°C и точностью 0.5°C в диапазоне от –10°C до +85°C. В дополнение, DS18B20 может питаться напряжением линии данных («parasite power»), при отсутствии внешнего источника напряжения.
Каждый DS18B20 имеет уникальный 64-битный последовательный код, который позволяет, общаться с множеством датчиков DS18B20 установленных на одной шине. Такой принцип позволяет использовать один микропроцессор, чтобы контролировать множество датчиков DS18B20, распределенных по большому участку.
Смотрите также:
Подключение LCD на базе HD44780 к ATmega16 (LM016L LCD 16×2)
Мигание светодиодом на ATmega16/32
Atmel Studio 7 — Создание нового проекта
Характеристики
Диапазон измеряемых температур | −55…+125 °C |
Точность | ±0,5°C (в пределах −10…+85 °C) |
Время получения данных | 750 мс при 12-битном разрешении; 94 мс при 9-битном разрешении |
Напряжение питания | 3–5.5 В |
Потребляемый ток при бездействии | 750 нА |
Потребляемый ток при опросе | 1 мА |
Подключение
Герметичный датчик на основе микросхемы DS18B20 можно подключить двумя способами:
- По трём проводам: питание (красный), земля (чёрный) и сигнал (белый).
- По двум проводам: земля и сигнал. В этом случае датчик изредка может давать неверные показания, которые легко исключить из конечного результата фильтрацией.
Независимо от способа подключения, сигнальный провод необходимо соединить с питанием через резистор 4,7 кОм. При подключении только одного датчика, подойдёт и резистор на 10 кОм.
Назначение выводов
SO* | SOP* | TO-92 | СИМВОЛ | ОПИСАНИЕ |
---|---|---|---|---|
5 | 4 | 1 | GND | Общий. |
4 | 1 | 2 | DQ | Вывод данных ввода/вывода (Input/Output pin). Open-drain 1-Wire interface pin. По этой линии подается питание в режиме работы с паразитным питанием. |
3 | 8 | 3 | VDD | VDD ножка питания. Для режима работы с паразитным питание VDD необходимо соединить с общим проводом. |
*Все остальные выводы должны оставаться не подключенными.
Пример программы в Atmel Studio 7
ds18b20.h
#ifndef DS18B20_H_ #define DS18B20_H_ #include <avr/io.h> // установки подключения к DS18B20 #define DS18B20_PORT PORTB #define DS18B20_DDR DDRB #define DS18B20_PIN PINB #define DS18B20_DQ PB7 // команды #define DS18B20_CMD_CONVERTTEMP 0x44 #define DS18B20_CMD_RSCRATCHPAD 0xbe #define DS18B20_CMD_WSCRATCHPAD 0x4e #define DS18B20_CMD_CPYSCRATCHPAD 0x48 #define DS18B20_CMD_RECEEPROM 0xb8 #define DS18B20_CMD_RPWRSUPPLY 0xb4 #define DS18B20_CMD_SEARCHROM 0xf0 #define DS18B20_CMD_READROM 0x33 #define DS18B20_CMD_MATCHROM 0x55 #define DS18B20_CMD_SKIPROM 0xcc #define DS18B20_CMD_ALARMSEARCH 0xec // остановить любое прерывание во время чтения данных с DS18B20 #define DS18B20_STOPINTERRUPTONREAD 1 //functions extern double getTempDS18B20(); #endif
ds18b20.c
#define F_CPU 8000000UL #include <avr/io.h> #include <util/delay.h> #include <avr/interrupt.h> #include "ds18b20.h" /* * ds18b20 - инициализация */ uint8_t resetDS18B20() { uint8_t i; // импульс сброса, минимум 480?s DS18B20_PORT &= ~(1 << DS18B20_DQ); DS18B20_DDR |= (1 << DS18B20_DQ); // выход _delay_us(480); // Когда DS18B20 обнаруживает положительный перепад, он ждет от 15?s до 60?s DS18B20_DDR &= ~(1 << DS18B20_DQ); // вход _delay_us(60); // и затем передает импульс присутствия, перемещая шину в логический «0» на длительность от 60?s до 240?s. i = (DS18B20_PIN & (1 << DS18B20_DQ)); _delay_us(420); //return the read value, 0=ok, 1=error return i; } /* * написать один бит */ inline void writeBitDS18B20(uint8_t bit) { // логический «0» на 1?s DS18B20_PORT &= ~(1 << DS18B20_DQ); DS18B20_DDR |= (1 << DS18B20_DQ); // выход _delay_us(1); // если нужно написать 1, нужно освободить линию (если не - держать низкий уровень) if (bit) { DS18B20_DDR &= ~(1 << DS18B20_DQ); // вход } // ждать 60?s и освободить линию _delay_us(60); DS18B20_DDR &= ~(1 << DS18B20_DQ); // вход } /* * прочитать один бит */ uint8_t readBitDS18B20(void) { uint8_t bit = 0; // логический «0» на 1?s DS18B20_PORT &= ~(1 << DS18B20_DQ); DS18B20_DDR |= (1 << DS18B20_DQ); // вход _delay_us(1); // освободить линию и ждать 14?s DS18B20_DDR &= ~(1 << DS18B20_DQ); // вход _delay_us(14); // прочитать значение if (DS18B20_PIN & (1 << DS18B20_DQ)) { bit = 1; } // ждать 45?s и вернуть значение _delay_us(45); return bit; } /* * написать один байт */ void writeByteDS18B20(uint8_t byte) { uint8_t i = 8; while (i--) { writeBitDS18B20(byte & 1); byte >>= 1; } } /* * прочитать один байт */ uint8_t readByteDS18B20(void) { uint8_t i = 8, n = 0; while (i--) { n >>= 1; n |= (readBitDS18B20() << 7); } return n; } /* * получить температуру */ double getTempDS18B20() { uint8_t temperatureL; uint8_t temperatureH; double retd = 0; if (DS18B20_STOPINTERRUPTONREAD == 1) { cli(); } resetDS18B20(); // сброс writeByteDS18B20(DS18B20_CMD_SKIPROM); // пропуск ПЗУ(ROM) writeByteDS18B20(DS18B20_CMD_CONVERTTEMP); // начать преобразование показаний температуры while (!readBitDS18B20()); // ждать, пока преобразование не завершится resetDS18B20(); // сброс writeByteDS18B20(DS18B20_CMD_SKIPROM); // пропуск ПЗУ(ROM) writeByteDS18B20(DS18B20_CMD_RSCRATCHPAD); // читать scratchpad // прочитать 2 байта из scratchpad temperatureL = readByteDS18B20(); temperatureH = readByteDS18B20(); if (DS18B20_STOPINTERRUPTONREAD == 1) { sei(); } // преобразовать полученное 12 битное значение retd = ((temperatureH << 8) + temperatureL) * 0.0625; return retd; }
main.c
// site: http://micro-pi.ru // подключение LSD на базе HD44780 и DS18B20 к ATtiny2313 #define F_CPU 8000000UL #include <avr/io.h> #include <util/delay.h> #include <string.h> #include <math.h> #include "ds18b20.h" #include "LCD.h" /* * -123.4 * numbers[0] = 123 * numbers[1] = 4 */ inline void explodeDoubleNumber(int* numbers, double flt) { /* * Функция abs() вычисляет абсолютное значение и возвращает модуль значения flt (|flt|). */ numbers[0] = abs((int) flt); /* из -123.4 получаем 123 */ numbers[1] = abs((int) ((flt - ((int) flt)) * 10)); /* из -123.4 получаем 4 */ } inline void printTemp(double d) { char text[17] = "T="; int fs[2]; char num[5]; explodeDoubleNumber(fs, d); if (d < 0) { strcat(text, "-"); } itoa(fs[0], num, 10); strcat(text, num); strcat(text, "."); itoa(fs[1], num, 10); strcat(text, num); strcat(text, "'C"); lcdClear(); lcdGotoXY(0, 0); lcdPuts(text); } int main(void) { _delay_ms(100); lcdInit(); lcdClear(); lcdSetDisplay(LCD_DISPLAY_ON); lcdSetCursor(LCD_CURSOR_OFF); while (1) { double d = getTempDS18B20(); printTemp(d); _delay_ms(1000); } }
*библиотека для работы с LSD дисплеем находится в архив проекта. Скачать можно по ссылке ниже.
Схема подключения LSD дисплея на базе HD44780 и датчика температуры DS18B20 к ATtiny2313 в ISIS 7 Professional — Proteus. Симуляция.
Соединяем все компоненты так, как указано на картинке. Если не знаете как сделать проект в Протеус, переходим на страницу Мигание светодиодом на ATmega16/32.
В микроконтроллере ATtiny2313 заводская установленная частота внутреннего RC генератора равняется 8000000Гц (8МГц), также по умолчанию установлен фьюз деления частоты — CLKDIV8 (Clock Divide by 8), поэтому реальная рабочая частота кристалла 1000000Гц (1МГц). По этому не забываем снять этот фьюз.
Температура ниже нуля
Температура выше нуля
Скачать:
DS18B20 — документация на русском (datasheet ru)
проект в Atmel Studio 7 DS18B20 + LCD HD44780 + ATtiny2313
проект в Proteus 7 DS18B20 + LCD HD44780 + ATtiny2313
sildenafil dose
магазин аккаунтов маркетплейс для реселлеров
платформа для покупки аккаунтов https://marketplace-akkauntov-top.ru/
продажа аккаунтов соцсетей аккаунты с балансом
Account Selling Platform Account Buying Service
Website for Selling Accounts Account Sale
Database of Accounts for Sale Account Catalog
Accounts for Sale Account exchange
Account Catalog Gaming account marketplace
Account market socialmediaaccountsshop.com
Account Purchase Account trading platform
Account market Sell Account
account catalog sell account
verified accounts for sale socialaccountssale.com
account sale account acquisition
secure account purchasing platform account sale
accounts for sale find accounts for sale
gaming account marketplace website for buying accounts
marketplace for ready-made accounts account marketplace
account buying service account selling platform
website for selling accounts marketplace for ready-made accounts
gaming account marketplace account trading platform
account acquisition account trading service
account trading platform profitable account sales
verified accounts for sale sell account
accounts marketplace account trading service
social media account marketplace buy pre-made account
account selling platform account marketplace
buy pre-made account account market
sell accounts database of accounts for sale
account marketplace account exchange service
verified accounts for sale database of accounts for sale
buy accounts https://accounts-offer.org/
profitable account sales https://accounts-marketplace.xyz/
account trading service https://buy-best-accounts.org
buy accounts https://social-accounts-marketplaces.live
secure account sales https://accounts-marketplace.live/
website for selling accounts https://social-accounts-marketplace.xyz/
buy account https://buy-accounts.space
profitable account sales https://buy-accounts-shop.pro/
account trading https://accounts-marketplace.online/
guaranteed accounts https://accounts-marketplace-best.pro/
биржа аккаунтов https://akkaunty-na-prodazhu.pro/
площадка для продажи аккаунтов akkaunty-market.live
маркетплейс аккаунтов https://kupit-akkaunty-market.xyz
продажа аккаунтов https://akkaunty-optom.live
площадка для продажи аккаунтов https://online-akkaunty-magazin.xyz
buy facebook accounts for ads https://buy-adsaccounts.work
buy aged fb account buy facebook ads account
buy facebook ad account cheap facebook advertising account
buy fb ads account facebook ads accounts
buy facebook ads accounts https://buy-ad-account.click
facebook accounts to buy https://ad-accounts-for-sale.work
buy google ads threshold account https://buy-ads-account.top
buy google ads threshold account https://ads-account-for-sale.top/
buy google adwords account https://ads-account-buy.work
google ads reseller https://buy-ads-invoice-account.top/
buy adwords account https://buy-account-ads.work
buy google ads threshold account https://buy-ads-agency-account.top
buy google adwords account https://ads-agency-account-buy.click
buy facebook verified business account https://buy-business-manager.org
buy verified google ads accounts adwords account for sale
buy facebook bm account buy facebook business manager account
facebook business manager for sale buy-verified-business-manager-account.org
buy verified bm facebook https://buy-verified-business-manager.org/
buy verified bm https://buy-business-manager-verified.org/
business manager for sale facebook business manager for sale
tiktok agency account for sale https://tiktok-ads-account-for-sale.org
buy tiktok ads accounts https://tiktok-agency-account-for-sale.org
tiktok agency account for sale https://buy-tiktok-ads-accounts.org
buy tiktok business account https://buy-tiktok-ads.org
buy facebook profile account catalog account purchase
buy facebook ads account account purchase database of accounts for sale
https://linktr.ee/bataraslot777# bataraslot alternatif
hargatoto login: toto slot hargatoto — toto slot hargatoto
slot online batara88 situs slot batara88
hargatoto slot: hargatoto login — hargatoto
batara vip: bataraslot — batara vip
inatogel Situs Togel Terpercaya Dan Bandar Situs Togel Terpercaya Dan Bandar
bataraslot login: situs slot batara88 — bataraslot alternatif
hargatoto login [url=https://tap.bio/@hargatoto#]hargatoto slot[/url] toto slot hargatoto
https://tap.bio/@hargatoto# hargatoto alternatif
batarabet login: batarabet — batara vip
Daftar InaTogel Login Link Alternatif Terbaru: Situs Togel Toto 4D — inatogel
Daftar InaTogel Login Link Alternatif Terbaru Situs Togel Terpercaya Dan Bandar Daftar InaTogel Login Link Alternatif Terbaru
kratonbet: kratonbet alternatif — kratonbet alternatif
cialis mechanism of action: EverGreenRx USA — buy cialis usa
https://evergreenrxusas.shop/# EverGreenRx USA
what happens when you mix cialis with grapefruit?: EverGreenRx USA — how long i have to wait to take tadalafil after antifugal
http://evergreenrxusas.com/# EverGreenRx USA
tadalafil tamsulosin combination EverGreenRx USA EverGreenRx USA
EverGreenRx USA: cialis generic overnite shipping — online cialis no prescription
evolution peptides tadalafil: EverGreenRx USA — EverGreenRx USA
can you drink alcohol with cialis EverGreenRx USA EverGreenRx USA
cialis otc switch: canadian cialis no prescription — is there a generic equivalent for cialis
http://evergreenrxusas.com/# EverGreenRx USA
https://evergreenrxusas.shop/# buy cialis online free shipping
EverGreenRx USA EverGreenRx USA cialis substitute
cialis side effects heart: when will cialis be over the counter — prices of cialis 20 mg
EverGreenRx USA: cialis reviews — EverGreenRx USA
canadian online pharmacy cialis sunrise pharmaceutical tadalafil EverGreenRx USA
https://evergreenrxusas.com/# cialis back pain
e20 pill cialis: EverGreenRx USA — cialis free trial 2018
http://evergreenrxusas.com/# EverGreenRx USA
http://evergreenrxusas.com/# EverGreenRx USA
EverGreenRx USA cialis online reviews EverGreenRx USA
MediQuickUK pharmacy online fast delivery UK trusted UK digital pharmacy
cheap UK online pharmacy: order medicines online discreetly — generic and branded medications UK
BluePillUK https://mediquickuk.shop/# UK pharmacy home delivery
http://bluepilluk.com/# BluePill UK
http://meditrustuk.com/# ivermectin without prescription UK
online pharmacy UK no prescription trusted UK digital pharmacy order medicines online discreetly
weekend pill UK online pharmacy: cialis cheap price UK delivery — IntimaCareUK
https://mediquickuk.shop/# UK pharmacy home delivery
IntimaCareUK: confidential delivery cialis UK — cialis cheap price UK delivery
http://meditrustuk.com/# ivermectin without prescription UK
MediQuickUK: trusted UK digital pharmacy — online pharmacy UK no prescription
viagra online UK no prescription https://intimacareuk.com/# tadalafil generic alternative UK
sildenafil tablets online order UK http://intimacareuk.com/# branded and generic tadalafil UK pharmacy
https://mediquickuk.com/# MediQuickUK
https://intimacareuk.shop/# IntimaCare UK
stromectol pills home delivery UK: trusted online pharmacy ivermectin UK — MediTrustUK
IntimaCare UK confidential delivery cialis UK branded and generic tadalafil UK pharmacy
viagra discreet delivery UK http://bluepilluk.com/# BluePillUK
order viagra online safely UK https://mediquickuk.com/# cheap UK online pharmacy
ivermectin cheap price online UK MediTrust MediTrust UK
ivermectin tablets UK online pharmacy MediTrustUK safe ivermectin pharmacy UK
fast delivery viagra UK online https://meditrustuk.shop/# MediTrust
viagra online UK no prescription https://bluepilluk.com/# BluePillUK
viagra discreet delivery UK: viagra discreet delivery UK — BluePillUK
IntimaCareUK IntimaCare UK buy ED pills online discreetly UK
http://meditrustuk.com/# discreet ivermectin shipping UK
BluePill UK: sildenafil tablets online order UK — viagra discreet delivery UK
sildenafil tablets online order UK http://intimacareuk.com/# IntimaCareUK
http://meditrustuk.com/# ivermectin cheap price online UK
online pharmacy UK no prescription [url=https://mediquickuk.com/#]confidential delivery pharmacy UK[/url] generic and branded medications UK
discreet ivermectin shipping UK: ivermectin without prescription UK — discreet ivermectin shipping UK
BluePillUK: fast delivery viagra UK online — BluePillUK
https://mediquickuk.shop/# MediQuick
tadalafil generic alternative UK cialis cheap price UK delivery tadalafil generic alternative UK
safe ivermectin pharmacy UK: trusted online pharmacy ivermectin UK — ivermectin cheap price online UK
fast delivery viagra UK online: BluePillUK — BluePill UK
discreet ivermectin shipping UK generic stromectol UK delivery ivermectin without prescription UK
generic stromectol UK delivery ivermectin tablets UK online pharmacy discreet ivermectin shipping UK
http://curabharatusa.com/# CuraBharat USA
https://curabharatusa.com/# CuraBharat USA
CuraBharat USA: CuraBharat USA — CuraBharat USA
reliable canadian pharmacy reviews: TrueNorth Pharm — TrueNorth Pharm
TrueNorth Pharm: pharmacy canadian — TrueNorth Pharm
medicine online delivery CuraBharat USA CuraBharat USA
https://truenorthpharm.com/# TrueNorth Pharm
https://saludfrontera.shop/# pharmacy mexico
SaludFrontera: SaludFrontera — SaludFrontera
canadian pharmacy store: TrueNorth Pharm — TrueNorth Pharm
https://truenorthpharm.shop/# TrueNorth Pharm
CuraBharat USA indian pharmacy CuraBharat USA
https://truenorthpharm.shop/# safe canadian pharmacy
real canadian pharmacy: canadian discount pharmacy — my canadian pharmacy rx
https://curabharatusa.com/# medicine online india
how to get medicines online: CuraBharat USA — CuraBharat USA
TrueNorth Pharm: legitimate canadian pharmacy — prescription drugs canada buy online
https://curabharatusa.com/# CuraBharat USA
medication in mexico: purple pharmacy mexico — mexican medicine store
http://truenorthpharm.com/# TrueNorth Pharm
mexico drug store progreso mexico pharmacy online SaludFrontera
TrueNorth Pharm: best canadian pharmacy — TrueNorth Pharm
https://truenorthpharm.com/# legal to buy prescription drugs from canada
TrueNorth Pharm: canadian online drugstore — TrueNorth Pharm
buying prescriptions in mexico: mexico prescription online — mexico rx
https://truenorthpharm.shop/# canadian family pharmacy
TrueNorth Pharm northwest canadian pharmacy canadian pharmacy meds reviews
indiamart pharmacy CuraBharat USA CuraBharat USA
my canadian pharmacy: TrueNorth Pharm — safe reliable canadian pharmacy
https://curabharatusa.com/# online drugs
CuraBharat USA: online pharmacy india — e pharmacy india
reputable canadian pharmacy: TrueNorth Pharm — TrueNorth Pharm
https://curabharatusa.com/# online medicines india
mexican rx pharm SaludFrontera SaludFrontera
CuraBharat USA: CuraBharat USA — indian pharmacy online
SaludFrontera: mexican pharmacies that ship to us — mexican mail order pharmacy
trustworthy canadian pharmacy: TrueNorth Pharm — TrueNorth Pharm
CuraBharat USA: CuraBharat USA — CuraBharat USA
http://saludfrontera.com/# SaludFrontera
TrueNorth Pharm best canadian pharmacy to buy from best canadian online pharmacy reviews
SaludFrontera SaludFrontera SaludFrontera
https://curabharatusa.shop/# medicine online india
SaludFrontera: SaludFrontera — SaludFrontera
Viagra diskret bestellen IntimGesund generisches sildenafil alternative
online apotheke versandkostenfrei: sicherheit und wirkung von potenzmitteln — online apotheke deutschland
online apotheke günstig: Blau Kraft — günstige online apotheke
http://blaukraftde.com/# online apotheke versandkostenfrei
apotheke online eu apotheke ohne rezept п»їshop apotheke gutschein
online apotheke preisvergleich potenzmittel ohne rezept deutschland eu apotheke ohne rezept
günstige online apotheke: Männer Kraft — online apotheke günstig
kamagra kaufen ohne rezept online: potenzmittel diskret bestellen — Viagra Generika online kaufen ohne Rezept
https://mannerkraft.shop/# medikamente rezeptfrei
medikament ohne rezept notfall Gesund Direkt 24 medikamente rezeptfrei
cialis generika ohne rezept: tadalafil 20mg preisvergleich — online apotheke preisvergleich
cialis generika ohne rezept: PotenzApotheke — online apotheke deutschland
ohne rezept apotheke: п»їViagra kaufen — beste online-apotheke ohne rezept
online apotheke deutschland apotheke ohne wartezeit und arztbesuch online apotheke versandkostenfrei
http://blaukraftde.com/# online apotheke rezept
günstige online apotheke: internet apotheke — online apotheke rezept
tadalafil erfahrungen deutschland: tadalafil erfahrungen deutschland — eu apotheke ohne rezept
https://intimgesund.com/# kamagra erfahrungen deutschland
online apotheke rezept Viagra online kaufen legal apotheke online
ohne rezept apotheke: MannerKraft — online apotheke rezept
internet apotheke: MännerKraft — shop apotheke gutschein
Intim Gesund: IntimGesund — Sildenafil Preis
medikament ohne rezept notfall Potenz Apotheke tadalafil 20mg preisvergleich
п»їshop apotheke gutschein: gunstige medikamente direkt bestellen — online apotheke gГјnstig
https://intimgesund.shop/# Intim Gesund
https://mannerkraft.shop/# internet apotheke
beste online-apotheke ohne rezept: deutsche online apotheke erfahrungen — gГјnstige online apotheke
kamagra kaufen ohne rezept online: IntimGesund — Sildenafil Generika 100mg
kamagra oral jelly deutschland bestellen: kamagra oral jelly deutschland bestellen — Viagra Generika online kaufen ohne Rezept