periferie dsc 56f802x a 56f803x

50
Periferie DSC Periferie DSC 56F802X a 56F803X 56F802X a 56F803X Ing. Zdeněk Pfof

Upload: sonel

Post on 13-Jan-2016

44 views

Category:

Documents


0 download

DESCRIPTION

Periferie DSC 56F802X a 56F803X. Ing. Zdeněk Pfof. Srovnávací tabulka rodiny 56F8000. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Periferie DSC 56F802X a 56F803X

Periferie DSCPeriferie DSC56F802X a 56F803X 56F802X a 56F803X

Ing. Zdeněk Pfof

Page 2: Periferie DSC 56F802X a 56F803X

Srovnávací tabulka rodiny 56F8000 Srovnávací tabulka rodiny 56F8000

Vlastnosti periferií budou rozebírány především pro DSC 56F8023 – vyšší modely mají popsané vlastnosti stejné, pouze více funkcí, více jednotek od jedné periferie

(viz. jednotka PIT), více vyvedených V/V na čipu (viz. ADC, GPIO)

Page 3: Periferie DSC 56F802X a 56F803X

Periferie rodiny 56F8000Periferie rodiny 56F8000 Analog-to-Digital Converter (ADC) Computer Operating Properly (COP) Inter-Integrated Circuit Interface (I2C) On-Chip Clock Synthesis (OCCS) Flash Memory (FM) General Purpose Input/Output (GPIO) Pulse Width Modulator (PWM) Scalable Controller Area Network (MSCAN) Joint Test Action Group Port (JTAG) Power Supervisor (PS) Queued Serial Communications Interface (QSCI) Queued Serial Peripheral Interface (QSPI) Quad Timer (TMR) Voltage Regulator (VREG) Programmable Interval Timer (PIT) Digital-to-Analog Converter (DAC) Comparator (CMP)

Page 4: Periferie DSC 56F802X a 56F803X

Probíhá po sběrnici IPBus – vnitřní sběrnice IPBus Bridge zajišťuje pravidelnou a synchronizovanou komunikace

mezi jádrem a pomalejšími periferiemi a incializuje přenos dat po sběrnici IPBus pouze na žádost od procesoru

Komunikace na straně procesoru je plně zřetězená, zatímco na straně periferií komunikace zřetězená není

Komunikace mezi periferiemi na čipu Komunikace mezi periferiemi na čipu (on-chip peripheral) a jádrem(on-chip peripheral) a jádrem

Page 5: Periferie DSC 56F802X a 56F803X

Analog Digital Converter (ADC)Analog Digital Converter (ADC)

Jádra 56F802X a 56F803X obsahují 2 A/D převodníky s parametry: 12 bitové rozlišení Max. hodinová frekvence ADC je 5,33MHz → perioda je 187ns Dokáže navzorkovat až 1,78 milionů vzorků za sekundu – v režimu

loop mode a simultatenous conversion! Čas pro převod jedné hodnoty je 1,59μs (8,5x187ns) Nejkratší čas pro navzrokování a převod je 1,125μs (6x187ns) na

dva vzorky (při paralelním módu - 2 ADC jednotky) V paralelním módu je potřeba na 8 vzroků 4,97μs (26,5x187ns) Umožňuje synchronizaci od PWM – vstupy SYNC0/1 Umožňuje vyvolat přerušení na konci převodu, při průchodu nulou

nebo při překročení dvou nastavitelných limitů (High limit, Low limit) Korekce vzorků odečtením od programovatelné hodnoty offset Znaménkový nebo bezznaménkový výsledek Jednoduché (single ended) nebo rozdílové (differential) vstupy

Page 6: Periferie DSC 56F802X a 56F803X

Popis funkce ADCPopis funkce ADC

2x 8 kanálů, dvě nezávislé S/H jednotky, dva oddělené 12bit AD převodníky Vyvedeny jsou pouze 2x3 kanály u 56F802X nebo 2x4 kanály u 56F803X

Operační módy: Once Sequential Once Parallel Loop sequential Loop parallel Triggered sequential Triggered parallel

Módy MUX jednotky: Sigle ended – ANA0-ANA7 Differential – ANA0/ANA1

Výstupy jsou normovány (12bit převodník → 16bit sběrnice) a uloženy do RSLTn registru – SAMPLE0 → RSLT0 RSLTn registr je 16 bitový (RSLT0-RSLT7 – ADC_A, RSLT8-RSLT15 – ADC_B) RSLT0-RSLT7 umožňuje korekci OFFST registrem – znaménkový výsledek

