|
|
Řádek 129: |
Řádek 129: |
| | style="background: #f0faE0; font-size: 85%; width: 30%; vertical-align: top;" | | | | style="background: #f0faE0; font-size: 85%; width: 30%; vertical-align: top;" | |
| ''' Základní pojmy mikroprocesorové techniky ''' 6 | | ''' Základní pojmy mikroprocesorové techniky ''' 6 |
| # [[Mikroprocesor, mikropočítač]]
| | T1 Úvod do předmětu |
| # [[Blokové schéma mikropočítače, části mikropočítače]]
| | T2 [[Mikroprocesor, mikropočítač]] |
| # [[Sběrnice, přerušení, přenos DMA]]
| | T3 [[Blokové schéma mikropočítače, části mikropočítače]] |
| # [[Instrukční cyklus]]
| | T4 [[Sběrnice, přerušení, přenos DMA]] |
| | T5 [[Instrukční cyklus]] |
| | T6 Opakování |
|
| |
|
|
| |
|
| ''' Úvod do problematiky jednočipových mikropočítačů ''' 16 | | ''' Úvod do problematiky jednočipových mikropočítačů ''' 16 |
| # [[Mikroprocesor a jeho blokové schéma]]
| | T7 [[Mikroprocesor a jeho blokové schéma]] |
| # [[Čítač instrukcí, dekodér instrukcí, řadič]]
| | T8 [[Čítač instrukcí, dekodér instrukcí, řadič]] |
| # [[ALU, příznaky]]
| | T9 [[ALU, příznaky]] |
| # [[Časování CPU, zřetězení instrukcí]]
| | T10 [[Časování CPU, zřetězení instrukcí]] |
| # [[Reset mikropočítače]]
| | T11 [[Reset mikropočítače]] |
| # [[Paměť mikropočítače, paměť programu, dat, datová paměť EEPROM|Paměť mikropočítače, paměť programu]]
| | T12 [[Paměť mikropočítače, paměť programu, dat, datová paměť EEPROM|Paměť mikropočítače, paměť programu]] |
| # [[Paměť mikropočítače, paměť programu, dat, datová paměť EEPROM|Paměť dat, datová paměť EEPROM]]
| | T13 [[Paměť mikropočítače, paměť programu, dat, datová paměť EEPROM|Paměť dat, datová paměť EEPROM]] |
| # [[Stránkování paměti]]
| | T14 [[Stránkování paměti]] |
| # [[Obvody vstupu a výstupu]]
| | T15 [[Obvody vstupu a výstupu]] |
| # [[Charakteristika, kvaziobousměrný V/V obvod]]
| | T16 [[Charakteristika, kvaziobousměrný V/V obvod]] |
| # [[V/V obvod s přepínáním směru přenosu]]
| | T17 [[V/V obvod s přepínáním směru přenosu]] |
| # [[Hlídací časovač WATCHDOG]]
| | T18 [[Hlídací časovač WATCHDOG]] |
| # [[Další obvody umístěné na čipu mikropočítače]]
| | T19 [[Další obvody umístěné na čipu mikropočítače]] |
| | T20 Opakování |
| | T21 Opakování |
| | T22 Test |
|
| |
|
|
| |
|
| ''' Jednočipové mikropočítače vybrané řady ''' 14 | | ''' Jednočipové mikropočítače vybrané řady ''' 14 |
| # [[Základní vlastnosti, popis vývodů]]
| | T23 [[Základní vlastnosti, popis vývodů]] |
| # [[Bloková struktura]]
| | T24 [[Bloková struktura]] |
| # [[Časování mikroprocesoru]]
| | T25 [[Časování mikroprocesoru]] |
| # [[Organizace paměti ROM]]
| | T26 [[Organizace paměti ROM]] |
| # [[Organizace paměti RWM]]
| | T27 [[Organizace paměti RWM]] |
| # [[SFR]]
| | T28 [[SFR]] |
| # [[Připojení vnější paměti]]
| | T29 [[Připojení vnější paměti]] |
| # [[Paralelní vstupní a výstupní obvody]]
| | T30 [[Paralelní vstupní a výstupní obvody]] |
| # [[Př. připojení - 7segment]]
| | T31 [[Př. připojení - 7segment]] |
| # [[Př. připojení - MPX zobraz. jednotka]]
| | T32 [[Př. připojení - MPX zobraz. jednotka]] |
| # [[Př. připojení - seriová zobraz. jednotka]]
| | T33 [[Př. připojení - seriová zobraz. jednotka]] |
| # [[Př. připojení - motory]]
| | T34 [[Př. připojení - motory]] |
| | T35 Opakování |
| | T36 Test |
|
| |
|
| ''' Periferní obvody integrované na čipu mikropočítače ''' 22 | | ''' Periferní obvody integrované na čipu mikropočítače ''' 22 |
Mikroprocesorová technika v 3. ročníku
|
|
Domácí úkoly z teorie:
|
- Stáhněte si učební text na MIT j:\MIT3r\_Učební texty\Teorie\3.2_Řada_8051.pdf a nastudujte str. 13. a 14. Potvrďte splnění úkolu tím, že mi pošlete PrtScr z uvedených stran.
- Do sešitu (pokud možno zpaměti) nakreslete schéma připojení 4místného displeje v multiplexním režimu (ze studia z pondělí). Dále ze stejného učebního textu nakreslete i schéma připojení displeje se seriovým přenosem dat. Odevzdejte obrázek sešitu (obě schéma na jedné stránce) zde formou odpovědi t.j NE jako přílohu.
- Přihlašte se do kurzu http://moo.sps-pi.cz/course/view.php?id=76 user/psw jako ve škole. Klíč do kurzu: xxx V dostupném textu Učební text: T3 - Jednočipové mikropočítače řady 8051 si projděte otázky a úkoly (str. 16, je to stejný učební text jako minulý týden) a připravte se na čtvrteční opakovací test.
- V kurzu http://moo.sps-pi.cz/mod/resource/view.php?id=2461 nastudujte část věnovanou čítači/časovači (str. 1-4), do sešitu zapište poznámky a hlavně obr. z přílohy.
- Nastudujte kap. 3.2. seriový kanál (http://moo.sps-pi.cz/mod/resource/view.php?id=2461), proveďte si zápis poznámek do sešitu a odevzdejte foto sešitu do odpovědi.
- Pokuste se najít na netu info o integrovaném obvodu MCP23017. Poznámky si zapište do sešitu (schéma aplikačního zapojení) a do odpovědi na tento úkol uveďte www, z kterých jste čerpali.
- Nastudujte kap. 3.3. Přerušovací systém (http://moo.sps-pi.cz/mod/resource/view.php?id=2461), proveďte si zápis poznámek v rozumném rozsahu (hlavně obr. z přílohy) do sešitu a odevzdejte foto sešitu do odpovědi.
- Nastudujte kap. 3.4. Programovatelné čítačové pole od str.13, záchytný systém od str.15 a komparační systém od str. 16 (http://moo.sps-pi.cz/mod/resource/view.php?id=2461). Proveďte si zápis poznámek všeho co je zde v příloze do sešitu a odevzdejte foto sešitu do odpovědi. Úkol i na čtvrtek.
- Nastudujte kap. 3.4. Pulsně šířková modulace od str.18 (http://moo.sps-pi.cz/mod/resource/view.php?id=2461). Proveďte si zápis poznámek (hlavně to co je zde v příloze) do sešitu a odevzdejte foto sešitu do odpovědi. Úkol i na čtvrtek.
- Podívejte se na výsledky letošního školního a krajského kola SOČ SOČ 2020 Do odpovědi na tento úkol zkopírujte link na video prezentaci SOČ práce, která vás nejvíce zaujala. Pozn.: Soutěží se v 18ti vědních oborech. Letos museli soutěžící natočit video o své práci a umístit na YT. (vyhledávací slova: Středoškolská odborná činnost a číslo oboru (10, 18 ....)) . Např. pro obor Elektrotechnika: Středoškolská odborná činnost 10 (https://bit.ly/2yaQ9m7) nebo pro obor Informatika: Středoškolská odborná činnost 18 (https://bit.ly/2Sj8wME)
- Připravte se na test z programování. Vypište si do sešitu z druhé strany pod sebe příklady (ideálně tak 30) na použití instrukcí v JSA (vždy na samostatný řádek instrukci + komentář) např.: mov A,#25 ; zápis čísla 25d do Akumulátoru atd. Odevzdejte buď foto sešitu a nebo txt z MCU 8051 IDE.
- V návaznosti na již získané podvědomí o MCU ATmega328, které se nachází ve vývojové desce Arduino, shlédněte nějaké úvodní video (vybrat lze odsud: Tutorials
- Postupně v aplikaci TinkerCad vyzkoušejte úkoly tak, aby jste mohli sestavit a naprogramovat mikroprocesorovou aplikaci s Arduinem postupně ovládající LED, RGB, 7segmentovku spolu s tlačítkem, potenciometrem apod.(PIR, LDR, čidle teploty, PING, servo, krokový motor.....) Odevzdejte PrtScr každého nového experimentu. Pro úplné začátky Blink-an-LED-With-Arduino-in-Tinkercad
- V Tincercadu vyzkoušejte připojit RGB LED. PrtScr celé obrazovky, kde bude vidět zapojení a odzkoušený program odevzdejte v odpovědi. V komentáři na začátku programu napište kolik barevných odstínů (kombinací) je program schopen vygenerovat.
Pozn.: Jak odevzdávat domácí úkoly
|
Domácí úkoly z cvičení:
|
- Nastudujte komplet pracovní list j:\MIT3r\_Učební texty\Cvičení\Úkoly\1_Základy_programování\Prac_list_05 - delay DJNZ - časovač.pdf vyzkoušejte v MCU8051IDE, elektronicky pošlete PrtScr z IDE o výsledcích Vaší práce.
- Dle pracovního listu Prac_list_05 - delay DJNZ - časovač.pdf vyzkoušejte nastavit časovač tak, aby doba běhu do přetečení (TF0) byla 50 ms. Tuto dobu aplikujte na blikání LED a vypište do komentáře výslednou frekvenci blikání LED při takovémto nastavení. Odevzdejte kód programu jako odpověď na tento úkol.
- Otestujte program pro počítání stisku tlačítka připojeného na T0 (P3.4). Odevzdejte PrtScr.
- Napište program zobrazovaní čísel 0 až 9 na 7segmentovce. Frekvenci změn nastavte na 25 ms (lze popřemýšlet nad řešením prodloužení času na 1s). Odevzdejte PrtScr.
- Zjistěte z programu (příloha č.1) jak dlouho bude LED blikat s frekvencí 125kHz.
MOV TMOD,#00000001B
MOV TL0,#LOW 55536
MOV TH0,#HIGH 55536
skok: setb tr0
cpl p0.0
jnb tf0,skok
nop
end
- Upravte program (příloha č.2) tak aby výsledná doba periody byla v poměru 1:1 (stejnou dobu LED na P1.7 svítí, stejnou dobu je zhasnutá).
mov TMOD,#00000001b
mov A,#00000001b
loop: RR A
mov P1,A
acall delay ;10 ms
sjmp loop
delay: setb TR0
mov TL0,#LOW 55546
mov TH0,#HIGH 55546
jnb TF0,$
clr TF0
ret
end
- Prodlužte dobu periody na 1 sec (t.j 0.5 sekundy svítí, 0.5 sekundy zhasnutá). Opět odevzdejte všechny 3 řešení.
- Modifikujte program ze cvičení tak, aby dokázal postupně číst data z tabulky pomocí nepřímého adresování a postupně je zobrazoval na displeji.
mov DPTR,#tab ;do DPTR začátek tabulky
loop: mov A,#1
movc A,@A+DPTR
mov P0,A
sjmp loop
tab: db 11000000b ;0 uloženo v ROM
db 11111001b ;1
db 10100100b ;2
end
- Napište program, který bude měnit postupně čísla 1 až 6 zobrazované na 7segmentovém displeji na základě stisku tlačítka. Program do odpovědi.
- Napište a otestujte program pro odpočítávání čísel od 9 do 0.
- parametry:
- Změna po 1 sec. (využít C/T)
- Čítač spustit tlačítkem.
- Při 0 se rozsvítí LED (dP = tečka na 7segmentovce)
- Při 0 zazní signál (repro s 1kHz)
- Signál z reproduktorku jen po určitou dobu (4s)
- V Tinkercadu vyzkoušejte připojit 7segmentovku. PrtScr celé obrazovky, kde bude vidět zapojení a odzkoušený program, odevzdejte v odpovědi.
|
Maturita
|
Programování mikrořadiče 8051 v asembleru - komunikace mikrořadiče s jednoduchými perifériemi (LED, spínače, sedmisegmentovka) s využitím čítačů/časovačů a přerušovacího systému
- doporučeno si k maturitě přinést tabulku s instrukční sadou
- Předpokládaná dovednosti (dle zadání):
- navrhnout blokové schéma MIT aplikace
- nakreslit minimální el. schéma s MCU
- nakreslit schéma s navrženými perifériemi (LED, 7segmentovka, motory, tlačítko...)
- navrhnout vývojový diagram
- odladit program ve vhodném IDE
- MCU naprogramovat (asistence s vyučujícím)
- Zpracovat dokumentaci
- zopakovat si programy ze cvičení řešící:
- přesuny dat pomocí přímého adresování
- přesuny dat pomocí nepřímého adresování
- čtení a zápis na port (tlačítko, LED)
- řízení 7segmentovky
- podmíněné a nepodmíněné skoky
- časové smyčky s použitím registrů R0, R1....
- časové smyčky s použitím čítače/časovače
- přesun dat z RAM na PORT
- přesun dat z ROM na PORT
nejpoužívanější instrukce: MOV, SETB, CLR, CJNE, SJMP, INC, DEC, JB, DJNZ, ACALL, RET
|
MIT 3. ročník
3. ročník, 1 + 2 h týdně (celkově 36 + 72 = 108 h), povinný
novinka: postavte si DIY FM Radio Kit Electronic Learning Assemble
Plán:
Základní pojmy mikroprocesorové techniky 6
T1 Úvod do předmětu
T2 Mikroprocesor, mikropočítač
T3 Blokové schéma mikropočítače, části mikropočítače
T4 Sběrnice, přerušení, přenos DMA
T5 Instrukční cyklus
T6 Opakování
Úvod do problematiky jednočipových mikropočítačů 16
T7 Mikroprocesor a jeho blokové schéma
T8 Čítač instrukcí, dekodér instrukcí, řadič
T9 ALU, příznaky
T10 Časování CPU, zřetězení instrukcí
T11 Reset mikropočítače
T12 Paměť mikropočítače, paměť programu
T13 Paměť dat, datová paměť EEPROM
T14 Stránkování paměti
T15 Obvody vstupu a výstupu
T16 Charakteristika, kvaziobousměrný V/V obvod
T17 V/V obvod s přepínáním směru přenosu
T18 Hlídací časovač WATCHDOG
T19 Další obvody umístěné na čipu mikropočítače
T20 Opakování
T21 Opakování
T22 Test
Jednočipové mikropočítače vybrané řady 14
T23 Základní vlastnosti, popis vývodů
T24 Bloková struktura
T25 Časování mikroprocesoru
T26 Organizace paměti ROM
T27 Organizace paměti RWM
T28 SFR
T29 Připojení vnější paměti
T30 Paralelní vstupní a výstupní obvody
T31 Př. připojení - 7segment
T32 Př. připojení - MPX zobraz. jednotka
T33 Př. připojení - seriová zobraz. jednotka
T34 Př. připojení - motory
T35 Opakování
T36 Test
Periferní obvody integrované na čipu mikropočítače 22
Další vlastnosti mikropočítače 8
- 1 Reset mikropočítače, watchdog
- 4 Úsporné režimy
- 5 Konfigurace mikropočítače
- 6 Aplikační pravidla
- 7 Pprogramování paměti FLASH
|
Přehled dalších typů jednočipových mikropočítačů 2
Cvičení:
T1 - Program mikroprocesoru, instrukce
T2 - Jazyk symbolických adres – assembler
Základy programování v asembleru a v jazyce C
T3 - Seznámení s IVP, zapsání a odladění jednoduchého programu
T4 - Programy na přesuny dat
T5 - Aritmetické operace, porovnání
T6 - Větvení programu, programové cykly
T7 - Přesuny bloků dat
T8 - Připojení jednoduchých periférií (tlačítka, LED, sedmisegmentovka)
T9 - Zápis na port, gener. zpoždění program. smyčkou, obsluha LED (běžící světlo)
T10 - Generování zpoždění časovačem, obsluha LED (různé efekty)
T11 - Čtení z portu, využití logických a bitových operací k úpravě přečtených informací
T12 - Čtení z portu, ošetření zákmitů tlačítek, počítání a zobrazení počtu stisků
T13 - Programová obsluha sedmisegmentovky
T14 - Obsluha přerušení od čítače a vnějšího přerušení
T15 - T17 Práce na projektu, Tvorba a ladění programu, oživení aplikace
Bonus:
Obsluha periférií, využití dalších obvodů na čipu
|
Pracovní listy pro cvičení:
T1 Zobrazení čísel v počítači, aritmetické operace
Test T1
T2 Program mikroprocesoru Instrukce
Test T2
T3 Jazyk symbolických adres (asembler)
Test T3
Otevřené otázky T3
Základy_programování:
T4 Přesuny dat, přímé a nepřímé adresování SI
T5 Aritmetické operace, porovnání SI
T6 Programové cykly, komunikace s vnější pamětí dat, čtení z tabulky SI
T7 Programové cykly, testování obsahu paměťových míst SI
T8 Práce s porty, ovládání LED diod, zpožďovací podprogramy, časovač SI
T9 Práce s porty, zobrazování znaků na sedmisegmentovce SI
Obsluha_periférií - asm:
T10 Obsluha třímístného displeje SI
T11 Obsluha klávesnice 3x4 SI
T12 Obsluha maticového displeje SI
T13 Řízení krokového motoru SI
T14 Obsluha displejem se sériovým přenosem dat SI
T15 Obsluha dvouřádkového LCD displeje SI
T16 Sériová komunikace SI
|
- Jazyk C pro mikrokontroléry 8051.
- Základní operace RIDE-51 (JA)
- Jednotlivé moduly programu (JA)
- Komunikace mikrokontroléru s prostředím (JA)
Obsluha periférií - C:
- Modul LED, Modul dvoumístného displeje (CSI)
- Modul čtyřmístného displeje (MPX) (CSI)
- Modul LCD displeje (CSI)
- Obsluha tlačítka, Obsluha klávesnice (CSI)
- Modul posuvného registru, Sériová komunikace, PWM (CSI)
- Využití analogových vstupů (CSI)
- Ovládání motorů (CSI)
- I2C komunikace (CSI)
- SPI periferie (CSI)
|
Abdul Rehman 2050
Ekeeda
Education 4u Bhanu priya
Delay - DJNZ
LED Flashing using Timer
8051 Interrupts
8051 Stepper motor
Classroom: 8051 Microcontroller
Pineapple ONE
Build an 8-bit computer from scratch
https://www.tiobe.com/tiobe-index/
Otázky k opakování HW
|
- Minimální schéma zapojení s MCU
- Blokové schéma vývojové sestavy
- Blokové schéma CPU
- Blokové schéma MCU - základní
- Blokové schéma MCU - rozšířené
- Čítač instrukcí
- Registr instrukcí, dekodér instrukcí
- PSW
- ALU, příznaky
- 8 bit. sčítačka
- Logické operace v ALU
- Reset mikropočítače
- Paměť mikropočítače - druhy
- Připojení vnější paměti
- Obvody vstupu a výstupu - kvaziobousměrný V/V obvod
- Obvody vstupu a výstupu - obvod s přepínáním směru přenosu
- Organizace paměti dat včetně SFR
- SFR
- Časování mikroprocesoru
- Př. připojení - 7segmentovka
- Př. připojení - 7segmentovky 2ks
- Př. připojení - MPX zobraz. jednotka
- Př. připojení - seriová zobraz. jednotka
- Př. připojení - motory - stejnosměrný motor
- Př. připojení - motory - krokový motor
- Př. připojení - motory - servo motoru
- Čítače / časovače
- Sériové vstupní a výstupní obvody UART
- Přerušovací systém
- Programovatelné čítačové pole PCA
- Záchytné jednotky
- Komparační jednotky
- Obvody PWM
- AD převodník
- Sériové vstupní a výstupní obvody IIC
- Sériové vstupní a výstupní obvody SPI
- Hlídací časovač WATCHDOG
- Logo!
- Arduino
- Raspberry Pi
- Node-RED
- Mikroprocesor, mikropočítač
- Blokové schéma mikropočítače, části mikropočítače
- Sběrnice, přerušení, přenos DMA
- Instrukční cyklus
- Mikroprocesor a jeho blokové schéma
- Čítač instrukcí, dekodér instrukcí, řadič
- Časování CPU, zřetězení instrukcí
- Reset mikropočítače
- Paměť mikropočítače, paměť programu
- Paměť dat, datová paměť EEPROM
- Stránkování paměti
- Obvody vstupu a výstupu
- Charakteristika, kvaziobousměrný V/V obvod
- V/V obvod s přepínáním směru přenosu
- Další obvody umístěné na čipu mikropočítače
- Základní vlastnosti, popis vývodů
- Bloková struktura
- Organizace paměti ROM
- Organizace paměti RWM
- Paralelní vstupní a výstupní obvody
|
Otázky k opakování SW
|
0. Seznam instrukcí (20/50)
- Přesuny dat pomocí přímého adresování
- Přesuny dat pomocí nepřímého adresování
- Zápis na port (LED, 7segment)
- Čtení z portu (tlačítko, klávesnice)
- Řízení 7segmentovky
- Podmíněné skoky bytové
- Podmíněné skoky bitové
- Časové smyčky s použitím registrů R0, R1....
- Časové smyčky s použitím čítače/časovače
- Počítání počtu vst. impulsů na P3.4 (T0)
- Přesun dat z RAM na PORT
- Přesun dat z ROM na PORT
- Logické operace
- Operace rotace
- Volání podprogramu
- Test 2xTL a řízení LED dle funkce AND
- Test 2xTL a řízení LED dle funkce OR
- Test 2xTL a řízení LED dle funkce XOR
- Vývoj. diagram pro test 3xTL a řízení LED dle funkce LED = 1 pro i = {1,4}
- Využití přerušení INT0
- Využití přerušení TF0
nejpoužívanější instrukce: MOV, SETB, CLR, CJNE, SJMP, INC, DEC, JB, DJNZ, ACALL, RET
|