IMP (Mikroprocesorové a vestavěné systémy)

Podobné dokumenty
Aplikace Embedded systémů v Mechatronice. Michal Bastl A2/713a

1. MIKROPROCESOR ATMEGA A/D PŘEVODNÍK MÓDY PŘEVODNÍKU Single Conversion Mode Auto Triggering Start...

Úvod do mobilní robotiky AIL028

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

Binární data. Číslicový systém. Binární data. Klávesnice Snímače polohy, dotykové displeje, myš Digitalizovaná data odvozená z analogového signálu

Direct Digital Synthesis (DDS)

Semestrální práce z předmětu Speciální číslicové systémy X31SCS

APLIKACE MIKROKONTROLÉRŮ PIC32MX

Měřič krevního tlaku. 1 Měření krevního tlaku. 1.1 Princip oscilometrické metody 2007/

CW01 - Teorie měření a regulace

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

Nejčastěji pokládané dotazy

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

Číslicové multimetry. základním blokem je stejnosměrný číslicový voltmetr

Vánoční hvězda 2. Publikované: , Kategória: Blikače a optika.

Návod k obsluze výukové desky CPLD

Přednáška A3B38MMP. Bloky mikropočítače vestavné aplikace, dohlížecí obvody. 2015, kat. měření, ČVUT - FEL, Praha J. Fischer

ČEMU ROZUMÍ MIKROPROCESOR?

Vysoká škola chemicko-technologická v Praze Fakulta chemicko-inženýrská Ústav počítačové a řídicí techniky. Aplikace mikroprocesorů KROKOVÝ MOTOREK

1. GPIB komunikace s přístroji M1T330, M1T380 a BM595

Komunikace modulu s procesorem SPI protokol

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

compsetup COMPSETUP config, ivr Platí pro PICAXE 20X2, 28X2, 40X2 Syntaxe:

Principy komunikace s adaptéry periferních zařízení (PZ)

FILIP SCHWANK. Katedra měření, listopad 2017

A/D a D/A PŘEVODNÍK 0(4) až 24 ma DC, 16 bitů

Přednáška - Čítače. 2013, kat. měření, ČVUT - FEL, Praha J. Fischer. A3B38MMP, 2013, J.Fischer, ČVUT - FEL, kat. měření 1