Page 7: Periferie DSC 56F802X a 56F803X

Start ADC (re-synchronizace)Start ADC (re-synchronizace)

Parallel simulataneous (souběžný) Oba převodníky startovány

stejným START bitem nebo SYNC signálem

Nemusíme čekat dalších pět systémových hodinových cyklů než začne převod

Parallel non-simulataneous (nesouběžný) Každý převodník startován vlastním

START bitem nebo SYNC signálem První převod nemusí čekat, ale druhý

musí počkat na vzestupnou hranu ADC hodinového signálu

Page 8: Periferie DSC 56F802X a 56F803X

Synchronizace ADC s PWMSynchronizace ADC s PWM

Vzrokování probíhá 2x za periodu PWM – snímá se střední hodnota proudu Vzorkování napomáhá filtraci měřeného proudu – tzv. antialiasing Při vypnutém spínacím prvku jsou vzorky bez šumu

Page 9: Periferie DSC 56F802X a 56F803X

Přerušení vyvolávaná ADCPřerušení vyvolávaná ADC

Každý kanál převodníku ADC_A má svůj vlastní programovatelný High limit registr, Low limit registr a zero-crossing registr, které při rovnosti hodnot vyvolá přerušení

Na konci převodu všech 8 kanálu z převodníku ADC_A i ADC:B je rovněž umožněno vyvolat přerušení

ADC umožňuje vyvolávat tato přerušení bez zásahu mikroprocesoru

Page 10: Periferie DSC 56F802X a 56F803X

Manipulace s daty result registremManipulace s daty result registrem

OFFST – nastavitelný OFFSET registr, který umožňuje znaménkovou korekci jedno polaritního signálu

RSLTn – výsledkové registry HILIM – High limit register (v předchozím obrázku označen jako Upper limit) LOLIM – Low limit register (v předchozím obrázku označen jako Lower limit) Zero crossing Logic - v předchozím obrázku označen jako Threshold limit

Page 11: Periferie DSC 56F802X a 56F803X
Page 12: Periferie DSC 56F802X a 56F803X
Page 13: Periferie DSC 56F802X a 56F803X
Page 14: Periferie DSC 56F802X a 56F803X
Page 15: Periferie DSC 56F802X a 56F803X
Page 16: Periferie DSC 56F802X a 56F803X
Page 17: Periferie DSC 56F802X a 56F803X
Page 18: Periferie DSC 56F802X a 56F803X
Page 19: Periferie DSC 56F802X a 56F803X
Page 20: Periferie DSC 56F802X a 56F803X
Page 21: Periferie DSC 56F802X a 56F803X

General Purpose Input/Output (GPIO)General Purpose Input/Output (GPIO)

Obsahuje 26 V/V bran, které jsou po 8 rozděleny jako GPIO_A, GPIO_B, GPIO_C, GPIO_D

GPIO jsou multiplexované V/V s periferiemi, nacházejí se na všech pinech DSC kromě napájecích pinů

GPIO umožňuje přímé čtění/zápis z/na vstupně/výstupních pinů a dále se dají využít jako vstup pro externí přerušení

Jsou optimalizování pro připojení klávesnice Každý GPIO je nastavitelný jako vstup nebo výstup

Vstup má módy s, nebo bez, pull-up rezistoru Výstup má módy push-pull, open drain nebo high strength (4mA nebo

8mA) GPIO při nastavení jako vstup umí pracovat s 5V logikou Při nastavení jako vstup lze při hraně generovat přerušení – citlivost na

hranu je nastavitelná Při nastavení jako výstup lze nastavit počáteční hodnotu na výstupu (H

nebo L) a poté aktivní v L nebo H

Page 22: Periferie DSC 56F802X a 56F803X
Page 23: Periferie DSC 56F802X a 56F803X

Schéma vstupů/výstupů DSC 8023

Page 24: Periferie DSC 56F802X a 56F803X

Pulse Width Modulator (PWM)Pulse Width Modulator (PWM)

Umožňuje PWM modulaci o frekvenci až 96MHz 6 PWM kanálů ve variantách - plně nezávislé nebo komplementární nebo

kombinace obou varinat Při komplementárním spojení kanálů umožňuje vkládat mrtvou dobu při náběžné i

