Digitální teploměr s LCD

Podobné dokumenty
Klimatizace. Třída: 4.C. Střední Průmyslová Škola Elektrotechnická Havířov Protokol do MIT. Skupina: 3. Zpráva číslo: 3

D/A převodník. Třída: 4.C Elektrotechnická Havířov Protokol do MIT Skupina: 3. Střední Průmyslová Škola. Zpráva číslo: 4

Model ver SYSTEM EXCLUSIVE KOMUNIKACE CHD Elektroservis

RS485/MODBUS-RTU ver. 4 s rozšířením pro R24

Obsah. Popis funkcí. RS485/MODBUS-RTU ver Komunikace s převodníkem probíhá na principu MASTER - SLAVE. Protokol MODBUS mát tuto strukturu:

Činnost CPU. IMTEE Přednáška č. 2. Několik úrovní abstrakce od obvodů CPU: Hodinový cyklus fáze strojový cyklus instrukční cyklus

Jako pomůcka jsou v pravém dolním rohu vypsány binární kódy čísel od 0 do 15 a binární kódy příkazů, které máme dispozici (obr.21). Obr.

Číselné soustavy v mikroprocesorové technice Mikroprocesorová technika a embedded systémy

Seznámení s mikropočítačem. Architektura mikropočítače. Instrukce. Paměť. Čítače. Porovnání s AT89C2051

Jak do počítače. aneb. Co je vlastně uvnitř


Modul LCD displeje se čtyřmi tlačítky. Milan Horkel

Mikrořadiče řady 8051.

A51 MACRO ASSEMBLER POKUSNY PROGRAM DATE 10/3/007 PAGE 1

Čísla, reprezentace, zjednodušené výpočty

Převodník DCPSE. Komunikační protokol

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ Fakulta informačních technologií

Čísla, reprezentace, zjednodušené výpočty

Pohled do nitra mikroprocesoru Josef Horálek

Laboratorní cvičení z předmětu Elektrická měření 2. ročník KMT

v aritmetické jednotce počíta

Telemetrický komunikační protokol JETI

5. A/Č převodník s postupnou aproximací

Quido - MODBUS. Kompletní popis protokolů MODBUS RTU a TCP v I/O modulech Quido. 20. listopadu 2015 w w w. p a p o u c h.

TQS3. popis modifikace s protokolem MODBUS RTU. 29. února 2008 w w w. p a p o u c h. c o m 0199

Registrační teploměr

ACM-MODBUS, popis komunikace s převodníkem

SNÍMAČOVÝ EXPANDÉR TB8.1x2 RS232 - ASCII

Modul. Vlastnosti. Odběr ,5A. 330m. Komunikace

Podprogram DELAY.INC. - konstanty časových prodlev. RB3 equ 11b DEL1MS: DEL800: DEL400: DEL200 DEL100 DELAY: ret DEL1MS

SEMESTRÁLNÍ PROJEKT Y38PRO

POKLADNÍ DISPLEJ LCD. hotline: strana 1

APL-113 Čtení hodnot z indukčních průtokoměrů KROHNE prostřednictvím protokolu Modbus-RTU

Mikroprocesorová technika (BMPT)

Programátorský model procesoru x51

Praktické úlohy- 2.oblast zaměření

Komunikace s snímačem ph485 protokolem Modbus-RTU

18A - PRINCIPY ČÍSLICOVÝCH MĚŘICÍCH PŘÍSTROJŮ Voltmetry, A/D převodníky - principy, vlastnosti, Kmitoměry, čítače, fázoměry, Q- metry

Mikrokontroléry. Doplňující text pro POS K. D. 2001

MIKROPOČÍTAČOVÉ SYSTÉMY

od jaké adresy bude program umístěn? Intel Hex soubor, co to je, z čeho a jak se získá, k čemu slouží? Pseudoinstrukce (direktivy) překladače ORG, SET

