Přednáška 1,2. A4B38NVS Návrh vestavěných systémů,2012, J. Fischer, katedra měření, ČVUT - FEL, Praha

Podobné dokumenty
Přednáška 2 A4B38NVS - Návrh vestavěných systémů 2014, kat. měření, ČVUT - FEL, Praha J. Fischer A4B38NVS, 2014, J.Fischer, kat. měření, ČVUT - FEL 1

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

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

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

Přednáška 1 A4B38NVS - Návrh vestavěných systémů 2013, kat. měření, ČVUT - FEL, Praha J. Fischer A4B38NVS, 2013, J.Fischer, kat. měření, ČVUT - FEL 1

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

Aplikace vestavných systémů

Procesory s jádrem ARM

Přednáška 1 A4B38NVS - Návrh vestavěných systémů. 2015, kat. měření, ČVUT - FEL, Praha J. Fischer

Čítače Přednáška 10 (11)

Přednáška 1 A4B38NVS - Návrh vestavěných systémů 2015, kat. měření, ČVUT - FEL, Praha. J. Fischer. Grafický podkladový materiál k přednášce A4B38NVS

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

Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška 11 (12) A4B38NVS, kat. měření, ČVUT - FEL, Praha. J. Fischer

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

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

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

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

Procesor z pohledu programátora

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

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

ETC Embedded Technology Club setkání

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

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

Přednáška UART, RS232, 422, 485

RISC a CISC architektura

