Mikroprocesory v přístrojové technice



Podobné dokumenty
Mikrořadiče pro přístrojovou techniku

Mikroprocesory v přístrojové technice. Přednášky A3B38MMP

Mikroprocesory v přístrojové technice

Mikroprocesory v přístrojové technice

Mikroprocesory v přístrojové technice

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


Rozhraní mikrořadiče, SPI, IIC bus,..

MIKROPOČÍTAČOVÉ SYSTÉMY

Mikrořadiče řady 8051.


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


Procesory z řady 8051

Programátorský model procesoru x51

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

PŘÍRODOVĚDECKÁ FAKULTA UNIVERZITY PALACKÉHO KATEDRA INFORMATIKY BAKALÁŘSKÁ PRÁCE. Simulátor mikroprocesorů architektury 8051.

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

Překladač - Assembler, úloha SW_ UART

Jednočipové mikropočítače (mikrokontroléry)

Mikroprocesor Intel 8051

Překladač - Assembler. kat. měření, ČVUT - FEL, Praha A3B38MMP, X38MIP Přednáška 3 - část. J. Fischer

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

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

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

Univerzální jednočipový modul pro řízení krokových motorů

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

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

Rozhraní mikrořadiče, SPI, IIC bus,..

PROCESOR. Typy procesorů

Architektura počítače

Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška 11 (12)

STEDNÍ PRMYSLOVÁ ŠKOLA, OSTRAVA - MORAVSKÁ OSTRAVA, KRATOCHVÍLOVA 7. (studijní text)

A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL. Rozhraní mikrořadiče, SPI, IIC bus,.. A438NVS, kat. měření, ČVUT - FEL, Praha. J.

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

Přednáška - A3B38MMP Procesory s jádrem ARM. A3B38MMP 2015, J. Fischer, kat. měření, ČVUT-FEL Praha 1

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

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

Úloha Ohmetr zadání úlohy

Vestavné systémy BI-VES Přednáška 5

zení Koncepce připojení V/V zařízení POT POT ... V/V zařízení jsou připojena na sběrnici pomocí řadičů. Řadiče Připojení periferních zařízení

Procesor z pohledu programátora

RISC a CISC architektura

Kubatova Y36SAP procesor - control unit obvodový a mikroprogramový řadič RISC Y36SAP-control unit 1

MCP BIOS řídicí jednotky Kit386EXR

Mikroprocesory v přístrojové technice

STEDNÍ PRMYSLOVÁ ŠKOLA, OSTRAVA - MORAVSKÁ OSTRAVA, KRATOCHVÍLOVA 7. (studijní text)

Základní uspořádání pamětí MCU

Vývoj výpočetní techniky. Rozdělení počítačů. Blokové schéma počítače

Úloha- Systém sběru dat, A4B38NVS, ČVUT - FEL,

) informace o stavu řízené veličiny (předávaná řídícímu systému) - nahrazování člověka při řízení Příklad řízení CNC obráběcího stroje

Maturitní témata - PRT 4M

PROTOKOL O LABORATORNÍM CVIČENÍ

Malý distribuovaný I/O modul

POKLADNÍ DISPLEJ LCD. hotline: strana 1

Microchip. PICmicro Microcontrollers

Další aspekty architektur CISC a RISC Aktuálnost obsahu registru

A4B38NVS, 2011, kat. měření, J.Fischer, ČVUT - FEL. Přednáška , kat. měření, ČVUT - FEL, Praha J. Fischer

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

ETC Embedded Technology Club setkání 3, 3B zahájení třetího ročníku

Kompaktní procesní stanice

Architekura mikroprocesoru AVR ATMega ( Pokročilé architektury počítačů )

Úvod do mobilní robotiky AIL028

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

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

MIKROPROCESORY PRO VÝKONOVÉ SYSTÉMY. Systém přerušení. České vysoké učení technické Fakulta elektrotechnická

Kubatova Y36SAP 8. Strojový kód Jazyk symbolických instrukcí asembler JSA pro ADOP a AVR Kubátová Y36SAP-strojový kód 1


Paměti. Prezentace je určena jako pro studenty zapsané v předmětu A3B38MMP. ČVUT- FEL, katedra měření, Jan Fischer, 2013

enos dat rnici inicializaci adresování adresu enosu zprávy start bit átek zprávy paritními bity Ukon ení zprávy stop bitu ijíma potvrzuje p

Základy programování 8051

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

Historie osmibitových mikroprocesoru a mikroradicu ZILOG.

1. Programování PLC. Programovatelné automaty II - 1 -

2. Prehľad vlastností jednočipových mikropočítačov (I-8048, I-8051, I-80196)

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

ETC Embedded Technology Club setkání

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

PROGRAMÁTOR "WinProg-1" Návod k obsluze

FREESCALE KOMUNIKAČNÍ PROCESORY

Zadání úlohy: Vestavný systém schodišťový automat se zobrazením

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

Úvod do mobilní robotiky NAIL028

Technické prostředky počítačové techniky

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

VYUŽITÍ KNIHOVNY SWING PROGRAMOVACÍHO JAZYKU JAVA PŘI TVORBĚ UŽIVATELSKÉHO ROZHRANÍ SYSTÉMU "HOST PC - TARGET PC" PRO ŘÍZENÍ POLOVODIČOVÝCH MĚNIČŮ

Základní deska (1) Parametry procesoru (2) Parametry procesoru (1) Označována také jako mainboard, motherboard

ETC Embedded Technology Club setkání zahájení druhého ročníku

Procesory pro vestavné aplikace přehled

Paměti a jejich organizace

HW počítače co se nalézá uvnitř počítačové skříně

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

MIKROPROCESOROVÁ TECHNIKA

Integrované obvody. Obvody malé, střední a velké integrace Programovatelné obvody

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

Architektury CISC a RISC, uplatnění v personálních počítačích

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


Převodník USB na RS232. Milan Horkel

7. Monolitické počítače, vlastnosti a použití.

Transkript:

Mikroprocesory v přístrojové technice Přednášky A3B38MMP 1

Mikroprocesory v přístrojové technice A3B38MMP, katedra měření, ČVUT FEL Vyučující: přednášky - doc. Ing. Jan Fischer, CSc., konzultace - úterý 17.45 hod v 205, (příp. další po do dohodě) cvičení v lab. 318 blok A3. Ing. Miloš Okrouhlý, (míst. 316/5) cvičení čt. 14.30, čt. 16,15 2

Kontakty Ing. Jan Fischer, CSc., kat. měření, míst. 441/1 FISCHER()FEL.CVUT.CZ, tel 22435 2179 výuková lab. 318 blok A3 tel. 22435 2130 pro komunikaci používat pouze studentskou adresu FEL uziv_jméno@fel.cvut.cz (ostatní je spam) 3

Oblast zájmu předmětu Mikroprocesory v přístrojové technice - Použití mikroprocesoru v přístroji Mikroprocesory a jednočipové mikropočítače HW komponenty 4