1. Seznamte se s výukovou platformou FITkit (

Návrh konstrukce odchovny 2. dil

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

ŠESTNÁCTIKANÁLOVÝ A/D PŘEVODNÍK ±30 mv až ±12 V DC, 16 bitů

DESKA ANALOGOVÝCH VSTUPŮ ±24mA DC, 16 bitů

LED_007.c Strana: 1/5 C:\Michal\AVR\Výukové programy\archiv\ Poslední změna: :01:48

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Speciální obvody a jejich programování v C 1. díl. České vysoké učení technické Fakulta elektrotechnická

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

A/D a D/A PŘEVODNÍK 0(4) až 24 ma DC, 16 bitů

A0M38SPP - Signálové procesory v praxi - přednáška 10 2

Externí 12V / 200 ma (adaptér v příslušenství)

Uživatelský manuál PROGRAMOVATELNÝ UNIVERZÁLNÍ PŘÍSTROJ ZEPAX 05, ZEPAX 06. typ 505, 506

Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT

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

Periferní operace využívající přímý přístup do paměti

Aplikace vestavných systémů A4M38AVS Před. 3 (4)

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

T2210HD/T2210HDA 21,5" širokoúhlý monitor LCD Uživatelská příručka

Profilová část maturitní zkoušky 2014/2015

Měření neelektrických veličin. Fakulta strojního inženýrství VUT v Brně Ústav konstruování

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY

Ovládací PTZ klávesnice SC-3100 Uživatelský a instalační manuál

Inteligentní převodníky SMART. Univerzální vícevstupový programovatelný převodník. 6xS

Microchip. PICmicro Microcontrollers

Přípravek pro demonstraci řízení pohonu MAXON prostřednictvím

DESKA ANALOGOVÝCH VSTUPŮ A VÝSTUPŮ ±24mA DC, 16 bitů

Mikropočítačová vstupně/výstupní jednotka pro řízení tepelných modelů. Zdeněk Oborný

T2200HD/T2200HDA 21,5" širokoúhlý monitor LCD Uživatelská příručka

Komunikační protokol MODBUS RTU v přípojné desce EPD.

Architektura systému Pro zajištění shodnosti s normami EMC může být měnič volitelně vybaven odrušovacím filtrem.

GFK-2004-CZ Listopad Rozměry pouzdra (šířka x výška x hloubka) Připojení. Skladovací teplota -25 C až +85 C.

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

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

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Speciální obvody a jejich programování v C 2. díl

Desky Evb Display a Evb Keyboard

Praktické měřící rozsahy , , , ot/min Přesnost měření 0.02%

Příloha č. I: Schéma zapojení vývojové desky PVK-PRO

CH_SW_71 - V1.0. Program vytváří z obvodu PIC16C71 / PIC16C711 přepínač vstupů pro NF zesilovač.

Komunikační protokol MODBUS RTU v jednotce M4016. Seznam služeb protokolu MODBUS podporovaných řídící jednotkou M4016 je v tabulce.

Přerušovací systém s prioritním řetězem

Úvod do mobilní robotiky NAIL028

Střední průmyslová škola a Vyšší odborná škola, Hrabákova 271, Příbram. III / 2 = Inovace a zkvalitnění výuky prostřednictvím ICT

Modul řízení otáček stejnosměrného motorku

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

Moduly MicroUnit serie. všechny typy s výjimkou řady MU-43x, MU-44x a MU-84x

EL4. Použití. Vlastnosti HC /2004. Digitální zesilovače pro proporcionální ventily a uzavřené regulační systémy. Nahrazuje HC /2000

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

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

Uživatelský manuál PROGRAMOVATELNÝ UNIVERZÁLNÍ PŘÍSTROJ ZEPAX 05, ZEPAX 06. typ 505, 506

Laboratorní zdroj - 4. část

APLIKACE ŘÍDICÍCH SYSTÉMŮ S DSC

MEK1 - Modul externí komunikace RS-232 / MODBUS_RTU.

Sběrnicová struktura PC Procesory PC funkce, vlastnosti Interní počítačové paměti PC

Profilová část maturitní zkoušky 2015/2016

11. Logické analyzátory. 12. Metodika měření s logickým analyzátorem

SMS procesor SP10: GPRS, datalogger + SD Card(u SP10-B chybí), 9DIn,1AIn, 8DOut, Li-ION R3: GPRS, 2DIn, 2TeplIn, 2DOut, Li-ION. SP10 + SP EXP v BOXu

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY

Návod k obsluze. LCD indikace polohy pro inkrementální a absolutní snímače

eses výukový multi shield pro Arduino UNO

EC Motor. IO Modul EC200. EC200 Int. EC200 Ext. Verze 1.20, revize PMControl s.r.o.

Pohled do nitra mikroprocesoru Josef Horálek

Střední odborná škola a Střední odborné učiliště, Dubno Ing. Miroslav Krýdl Tematická oblast ELEKTRONIKA

Elektronická časomíra SH3

Témata profilové maturitní zkoušky

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

Návod k obsluze. LCD indikace polohy pro inkrementální a absolutní snímače

Číslicový zobrazovač CZ 5.7

Funkce jednotlivých tlačítek se mohou měnit podle toho, na jaké úrovni menu se právě nacházíte; vysvětlení viz následující tabulka.

Arduino digitální multimetr

PCKIT LPT MODUL SBĚRNICE IOBUS PRO PC LPT. Příručka uživatele. Střešovická 49, Praha 6, s o f c o s o f c o n.

Manuální, technická a elektrozručnost

MSP 430F1611. Jiří Kašpar. Charakteristika

CNC Technologie a obráběcí stroje

Transkript:

IMP (Mikroprocesorové a vestavěné systémy) Demonstrační cvičení č. 5: AD/DA převod, LCD displej Josef Strnadel https://www.fit.vutbr.cz/study/courses/imp/private/vyuka/cviceni_a_laboratore/

AD/DA převod

Úvod Fyzikální veličiny v přírodním prostředí jsou analogové (A) HC08 je číslicový (digitální, D) systém musí tedy umět zajistit A/D převod D/A převod Příklady aplikace: digitální voltmetr, digitální systém zpracování řeči nebo obrazu, snímání polohy plynového pedálu v autě,

D/A převod Výstup: analogový proud/napětí Pomocí vhodně generovaného PWM signálu a lze za použití přídavného obvodu generovat

A/D převod 68HC908LJ12 8 A/D kanálů 6 A/D kanálů

A/D převod (68HC908LJ12) 6 časově multiplexovaných A/D kanálů Lineární postupná aproximace (Linear Successive Approximation, LSA) 10 bitové rozlišení (vzorky) Jednorázový/nepřetržitý A/D převod Příznak A/D převod dokončen, možnost přerušení při dokončení A/D převodu Volitelný A/D kmitočet Možnost zarovnání výsledku A/D převodu (8-bit oříznutí, zarovnání vpravo, vlevo bez a se znaménkem)

A/D převod: blokové schéma a algoritmus LSA Stop

Registry pro A/D (ADC, Analog-to-Digital)

A/D převod: Registr ADSCR COCO (COnversion Complete Bit) 0 (A/D převod ještě není dokončen) 1 (A/D převod je dokončen)

A/D převod: Registr ADSCR COCO (COnversion Complete Bit) 0 (A/D převod ještě není dokončen) 1 (A/D převod je dokončen) AIEN (ADC Interrupt ENable) 0 (přerušení zakázáno) 1 (přerušení povoleno)

A/D převod: Registr ADSCR COCO (COnversion Complete Bit) 0 (A/D převod ještě není dokončen) 1 (A/D převod je dokončen) AIEN (ADC Interrupt ENable) 0 (přerušení zakázáno) 1 (přerušení povoleno) ADCO (ADC COntinuous Conversion Bit) 0 (jednorázový A/D převod) 1 (nepřetržitý A/D převod)

A/D převod: Registr ADSCR

A/D převod: Registr ADCLK

A/D převod: Registr ADCLK

A/D převod: Registr ADCLK ADICLK (ADC Input CLK Select Bit) 0 (externí CLK, CGMXCLK) 1 (CLK interní sběrnice HC08)

A/D převod: Registr ADR v ADCLK registru

A/D převod: příklad aplikace (nepřetržitý A/D převod) unsigned char ad_res; CONFIG1 = 0x31; /* vypni LVI a COP */ ADSCR = 0x20; /* init AD: bez int., ch. 0, cont. */ ADCLK = 0x70; /* AD_clk = BUS_clk/8 */ PTA = 0; /* vypni displej */ DDRA = 0xFF; /* nastav port A na vystupni */ TBCR = 0x48; /* init TimeBase: TBON=0, TACK=1, 512Hz */ TBCR = 0x04; /* zapni TimeBase int. */ TBCR = 0x02; /* spust TimeBase: TBON = 1 */ EnableInterrupts; unsigned char sevent_segment(unsigned char hexvalue) {... } interrupt 17 void TBM_ISR(void) { TBCR = TACK; if(pta & 0x80) /* PTA7==1? Ano->disp2, ne->disp1 */ { PTA = seven_segment(ad_res & 0x0F); /* bity 3-0 */ PTA &= 0x7F; /* dalsi: disp1 */ } else { ad_res = ADRL; PTA = seven_segment((ad_res>>4) & 0x0F); /* bity 7-4 */ PTA = 0x80; /* dalsi: disp2 */ } }

A/D převod: příklad aplikace (jednorázový převod) unsigned char sirka; sirka = 0; /* init. sirku */ CONFIG1 = 0x31; /* vypni LVI a COP */ ADSCR = 0; /* init AD: bez int., ch. 0, 1-conv. */ ADCLK = 0x70; /* AD_clk = BUS_clk/8 */ T1SC=0x73; /* int. enable, TIM1_clk = BUS_clk/8 */ T1SC0 = 0x5A; /* int. en., clr on comp., TOV=1 */ T1CH0H = T1MODH=0; T1MODL=255; PTA = 0; /* vypni displej */ DDRA = 0xFF; /* nastav port A na vystupni */ TBCR = 0x48; /* init TimeBase: TBON=0, TACK=1, 512Hz */ TBCR = 0x04; /* zapni TimeBase int. */ TBCR = 0x02; /* spust TimeBase: TBON = 1 */ EnableInterrupts; for(;;); interrupt 6 void TIM1OVERFLOW_ISR(void) { T1SC &= 7F; /* nuluj priznak preteceni (TOF) TIM1 */ sirka = ADRL; ADSCR &= 7F; /* nuluj COCO bit */ T1CH0L += sirka; }

LCD displej

Statické řízení LCD

Medoda (k) Počet vývodů pro Př.: počet vývodů pro řízení n segmentů n=80 Statická (1) 1+n 81 MUX2 (2) 42 MUX3 (3) k+(n/k) 30 MUX4 (4) 24 k 1 2 3 4 6 7 11 12 Duty ratio 1 1/2 1/3 1/4 1/6 1/7 1/11 1/12 Počet napěťových 2 3 4 4 4 5 5 6 úrovní Bias 1 1/2 1/3 1/3 1/3 1/4 1/4 1/5

MUX2

MUX3

LCD řadič v MC68HC908LJ12 Pomocí vývodů BP0-BP2, FP0/BP3, FP1- FP18, PTC0/FP19-PTC7/FP26 dokáže řídit až 104 LCD segmentů, umožňuje generovat až 27 FP-signálů a až 4 BP-signály a to v jednom z následujících režimů: 26 FP-signálů, 4 BP-signály (104 segmentů), 27 FP-signálů, 3 BP-signály (81 segmentů), 27 FP-signálů, 1 BP-signály (27 segmentů).

BP0 BP1 BP2 BP3 BP0 BP1 BP2

BP0 BP1 BP2 BP3 BP0 BP1 BP2

void turnofflcdsegments() { LDAT1=LDAT2=LDAT3=LDAT4=LDAT5=LDAT6=LDAT7=LDAT8=LDAT9=LDAT10=LDAT11=LDAT12=LDAT13=LDAT14=0; } void inits() { /* vypni COP */ CONFIG1=0x01; Zobrazování číslic na LCD } /* init LCD */ turnofflcdsegments(); LCDCR=0xA0; LCDCLK=0x53; void main() { inits(); /* inicializuj HC08: AD, LCD */ } for(;;) { displayonlcd(dig_x, dig_y); /* zobraz honotu napeti na LCD displeji */ delay(500); }

unsigned char dig_x, dig_y; const unsigned char LCDpart_2[20]= { 0x53, 0x03, /* display 0 */ 0x03, 0x00, /* display 1 */ 0x71, 0x02, /* display 2 */ 0x73, 0x00, /* display 3 */ 0x23, 0x01, /* display 4 */ 0x72, 0x01, /* display 5 */ 0x72, 0x03, /* display 6 */ 0x13, 0x00, /* display 7 */ 0x73, 0x03, /* display 8 */ 0x73, 0x01 /* display 9 */ }; /* doplnte kod k bodum 3 a 4 ve funkci */ void displayonlcd(unsigned int dig2, unsigned int dig3) { /* 1) vypni vsechny LCD-segmenty */ turnofflcdsegments(); /* 2) zobraz cislici dig2 na 7-segmentu 2 LCD displeje */ LDAT9 = LCDpart_2[2*dig2]; LDAT10 = LCDpart_2[2*dig2+1]; /* 3) zobraz cislici dig3 na 7-segmentu 3 LCD displeje */ } /* 4) zobraz desetinou tecku (P2) lezici mezi 7-segmenty 2 a 3 LCD displeje */

Konec demonstračního cvičení