sestupné hraně 15bitový up/down čítač s módy edge-alignment a center-alignment Nastavitelná perioda modulačního signálu – registr CMOD – counter modulos Nastavitelná šířka pulsu – registr VAL0-5 – PWM value Nastavitelná doba obnovení registrů PWM Nastavitelná polarita výstupů Nastavitelný PRESCALER pro snižování frekvence PWM Asymetrický mód Umožňuje synchronizaci od ADC nebo externího zdroje Ochrana registrů proti přepsání 4 programovatelné FAULT vstupy Kontrola polarity výstupů

Page 25: Periferie DSC 56F802X a 56F803X

Blokové schéma PWMBlokové schéma PWM

Page 26: Periferie DSC 56F802X a 56F803X

Výhody komplementárního zapojení výstupů – 0 & 1, 2 & 3, 4 & 5 Vkládání mrtvých dob Rozdílná polarita vrchního a spodního prvku Softwarová korekce rozdílnosti šířky pulsů Asymetrický PWM výstup

Blokové schéma komplementárních výstupů 3f střídač využívající komplementárních výstupů

Možnost využití rozdílnosti polarity

PWMPWM

Page 27: Periferie DSC 56F802X a 56F803X

Generování mrtvých dobGenerování mrtvých dob

Nastaveno generování mrtvé doby při náběžné i sestupné hraně

Rozdíl mezi jednotlivými směry proudu je značný a nemusí být vždy chtěný, proto lze provést korekci rozdílným

nastavením šířky pulsu pro horní nebo spodní spínač

Page 28: Periferie DSC 56F802X a 56F803X

Korekci lze nastavit v grafickém konfiguračním rozhraní, nebo bitem

IPOLn v registru CTRL (control register) zapsáním příslušné log. hodnoty

Asymetrické PWMAsymetrické PWM

Při komplementárním zapojení výstupů a čítače čítajícího v módu center-alignment lze využít asymetrickou PWM modulaci.

Pro čítání nahoru je využit registr VAL0 a pro čítání dolů registr VAL1.

Nastavení lze provést buď v grafickém konfiguračním rozhraní nebo bitem ICCn registru ICCTRL (Channel control register)

Page 29: Periferie DSC 56F802X a 56F803X

Ochrana proti chybám Ochrana proti chybám (Fault protection)(Fault protection)

Fault ochrana může vypnout libovolnou kombinaci PWM výstupů. Nevypíná však celou modulaci (ta běží dále), ale pouze vybrané výstupy logikou Fault.

Každý PWM výstup obsahuje 4 Fault vstupy a 4 registry DISMAP, které mapují výstupy PWM.

Dojde-li např. k přetečení registru VAL0 (nad hodnotu 7FFF), zaznamená to registr DISMAP0, na pinu Fault0 se vygeneruje log. 1 a výstup PWM0 bude odpojen. Pro obnovení činnosti PWM výstupu se musí vymazat bit Fault0 a na začátku nové periody bude PWM výstup opět spuštěn.

Pin Fault2 může taktéž sloužit pro externí synchronizaci PWM.

Page 30: Periferie DSC 56F802X a 56F803X
Page 31: Periferie DSC 56F802X a 56F803X
Page 32: Periferie DSC 56F802X a 56F803X
Page 33: Periferie DSC 56F802X a 56F803X

Quad Timer (TMR)Quad Timer (TMR)

Pracuje s hodinovým kmitočtem až 96MHz 4x 16bit čítače/časovače Možnost čítat směrem up i down Individuálně programovatelné Čítače lze spojit a vytvořit tak jeden 64 bitový čítač Umožňuje režim čítání „once“ nebo „repeatedly“ Umožňuje nastavit počáteční hodnotu, od které začne čítat Čítače můžou sdílet vstupní piny Každý čítač má svůj vlastní „prescaler“ Každý čítač má zachytávací a komparační jednotku Programovatelné chování během „debug“ módu Programovatelný vstupní filtr Začátek čítání může být synchronizováno jiným čítačem Má až 12 operačních módů – pro řadu 803X, pro řadu 802X

má 8 op. módů

Page 34: Periferie DSC 56F802X a 56F803X

Popis funkce - Quad TimerPopis funkce - Quad Timer

Dvě základní funkce QT: Čítání vnitřní nebo vnější události Čítá dle vnitřního hodinového kmitočtu, když vnější signál je přijat nebo