Oblast zájmu předmětu Přístrojová technika - přístroj Přístroj: spotřební elektronika, automatizace, měřicí technika, prodejní automaty Mikroprocesorem řízený přístroj Mikroprocesor vestavěný v přístroji či zařízení? kolik máte doma mikroprocesorů? 5

up ve spotřební a domácí elektronice Největší spotřeba mikroprocesorů, resp. mikrokontrolérů spolu s automobilovým průmyslem. Přístroj - ve spotřební elektronice: mobilní telefon, PDA, dig.fotoaparát, kamera, CD + MP3 přehrávač, televizor, DVD přehrávač, činnosti: vstup - výstup signálu, digitalizace, komprese, ukládání, přenos 6

up ve spotřební a domácí elektronice Největší spotřeba mikroprocesorů, resp. mikrokontrolérů spolu s automobilovým průmyslem. Přístroj - ve spotřební elektronice: mobilní telefon, PDA, dig.fotoaparát, kamera, CD + MP3 přehrávač, televizor, DVD přehrávač, činnosti: vstup - výstup signálu, digitalizace, komprese, ukládání, přenos tzv. Bílá elektronika myčka, lednička, mraznička, pračka, mikrovlnná trouba, mixér, vysavač činnosti: ovládací vstupy, snímání ( teplota, hladina, průtok,..) akční členy - ovládání motoru, solenoidových ventilů, komunikace s obsluhou Osvětlení - řízení zářivky - zabudovaný mikrořadič 7

up řízený přístroj v měřicí technice Měřicí technika Přístroje: Multimetr, osciloskop, logický analyzátor, měřič impedance, generátor, reflektometr na měření metalických a optických tras 8

up řízený přístroj v měřicí technice Měřicí technika Přístroje: Multimetr, osciloskop, logický analyzátor, měřič impedance, generátor, reflektometr na měření metalických a optických tras Osciloskop (zcela jiná konstrukce oproti původnímu osciloskopu - výkonný počítač + rychlé A/D převodníky), 9

up řízený přístroj v měřicí technice Měřicí technika Přístroje: Multimetr, osciloskop, logický analyzátor, měřič impedance, generátor, reflektometr na měření metalických a optických tras Osciloskop (zcela jiná konstrukce oproti původnímu osciloskopu - výkonný počítač + rychlé A/D převodníky), Spektrální analyzátor - digitalizace signálu + Fourier. transformace, metody číslicového zpracování signálu Elektroměr - digitalizace u, i, výpočet odebrané energie, dálkové ovládání - HDO ( noční proud ) komunikace, ovládání relé 10

up řízený přístroj - domovní automatizace Domovní automatizace regulace. regulátor teploty, řízení klimatizace Regulátor topení - snímání teploty v místnostech, venkovní teploty, rychlosti větru, ovládání kotle,... 11

up řízený přístroj - domovní automatizace Domovní automatizace regulace. regulátor teploty, řízení klimatizace Regulátor topení - snímání teploty v místnostech, venkovní teploty, rychlosti větru, ovládání kotle,... Rozpočítávací měřič tepla - na radiátoru ústředního topení Automatizace - regulace, regulátor teploty, řízení klimatizace Ovládání světel, komunikace - standard D.A.L.I. Dálkové ovládání vrat - garáže - ( komunikace, kódy, akční členy, bezpečnost osob - snímání přítomnosti osob a síly zavírání ) 12