5 Přehled operátorů, příkazy, přetypování

Komunikační protokol

APL-017 rev. 9/2015. M4016 MODBUS master. Obecný popis

Semestrální práce z předmětu ÚPA MIPS

Data v počítači. Informační data. Logické hodnoty. Znakové hodnoty

velikosti vnitřních pamětí? Jaké periferní obvody má na čipu a k čemu slouží? Jaká je minimální sestava mikropočítače z řady 51 pro vestavnou aplikaci

SEAHU SH019a SEAHU SH019b

Fz =a z + a z +...+a z +a z =

Strojový kód k d a asembler procesoru MIPS SPIM. MIPS - prostředí NMS NMS. 32 ks 32bitových registrů ( adresa registru = 5 bitů).

Digitální obvody. Doc. Ing. Lukáš Fujcik, Ph.D.

Automatické sněhoměrné zařízení

I/O modul VersaPoint. Analogový výstupní modul, 16 bitový, napětí/proud, 1 kanál IC220ALG320. Specifikace modulu. Spotřeba. Údaje pro objednávku

RXIO. Kompaktní I/O modul. Shrnutí. Použití Kompaktní I/O modul pro sběr dat a řízení procesů. Funkce

ZÁVĚREČNÁ PRÁCE Z PŘEDMĚTU MIT

MIDAM UI 45X modbus UI 450 LCD, 2xDI, 2xDO, Ethernet, teplota, vlhkost UI 455 LCD, Ethernet, teplota

Malý distribuovaný I/O modul

Program "Světla" pro mikropočítač PMI-80

frekvence 8 Mhz, přestože spolupracuje s procesori různe rychlými. 16 bitová ISA sběrnice je

Strojový kód. Instrukce počítače

Quido RS 2/16 OC. 2 vstupy pro kontakt 16 digitálních výstupů 1 teploměr -55 až +125 C komunikace přes RS485 nebo RS232

1.1 Struktura programu v Pascalu Vstup a výstup Operátory a některé matematické funkce 5

21. září 2005 w w w. p a p o u c h. c o m. Spinel - příklady

Číslo materiálu. Datum tvorby Srpen 2012

Počítač jako elektronické, Číslicové zařízení

2.8 Kodéry a Rekodéry

XXXIII Celostátní olympiáda znalostí elektriky a elektroniky Krosno 25. března 2010 TEST PRO ELEKTRONICKOU SKUPINU

2.7 Binární sčítačka Úkol měření:

USB2RS232. Převodník pro připojení USB klávesnice a několika kontaktů přes RS232. Komunikace jednoduchým protokolem

TIO. výkonový člen systému TQS. 1x přepínací kontakt relé. 1x vstupní kontakt. komunikace RS září 2004 w w w. p a p o u c h.

Převodník Ethernet ARINC 429

PROGRAMOVÁNÍ MIKROPOČÍTAČŮ CVIČENÍ 6

Procesor z pohledu programátora

Náplň předmětu A3B38MMP a kontrolní otázky k terminu testu v semestru Mikroprocesory řady 8051 /52 a jejich použití Obecné blokové schéma

Komunikační protokol

Vyčtení / zapsání hodnot z/do OMC8000 pomocí protokolu UDP

Použití programovatelného čítače 8253

Komunikační protokol EX Bus. Komunikační protokol EX Bus. Topologie. Fyzická vrstva. Přístup ke sdílenému přenosovému mediu (sběrnici)

Návod k modulu ES550 ES550 Modul pro měření odporových teploměrů v1.00 Popis přístroje

HART RS/ETH. Převodníky rozhraní HART na Modbus TCP (Ethernet) resp. na Modbus RTU (RS485) 30. září 2013 w w w. p a p o u c h.

Modul univerzálních analogových vstupů R560. Shrnutí

Hardware. Z čeho se skládá počítač

Akademický rok: 2004/05 Datum: Příjmení: Křestní jméno: Osobní číslo: Obor:

8. Laboratoř: Aritmetika a řídicí struktury programu

VÝUKOVÝ MATERIÁL. Bratislavská 2166, Varnsdorf, IČO: tel Číslo projektu

MXIO. Kompaktní I/O modul. Shrnutí. Použití Kompaktní I/O modul pro sběr dat a řízení procesů. Funkce

Uživatelský manuál. KNXgal. řízení zabezpečovacích ústředen. Galaxy ze sběrnice KNX. napájeno ze sběrnice KNX. indikace komunikace na KNX

ZÁKLADY PROGRAMOVÁNÍ. Mgr. Vladislav BEDNÁŘ /14

Ganitor. Monitorovací a řídicí I/O moduly pro systém C dubna 2011 w w w. p a p o u c h. c o m v.1.2

Struktura a architektura počítačů (BI-SAP) 7

IR 32 CE CAREL NÁVOD NA SEŘÍZENÍ

SČÍTAČKA, LOGICKÉ OBVODY ÚVOD TEORIE

IR 32 P CAREL NÁVOD NA SEŘÍZENÍ

ixport RS I16O8 Inteligentní modul

BI-JPO (Jednotky počítače) Cvičení

Programovatelný snímač teploty se sériovým výstupem RS232 a RS485 Návod k použití

DRAK 3 INTELIGENTNÍ A/D PŘEVODNÍK. 3 VSTUPY: 0(4) - 20mA, 0-5/10V VÝSTUP: LINKA RS485 MODUL NA DIN LIŠTU RS485

Technická dokumentace ČTEČKA ČIPŮ DALLAS. typ DSRS2333 (V1.2)

Snímač barometrického tlaku T2314, T2414

HTemp-485. Teplotní a vlhkostní čidlo pro vnitřní použití na sběrnici RS-485 s jednoduchým komunikačním protokolem CZ

Transkript:

Střední Průmyslová Škola Elektrotechnická Havířov Protokol do MIT Třída: 3.C Skupina: 3 Digitální teploměr s LCD Zpráva číslo: 5 Dne: 22.05.2006 Soupis použitých přístrojů: přípravek s μc 8051 přípravek s LCD digitální teploměr DS18B20 Jméno učitele: Ing. Baarová Jméno: Známka:

ZADÁNÍ: Napište program DIGITÁLNÍ TEPLOMĚR pro mikroprocesor 8051. Na port P0 připojte digitální teploměr DS18B20 a na port P2 připojte LCD. Přečtěte teplotu změřenou digitálním teploměrem DS18B20 a zobrazte ji na LCD, nejdříve ale napište testovací program a na port P0 připojte DS18B20 a na porty P2 a P3 připojte LEDky. TEORIE: DIGITÁLNÍ TEPLOMĚR DS18B20: Připojuje se na 1-vodičovou sběrnici a vrací teplotu v rozsahu -55 C až 125 C, teplota se vrací ve 2 bytech, LSB a MSB. Význam bitů u MSB, horních 5-bitů vyjadřuje polaritu, následuje celočíselná hodnota. Význam bitů u LSB, horní 4-bity vyjadřují celočíselnou hodnotu a nižší 4-bity vyjadřují desetinné číslo. Každý teploměr obsahuje vnitřní ROM paměť, ve které je uložen vnitřní 64-bitový kód, který jednoznačně určuje zařízení na sběrnici. Každému zaadresovaní sběrnice musí předcházet reset, kdy master (v našem případě 8051) stáhne datový vodič do logické 0, následně jej uvolní a čeká na odezvu. VÝZNAMY BITŮ: S (bit 11 až bit 15) signalizují znaménko, jsou-li v log 0 => kladná teplota, jsou-li v log 1 => záporná teplota 2 0 až 2 6 (bit 4 až bit 10) celočíselná část teploty 2-4 až 2-1 (bit 0 až bit 3) desetinná část teploty ZAPOJENÍ DS18B20 K MIKROPROCESORU:

TESTOVACÍ PROGRAM (TEST.ASM): ds_data bit P0.0 LSB equ 30h ;zaloha nizsiho bytu z DS18B20 MSB equ 31h ;zaloha vyssiho bytu z DS18B20 stack equ 0fh org 0 main: setb jnb jmp sp, #stack ;posunuti zasobniku ;reset DS18B20 ;skip rom a, #0cch a, #44h ;povel pro prevod ds_data ds_data, $ ;cekame na prevod teploty a, #0cch ;skip rom a, #0beh ;nacteme si teplotu ds_read_byte LSB,a ;nacteni a ulozeni nizsiho bytu LSB z DS18B20 ds_read_byte MSB,a ;nacteni a ulozeni vyssiho bytu MSB z DS18B20 P2,MSB ;vyslani MSB na LEDky na P2 P3,LSB ;vyslani LSB na LEDky na P3 main #include<ds18b20.inc> nop end

HLAVNÍ PROGRAM DIGITÁLNÍ TEPLOMĚR (DIG_TEMP.ASM): ;LCD P2.4 az P2.7 => datove vodice k LCD LCD_EN bit P2.0 LCD_RW bit P2.1 LCD_RS bit P2.2 ds_data bit P0.0 LSB equ 30h ;zaloha nizsiho bytu z DS18B20 MSB equ 31h ;zaloha vyssiho bytu z DS18B20 stack equ 0fh org 0 Init: Main: RWTemp: jmp setb jnb sp, #stack ;posunuti zasobniku ResetLCD ;reset LCD DPTR, #Temp ;vypis zakladni obrazovky s 0 teplotou TextLCD ;reset DS18B20 RWTemp ;cteni a zapis teploty do pameti LSBRotate ;format nizsiho bytu MSBRotate ;format vyssiho bytu + secteni obou kladnych bytu DesTemp ;format desetinne casti teploty LCDDesTemp ;vypis desetinne casti teploty na LCD LCDCelaTemp ;deleni bytu a vypis cele casti teploty na LCD Main a, #0cch ;skip rom a, #044h ;povel pro prevod ds_data ds_data, $ ;cekame na prevod teploty a, #0cch ;skip rom a, #0beh ;nacteme si teplotu ds_read_byte LSB, a ;nacteni a ulozeni nizsiho bytu LSB z DS18B20 ds_read_byte MSB, a ;nacteni a ulozeni vyssiho bytu MSB z DS18B20

LSBRotate: ;format nizsiho bytu a, LSB swap a ;prohozeni 4-vyssich a 4-nizsich bitu anl a, #00001111b ;maskovani r6, a MSBRotate: ;format vyssiho bytu a, MSB swap a ;prohozeni 4-vyssich a 4-nizsich bitu add a, r6 ;secteni MSB a LSB r6, a ;vysledek souctu je v r6 DesTemp: anl a, LSB a, #00001111b ;makovani r5, a ;desetinna cast teploty je v r5 LCDDesTemp: ;vypis desetinne casti teploty na LCD cjne r5, #0, LCDDes01 DPTR, #Temp TextLCD LCDDes01: ;vypis desetinne casti teploty na LCD cjne r5, #1, LCDDes02 DPTR, #Des01 TextLCD LCDDes02: ;vypis desetinne casti teploty na LCD cjne r5, #2, LCDDes03 DPTR, #Des02 TextLCD LCDDes03: ;vypis desetinne casti teploty na LCD cjne r5, #3, LCDDes04 DPTR, #Des03 TextLCD LCDDes04: ;vypis desetinne casti teploty na LCD cjne r5, #4, LCDDes05 DPTR, #Des04 TextLCD