Kontrolní otázky a okruhy k testu v semestru A4B38NVS (verze r. 2012) Procesory s jádrem ARM Cortex - M3, (V dalším textu dotazy směřují na jádro ARM

Procesory pro vestavné aplikace přehled

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

Úloha Ohmetr zadání úlohy

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

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

A3B38MMP Mikroprocesory v přístrojové technice

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

Princip funkce počítače

Pohled do nitra mikroprocesoru Josef Horálek

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

ETC Embedded Technology Club setkání

Pedstavení procesor s architekturou ARM

Přednáška vložená 5. týden, výklad k úloze LCD, UART A4B38NVS - Návrh vestavěných systémů 2014, katedra měření, ČVUT - FEL, Praha. J.

Maturitní témata - PRT 4M

Microchip. PICmicro Microcontrollers

Přednáška 8,9 Generátory hodinového signálu a dohlížecí obvody. ve vest. systémech 2013, kat. měření, ČVUT - FEL, Praha. J.

PROCESOR. Typy procesorů

Architektura procesoru ARM

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


Úvod do mobilní robotiky NAIL028

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

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

Faculty of Nuclear Sciences and Physical Engineering Czech Technical University in Prague

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

Úloha č. 4. Připojení 7-segmentového zobrazovače LED s posuvným registrem, připojení tlačítek

Metody připojování periferií BI-MPP Přednáška 2

Projekt - Voltmetr. Přednáška 3 - část A3B38MMP, 2015 J. Fischer kat. měření, ČVUT - FEL, Praha. A3B38MMP, 2015, J.Fischer, kat. měření, ČVUT - FEL 1

Okruhy a kontrolní otázky k testu v semestru A4B38NVS (verze r. 2015) Procesory s jádrem ARM Cortex - M3, (V dalším textu dotazy směřují na jádro ARM

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

Napájení mikroprocesorů. ČVUT- FEL, katedra měření, přednášející Jan Fischer. studenty zapsané v předmětu: A4B38NVS

Úvod do mobilní robotiky AIL028

HelenOS ARM port. Pavel Jančík Michal Kebrt Petr Štěpán

Jízda po čáře pro reklamní robot

Mikrořadiče společnosti Atmel

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

požadovan adované velikosti a vlastností Interpretace adresy POT POT

Náplň přednášky 1. Vestavěný systém Výrobci technických řešení Mikrokontroléry ARM NXP Kinetis KL25Z Rapid prototyping Laboratorní vývojová platforma

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

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

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

Metody připojování periferií

VINCULUM VNC1L-A. Semestrální práce z 31SCS Josef Kubiš

Assembler RISC RISC MIPS. T.Mainzer, kiv.zcu.cz

TEMPO průmyslový panelový počítač

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

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

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

FREESCALE KOMUNIKAČNÍ PROCESORY

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

Základy informatiky. 2. Přednáška HW. Lenka Carr Motyčková. February 22, 2011 Základy informatiky 2

Paměti Flash. Paměti Flash. Základní charakteristiky

Přednáška 7, 8 Generátory hodinového signálu a dohlížecí obvody ve vest. systémech

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

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

PK Design. MB-ATmega16/32 v2.0. Uživatelský manuál. Základová deska modulárního vývojového systému MVS. Verze dokumentu 1.0 (21.12.

Popis instrukční sady - procesory PIC Aritmetické a logické operace

FVZ K13138-TACR-V004-G-TRIGGER_BOX

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

Mikrořadiče fy ATMEL

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

Výkonnostní srovnání DSP Jak optimalizovat výběr procesoru. Analog Devices, Texas Instruments Freescale

Procesory, mikroprocesory, procesory na FPGA O. Novák, CIE 11 1

Procesor. Základní prvky procesoru Instrukční sada Metody zvýšení výkonu procesoru

Základy digitální techniky

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

ŘÍDÍCÍ DESKA SYSTÉMU ZAT-DV

Témata profilové maturitní zkoušky

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

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

PROTOKOL O LABORATORNÍM CVIČENÍ

Mikroprocesory pro vest. aplikace, Sběrnice, vstupy, výstupy Přednáška , kat. měření, ČVUT - FEL, Praha J. Fischer

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

Transkript:

Přednáška 1,2 A4B38NVS Návrh vestavěných systémů,2012, J. Fischer, katedra měření, ČVUT - FEL, Praha A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 1

Informace Toto je grafický a heslovitý podkladový materiál určený pouze k přednášce A4B38NVS. Neobsahuje vlastní výklad, ani další informace, které jsou prezentovány při výkladu křídou na tabuli, jeho čtení nenahrazuje účast na přednášce. A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 2

Náplň předmětu A4B38NVS - přednášky HW návrh vestavěných systémů, komponenty a jejich využití, procesor jako součástka Logické obvody a jejich vlastnosti z hlediska spolupráce s mikrořad. (odběr, typovéřady, rychlost z hlediska spolupráce s mikroprocesorem, spolupráce rychlých logických obvodů, vedení, odrazy, zemnění, rozvody napájení, blokování). Bloky komunikace s obsluhou (tlačítka, klávesnice, LED a LCD zobrazovače Mikrořadiče (Microcontroller) pro vestavěné systémy Obvody a periferie na čipu mikrořadičů (vstupy, výstupy, rozhraní SPI, I 2 C, I 2 S, USART převodníky A/D, převodníky D/A), Vnější periferie a jejich připojování (připojení vnějších řadičů Ethernet,..) Vnější paměťové obvody a jejich připojování k mikroprocesoru Dohlížecí obvody a monitorovací obvody pro zajištění spolehlivé funkce vestavěného systému. Napájení síťové napájení, bateriové napájení vestavěných systémů, stabilizace napájení A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 3

Náplň předmětu A4B38NVS - cvičení (práce samostatně -1 student) Seznámení s IDE Keil pro ARM, pro STM32F100 Konfigurace výstupních bran STM32F100, ovládání výstupů a LED, Generování impulsního signálu, čtení tlačítka Časovací jednotka (schodišťový automat) Ovládací jednotka se 7- seg. LED, ovládání posuvného registru 74HCT595, (1. hodnocená úloha) + zpráva Sériová komunikace, využití UART, komunikace s RS232, zobrazení dat na LCD a PC (terminál) (2. hodnocená úloha) + zpráva Samostatný projekt: Návrh systému pro sběr dat a monitorování 3._hodnocená úloha, studie k projektu, návrh a realizace, závěrečná zpráva), (práce 1 stud., příp. skupina 2 st.) Logické obvody CMOS- stat. parametry a jejich určení (skup. 2 stud.) Logické obvody CMOS dyn. parametry a jejich určení, buzení obvodu procesorem STM32, generování signálu o dané frekvenci (skup. 2 st.) Test v semestru 9. týden společný termín - na přednášce (v míst. 340) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 4

STM32VLDiscovery kit používaný na cvičení STM32F100RB microcontroller, 32-bit ARM Cortex-M3 core 128 KB Flash, 8 KB RAM 64-pin LQFP STlink ( v1) STM32F103 pouzdro 48 pinů, horní - ladicí procesor STM32F100 pouzdro 64 pinů, dolní aplikační ( uživatelský) procesor A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 5

STM32F0Discovery kit STM32F051R8T6 microcontroller 32-bit ARM Cortex-M0 core 64 KB Flash, 8 KB RAM STlink / V2 + prototypová deska A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 6

STM32LDiscovery kit STM32L152RBT6 microcontroller ARM CORTEX - M3 core pouzdro LQFP64 128 KB Flash, 16 KB RAM, 4 KB EEPROM LCD malé segmenty kapacitní klávesnice STlink / V2 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 7

STM32F3Discovery kit STM32F303VCT6 microcontroller 32-bit ARM Cortex-M4F core (podpora floating. poit. arit.) 256 KB Flash, 48 KB RAM LQFP100 package STlink / V2 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 8

STM32F4Discovery kit STM32F407VGT6 microcontroller 32-bit ARM Cortex-M4F core, (podpora floating. poit. arit.) 1 MB Flash, 192 KB RAM LQFP100 package STlink / V2 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 9

Cvičení poznámky Možno osadit zapájet minimodul s STM32 a využít jej v projektu Ladění boot loader, nebo pomocí SWD z kitu STM32VL Discovery Zapůjčení modulů STM32VLDiscovery, příp. i kont. pole na celý semestr Potřebné vybavení napájení + 5V ( např. z USB), příp. multimetr Minimum potřebného vybavení PC s USB a nainstalovaným SW Keil, mini USB kabel, Vhodný doplněk - převodník USB na RS232 (dostupné např. v NC computers za 160-220 Kč, www.nc.cz, využitelné i pro práci s jinými mikroprocesory pro vestavěné systémy pro funkci Boot Loader) kit STM32VL Discovery- obsahuje ladicí nástroj STlink kity: STM32F0Discovery, STM3Discovery, STM32F4Discovery, STM32LDiscovery obsahuje ladicí nástroj STlink/V2 (novější) Možnost využití pro ext. ladění A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 10

Hodnocení Účast na cvičeních povinná 1. + 2. hodnocená úloha (5 +5 b)., studie + samostatný projekt (5 +10), zprávy, nutno řešit i nebodované úlohy + zpráva samostatná práce studentů, uvedení případ. informačních zdrojů), plagiátorství ne!!! Domácí příprava studium zadání, příprava programů, vývojový diagram, schéma V laboratoři odladění úlohy, využití přístrojového vybavení A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 11

ARM - historie ARM - RISC procesory původ firma Acorn, výroba stolních počítačů později vývoj vlastního procesoru ARM1 v r. 1985, ARM1-25 000 tranzistorů, 3 um technologie 4 MHz hod. sig. ARM2 ARM 3 Založena nová firma - Advaced RISC Machines Ltd. (majet. účast Apple a Acorn) změna názvu architektury z Acorn RISC Machine na Advaced RISC Machine ARM 6, procesor ARM610 pro PDA (Personal Digital Assistent) firmy Apple ARM7 v r. 1993, používán v PDA PSION firmy Acorn ARM7 TDMI doplnění ladicí rozhraní (D,I debug. interface) rozšířené možnosti násobičky (M) Thumb instrukční sada (T) - navíc 16- bitové instrukce ARM7 TDMI nejlépe prodávaný procesor ( jádro) u ARM ARM orientace na přenosná zařízení, mobilní telefony, rozvoj A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 12

ARM - historie ARM7 TDMI - architektura ARM v 4T ( pozor, trochu se plete) ARM7TDMI používán i ve formě microcontroller jednočipový mikropočítač firma Philips (nyní navazující NXP) LPC 2105 procesor ARM7TDI, Flash, RAM, periferie, řadič přerušení další firmy využívající ARM7TDMI: ATMEL, STMicroelectronics, Texas Instruments, Analog Devices,,. chybí dobrá podpora a spolupráce - řadič přerušení - jádro Firma ARM úprava architektury pro potřeby embedded microcontrollerů Architektura ARM V7M Cortex, doplněn NVIC Nested Vectored Interrupt Controller ARM - Cortex M3 - architektura ARM v7m, náš procesor na cvičeních Architektura ARM v4t ovlivnila ARM v7m,, (občas bude na ni odkaz při vysvětlování instrukcí) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 13

ARM ARM - RISC procesory (pojem RISC) ARM7TDMI 32- bitový procesor, data 32 bitová, (tedy registry 32 bitů) adresa 32 bitů, adresní prostor 2 32 = 4 GByte ARM instrukční kód konstantní délky 32 bitů v těchto 32 bitech uložen: kód vlastní instrukce, případně - registr, přímá data, adresa? jak řešit do 32 bitů kód i adresu přímé adresování relativně s omezeným rozsahem adresování registrem v jedné instrukci pouze jedna operace s pamětí aritmetické a logické operace pouze s registrem A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 14

ARM ARM7TDMI instrukční sada ARM - 32 bitů instrukční sada THUMB 16 bitů (úsporný kód, větší omezení na přímá data či adresy) Přepínání módu, procesor běží buď: v módu ARM (vykonává instrukce ARM 32 - bitové) v módu THUM (vykonává instrukce THUMB 16 - bitové) instrukce ARM a THUMB není možno míchat, přesun do módu THUM skok na adresu, kde nejnižší bit adresy je A0=1 (kód instrukce je 16- bitový, tak reálná adresa má A 0 =0, ale právě požadavek skoku na adresu s A 0 =1 signalizuje požadavek na skok a přepnutí do režimu THUM používají se instrukce BX Rn, kde registr Rn obsahuje požadovanou adresu s příslušně nastaveným bitem D 0 = 0, nebo D 0 =1 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 15

Instrukční sada THUMB-2 v návaznosti na instrukce ARM ARM CORTEX-M3 instrukční sada THUMB-2 procesor je stále v režimu THUMB, avšak instrukční sada obsahuje 16 bitové instrukce i 32 bitové instruce. Vše dohromady je označeno jako THUMB-2 Protože je procesor stále v režimu THUMB-2, musí být při požadavku skoku vždy nejnižší bit adresy A 0 = 1 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 16

Jádro ARM Cortex M3 Firma ARM - nevyrábí vlastní procesory, pouze návrh jádra, Jádro v rámci licencí využívá mnoho výrobců (ST, NXP, TI, Atmel,..) ARM Cortex- M3 - definováno: vlastní jádro CPU řadič přerušení rozložení v adresním prostoru (kde- SRAM interní, externí, kde vnitřní sběrnice spolupráce s rozhraním pro ladění (debug) JTAG, SWD Výrobci individuálně doplňují paměti a různé periferie přístupné v daném adresním prostoru více na www.arm.com A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 17

Jádro ARM Cortex M3 Volně dostupné materiály: Sadasivan S.: An Introduction to the ARM Cortex-M3 Processor (www.arm.com) DUI 0552A_Cortex - M3 devices generic user Guide (www.arm.com) DDI 0337E Cortex -M3 Revision: r1p1 Technical Reference Manual (www.arm.com) DDI 0403 ARM v7-m Architecture Reference Manual (www.arm.com dostupný po zaregistrování) (podrobný popis architektury ARMv7M do které spadá i ARM Cortex M3) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 18

STM32F100x Volně dostupné materiály: katalogový listk STM32F100x: STM32F100x4 STM32F100x6,STM32F100x8 STM32F100xB (Doc ID 16455 Rev 5) podrobný referenční manuál: RM0041 Reference manual STM32F100xx advanced ARM-based 32-bit MCUs (www.st.com) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 19

Literatura The Insider s GuideTo The STM32 ARM Based Microcontroller An Engineer s Introduction To The STM32 Series www.hitex.com Velmi zkrácený přehled architektury ARM Cortex M3 z hlediska, implemetace do STM32 Přehledný zkrácený popis periferií STM32 Doporučeno pro získání prvního přehledu k použití periferiístm32, následně detailní studium referenčního manuálu k STM32, Insiders Guide - dobrý proto to, zjistit, co se má vlastně hledat v dalších podrobných manuálech A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 20

Pojem instrukce - Thumb - 2 ARM Cortex M3 návaznost na procesory ARM procesory ARM: 16 bitové instrukce Thumb 32 bitové instrukce ARM (přepínání v programu, jaká sada instrukcí se používá) ARM Cortex M3 - instrukce Thumb doplněné 32- bitovými instrukcemi sada označená jako Thumb 2, ARM Cortex M3 používá sadu Thumb 2 bez přepínání, Pokus o přepnutí do režimu instrukcí ARM (32 bitových vyvolá chybu) 16 bitové instrukce Thumb omezené možnosti např. ve vzdálenosti adresy pro skok A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 21

Registry ARM Cortex M3 - R0 R12 obecné registry Dolní registry (low reg.) R0 R7 přístupné všemi instrukcemi s přístupem k registrům. Horní registry (high reg.) R8 R12 přístup pouze 32 bitovými instrukcemi s přístupem k registrům A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 22

Registry R13 až R15 Stack pointer Registr R13 -Stack Pointer (SP) ukazatel zásobníku. R13 dvě formy: hlavní SP (SP main) procesní SR (SP_process) Link register Registr R14 je užíván při volání podprogramů (subroutine Link Register - LR). Do LR se uloží návratová adresa z PC při instrukci při vykonání instrukcí Branch and Link (BL) or Branch and Link with Exchange (BLX). LR je využit také při návratu z obsluhy výjimky (exception return). R14 možno obsluhovat jako obecný registr Programový čítač (Program counter - PC) registr R15 Bit [0] je vždy, takže instrukce jsou zarovnány na hranice slova (4 Byte) nebo poloviční slova (2 Byte). (pozor. adresa skoku Bit [0] = 1, viz Thumb mód) Stavový reg. programu (Program Status Registers xpsr) stavových registr příznaků (Flags) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 23

Příznakový registr, příznaky - Příznaky - 1 indikuje aktivní stav N - negativní nebo menší než Z - Nula C - Carry/ Borrow výpůjčka V - přetečení overflow Q - sticky saturation (při aritmetice se saturací) Využití příznaků podmíněné vykonání instrukce, větvení programu (BZ, BEQ) konstrukce if then else A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 24

Adresový prostor ARM Cortex M3, 4 GByte - A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 25

Struktura proc. STM32F100 použit v STM32VLDiscovery kitu - Cortex-M3 CPU 24 24 MHz JTAG/SW Debug Nested vect vectit IT Ctrl Ctrl 1 x Systick Timer 1 x DMA 7 Channels CRC 1x6x 16-bit PWM Synchronized AC AC Timer Timer Up Up to to 16 16 Ext. Ext. ITs ITs Up Up to to 80 80 I/Os I/Os 1x 1x SPI SPI 1x 1x USART/LIN Smartcard/IrDa Modem-Ctrl ARM Lite Hi-Speed Bus Matrix / / Arbiter (max (max 24MHz) 24MHz) Bridge ARM Peripheral Bus (max 24MHz) 4kB-8kB SRAM 1x 1x 12-bit ADC 16 16 channels // 850ksps 2x 2x USART/LIN Smartcard // IrDa IrDa Modem Control 2x 2x I2C I2C A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 26 Flash Flash I/F I/F Bridge 16-128kB Flash Memory 20B 20B Backup Regs Clock Control ARM Peripheral Bus (max 24MHz) 1x16-bit timer with 2 IC/OC/PWM 2x16-bit timer each with 1 IC/OC/PWM 2 x 12bit DAC Temp Sensor Power Supply Reg Reg1.8V POR/PDR/PVD XTAL oscillators 32KHz + 3~25MHz Int. Int. RC RC oscillators 40KHz + 8MHz PLL PLL RTC // AWU 2x 2x Watchdog (independent & window) 3 x 16-bit Timer HDMI CEC CEC 2x 2x SPI SPI

V/V brány v STM32 Standardní vstupně výstupní brány (ne + 5 V tolerantní) Odhad chování pinu ( ne + 5V tolerantního) brány STM32f100x na základě podoby s chování vstupů 74HC04 poznatků z lab. úlohy Diskuse, možné důsledky nevhodného zapojení, důsledky - cvičení A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 27

STM32F100 IO brány vstup brány + 5 V tolerantní RM0041 str. 102 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 28

Tlačítko a LED na STM32VL Discovery Tlačítko v klidu L, Pull down rezistor stisk čte se 1, viz manuál UM0919 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 29

Konfigurace brány STM32F100x Po reset jsou V/V brány neaktivní (i při zápisu dat do výstupního registru brány se na výstupu nic neprojeví) Nejdříve - aktivace hodinového signálu pro výstupní bránu (viz demo příklad na cvičení použití brány PC) LDR R0, =RCC_APB2ENR ; Kopie adresy RCC_APB2ENR (APB2 peripheral clock enable register) do R0 LDR R1, [R0] ; Nacteni stavu registru RCC_APB2ENR do R1 LDR R2, =0x10 ; Konstanta pro zapnuti hodin pro branu C ORR R1, R1, R2 ; Maskovani STR R1, [R0] ; Ulozeni nove hodnoty Následně nutnost konfigurace každého používaného pinu V/V brány zápisem do konfiguračního registru Zápis dat do výstupního registru brány se projeví na výstupu pouze u pinů konfigurovaných jako výstupy. (Poznámka: pokud výstupní nebo vstupní pin, či další perierie, nereagují na zápis dat, je třeba zkontrolovat, zda je přiveden hodinový signál a pin správně konfigurován!!!) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 30

Umístění registrů str. 36 RM0041 umístění konf. reg. v adresním prostoru PA 0x4001 0800 PC 0x4001 1000 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 31

Registry V/V bran. A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 32

Registry V/V bran GPIO General Purpose Input Output GPIO_CR = GPIO - Control Register (4 bity na pin brány), celkem 16 pinů x 4 = 64 bitů rozděleno do dvou registrů GPIO_CRH a GPIO CRL, GPIO_CRH contr. reg. pro horní polovinu prány Px [15 až 8] GPIO_CRH contr. reg. pro dolní polovinu prány Px [15 až 8] GPIO_IDR = - GPIO - Input Data Register čtení stavu pinů GPIO_ODR = - GPIO- Output Data Register výstupní datový registr GPIO_BSRR = - GPIO - Bit Set Reset Register (vybrané piny do 1 nebo 0) GPIO_BRR = - GPIO - Bit Reset Register (vybrané piny do 0) GPIOx_LCKR = GPIO - Port config. lock register (zablok. proti změnám stavu pinu až do reset proc.- využití. pro spoleh. syst. + výklad) bezpečnost technolog. sytémů,.. Pozor - zápis do výstupních pinů možný pouze do pinů nakonfigurovaných jako výstupy a s přivedenými hodinami, (častá chyba.) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 33

Konfigurace bitů 7 až 0 (dolní Byte) low A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 34

konfigurace bitů 15 až 8 (horní Byte) - high A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 35

Konfigurace jednoho pinu brány STM32F100 manuál RM0041 str. 103 4 bity pro konfig. jednoho bitu brány shodný způsob: STM32F103 STM32F105, 107 pouze odlišné adr. (další procesory STM32F050, STM32F407,.. odlišná konf.) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 36

Zápis dat do výstup. registru brány GPIOx_ODR (Output Dta Reg.) Tlačítko v kitu připojeno na PA0, LED na PC8, PC9 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 37

Ovládání jednotlivých bitů brány (set/ reset) GPIOx_BSRR Zápis 1 do B [31 až 16] nastavuje přísl. bit do 1 (set), 1 do B [15 až 0] nastavuje přísl. bit do 0 (reset), záp. 0 nic nezmění zápis 0 příslušný výst. bit se neovlivní (analog. - dva hřebeny proti sobě, vylom. zub.) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 38

Ovládání jednotlivých bitů brány (reset) GPIOx_BRR Zápis 1 do B [15 až 0] nastavuje přísl. bit do 0 (RESET), zápis 0 do registru neaktivní neovlivní stav výstupu Vhodné A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 39

Čtení stavu registru vstupní brány - GPIOx_IDR ( input. data reg.) Pro čtení tlačítka na PA0 Vhodné A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 40

Určení adresy daného registru GPIOx Potřeba znát základní adresu periferie (brány) z Tab. 1 na str. 36 offset pro příslušný registr z tab. 48 (str. 129) zákl. adr. pro GPIOC 0x4001 1000 zákl. adr. pro GPIOA 0x4001 0800 kontrol. reg. pro GPIOx_CRL pro bity 7 až 0 má offset 0x00 kontrol. reg. pro GPIPx_CRH pro bity 15 až 8 má offset 0x04 vstup. dat. reg. GPIOx_IDR offset 0x08 výst. dat. reg GPIOx_ODR offset 0x0C kontr. reg bit set/reset GPIOx_BSR offset 0x10 kontr. reg. bit reset GPIOx_BRR offset 0x14 0x40011000 GPIOC + offset 0x04 = 0x40011004 0x40011004 GPIOC_CRH (konfigurace PC15 až PC8) výstupní registr brány PC + offset pro GPIOx_ODR 0x40011000 GPIOC + offset 0x0C = 0x4001100C 0x4001100C GPIOC_ODR výstupní registr pro PC 0x400110808 GPIOA_IDR registr vstupní brány PA A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 41

Používané adresy pro úvodní cvičení 0x4001 1004 GPIOC_CRH konfigurace PC15 až PC8 0x4001 100C GPIOC_ODR výstupní registr pro PC 0x400110808 GPIOA_IDR registr vstupní brány PA A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 42

Modifikace bitů slova v SRAM nebo výstupní brány Funkce čtení modifikace bitů zápis (read modify write) do 1 OR 1 do 0 AND 0 v daném bitu, viz příklad na cvičení? riziko příchod přerušení v procesu čtení, modifikace a zápisu (read, modify, write), zákaz přerušení Pro ovládání jednotlivých vybraných bitů brány STM32 jediným zápisem viz funkce set, reset obr. viz. Hitex: Insiders Guide. A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 43

Adresování jednotlivých bitů pam. a vst/výst. metodou Bit Banding Možnost adresovat jediný bit v oblasti bit banding zápisem celého slova (32 bitů) do oblasti bit band alias (analogie velké kl. + hrot. na bit) oblast 1MByte adres. prostoru bit band v paměti SRAM adresovaná jako 32 MByte v bit band alias oblast 1MByte bit band v prostoru I/O v STM32 adresovaná jako 32 MByte v bit band allias bit_word_addr = bit_band_base + (byte_offset x 32) + (bit_number 4) Bit B(0) slova na adr. 0x2000 0000 odpovídá slovu (4 B) na adr. 0x2000 0000 Bit B(1) slova na adr. 0x2000 0000 odpovídá slovu (4 B) na adr. 0x2000 0004 mapování bitu B(2) ze slova v SRAM na adrese, 0x2000 0300 do oblasti alias : 0x2200 0000 (zač. B.B. Alias)+ (0x300*32) + (2*4) = 0x2200 6008 Zápis na adresu 0x2200 6008 má stejný efekt jako čtení,modifikace bitu a zápis bitu 2 z byte v SRAM na adrese 0x2000 0300. význam má nejnižší bit B(0) ze slova (32 bitů) Čtení z adr. 0x2200 6008 vrátí hodnotu (0x000 0001 nebo 0x0000 0000) podle stavu bitu 2 ze slova v SRAM na adr. 0x2000 0300 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 44

Adresování Bit Banding Bit banding obr. dle Hitex: Insiders Guide celá vnitřní SRAM a periferie v STM32 - dosažitelné pomocí Bit banding SRAM Bit band oblast (celkem 1 MByte) Bit Band Alias (celkem 32 MByte) od 0x2000 0000 do 0x200F FFFF, od 0x2200 0000 do 0x23FF FFFF Periferie Bit band oblast (celkem 1 MByte) Bit Band Alias (celkem 32 MByte) od 0x4000 0000 do 0x400F FFFF od 0x4200 000 do 0x43FF FFF A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 45

Adr.prostor ARM Cortex M3 Bit banding, Bit band. alias - A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 46

Procesory s jádrem ARM, kódování instrukce Architektura ARM, postupný vývoj ARMv x Architektura ARM instrukce kódování 32 bitové Kódování instrukcí ve strojovém kódu ARM je pouze v jednom slovu 32 bitů, procesor načte kompletní kód instrukce naráz Za kódem instrukce ARM nenásledují další informace o datech či adrese skoku (jako to je např. u procesoru 8051 jedno, dvou, tří bajtové instrukce,signálových procesorů ADSP Blackfin a dalších) Všechny informace jsou součástí instrukčního kódu Instrukce operuje s jedním nebo více registry, V jedné instrukci je pouze jediný přístup k datům v paměti (není instrukce, kde by se dva operandy načítaly z paměti, nebo kde by se operand četl z paměti a do paměti by se ukládal) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 47

Procesory s jádrem ARM, instrukce skoku Dotaz? jak se řeší skoky, když adresní prostor je 32- bitový a současně se má celá instrukce kompletně zakódovat do 32 bitů? Skoky (kde je informace o cíli skoku součástí instrukčního kódu) jsou relativní (skok o danou vzdálenost dopředu, či dozadu tato vzdálenost je součástí instruk. kódu) vzhledem k aktuální adrese právěčteného instrukčního kódu Relativní skoky omezený rozsah skoku ( omezená vzdálenost ) Dotaz? jak se řeší delší skoky, když adresní prostor je 32- bitový a současně se má celá instrukce kompletně zakódovat do 32 bitů? Skok s větším rozsahem adresy (na větší vzdálenost ) s využitím adresy předem uložené v registru (32 bitů) (Pozn.: u ARM Cortex M3 musí být nejnižší bit adr. skoku uložené v registru = 1) Důvod nejnižší bit adresy A0 = 1 signalizuje činnost v režimu Thumb) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 48

Instrukční sady ARM a THUMB Kódování instrukcí ve strojovém kódu ARM nebo THUMB pouze v jednom slovu 32 bitů, nebo jednom polovičním slovu (za kódem instrukce nenásledují další informace o datech či adrese skoku jako to je např. u 8051, jedno, dvou, tří bajtové instrukce) Pokud je potřeba v instrukci zadat adresu 32 bitů, není to součástí instrukce,ale použití pseudoinstrukce. Instrukce se odkazuje na další slovo v paměti vygenerované uložené překladačem. A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 49

Plnění reg. konstantou 32 bit, pseudoinstrukce LDR R0, =. Pokud je potřeba v instrukci zadat adresu 32 bitů, není to součástí instrukce, ale použitím pseudoinstrukce. Instrukce se odkazuje na další slovo v pam. vygenerované (a uložené) překladačem. LDR R0, =RCC_CR ; toto je pseudoinstrukce po překladu bude ve výpisu 0x08000130 4828 LDR r0, [pc,#160] ; @0x0800 01D4 ulož do R0 hodnotu, která je umístěna v paměti na adrese, která se získá jako součet příští volné adresy (pro slovo 4 Byte) a čísla 160 dekadicky tato instrukce je uložena na adrese 0x0800 0130, další volná adresa (se zarovnáním na hranici 4 Byte) je od 0x0800 0130 + 4 = 0x0800 0134 s posunem 160 ( dekadicky)= 0xA0 ( hex.) tedy hledaná hodnota je umístěna na adrese 0x0800 0134 + 0xA0 = 0x0800 01D4, což indikuje zápis adresy @0x0800 01D4 v protokolu o překladu (možno pozorovat v okně disass. IDE Keil) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 50

PojmyBbyte, Halfword, Word z hlediska instrukcí ARM Opakování názvosloví používané v dokumentaci ARM: Byte - 8 bitů 1B (jeden bajt) Halfword - 16 bitů 2 B (dva bajty) Word - 32 bitů 4 B (čtyři bajty) tedy instrukce ARM (a 32 bitová instrukce Thumb2) je kódovaná ve word instrukce Thumb je kódovaná v halfword (nejnižší byte kódu instrukce musí mít bit A(0) = 0 sudá adresa ) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 51

Instrukční sada THUMB-2 ARM CORTEX- M3, instrukční sada pouze Thumb- 2 obsahuje původní Thumb 16 bitové, doplněné 32 bitovými inst. nepodporuje sadu ARM Thumb efektivnější využití pam. programu, (také zrychlení při čtení z FLASH, čtení 32 bitů dvě instrukce, vysvětlení později) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 52

Kódování instrukcí Thumb příklad instrukce MOVS MOV (immediate) s nastavením příznaků je inst. MOVS MOVS <Rd>, #<imm8> MOVS R0, # 0x0 se přeloží jako 2000 ( hex strojový kód) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 53

Kódování instrukcí THUMB opcode Instruction or instruction class 00xxxx Shift (immediate), add, subtract, move, and compare 010000 Data processing 010001 Special data instructions and branch and exchange 01001x Load from Literal Pool, see LDR (literal) 0101xx Load/store single data item 011xxx 100xxx 10100x Generate PC- relative address, see ADR 10101x Generate SP- relative address, see ADD (SP plus immediate) 1011xx Miscellaneous 16-bit instructions 11000x Store multiple registers, see STM / STMIA / STMEA 11001x Load multiple registers, see LDM / LDMIA / LDMFD 1101xx Conditional branch, and supervisor call 11100x Unconditional Branch A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 54

Kódování THUMB, instrukce MOV opcode Instruction 000xx Logical Shift Left LSL (immediate) 001xx Logical Shift Right LSR (immediate) 010xx Arithmetic Shift Right ASR (immediate) 01100 Add register ADD (register) 01101 Subtract register SUB (register) 01110 Add 3-bit immediate ADD (immediate) 01111 Subtract 3-bit immediate SUB (immed.) 100xx Move MOV (immediate) 101xx Compare CMP (immediate) 110xx Add 8-bit immediate ADD (immediate) 111xx Subtract 8-bit immediate SUB (immediate) 5 bitů opcode umístěných do bitů D13 až D9 následuje za bity D15 =0, D14=0 pro MOV (immed.) 100xx bude kód instrukce 00 100xx x xxxx xxxx tedy 001 000 rrr iiii iiii rrr kodování registru iiii iiii přímá 8-bitová data A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 55

Kódování Thumb, příklad instrukce MOVS MOV (immediate) Thumb instrukce MOVS <Rd>, #<imm8> MOVS R0, # 0x0 se přeloží jako 2000 ( hex strojový kód) 5 bitů opcode umístěných do bitů D13 až D9 následuje za bity D15 =0, D14=0 pro MOV (immed.) 100xx bude kód instrukce 001 00 xxx xxxx xxxx tedy 001 000 rrr iiii iiii rrr kodování registru iiii iiii přímá 8-bitová data 001 00 rrr iiii iiii tedy binárně 000 0000 0000 0000 i rrr kodování registru (R0 je kódován jako 000 binárně) iiii iiii přímá 8-bitová data proto není možno v Thumb instrukci uložit přímá data větší než 8 bitů, A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 56

Kódování příklad určení strojního kód instrukce Thumb -2 32-bit Thumb kódování instrukce op1 musí být různé různé od 00, pokud je op1 = 00 (bin) jedná se o 16 - bitovou instrukci Thumb tak ARM Cortex M3 rozliší instrukce A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 57

Kódování příklad určení strojního kód instrukce Thumb-2 op1 op2 op Instruction class 01 00 xx0xx x Load Multiple and Store Multiple 01 00 xx1xx x Load/store dual or exclusive, table branch 01 01xxxxx x Data processing (shifted register) 01 1xxxxxx x Coprocessor instructions 10 x0xxxxx 0 Data processing (modified immediate) 10 x1xxxxx 0 Data processing (plain binary immediate) 10 xxxxxxx 1 Branches and miscellaneous control 11 000xxx0 x Store single data item 11 00xx001 x Load byte, memory hints 11 00xx011 x Load halfword, memory hints 11 00xx101 x Load word 11 00xx111 x UNDEFINED 11 010xxxx x Data processing (register) 11 0110xxx x Multiply, multiply accumulate, and absolute difference 11 0111xxx x Long multiply, long multiply accumulate, and divide 11 1xxxxxx x Coprocessor instructions podle operandů OP1 a OP2 vznikne kód instrukce použitelné i pro zpětný překlad disassembling) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 58

Kódování příklad určení strojního kód instrukce Thumb -2. OP1, OP2, OP se doplní na příslušná místa kódu instrukce, 10 x0xxxxx 0 Data processing (modified immediate) další bity představují kódování použitých registrů, podmínky a přímá data příklad LDR R0, =0x0 se přeloží do Thumb- 2 F04F 0000 (hex) (nalezne se v protokolu o překladu soubor xxx.lst) F 0 4 F 0 0 0 0 (hex) 1111 0000 0100 0000 0000 0000 0000 0000 bin) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 59

Instrukce MOV pro instrukce Thumb a Thumb - 2 op1 op2 op Instruction class MOV (immediate) MOVS <Rd>,#<imm8> Thumb instrukce (dle jazyka UAL S. nast.-příznaky ( požadavek na Thumb, inst. která je pouze s nastavením příznaků, Thumb- 2 instrukce MOV{S}<c>.W <Rd>, #<const> ( S nast. přízn.), c- S instrukce má nastavit příznakové bity,.w chci kódovat do Thumb -2, 32 bit c- podmínky vykonání ínstrukce podle příznak. bitů Thumb- 2 MOV.W<c> <Rd>, #<imm16> A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 60

Instrukce skoku 32- bit Thumb kódování instrukce A 16-bit conditional branch instruction, with a branch range of 256 to +254 bytes. A 32-bit conditional branch instruction, with a branch range of approximately ± 1MB. B<c>.W <label> B<c>.W <label> kódování podmínky volba stavových bitů (cond) zabírá 4 bity, proto je menší rozsah adresy skoku 21 bitů, +/- 1 MByte A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 61

Kódování instrukcí do strojního kódu Pro detailní výklad problematiky viz lit ARM DDI 0403C_ARM v7-m Architecture Reference Manual, část Chapter A5 Thumb Instruction Set Encoding Poznámka: Pohled na způsob kódování instrukcí může částečně napomoci představě, jak v procesoru ARM probíhá dekódování instrukčního kódu a jeho provedení Může také napomoci vysvětlení způsobu zpětného překladu disassemblingu A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 62

Srovnání instrukce skoku v Thumb a Thumb - 2 16- bit Thumb kódování instrukce skoku A 16-bit conditional branch instruction, with a branch range of 256 to +254 bytes.. 16-bit Compare and Branch on Zero and Compare and Branch on Nonzero instructions, with a branch range of +4 to +130 bytes. See CBNZ, CBZ E7F3 B GPIO_CNF bez podmínky adresa 11 bitů 1110 0111 1111 0011 D0F2 BEQ GPIO_CNF s podmínkou adresa 8 bitů 1101 0000 1111 0010 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 63

Mapa paměti v STM32F100x od 0x00 paměť Flash od 0x4000 0000 periferie od 0x2000 0000 interní SRAM výkon programu začíná podle reset handler adresa uložena na 0x0000 0000 (stack pointer) výchozí hodnota pro nast. ukazatele zásobníku 0x0000 0004 (reset handler) v našem programu tam je 0x0800 00ED 0x0000 0008 NMI handler adr. obsluhy nemaskovatelného přerušení NMI??? proč 0x0800 00ED, program přeci začíná na 0x0800 00EC 0x0800 00EC.1110 1100 0x0800 00ED.1110 1101??? nejnižší bit odlišný instrukce kódovány 16 bitově (THUMB) nebo 32 bitově (THUMB- 2) takže by bit 0 měl být vždy 0, historicky od ARM, bit 0, pokud je v 0, znamená to přechod do módu klasické instruce ARM ( 32 bitů) bit 0 = 1 znamená režim Thumb, zde i Thumb -2 nejnižší bit adresy skoku u CORTEX M3 musí být proto vždy 1 (význam pro jednotku dekódování instrukce) A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 64

Možnosti využití analyzátoru v simulátoru Použití simulátoru, výklad na přednášce analysis window disassembly window setup přidat signál který se vyskytuje v programu např. gpio_odr zobrazí se 16- bitově možno nastavit rozsah setup Min/Max gpio_odr.8 zobrazí pouze bit 8 zobrazení analog, bit, state (klik pravá myš na graf) v režimu state nastavení zobrazení hodnot dekadicky, hexadecimálně A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 65

Simulátor. A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 66

Simulátor zadání masky pro zobrazení bitů zadání GPIOC_ODR.8 zobrazení pouze bitu 8 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 67

Použití simulátoru Keil zobrazení průběhů. A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 68

Použití simulátoru Keil zobrazení průběhů Použití log. analyzátoru je pouze při simulaci při běhu programu při break pointu zobrazení stavu pinů A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 69

. A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 70

Simulace zobrazení velikosti čísla, analog. zobrazení (DAC). A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 71

.Posun o 8 bitů doprava jako dělení hodnotou 0x100 zobrazení kombinací bitů PC9 a PC8 jako čísel 0, 1, 2, 3 A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 72

. A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 73

. Zobrazení kombinace výstupů v režimu state jako hodnoty A4B38NVS, 2012, J.Fischer, kat. měření, ČVUT - FEL 74