up řízený přístroj - domovní automatizace Domovní automatizace regulace. regulátor teploty, řízení klimatizace Regulátor topení - snímání teploty v místnostech, venkovní teploty, rychlosti větru, ovládání kotle,... Rozpočítávací měřič tepla - na radiátoru ústředního topení Automatizace - regulace, regulátor teploty, řízení klimatizace Ovládání světel, komunikace - standard D.A.L.I. Dálkové ovládání vrat - garáže - ( komunikace, kódy, akční členy, bezpečnost osob - snímání přítomnosti osob a síly zavírání ) Zabezpečovací technika Přístupové systémy - čtečky karet, klávesnice, komunikace Zabezpečovací systémy- snímače pohybu, zvuku - např. tříštění skla, optické závory, komunikace, signalizace, přenos dat SMS,? přenos redukovaného obrazu ( Nový studijní obor na ČVUT -FEL: Inteligentní budovy 13

up řízený přístroj - prodej, služby Prodejní automaty - na potraviny, (snímač mincí, zobrazení, akční členy..) Stojan benzinové pumpy ( snímač - průtokoměr, komunikace, zobrazení, čtečka karet). 14

up řízený přístroj - prodej, služby Prodejní automaty - na potraviny, ( snímač mincí, zobrazení, akční členy..) Stojan benzinové pumpy ( snímač - průtokoměr, komunikace, zobrazení, čtečka karet). Automatické váhy ( supermarket) snímač síly - tenzometry, zobrazení, komunikace- přeprogramování ceny, tisk Prodejní automat jízdenek ( MHD, ČD,..) Přenosná čtečka karet - (restaurace) - klávesnice, zobrazení, bezdrátová komunikace, tisk. 15

up řízený přístroj - prodej, služby Prodejní automaty - na potraviny, ( snímač mincí, zobrazení, akční členy..) Stojan benzinové pumpy ( snímač - průtokoměr, komunikace, zobrazení, čtečka karet). Automatické váhy ( supermarket) snímač síly - tenzometry, zobrazení, komunikace- přeprogramování ceny, tisk Prodejní automat jízdenek ( MHD, ČD,..) Přenosná čtečka karet - (restaurace) - klávesnice, zobrazení, bezdrátová komunikace, tisk. Přístupové systémy - vstupenky, lanovky, vleky čtečka - optická, RFID,.., komunikace, akční členy - otevírání závory Hrací automaty: ( sem patří!!! bohužel i tzv. výherní -hrací automaty - vstup, snímání množství mincí v zásobníku, generace pseudonáhodných čísel, ovládání akčních členů, programovatelný stupeň výhry automatu). ( nad mikroprocesorem se zde nezvítězí!!!) 16

up - automobilní elektronika automotive Automobilní elektronika - palubní přístroje: (řízení motoru- vstřikování,.. řízení brzd ABS, AES, palubní počítač, tempomat,..) 17

up - automobilní elektronika - automotive Automobilní elektronika - palubní přístroje: (řízení motoru- vstřikování,.. řízení brzd ABS, AES, palubní počítač, tempomat,..) Sběr dat: teploty (olej, voda,..), tlak, klepání motoru,spaliny,.. Doplňkové funkce - řízení stěračů, nastavování polohy volantu, sedaček, stahování oken ( snímání proudu - bezpečnost) Regulace - zadání žádané hodnoty, snímání polohy, ovládání motorků, snímání proudu motorku, řízení klimatizace Naklápění reflektorů- up + výkon. budič + krokový motorek 18

up - automobilní elektronika - automotive Automobilní elektronika - palubní přístroje: (řízení motoru- vstřikování,.. řízení brzd ABS, AES, palubní počítač, tempomat,..) Sběr dat: teploty (olej, voda,..), tlak, klepání motoru,spaliny,.. Doplňkové funkce - řízení stěračů, nastavování polohy volantu, sedaček, stahování oken ( snímání proudu - bezpečnost) Regulace - zadání žádané hodnoty, snímání polohy, ovládání motorků, snímání proudu motorku, řízení klimatizace Naklápění reflektorů- up + výkon. budič + krokový motorek Ovládání zábavní elektroniky - rozhlas. přijímač, přehrávač, navigace Komunikace: rozhraní CAN - základní komunikač. rozhraní - (systémová, zábavní) rozhraní LIN - periferie - ovládání motorků v oknech,.. nově - rozhraní Flex ray - např. přímé ovládání brzd 19

Blokové schéma přístroje řízeného up analogové logické vstupy řízené obvody vstupy, výstupy, A/D, D/A analogové logické výstupy zobrazení LED tlačítka klávesnice mikropočítač mikrořadič ( microcontroller) LED 7- segment LCD- segment graf. LCD ext. paměti Flash, pam. karty rozhraní RS232, USB, Ethernet 20

Náplň předmětu - přednášky Použití jednočip. mikropočítače 8051, architektura, programování Logické obvody ( řady CMOS, druhy, napěťové úrovně, použití) Paměti ( SRAM, EPROM, FLASH, FIFO, Dual port..) Systémové sběrnice mikropočítačů, připojování obvodů na sběrnice 21

Náplň předmětu - přednášky Použití jednočip. mikropočítače 8051, architektura, programování Logické obvody ( řady CMOS, druhy, napěťové úrovně, použití) Paměti ( SRAM, EPROM, FLASH, FIFO, Dual port..) Systémové sběrnice mikropočítačů, připojování obvodů na sběrnice Návrh mikropočítače Připojování vstupních a výstupních obvodů Obvody pro komunikaci s obsluhou, připojení vstupních bloků - tlačítek, klávesnic, výstupních bloků -LED, LCD Připojení A/D, D/A převodníků 22

Náplň předmětu - přednášky Použití jednočip. mikropočítače 8051, architektura, programování Logické obvody ( řady CMOS, druhy, napěťové úrovně, použití) Paměti ( SRAM, EPROM, FLASH, FIFO, Dual port..) Systémové sběrnice mikropočítačů, připojování obvodů na sběrnice Návrh mikropočítače Připojování vstupních a výstupních obvodů Obvody pro komunikaci s obsluhou, připojení vstupních bloků - tlačítek, klávesnic, výstupních bloků -LED, LCD Připojení A/D, D/A převodníků Další druhy mikropočítačů a mikrořadičů- architektura, vlastnosti 32- bitové mikroprocesory řady ARM Cortex M3 (provedení STM32) ( ARM Cortex- M3 - viz. předměty A4B38NVS a A3M38AVS) Signálové procesory ADSP -BF53x Blackfin 23

Náplň předmětu cvičení Použití jednočip. mikropočítače 8051 ( AT89S8252), programování Návrh jednoduchého přístroje skupina A ( vstup - odpor - Ohmetr ) skupiny B ( vstup - napětí - Voltmetr ) (?? příp. skup. C velmi pokročilí jako sk. B, ale s STM32 STM32VL discovery kit) Úvod, blikání Napálení programu do AT89C2051, realizace na kontaktním. poli. Snímání odporu (napětí), výstup na terminál návrh a realizace zobrazovací jednotky se 7 segment LED informace výuka, balalářská etapa, stránka předmětů Nové stránky, více informacích - staré stránky, je odkaz materiály k 8051,... 24

Vývojové nástroje Programování v asembleru 51 IDE Microvision 3 firmy KEIL www.keil.com demoverze IDE, volná, do 2kByte kódu překlad, simulace, odladění na HW nainstalovat doma IDE, seznámení s up AT89S8252 + 8KByte RAM RS 232 nepájivé kontaktní pole PC + IDE Keil Microvision 3 25

Vývojové nástroje Modul s ADuC843 (Analog Devices) klon 8051 www.analog.com IDE Microvision 3 firmy KEIL www.keil.com podpora debug přímo na čipu ADuC843 + ADM232 RS -232 USB/ RS 232 převodník nepájivé kontaktní pole PC + IDE Keil Microvision 3 26

Vývojové nástroje Vlastní realizace modulu na nepájivém kontaktním poli Atmel AT89C51RB2 (AT89C51RD2 ) + ADM232 napojení na RS-232 Pouze download a spuštění programu tvorba hex. kódu - IDE Microvision 3 firmy KEIL www.keil.com AT89C51RB2 +ADM 232 RS -232 USB/ RS 232 převodník nepájivé kontaktní pole PC + IDE Keil Microvision 3 27

Očekávaný přínos předmětu - pro bakal. práci Pochopení základních principů funkce a návrhu up řízeného přístroje (bez ohledu na typ použitého up) Schopnost navrhnout HW i SW jednoduchého up řízeného přístroje využívajícího klonů up 8051 Komunikace up s PC použitím rozhraní RS232 Snímání vstupů, ovládání výstupů Konfigurace chování přístroje Autonomní funkce přístroje 28

Podmínky zápočtu, zkouška X38MIP Aktivní účast na cvičeních, odevzdání úloh podle plánu, samostatná práce (ne plagiátorství!!!) Průběžná domácí příprava na cvičení- viz WW stránky!!! Zápočet v zápočtovém týdnu, ve zkouškovém období není možný přístup do laboratoře, náhradní termín max. konec. 2. týdne. zk. Test v 9. týdnu na přednášce Úlohy až 39 bodů, test. v sem. 21 bodů, testy u zkoušky 20b + 20b. Doporučení: domácí použití IDE Keil, Microvision, příprava programů ihned od 1. týdne, v simulátoru je možno odladit téměř celý program. V lab. - odladění na HW a konzultace, Předčasné odevzdání úloh, možno přijít až pro zápočet (čas na bakalářskou práci) Další informace na www stránkách measure.feld.cvut.cz/vyuka.. bak. stud, návody 29

Procesory s jádrem 8051 Architektura - 8 bitového procesoru, původ Intel 8051 obvykle používané označení 8051 nebo jen 51 ve skutečnosti jádro 8x52 architektura používaná několika desítkami výrobců Atmel, Philips - NXP, Silicon laborartories, Cypress, Texas Instruments, Analog Devices, Siemens- Infinieon,... Proč používáme 8051 v základním kursu: jednoduchá architektura, pochopení za 2-3 dny ( ARM Cortex M3 seznámení se za -2-3 měsíce) Mnoho informací a knih, vzorů programů, www.8052.com,... nejrozšířenější architektura mikrořadiče (ne však nezdařilejší) Pozn. např. pozdější následníci- Intel 8096, 80C196 ( 16 bitové, výkonnější, podstatně lepší instr. sada, ) zcela zapadly. 30

Procesory s jádrem 8051 Jádro 8051 obsaženo i pouze jako doplněk řadiče High speed USB 2.0 řadič + 8051: Cypress Cy7C68013A, www.cypress.com Texas Instruments TUSB6250 www.ti.com Jádro 8051 často jako doplněk hlavního obvodu (podobně jako vtus6250) stále nové varianty čipů s jádrem 8051 např. v r. 2014 http://www.ftdichip.com/corporate/press/ft51%20press%20release. pdf obvod FT51 http://www.ftdichip.com/mcu.html 31

Procesory s jádrem ARM Cortex -M Pro přístrojovou techniku je nyní posun použití jádra ARM, Především jádro ARM Cortex M3, Cortex M4, Cortex M0 http://www.arm.com/products/processors/cortex-m/index.php více- viz výuka A4B38NVS, pří. A4M38AVS Po základním seznámení s problematikou mikrořadičů v kursu A3B38MMP je možno pokračovat mikrořadiči s jádrem ARM CORTEX-M3, M4 např. STM32Fxx, LPC13xx, TM4Cxxx Je možno využít levné kity např.: STM32VLDiscovery kit, STM32 Nucleo LPCXpresso Ti Launch pad Tiva -C 32

Blokové schéma AT89C52 ext. int. Blokové schéma AT89 C52 counter inputs interrupt control 8 KB Flash 256 B RAM Timer 0, 1, 2 CPU osc bus control I/O port serial port UART P0 P2 P1 P3 TxD RxD Address / Data 33

Význam a funkce bloků AT89C52 CPU - central processing unit I/O port - vstupně/výstupní brány Flash 8k- vnitřní paměť programu ext. int. interrupt control 8 KB Flash Blokové schéma AT89 C52 256 B RAM Timer 0, 1, 2 counter inputs RAM 256B vnitřní paměť dat CPU UART - sériový port (COM) osc bus control I/O port serial port UART P0 P2 P1 P3 TxD RxD Address / Data Funkce jako - jednočipový mikropočítač (jediný obvod)- int. paměř programu a dat nebo jako mikropoč. s externí pamětí (připojení na sběrnici BUS) Deska na cvičeních - ext. paměť programu v EPROM 2764 a ext. paměť dat v 6264 spolupráce s CPU prostřednictvím sběrnice - BUS BUS adres. signály, datové signály, říd. signály /PSEN, /RD, /WR 34

Vývody AT89C52 P1.0/T2 P1.1/T2EX P1.2 P1.3 P1.4 P1.5 P1.6/ P1.7 RST P3.0/RxD P3.1/TxD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD XTAL2 XTAL1 VSS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 PDIL VCC P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 EA ALE/PR OG PSEN P2.7/A15 P2.6/A14 P2.5/A13 P2.4/A12 P2.3/A11 P2.2/A10 P2.1/A9 P2.0/A8 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 Signály procesoru: Brány P1 ( P0.7 až P0.0) P1 ( P1.7 až P1.0) P2 ( P2.7 až P2.0) P3 ( P3.7 až P3.0) P1.7 - MSB, P1.0 - LSB atd. UART výst. TxD, vst. RxD přeruš.vst. /INT0, /INT1 akt. L T0, T1 vstupy čítačů Signály externí sběrnice: /WR, /RD, říd. sig. zápisu a čtení A15 - A8, adresové signály AD8 -AD0 mux. adresové/datové s. Vss zem ( GND ground) Vcc - napájení, +5 V, RST - Reset celého procesoru XTAL 1,2 - krystal - oscilátor 35

Signály AT89C52 SECONDAR Y FUNCTIONS RxD TxD INT0 INT1 T0 T1 WR RD XTAL1 XTAL2 RST EA PSEN ALE POR T 3 V CC V SS POR T 0 POR T 1 POR T 2 ADDRESS AND DATA BUS ADDRESS BUS P1.0/T2 P1.1/T2EX P1.2 P1.3 P1.4 P1.5 P1.6/ P1.7 RST P3.0/RxD P3.1/TxD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD XTAL2 XTAL1 VSS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 PDIL 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 VCC P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 EA ALE/PR OG PSEN P2.7/A15 P2.6/A14 P2.5/A13 P2.4/A12 P2.3/A11 P2.2/A10 P2.1/A9 P2.0/A8 36

Pouzdro AT89C52 P1.0/T2 P1.1/T2EX P1.2 P1.3 P1.4 P1.5 P1.6/ P1.7 RST P3.0/RxD P3.1/TxD P3.2/INT0 P3.3/INT1 P3.4/T0 P3.5/T1 P3.6/WR P3.7/RD XTAL2 XTAL1 VSS 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 PDIL VCC P0.0/AD0 P0.1/AD1 P0.2/AD2 P0.3/AD3 P0.4/AD4 P0.5/AD5 P0.6/AD6 P0.7/AD7 EA ALE/PR OG PSEN P2.7/A15 P2.6/A14 P2.5/A13 P2.4/A12 P2.3/A11 P2.2/A10 P2.1/A9 P2.0/A8 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 25 24 23 22 21 Pouzdro DIL 40, nepostačuje pro všechny signály, proto - sdílení pinů: UART výst.txd a brána P3.1 vstup RxD a P3.0 hradlování čítače T0, brána P.3.0, a přerušovací vstup /INT0 P2.7 a sig. sběrnice AD15 Někdy možnost použít vstupní pin ve více funkcích současně hradlovat čítač, číst stav pinu, přerušit spádovou hranou ( využití v úloze) 37

Vnitřní blokové schéma CPU řady 51 P0.0 - P0.7 P2.0 - P2.7 PORT 0 DRIVERS PORT 2 DRIVERS V CC V SS RAM ADDR REGISTER RAM PORT 0 LATCH PORT 2 LATCH ROM/EPROM 8 B REGISTER ACC STACK POINTER TMP2 TMP1 PROGRAM ADDRESS REGISTER ALU BUFFER PSW SFRs TIMERS PC INCRE- MENTER 8 16 PROGRAM COUNTER PSEN ALE/PROG EA/ V PP RST TIMING AND CONTROL DPTR'S MULTIPLE PD PORT 1 LATCH PORT 3 LATCH OSCILLATOR PORT 1 DRIVERS PORT 3 DRIVERS XTAL1 XTAL2 P1.0 - P1.7 P3.0 - P3.7 38

Paměťový model mikropočítače 8051 Prostory CODE ( pouze čtení), DATA, XDATA Paměťový model up řady 8051 FFFF CODE DATA FFFF XDATA paměť prog. interní paměť dat externí paměť dat 0000 FF 80 7F 00 REG. SP. FUNKCÍ RAM 0000 39

Paměťový model mikropočítače AT89C52 AT89C52 navíc - 128B RAM - DATA, 8KB vnitřní paměti FLASH -CODE, povolení vnitřní FLASH vstup /EA= L FFFF CODE Pamět. prostory u AT89C52 FFFF XDATA ext. pam. prog. ext.pam. dat AT89C52 1FFF 1000 0FFF 0000 EA=1 EA=0 FF 80 7F 00 DATA REG. SP. FUNKCÍ RAM (128B) RAM (128B) 0000 40

Paměťový model - prostor DATA FF 80 7F SP P0 zápisník, data speciální funkční registry FF nepřímo adres. dat. pam. ( pouze u xx52 verzí) adresový prostor DATA paměť RAM + speciální funkční registry SFR 128B 30 2F 20 1F 18 17 10 0F 08 07 00 7F 70 17 10 0F 08 07 00 R7 R0 reg. banka 0 80 bitově adresovatelná paměť reg. banka 3 reg. banka 2 reg. banka 1 41

Prostor DATA, paměť RAM u 8051 FF 80 7F SP P0 zápisník, data speciální funkční registry FF nepřímo adres. dat. pam. ( pouze u xx52 verzí) 128 Byte paměti RAM 128B 30 2F 7F 70 80 20 1F 18 17 10 0F 08 07 00 17 0F 07 R7 R0 10 08 00 bitově adresovatelná paměť reg. banka 3 reg. banka 2 reg. banka 1 reg. banka 0 paměť RAM 128 Byte v prostoru DATA 42

Registry R0 - R7 FF 80 7F SP P0 zápisník, data speciální funkční registry FF nepřímo adres. dat. pam. ( pouze u xx52 verzí) 128 Byte paměti RAM Registry R0 - R7, banka 0, R0 na adr. 00 128B 30 2F 20 1F 18 17 10 0F 08 07 00 7F 70 17 10 0F 08 07 00 R7 R0 reg. banka 0 80 bitově adresovatelná paměť reg. banka 3 reg. banka 2 reg. banka 1 registry R0 až R7 43

Bitově adresovatelná paměť RAM FF 80 7F SP P0 zápisník, data speciální funkční registry FF nepřímo adres. dat. pam. ( pouze u xx52 verzí) 128B 128 Byte paměti RAM Registry R0 - R7, banka 0, R0 na adr. 00 bitově adresovatelná.paměť bit 00,01,02...celk. 128 bitů 30 2F 20 1F 18 17 10 0F 08 07 00 7F 70 17 10 0F 08 07 00 R7 R0 reg. banka 0 80 bitově adresovatelná paměť 16 Byte = 16 x 8 bitů = 128 bitů reg. banka 3 reg. banka 2 reg. banka 1 44

Doplňková - pouze nepřímo adr. paměť RAM (8x52) FF 80 7F SP P0 zápisník, data speciální funkční registry FF nepřímo adres. dat. pam. ( pouze u xx52 verzí) 128B 128 Byte paměti RAM Registry R0 - R7, banka 0, R0 na adr. 00 bitově adresovatelná.paměť bit 00,01,02...celk. 128 bitů 30 2F 20 1F 18 17 10 0F 08 07 00 7F 70 17 0F 07 R7 R0 10 08 00 reg. banka 0 80 bitově adresovatelná paměť 128 Byte nepřímo adres. pam (např. MOV A, @R0) reg. banka 3 reg. banka 2 reg. banka 1 (pouze) nepřímo adres. paměť RAM -128 Byte 45

Prostor DATA přímo i nepřímo adr. RAM FF 80 7F SP P0 zápisník, data speciální funkční registry FF nepřímo adres. dat. pam. ( pouze u xx52 verzí) 128B 128 Byte paměti RAM Registry R0 - R7, banka 0, R0 na adr. 00 bitově adresovatelná.paměť bit 00,01,02...celk. 128 bitů 30 2F 20 1F 18 17 10 0F 08 07 00 7F 70 17 0F 07 R7 R0 10 08 00 reg. banka 0 80 bitově adresovatelná paměť reg. banka 3 reg. banka 2 reg. banka 1 128 Byte přímo i nepřímo adres. pam (pouze) nepřímo adres. paměť RAM -128 Byte Přímo i nepřímo adr. pam. RAM - 128 Byte 46

Celá oblast nepřímo adr. paměti RAM FF 80 7F SP P0 zápisník, data speciální funkční registry FF nepřímo adres. dat. pam. ( pouze u xx52 verzí) 128B 128 Byte paměti RAM Registry R0 - R7, banka 0, R0 na adr. 00 bitově adresovatelná.paměť bit 00,01,02...celk. 128 bitů 30 2F 20 1F 18 17 10 0F 08 07 00 7F 70 17 0F 07 R7 R0 10 08 00 reg. banka 0 80 bitově adresovatelná paměť reg. banka 3 reg. banka 2 reg. banka 1 celkem 256 Byte nepřímo adres. pam RAM (pouze) nepřímo adres. paměť RAM -128 Byte Přímo i nepřímo adr. pam. RAM - 128 Byte Nepřímo adr. pam 256 Byte 47

Prostor DATA, Speciální funkční registry - SFR FF 80 7F SP P0 zápisník, data speciální funkční registry FF nepřímo adres. dat. pam. ( pouze u xx52 verzí) 128B 128 Byte paměti RAM Registry R0 - R7, banka 0, R0 na adr. 00 bitově adresovatelná.paměť bit 00,01,02...celk. 128 bitů 30 2F 20 1F 18 17 10 0F 08 07 00 7F 70 17 0F 07 R7 R0 10 08 00 reg. banka 0 80 bitově adresovatelná paměť reg. banka 3 reg. banka 2 reg. banka 1 spec. funkč. registrybrány, čítače, UART, řízení, řadič přerušení, přímo adr. MOV 80h, #0Fh (pouze) nepřímo adres. paměť RAM -128 Byte Přímo i nepřímo adr. pam. RAM - 128 Byte Nepřímo adr. pam 256 Byte Spec. funkční registry - pouze přímo adresovatelné v prostoru DATA 48

Prostor DATA, jednočip. mikropočítač AT89C2051 FF 80 7F SP P0 zápisník, data speciální funkční registry Jednočip. mikropočítač AT89C2051 - použití v první samostatné úloze pouze 128B RAM malé pouzdro DIL20 30 2F 20 1F 18 17 10 0F 08 07 00 7F 70 17 0F 07 R7 R0 10 08 00 bitově adresovatelná paměť reg. banka 3 reg. banka 2 reg. banka 1 reg. banka 0 vývody -port P1 a necelý P3 na P1.0 a P1.1 nejsou PULL - UP rezistory - není schopen generovat na výstupu úroveň H 49

Prostor SFR - (DATA) u AT89S8252 F8h F0h E8h E0h D8h D0h C8h C0h B8h B0h A8h A0h 98h 90h 88h 80h bitově. adresov. B (00h) ACC (00h) PSW (00h) T2CON (00h) IP P3 (FFh) P2 (FFh) P1 (FFh) P0 (FFh) T2MOD SCON (00h) SBUF (xx) TCON (00h) TMOD (00h) RCAP2L RCA2H RCA2H TL2 TH2 SPSR TL0 (00h) TL1 (00h) TH0 (00h) TH1 (00h) SP (07h) DPL (00h) DPH (00h) DP1L (00h) DP1H (00h) WMCON PCON 0 (8) 1 (9) 2 (A) 3 (B) 4 (C) 5 (D) 6 (E) 7 (F) FFh F7h EFh E7h DFh D7h CFh C7h BFh B7h AFh A7h 9Fh 97h 8Fh 87h 50

Adresování SFR MSB LSB MSB LSB MSB LSB MSB LSB MSB LSB B P2 SCON P1 TCON P0 F0h A7h A0h 9Fh 98h 97h 90h 8Fh 88h 87h 80h MSB LSB bitová adresa Adresování SFR (např. brána P1 na adrese 90h) MOV 90h, #00h ; zapiš do SFR na adr. 90h přímá data 00h 51

Adresování SFR MSB LSB MSB LSB MSB LSB MSB LSB MSB LSB B P2 SCON P1 TCON P0 F0h A7h A0h 9Fh 98h 97h 90h 8Fh 88h 87h 80h MSB LSB bitová adresa Adresování SFR (např. brána P1 na adrese 90h) MOV 90h, #00h ; zapiš do SFR na adr. 90h přímá data 00h SETB 90h nastav bit v s bit. adr. 90h (nejnižší bit-lsb- brány P1) 90h bitová adresa od začátku (obtížně se pamatuje) 52

Adresování SFR MSB LSB MSB LSB MSB LSB MSB LSB MSB LSB B P2 SCON P1 TCON P0 F0h A7h A0h 9Fh 98h 97h 90h 8Fh 88h 87h 80h MSB LSB bitová adresa Adresování SFR (např. brána P1 na adrese 90h) MOV 90h, #00h ; zapiš do SFR na adr. 90h přímá data 00h SETB 90h nastav bit v s bit. adr. 90h (nejnižší bit-lsb- brány P1) 90h bitová adresa od začátku (obtížně se pamatuje) SETB 90h.0 nastav bit na bitové adrese, která odpovídá nejnižšímu bitu na bajtové adrese 90h (určení y souřadnice -bajt, a x souřadnice -bit), bitovou adresu určí překladač 53

Adresování SFR MSB LSB MSB LSB MSB LSB MSB LSB MSB LSB B P2 SCON P1 TCON P0 F0h A7h A0h 9Fh 98h 97h 90h 8Fh 88h 87h 80h MSB LSB bitová adresa Adresování SFR (např. brána P1 na adrese 90h) MOV 90h, #00h ; zapiš do SFR na adr. 90h přímá data 00h SETB 90h nastav bit v s bit. adr. 90h (nejnižší bit-lsb- brány P1) 90h bitová adresa od začátku (obtížně se pamatuje) SETB 90h.0 nastav bit na bitové adrese, která odpovídá nejnižšímu bitu na bajtové adrese 90h (určení y souřadnice -bajt, a x souřadnice -bit), bitovou adresu určí překladač SETB P1.0 totéž, ale i bajtovou adresu (P1 equ 90h) překladač nejdříve vezme z tabulky symbolů- P1 odpovídá hodnota 90h 54

Registry speciálních funkcí - SFR střadač ACC... registr B... 8 bitový registr; funkce střadače 8 bitový reg., pomoc. reg. pro násobení/ dělení 55

Registry speciálních funkcí - SFR střadač ACC... registr B... registry R0..R7... ukazatel zásobníku - SP 8 bitový registr; funkce střadače 8 bitový reg., pomoc. reg. pro násobení/ dělení 8 bitové registry; 4 banky, přepínané v PSW 8 bitový reg. 56

Registry speciálních funkcí - SFR střadač ACC... registr B... registry R0..R7... ukazatel zásobníku - SP datový ukazatel - DPTR porty P0..P3... 8 bitový registr; funkce střadače 8 bitový reg., pomoc. reg. pro násobení/ dělení 8 bitové registry; 4 banky, přepínané v PSW 8 bitový reg. 16 - bitový registr (DPH, DPL); adresace XDATA 8-bitové registry; čtení, zápis na porty procesoru 57

Registry speciálních funkcí - SFR střadač ACC... registr B... registry R0..R7... ukazatel zásobníku - SP datový ukazatel - DPTR porty P0..P3... stavový registr PSW sériový buffer SBUF 8 bitový registr; funkce střadače 8 bitový reg., pomoc. reg. pro násobení/ dělení 8 bitové registry; 4 banky, přepínané v PSW 8 bitový reg. 16 - bitový registr (DPH, DPL); adresace XDATA 8-bitové registry; čtení, zápis na porty procesoru 8 bitový reg.; výsledky arit., log. operací CY, AC, F0, RS1, RS0, OV,-, P 8 bitový reg.; vyrovnávací registr pro vysíl. /příjem 58

Registry speciálních funkcí - SFR střadač ACC... registr B... registry R0..R7... ukazatel zásobníku - SP datový ukazatel - DPTR porty P0..P3... stavový registr PSW sériový buffer SBUF hodnoty časovačů řídicí registry... 8 bitový registr; funkce střadače 8 bitový reg., pomoc. reg. pro násobení/ dělení 8 bitové registry; 4 banky, přepínané v PSW 8 bitový reg. 16 - bitový registr (DPH, DPL); adresace XDATA 8-bitové registry; čtení, zápis na porty procesoru 8 bitový reg.; výsledky arit., log. operací CY, AC, F0, RS1, RS0, OV,-, P 8 bitový reg.; vyrovnávací registr pro vysíl. /příjem 16- bitové registry (THx, TLx) 8- bitové registry; IP,IE,TMOD, TCON, SCON,PCON 59

Přehled rezervovaných symbolů A - střadač 60

Přehled rezervovaných symbolů A R0 - R7 - střadač - osm obecných registrů v právě aktivní bance 61

Přehled rezervovaných symbolů A R0 - R7 - střadač - osm obecných registrů v právě aktivní bance DPTR - datový ukazatel (data pointer), 16- bitový registr, který se používá pro adresování v programové a externí datové paměti 62

Přehled rezervovaných symbolů A R0 - R7 - střadač - osm obecných registrů v právě aktivní bance DPTR PC - datový ukazatel (data pointer), 16- bitový registr, který se používá pro adresování v programové a externí datové paměti - programový čítač; 16 - bitový registr, který obsahuje adresu následující instrukce 63

Přehled rezervovaných symbolů A R0 - R7 - střadač - osm obecných registrů v právě aktivní bance DPTR PC C - datový ukazatel (data pointer), 16- bitový registr, který se používá pro adresování v programové a externí datové paměti - programový čítač; 16 - bitový registr, který obsahuje adresu následující instrukce - Carry flag - přenosový bit; indikuje přenos z MSB při operacích ALU 64

Přehled rezervovaných symbolů A R0 - R7 - střadač - osm obecných registrů v právě aktivní bance DPTR PC C AB - datový ukazatel (data pointer), 16- bitový registr, který se používá pro adresování v programové a externí datové paměti - programový čítač; 16 - bitový registr, který obsahuje adresu následující instrukce - Carry flag - přenosový bit; indikuje přenos z MSB při operacích ALU - registrový pár; používá se při násobení a dělení 65

Přehled instrukčního souboru 8051 aritmetické operace (sčítání, odečítání, násobení, dělení,...) 66

Přehled instrukčního souboru 8051 aritmetické operace (sčítání, odečítání, násobení, dělení,...) logické operace (AND,OR, XOR, bitové rotace, nastavování/nulování bitu 67

Přehled instrukčního souboru 8051 aritmetické operace (sčítání, odečítání, násobení, dělení,...) logické operace (AND,OR, XOR, bitové rotace, nastavování/nulování bitu přesuny dat (mezi registry, styk s programovou a externí datovou pamětí) 68

Přehled instrukčního souboru 8051 aritmetické operace (sčítání, odečítání, násobení, dělení,...) logické operace (AND,OR, XOR, bitové rotace, nastavování/nulování bitu přesuny dat (mezi registry, styk s programovou a externí datovou pamětí) předání řízení (skoky) (skoky, volání podprogramu,návrat z podprogramu a z přerušení,...) 69

Instrukční soubor 8051 - Operandy instrukcí rezervované symboly: <název> A,C,DPTR, registry speciálních funkcí -SFR 70

Instrukční soubor 8051 - Operandy instrukcí rezervované symboly: <název> A,C,DPTR, registry speciálních funkcí -SFR bajtové adresy: <adresa> adresy vnitřní datové paměti (0-127) a SFR registry (128-255) 71

Instrukční soubor 8051 - Operandy instrukcí rezervované symboly: <název> A,C,DPTR, registry speciálních funkcí -SFR bajtové adresy: <adresa> adresy vnitřní datové paměti (0-127) a SFR registry (128-255) bitové adresy: <adresa bitu> bitově adresovatelná paměť RAM a vybrané SFR 72

Instrukční soubor 8051 - Operandy instrukcí rezervované symboly: <název> A,C,DPTR, registry speciálních funkcí -SFR bajtové adresy: <adresa> adresy vnitřní datové paměti (0-127) a SFR registry (128-255) bitové adresy: <adresa bitu> bitově adresovatelná paměť RAM a vybrané SFR přímá data : # <hodnota> operand je přímo zadán, je součástí instrukce 73

Instrukční soubor 8051 - Operandy instrukcí rezervované symboly: <název> A,C,DPTR, registry speciálních funkcí -SFR bajtové adresy: <adresa> adresy vnitřní datové paměti (0-127) a SFR registry (128-255) bitové adresy: <adresa bitu> bitově adresovatelná paměť RAM a vybrané SFR přímá data : # <hodnota> operand je přímo zadán, je součástí instrukce nepřímé adresování: @R0, @R1, @DPTR, @A+PC data (skok) se adresují přes ukazatel 74

Instrukční soubor 8051 - Operandy instrukcí rezervované symboly: <název> A,C,DPTR, registry speciálních funkcí -SFR bajtové adresy: <adresa> adresy vnitřní datové paměti (0-127) a SFR registry (128-255) bitové adresy: <adresa bitu> bitově adresovatelná paměť RAM a vybrané SFR přímá data : # <hodnota> operand je přímo zadán, je součástí instrukce nepřímé adresování: @R0, @R1, @DPTR, @A+PC data (skok) se adresují přes ukazatel relativní adresa: 8 bitů se znaménkem (+127 až -128) 75

Instrukční soubor 8051 - Přesuny dat obecné přesuny dat: MOV obecná instrukce pro přesun (18 variant) 76

Instrukční soubor 8051 - Přesuny dat obecné přesuny dat: MOV obecná instrukce pro přesun (18 variant) speciální přesuny dat: MOVC přesun z programové paměti (CODE) MOVX přesun z/do externí datové paměti (XDATA) 77

Instrukční soubor 8051 - Přesuny dat obecné přesuny dat: MOV obecná instrukce pro přesun (18 variant) speciální přesuny dat: MOVC přesun z programové paměti (CODE) MOVX přesun z/do externí datové paměti (XDATA) práce se zásobníkem: POP vyzvednutí dat ze zásobníku PUSH uložení dat do zásobníku 78

Instrukční soubor 8051 - Aritmetické instrukce sčítání: ADD prosté sečtení ADDC sčítání s přenosem z nižšího řádu INC přičtení jedničky (inkrementace) 79

Instrukční soubor 8051 - Aritmetické instrukce sčítání: ADD prosté sečtení ADDC sčítání s přenosem z nižšího řádu INC přičtení jedničky (inkrementace) odčítání: SUBB odečítání s výpůjčkou DEC odečtení jedničky (dekrementace) 80

Instrukční soubor 8051 - Aritmetické instrukce sčítání: ADD prosté sečtení ADDC sčítání s přenosem z nižšího řádu INC přičtení jedničky (inkrementace) odčítání: SUBB odečítání s výpůjčkou DEC odečtení jedničky (dekrementace) násobení: MUL násobení obsahu střadače obsahem registru B 81

Instrukční soubor 8051 - Aritmetické instrukce sčítání: ADD prosté sečtení ADDC sčítání s přenosem z nižšího řádu INC přičtení jedničky (inkrementace) odčítání: SUBB odečítání s výpůjčkou DEC odečtení jedničky (dekrementace) násobení: MUL násobení obsahu střadače obsahem registru B dělení: DIV dělení obsahu střadače registrem B 82

Instrukční soubor 8051 - Aritmetické instrukce sčítání: ADD prosté sečtení ADDC sčítání s přenosem z nižšího řádu INC přičtení jedničky (inkrementace) odčítání: SUBB odečítání s výpůjčkou DEC odečtení jedničky (dekrementace) násobení: MUL násobení obsahu střadače obsahem registru B dělení: DIV dělení obsahu střadače registrem B dekadická korekce: DA dekadická korekce po sčítání dvou BCD čísel 83

Logické instrukce a instrukce pracující s bity logické operace: AND logický součin ORL logický součet XOR nonekvivalence 84

Logické instrukce a instrukce pracující s bity logické operace: AND logický součin ORL logický součet XOR nonekvivalence bitové operace: SETB nastavení bitu do log. 1 CLR vynulování bitu CPL bitový doplněk RL rotace bitů vlevo RLC rotace bitů vlevo přes C RR rotace bitů vpravo RRC rotace bitů vpravo přes C 85

Instrukční soubor 8051- Předání řízení nepodmíněné skoky: AJMP skok uvnitř 2kB stránky LJMP dlouhý skok ( v rámci 64 kb) JMP obecná inst. skoku (překladač - AJMP nebo LJMP) 86

Instrukční soubor 8051- Předání řízení nepodmíněné skoky: AJMP skok uvnitř 2kB stránky LJMP dlouhý skok ( v rámci 64 kb) JMP obecná inst. skoku (překladač - AJMP nebo LJMP) podmíněné skoky: JB, JNB skok, je/není-li zadaný bit nastaven JBC skok a vynulování bitu, je-li zadaný bit nastaven JC, JNC skok je/není-li nastaven bit přenosu C JZ, JNZ skok je/není-li obsah střadače nulový DJNZ sniž obsah registru o 1;dále JNZ 87

Instrukční soubor 8051- Předání řízení nepodmíněné skoky: AJMP skok uvnitř 2kB stránky LJMP dlouhý skok ( v rámci 64 kb) JMP obecná inst. skoku (překladač - AJMP nebo LJMP) podmíněné skoky: JB, JNB skok, je/není-li zadaný bit nastaven JBC skok a vynulování bitu, je-li zadaný bit nastaven JC, JNC skok je/není-li nastaven bit přenosu C JZ, JNZ skok je/není-li obsah střadače nulový DJNZ sniž obsah registru o 1;dále JNZ volání podprogramu: ACALL volání podprogramu uvnitř 2 kb stránky LCALL dlouhé volání podprogramu CALL obecná inst. volání podprogramu (překladač...) RET návrat z podprogramu 88

Instrukční soubor 8051- Předání řízení nepodmíněné skoky: AJMP skok uvnitř 2kB stránky LJMP dlouhý skok ( v rámci 64 kb) JMP obecná inst. skoku (překladač - AJMP nebo LJMP) podmíněné skoky: JB, JNB skok, je/není-li zadaný bit nastaven JBC skok a vynulování bitu, je-li zadaný bit nastaven JC, JNC skok je/není-li nastaven bit přenosu C JZ, JNZ skok je/není-li obsah střadače nulový DJNZ sniž obsah registru o 1;dále JNZ volání podprogramu: ACALL volání podprogramu uvnitř 2 kb stránky LCALL dlouhé volání podprogramu CALL obecná inst. volání podprogramu (překladač...) RET návrat z podprogramu návrat z přerušení: RETI návrat z přerušení 89

Demonstrační program, blik, hlavní smyčka ; Program pro blikani LED diody na vyvojove desce MIP s 8051. ; Program slouzi pro blikani LED pripojene na nastaveny pin portu P1. ; Strida blikani je 1:1. LED je zapojena proti napajeno. ; perioda blikani nastavena cekaci funkci Cekej, kde pocet ; cekacich cyklu udava konstanta POCET LED equ P1.5 ; LED - buzena proti napajeni POCET equ 35000 ; pocet cyklu cekaci smycky PROG_PAM equ 0A000h ; adresa ulozeni programu dseg at 30h WaitLo: ds 1 ; Pomocne promenne pro cekaci smycku WaitHi: ds 1 ; cseg at PROG_PAM jmp Init ; reset vektor - skok na vlastni zacatek programu cseg at PROG_PAM+100h ; rezervujeme prostor prvnich 256 bajtu na prerus. Init: mov SP,#70h pro stack vyuzij hornich 15 byte pameti Start: clr LED ; rozsvit LED call Cekej setb LED ; zhasni LED call Cekej jmp Start ; opakuj v nekonecne smycce 90

Demonstrační program, blik, podprog. čekání ;**************************************************************************************************** ;* Procedura cekani - konstantni doba dana konstantou POCET ;* zadne vstupni a vystupni parametry ;**************************************************************************************************** Cekej: mov mov Znovu: nop djnz djnz ret WaitHi,#HIGH(POCET)+1; inicializace prodlevy WaitLo,#LOW(POCET)+1 WaitLo,Znovu WaitHi,Znovu end 91

Jak postupovat Nainstalovat IDE Ověřit funkčnost na testovacím programu Seznámit se s architekturou 8051 lit. www.measure.feld.cvut.cz stránky předmětu X38MIP program blikání LED, čtení tlačítka, modifikace blikání podle tlačítka možno plně ověřit pomocí simulátoru simulace výstupu indikace stavu P1.x (P1.7 až P1.4) simulace vstupu zaškrtnutím stavu vstupu na P1.x (P1.3 až P1.0) AT88C51RC2 příprav a programu, sestavit mikropočítač na nepájivém kontaktním poli překlad, napálení do vnitřní paměti Flash. program blikání LED podle vstupu tlačítko. 92

Kit 51- omezení Paměť EPROM - program Monitor Mon51 od adr. 0000 do 1FFFFh Paměť SRAM od 0A000h 0BFFFh, adr. BF00h až BFFFFh rezervováno pro monitor Sloučení paměťových prostorů XDATA a CODE obvodová úprava Vývojová deska na cvičeních Kit- 51 (díky ochranným obvodůmpřipojené budiče 74HC245) polovina brány P1 (P1.3 až P1.0) jako vstup, polovina brány P1 (P1.7 až P1.4) jako výstup 93

Literatura K procesorům řady 8051 existuje velké množství literatury Dobrá česká kniha je: Skalický, P.: Mikroprocesory řady 8051, vydavatelství BEN Materiály s popisem procesoru jsou na www stránkách tohoto předmětu, případně na odkazech. http://measure.feld.cvut.cz/cs/vyuka/predmety/x38mip/dopmat Firemní zdroje: WWW.ATMEL.COM WWW.NXP.COM WWW.SILABS.COM 94

Literatura Další zdroje: www.8052.com, kde jako příklad úpravy programu může sloužit: http://www.8052.com/codelib/ http://www.8052.com/codelib/files/sbcmon13.asm http://en.wikipedia.org/wiki/intel_mcs-51 http://www.mikroe.com/eng/products/view/267/architecture-and-programming-of-8051-mcu-s/ Vyhledávání na Internetu podle hesel: 8051 microcontroller - nebo- 8052 microcontroller + další klíčová slova např. tutorial, 95

AT89C51RC2 na kont. poli v A3B38MMP. 96

Kompaktní řešení obvodů s up na kont. poli AT89C51 + ext. paměť + RS232 97

Jednoduchá aplikace mikrořadiče na kont. poli. 98

Regulace ventilátoru pomocí AT89C51RC2. 99

Příklad realizace obvodu na kont. poli- osciloskop. 100

Složitější sestava na kont.poli. 101

Příklad realizace obvodu na kont. poli- osciloskop. 102