LCDDes05: ;vypis desetinne casti teploty na LCD cjne r5, #5, LCDDes06 DPTR, #Des05 TextLCD LCDDes06: ;vypis desetinne casti teploty na LCD cjne r5, #6, LCDDes07 DPTR, #Des06 TextLCD LCDDes07: ;vypis desetinne casti teploty na LCD cjne r5, #7, LCDDes08 DPTR, #Des07 TextLCD LCDDes08: ;vypis desetinne casti teploty na LCD cjne r5, #8, LCDDes09 DPTR, #Des08 TextLCD LCDDes09: ;vypis desetinne casti teploty na LCD cjne r5, #9, LCDDes10 DPTR, #Des09 TextLCD LCDDes10: ;vypis desetinne casti teploty na LCD cjne r5, #10, LCDDes11 DPTR, #Des10 TextLCD LCDDes11: ;vypis desetinne casti teploty na LCD cjne r5, #11, LCDDes12 DPTR, #Des11 TextLCD LCDDes12: ;vypis desetinne casti teploty na LCD cjne r5, #12, LCDDes13 DPTR, #Des12 TextLCD

LCDDes13: ;vypis desetinne casti teploty na LCD cjne r5, #13, LCDDes14 DPTR, #Des13 TextLCD LCDDes14: ;vypis desetinne casti teploty na LCD cjne r5, #14, LCDDes15 DPTR, #Des14 TextLCD LCDDes15: ;vypis desetinne casti teploty na LCD DPTR, #Des15 TextLCD LCDCelaTemp: ;deleni bytu a jeho vypis na LCD a, r6 b, #10 div ab r7, a ;zaloha cele casti po deleni r5, b ;r5 -> jednotky a, #0C7h ;vypis jednotek RidLCD a, r5 add a, #030h ZnakLCD a, r7 b, #10 div ab r7, a ;zaloha cele casti po deleni r5, b ;r5 -> desitky a, #0C6h ;vypis desitek RidLCD a, r5 add a, #030h ZnakLCD a, r7 b, #10 div ab r7, a ;zaloha cele casti po deleni r5, b ;r5 -> stovky a, #0C5h ;vypis stovek RidLCD

a, r5 add a, #030h ZnakLCD Temp: db ' Teplota: ' db ' 0,0000 C ' Des01: db ' Teplota: ' db ' 0,0625 C ' Des02: db ' Teplota: ' db ' 0,1250 C ' Des03: db ' Teplota: ' db ' 0,1875 C ' Des04: db ' Teplota: ' db ' 0,2500 C ' Des05: db ' Teplota: ' db ' 0,3125 C ' Des06: db ' Teplota: ' db ' 0,3750 C ' Des07: db ' Teplota: ' db ' 0,4375 C ' Des08: db ' Teplota: ' db ' 0,5000 C ' Des09: db ' Teplota: ' db ' 0,5625 C ' Des10: db ' Teplota: ' db ' 0,6250 C ' Des11: db ' Teplota: ' db ' 0,6875 C ' Des12: db ' Teplota: ' db ' 0,7500 C ' Des13: db ' Teplota: ' db ' 0,8125 C ' Des14: db ' Teplota: ' db ' 0,8750 C ' Des15: db ' Teplota: ' db ' 0,9375 C ' #include<lcdkit.inc> #include<ds18b20.inc> nop end ZHODNOCENÍ: Tato úloha byla celkem jednoduchá jelikož jsme už uměli pracovat s LCD z minulé úlohy. Asi nejtěžší pro mne bylo přečtení dat z teploměru, menší problém jsem měl i s maskováním, ale ten jsem odhalil při krokování programu. Úloha by se dala rozšířit, mohli bychom zapojit více teploměrů a pak se tlačítkem přepínat mezi obrazovkami, která by obsahovala číslo čidla a změřenou teplotu, nebo bychom mohli ovládat klimatizaci, při překročení určité teplotní hranice by se klimatizace zapnula a při poklesu pod hranici by se vypnula.