nastala vnější událost. Poté čítá s vnitřním hodinovým kmitočtem délku vnějšího pulsu nebo čas mezi vnějšími událostmi

Inputs – primary sourceOther Counters – secondary source

Page 35: Periferie DSC 56F802X a 56F803X

Módy- Quad TimerMódy- Quad Timer

Stop mode – nečítá, stojí Counting mode – čítá na náběžnou hranu na „primary source“, využívá se pro

generování periodického přerušení, pro časovací účely nebo pro čítání vnější události, možno invertovat vstupní polaritu – pak čítá na sestupnou hranu

Edge mode – čítá na jakoukoli hranu (vzestupná i sestupná) vnějšího signálu Gated mode – čítá, jestliže sekundární vstupní signál je ve stavu H. Změnou

vstupní polarity čítá při L. Vhodné např. pro čítání časové délky vnější události Quadrature mode – čítá na podnět primárního a sekundárního vstupu, které

jsou o 90° fáz. posunuty (např. inkrementální čidlo) Signed mode – čítá podle kmitočtu na „primary source“, zatímco „secondary

source“ určuje směr čítání (up/down) Triggered mode – čítá podle kmitočtu na „primary source“, jestliže na

„secondary source“ je náběžná/sestupná hrana. K zastavení dojde při komparační události nebo při další náběžné/sestupné hraně.

Cascaded counter mode (up/down) – spojení více časovačů v jeden, jeden čítá nahoru nebo dolů a druhý čítač je tím inkrementován nebo dekrementován

Page 36: Periferie DSC 56F802X a 56F803X
Page 37: Periferie DSC 56F802X a 56F803X
Page 38: Periferie DSC 56F802X a 56F803X
Page 39: Periferie DSC 56F802X a 56F803X
Page 40: Periferie DSC 56F802X a 56F803X

Programmable Interval Timer (PIT)Programmable Interval Timer (PIT)

Periodický 16 bitový čítač, který čítá neustále dokola, při přetečení se vrací na hodnotu 00000 a čítá znovu. Prescaler dělí systémový hodinový kmitočet a modulo nastavuje hodnotu, do které čítač čítá.

Vytváří periodické přerušení. Význam některých bitů:• PRF – Pit roll-over flag• PRIE – Pit roll-over interrupt enable• CNT_EN – Count Enable• MSTR_CNT_EN – při spojení více jednotek PIT

(použitelné u DSC 56F8025 a vyšší)

Page 41: Periferie DSC 56F802X a 56F803X
Page 42: Periferie DSC 56F802X a 56F803X
Page 43: Periferie DSC 56F802X a 56F803X

Digital-to-Analog Converter (DAC)Digital-to-Analog Converter (DAC)

Jednotka je vyvedena na piny čipu až u DSC 56F8037 12 bitová rozlišovací schopnost, napěťový rozsah od VSSA do VDDA

Výstup může být poslán na komparátor, ADC nebo na výstupní pin (8037) Automatic mode – umožňuje generovat trojúhelníkový, pilový, obdélníkový

signál bez zásahu procesoru

Příklad generování signálu pily a signálu obdélníku

Page 44: Periferie DSC 56F802X a 56F803X
Page 45: Periferie DSC 56F802X a 56F803X

Comparator (CMP)Comparator (CMP)

Dvě jednotky Zpoždění vstupního signálu 35ns Možnost výběru vstupního signálu – tři GPIO piny, DAC nebo druhý

komparátor Možnost nastavení polarity výstupního signálu Programovatelný nízko-pásmový filtr Možnost vyvolání přerušení při výstupní nástupné nebo sestupné hraně Výstup může být použit pro řízení časovačů, PWM faults, řízení PWM, zdroj

přerušení nebo pouze přesměrován na pin na čipu Hystereze musí být vnější

Příklad použití pro PWM fault_1

Page 46: Periferie DSC 56F802X a 56F803X

Comparator (CMP) - Blokové schéma Comparator (CMP) - Blokové schéma

Page 47: Periferie DSC 56F802X a 56F803X

Blokové schéma periferií a jejich Blokové schéma periferií a jejich vstupů a výstupůvstupů a výstupů

Page 48: Periferie DSC 56F802X a 56F803X
Page 49: Periferie DSC 56F802X a 56F803X
Page 50: Periferie DSC 56F802X a 56F803X

Děkuji za pozornostDěkuji za pozornost