Rozhraní mikrořadiče, SPI, IIC bus,.. Přednáška 10 (11)
A4B38NVS, kat. měření, ČVUT - FEL, Praha J. Fischer
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
1
Náplň přednášky Sériová rozhraní rozhraní SPI funkce, vlastnosti Použití SPI, pro ISP, pojem Boot loader- paměti Flash s SPI rozhraním I2S – pro připojení audiokodeku I2C (IIC Bus)
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
2
STM32F100 – sériová rozhraní SPI, I2C
JTAG/SW JTAG/SWDebug Debug Nested Nestedvect vectIT ITCtrl Ctrl
11xxSystick SystickTimer Timer 11xxDMA DMA 77Channels Channels
FlashI/F I/F Flash
Cortex-M3 Cortex-M3 CPU CPU 24 24 MHz MHz ARMLite LiteHi-Speed Hi-SpeedBus Bus ARM (max 24MHz) Matrix / Arbiter Matrix / Arbiter (max 24MHz)
SPI USART (LIN) I2C
16-128kB 16-128kB Flash FlashMemory Memory
XTAL XTALoscillators oscillators 32KHz 32KHz++3~25MHz 3~25MHz 4kB-8kB 4kB-8kBSRAM SRAM
20B 20BBackup BackupRegs Regs
Clock ClockControl Control
Bridge Bridge Bridge Bridge
1x 1xSPI SPI 1x 1xUSART/LIN USART/LIN Smartcard/IrDa Smartcard/IrDa Modem-Ctrl Modem-Ctrl
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
(max 24MHz)
Up Upto to80 80I/Os I/Os
ARM Peripheral Bus
Synchronized SynchronizedAC ACTimer Timer
Up Upto to16 16Ext. Ext.ITs ITs
Int. Int.RC RCoscillators oscillators 40KHz 40KHz++8MHz 8MHz PLL PLL
RTC RTC//AWU AWU 2x 2xWatchdog Watchdog
CRC CRC
1x6x 1x6x16-bit 16-bitPWM PWM
Power PowerSupply Supply Reg Reg1.8V 1.8V POR/PDR/PVD POR/PDR/PVD
ARM Peripheral Bus (max 24MHz)
(independent (independent&&window) window)
33xx16-bit 16-bitTimer Timer
1x16-bit 1x16-bittimer timerwith with22 IC/OC/PWM IC/OC/PWM
HDMI HDMICEC CEC
2x16-bit 2x16-bittimer timereach each with 1 IC/OC/PWM with 1 IC/OC/PWM
2x 2xSPI SPI
22xx12bit 12bitDAC DAC 1x 1x12-bit 12-bitADC ADC 16 channels 16 channels// 850ksps 850ksps Temp TempSensor Sensor
2x 2xUSART/LIN USART/LIN Smartcard Smartcard//IrDa IrDa Modem ModemControl Control 2x 2xI2C I2C
3
Rozhraní SPI Rozhraní SPI ( Serial Peripheral Interface) - původ firma Motorola SPI není typ bus - sběrnice, ale pouze rozhraní (interface) typu bod - bod master - procesor, generace hod. sig. SCK, slave - podřízená jednotka, výstup ze SLAVE M ISO - třístavový pokud je u slave /ss = H, není aktivní výstup MISO
MASTER
SLAVE
8 bit pos. registr
MISO 8 bit pos. registr
MISO MOSI MOSI
SPI hod. generátor
SCK
MOSI - Master Output Slave Input MISO - Master Input Slave Output SCK - serial clock SS - slave select A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
SCK +5V SS
SS
4
SPI, komunikace s nastavením fáze CPHA = 0 nastavení polarita a fáze hodin (4 kombinace) MOSI výstup MISO - vstup CPHA = 0 při čtení nevýhoda - slave musí poskytnout data (MSB) na vodiči MISO ihned po /ss (slave select), s první hranou SCK se data vzorkují, s další hranou SCK se vysouvá další bit dat nastavení - clock phase- CPHA = 0 SCK cyklus
1
2
3
4
5
6
7
8
SCK (CPOL=0) SCK (CPOL=1) MOSI (z master) MISO (ze slave)
MSB
6
5
4
3
2
1
LSB
MSB
6
5
4
3
2
1
LSB
SS (do slave) A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
5
SPI, komunikace s nastavením fáze CPHA =1 Slave i master poskytnou první data (MSB) až po první hraně hodin SCK, master i slave čtou MSB s druhou hranou hodin
nastavení - clock phase- CPHA = 1 SCK CYKLUS
1
2
3
4
5
6
7
8
MSB
6
5
4
3
2
1
LSB
MSB
6
5
4
3
2
1
LSB
SCK (CPOL=0) SCK (CPOL=1) MOSI (z master) MISO (ze slave) SS (DO SLAVE)
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
6
SPI rozhraní, připojení jednotek slave Připojení více jednotek slave na jeden master, výběr pomocí vstupu /ss , aktivace jednotlivých /ss - programově řízenými výstupy (není součástí rozhraní SPI). Např. u AT89S8252 ovládání pomocí pinů brány P1, P3,.. Vstup /ss - u slave, obdoba funkce /CS - chip select jako pamětí. Určení, s kterou jednotkou slave se komunikuje MOSI MISO SCK
MOSI MISO SCK SS Udd
master
port
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
SS MOSI MISO SCK
0 1 2
slave 1
slave 2
SS MOSI MISO SCK SS
slave 3
7
SPI – STM32 STM32 SPI 8 nebo 16 bit data možné navázat SPI na DMA ( Direct Memory Access)
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
8
SPI rozhraní – implementace v STM32F100 SPI rozhraní NSS slave select slave mod - vstup
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
9
SPI rozhraní - implementace Vysílání MSB – typicky první, případně možnost volby LSB první 8 bitů dat (typicky), v často podpora i 16 bitů dat) rychlosti komunikace, frekvence SCK - programovatelná, SCK 1 až 10-ky MHz Možnost programové implementace rozhraní SPI, které nemají rozhraní SPI - emulace funkce SPI master - programově ovládanými piny brány, při programové implementaci signál SCK nemusí být synchronní ( nemusí mít konstantní periodou). Použití SPI - připojení vstupů. výstupů s posuvnými registry ( ´595), specializovaných obvodů, pamětí, připojení AD, DA převodníků s SPI, budiče LED, budiče relé, řadiče LCD,…. Paměti FLASH s rozhraním SPI např. M25P32 - 4 MByte, jako paměť dat, záznam, černá skříňka, Karty MMC, SD - možnost komnikace s rozhraním SPI, použití karet jako vnější paměti dat, adresace po sektorech 512 byte,
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
10
Využití SPI a sériových rozhraní pro programování uP ISP – „in system programming“ uložení programu a dat do paměti v aplikaci. Často využito rozhraní SPI (uP ATMEL, AVR, Microchip,…) Další způsoby programování paměti FLASH- sériové rozhraní JTAG rozhraní Signály TDI, TDO, TCK, TMS, funkce ladění - On-chip Debug system JTAG obsahují ATmega 16, 32,..), C8051F020 (Silabs) ,všechny procesory s jádrem ARM, STM32,…. a většina nových uP, („JTAG – Emulator“) Dvoudičové ladicí rozhraní – SWD u ARM Cortec- M3, viz STM32VL Discovery U některých uP možnost programování ISP programu BOOT loader - viz dřívější výklad na před. Aktivace vnitřního programu „Boot loader“ na čipu po resetu při. spec. nastavení úrovní na pinech Boot loader aktivně komunikuje s rozhraním ( UART, SPI, CAN, USB,...) a programuje vnitřní paměť Funkce boot - možnost začít práci s uP bez specializovaného vybavení (emulátor, vývojový modul,..) pouze s vlastním procesorem STM32F100 Booat loader – na UART, STM32F105 Boot – UART, USB, CAN A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
11
Programování paměti FLASH mikroprocesoru pomocí SPI Řada uP, možnost naprogramování interní FLASH prostřednictvím SPI ISP -“In - System Programming“ - programování paměti FLASH mikropočítače v obvodu Naprogramování mikropočítače v obvodu: aktuálním kódem - program ve FLASH, kalibrační data, specifická data - jazyková lokalizace přístroje (varianty hlášení a textů), sériové číslo,… Data v EEPROM - kalibrační data,... Možnost výrobní diagnostiky - naprogramování diagnostických programů, s ISP uvažovat při návrhu obvodu a desek plošných spojů a konektorů Varianty EEPROM – připojeny na uP, ale možnost programování i bezdrátověRFID technika (výroba STM), není nutnost elektricky připojovat
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
12
Rozhraní I2S Rozhraní I2S – pro připojení obvodu „audio codec“ (kodér- dekodér) převodník analogo- číslicový a číslicovo- analogový, stereo pro generování zvuku, typické vzorkovací frekvence do 48 kHz ( zvukové CD 44,100 kHz) Sériový přenos dat – signál SD 16, 24 nebo 32 bitů, Hodinový signál CK – pro řízení přenosu sériových dat Signál WS- výběr kanálu- pravý. levý kanál MCK - Master clock output navíc- hodinový signál pro audiokodek, (pokud např. audikodek nemá vlastní krystalový oscilátor). u STM32 fMCK = 256 x fS kde fS je vzorkovací frekvence audiosignálu Rozhraní I2S často implementováno v mikrořadičích s jádrem ARM Cortex – M3 U některých vyšších variant STM32Fxxx – např. ST32F103xCx, nebo STM32F407), funkce rozhraní I2S- jako rozšíření SPI
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
13
Rozhraní I2S průběhy signálu I2S v STM32F103 xC – možno volit pořadí, njdříbe LSB nebo MSB, délka přenosu 16,24, 32 bitů,.. polarita hod.signálu CK
I2S
viz též http://www.ni.com/white-paper/9540/en/
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
14
Rozhraní IIC bus Rozhraní - IIC bus, Inter Integrated Circuit Bus, původce, patent , firma Philips (nyní NXP), označení také I2CBus, původní určení - spotřební elektronika (radio, TV, video,…) Typ sběrnice- otevřený kolektor (volba velikosti Rp - výchozí hodnota RP = 2k7 ), připojení více obvodů, master - slave, možnost - multimaster. VDD možné též 3,3 V – zavisí na typech obvodu (senzory CMOS – napájení zásadně 3,3 V, tedy i na IIC bus sloužící pro konfiguraci senzoru)
RP
VDD +5V
RP
SDA SCL SCL1 výst.
DATA1 výst.
SCL2 výst.
DATA2 výst. SDA sériová data SCL sériové hodiny
SCL vstup
DATA vstup
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
SCLK VST.
DATA VST. 15
Rozhraní IIC bus - signály SCL - hodinový signál, generuje master SDA - data, generuje master nebo slave Změna stavu SDA při přenosu dat možná pouze při SCL = L Frekvence SCL - max. 100 kHz Standard speed označení také SM, 400 kHz Fast speed, označení někdy také FM (fast mode), 1 MHz Fast mode plus (označení FM+ ) signál SCL nemusí být synchronní, není určen minimální frekvence (možnost asynchronní signál), STM32F100 SM a FM, STM32F051 podporuje SM, FM, FM+
SDA
data platná při SCL = 1
SCL
změna dat při SCL = 0 data stabilní
změna dat
0 SDA
data stabilní 1 přenos bitů 0 a 1
SCL A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
16
Rozhraní IIC Ultra Fast mode UFm Princip přenosu pro SM, FM, FM+ je shodný, odlišnost v rychlosti a velikosti, budič – otevřený kolektor, proud budiče (SM, FM do 3 mA, FM+ 20 až 30 mA) Ultra Fast – mode UFm až 3,4 MHz, modifikovaný princip, Pro režim UFm , signály USCL, USDA „U“ – značí ultrafast UFm pro rychlý přenos dat z procesoru do periferie, (ne opačně) není možnost potvrzení („acknowledge“) od periferie budič – typu Push – Pull – obdoba elementárního invertoru CMOS (viz. před. dříve) Možnost prodloužení sběrnice UFm pomocí standardních budičů CMOS logiky (push – pull) LED driver ( PCU9955 firma NXP) Otázka velikosti parazitních kapacit, pro vyšší rychlost – potřeba pro jejich nabití a vybití větších proudů – pro FM+ nižší hodnota odporu pull - up rezistorů Řadič I2C bus pro UFm – umožňuje kombinaci módů FM+ a UFm ( v FM_ konfigurace, zjišťování stavu periferie, přechod na UFm- pouze jednosměrný přenos dat (analogie – rychlý diktát, nejdříve příprava, informace,.., pak rychlý přenos dat, pak zpomalení – kontrola, je vše v pořádku?) A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
17
Rozhraní IIC bus- start, stop
Začátek a konec přenosu zprávy určuje master začátek přenosu - start, SDA spádová hrana při SCL = H konec přenosu - stop, SDA náběžná hrana při SCL = H
SDA
start
stop
SCL S
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
P
18
Rozhraní IIC bus - potvrzení Příklad - přenos dat ACh z master do slave s adresou 50h adresace slave (7 bitů + příznak čtení/ zápis, ACK - potvrzení od slave, přenos dat 8 bitů, ACK - slave, stop - master obvykle - přenosy více Byte potvrzení - ACK přijímajícím ( master, nebo slave)
zápis start S SDA
A6 A5 A4 A3 A2 A1 A0 1
0 1 0 0
0
0
R A W C K 0
MSB
LSB
A stop D7 D6 D5 D4 D3 D2 D1 D0 C P K 1 0 1 0 1 1 0 0
SCL ACK ze slave adresace
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
data
19
Přenos vícebajtové zprávy po rozhraní IIC Po start S a vyslání adresy obvodu - možný přenos dat pouze jedním směrem, čtení nebo zápis, konec přenosu – stop P Kombinovaný přenos - start - zápis, nový start Sr (bez stop) čtení, konecstop. master zapisuje do slave master
S
adr.
W
data ACK
slave
data ACK
data ACK
P ACK
master čte ze slave master slave
S
adr.
R
ACK ACK data
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
NOT ACK
ACK data
P
data
20
Obousměrná komunikace po rozhraní IIC Za start může následovat komunikace pouze v jednom směru, buď Master - zapisuje do Slave nebo Master čte ze Slave Jak řešit, pokud se musí nejdříve do slave zapsat ( např. informace, odkud se má číst) a pak číst? Příklad - 24C02 (paměť EEPROM256 Byte) nejdříve adresa obvodu (dev select) + zápis a předat - adresu byte čteného z paměti (byte address) nový start, znovu adresace obvodu (dev select) a čtení dat u obvodu
Čtení jednoho bajtu dat z paměti z vybrané „bajtové adresy“ R/W = 0
R/W = 1
pozor – je třeba rozlišit adresu součástky a adresu v součástce analogie sdělím - číslo (název) knihy, kterou chci ( adresa obvodu) a pak číslo stránky (bajtová adresa) –adresy bajtu, který chci přečíst) A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
21
Paměť EEPROM s rozhraním IIC bus Paměť EEPROM 24C02 jako příklad obvodu s rozhraním IIC bus Adresa obvodu 1010 XXX , kde XXX jsou tři bity adresy ( A2, A1, A0) volené nastavením tří pinů (A2, A1, A0) „select“
EEPROM 24C02
Důsledek- na IIC bus lze připojit až 8 různých obvodů (kusů) pamětí 24C02 lišících se nastavenou adresou WP – write protect WP= H (log. 1) zápis zakázán, WP= L zápis povolen (viz dále obdobná funkce write protect u PMBus) Specifikace adres (IIC bus) různých obvodů – firma Philips (nyní NXP), pro daný typ obvodu určena daná adresa. ? Jak volba adres IIC Bus u ostatních firem, když tuto volbu nemohly ovlivnit? Různě, často využití dalších adresovacích vstupů (podobně jako A2, A1, A0 u EEPROM 24C02) obvodu pro uživatelskou volbu- nastavení bezkolizní adresy.
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
22
Rozhraní IIC Bus, 7- a 10- bitové adresování IIC Bus, typicky se využívá 7- bitová adresa
Je možná i 10 – bitová adresa (prefix 11110 + 2 horní bity adresy, je adresováno i více slave, které mohou potvrdit pak zbývajících 8 bitů adresy, potvrdí jen jeden slave.
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
23
Rozhraní IIC Bus, implementace Rozhraní IIC bus implementováno v řadě uP , i pod jinými názvy, např. TWI (Two Wire Interface) a další- z důvodu patentové ochrany. Možnost programové emulace rozhraní IIC Bus v uP, které nemají IIC Bus, (příklad ADSP BF 533 pro nastavení obrazového senzoru CMOS) Využití vstupně výstupních bran - úprava na režim emulace funkce otevřený kolektor - přepínání výstup - stav L, nebo vstup (viz přednášky dříve- využití obousměrného výstupu nebo třístavového výstupu jako výstupu s otevřeným kolektorem). Otázka: Popište způsob využití pinu vstupně -výstupní brány (která má ve výstupním režimu pouze PUSH – PULL mód) – pro komunikaci s rozhraním IIC bus.
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
24
IIC Bus a přerušení Omezení IIC – podřízený obvod SLAVE nemůže sám, (pokud není dotázán), vyvolat činnost a požádat o obsluhu. To řešeno dodatečně a nezávisle pomocí přerušením nezávisle na standardu IIC Bus. Obvod s IIC Bus, výstup přerušení typu „Open drain“, požadavek přerušení aktivní ve stavu L (log.0). Možná funkce „wired AND“. „ jediný výstup v L (kdy ostatní připojené výstupy jsou ve stavu H- nesepnutý výstup open drain) připojený na společný vodič způsobí stav L (log 0) na vodiči. Paralelní spojení výstupů / INT jednotlivých obvodů. Master musí sám dotazováním zjistit původce požadavku přerušení.
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
25
IIC Bus a přerušení Obvod PCF8574 (Remote 8-BIT I/O Expander for I2C BUS) P7 až P0 vstupy- výstupy-, kvazi - obousměrný port Volba adresy obvodu -nastavením vstupů A2, A1, A0 (připoj. na GND nebo Ucc) / INT výstup přerušení – open drain (aktivní v L) Změna stavu na kterémkoliv vstupním pinu generuje přerušení
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
26
Kvazi - obousměrná brána PCF8574 , P7 až P0 kvazi - obousměrný port Výstup jako open drain, připojen „pull op“ (nárada pull up rezistoru – aktivním obvodem. zdroj proudu 0,1 mA). Výst. ve stavu L – nízká impedance, Výst. ve stavu H – pouze jako „ měkký“ zdroj, max proud 0,1 mA) Použití jako vstup – na výstup zapsat úroveň H (log. 1) , možno číst stav ( H nebo L podle vnějšího signálu) Kvazi obousměr. brány analogicky i u mikrořadičů
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
27
Rozhraní IIC v STM32 Blok komunikace s IIC bus Master i Slave mode
komparátor adresypři příjmu možnost využití obvodově řešeného rozpoznání vlastní adresy na sběrnici bez potřeby programové obsluhy (až 2 adresy) Možnost přenosu dat s využitím DMA PEC register (Packet Error Checking) A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha není pro IIC bus, ale využito pro SMBus (viz. dále)
28
IIC – STM32 STM32 možnost detekce vlastní adresy (7 nebo 10 bitové adresy), až 2 slave adresy podpora rychlosti přenosu s frekvencí SCL 100 kHz a 400 kHz
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
29
Rozhraní IIC Bus, použití Použití IIC Bus, mnoho integrovaných obvodů , obvodově nenáročné, pouze dva vodiče SCL, SDA, Převodníky ADC, DAC, snímače teploty, obvody pro dohled v PC, obvody spotřební elektroniky, IO expandery, obvody RTC ( Real Time clock), řadiče LCD, budiče LED, IIC Bus- nastavení CMOS obrazových senzorů, viz senzory firem Kodak, Micron Aptina, ….) Blok pro komunikaci s IIC Bus obsažen v řadě mikrořadičů. Mikrořadiče s jádrem ARM Cortex M3 – obvykle obsahují blok pro IIC bus Mikrořadiče s jádrem ARM Cortex AX (pro mobilní telefony, ..) obvykle také podporují IIC bus. Raspberry PI, Beagle Bone – (moduly s Linux) – rozhraní IIC Bus, moduly Arduino – též IIC Bus
Další informace - IIC bus, princip funkce, použití http://www.standardics.nxp.com/literature/presentations/i2c/pdf/interface.solutions.pdf A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
30
Rozhraní SMBus - System Management Bus Z IIC Bus vychází (úpravy a rozšíření specifikace komunikace) – SMBus Standard SMBus specifikovaly firmy: Duracell, Energizer Power Systems, Fujitsu, Intel, Linear Technology, Maxim Integrated Products, Mitsubishi Electric Semiconductor Company, PowerSmart, Toshiba Battery Co., Unitrode Corporation, USAR Systems,
Již podle firem je vidět, že určení SMBus bude v souvislosti s dohledem na napájení a dalšími funkcemi notebooků (baterie- akumulátory) a osobních počítačů. SMBus je nyní v každém PC. Monitorování stavu napájecí soustavy, měření teploty čipu procesoru, funkce ventilátoru, … SMBus specifikace http://www.standardics.nxp.com/literature/books/i2c/pdf/smbus.specification.pdf
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
31
Rozhraní SMBus SMBus – některé odlišnosti oproti IIC Bus SMBus rychlost fsclk = 10 až 100 kHz (není fast mod,..) IPULLUP 100 až 350 uA - proud pull up obvodem – z UCC k zemi při sepnutí UIHmin = 2,1 V UILmax = 0,8 V “Send Byte” a “Receive Byte” vyslání a čtení jednoho bajtu – kompatibilita IIC a SMBUs Vícebajtový přenos na SMBus , přidán kód příkazu „Command“ (1 bajt) a počet bajtů dat přenášených ve zprávě (1 bajt) Ve zprávě SMBus může být přidán bajt PEC (poslední bajt zprávy po datech pro Packet Error Checking) při přenosu z master do slave i při přenosu ze slave do master. Přidána možnost signalizace požadavku (od) slave o obsluhu SMBus alert - (hardware alerting) - slave může po samostatném vodiči signalizovat požadavek o obsluhu (princip. obdoba - viz přerušení u IIC Buc)
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
32
Rozhraní PMBus PMBus vychází z SMBus určení pro: Power - supply Management. Řízení napájecích zdrojů, hot-swap kontrolérů (podpora výměna bloků systémů při napájení), bloků sekvenčního zapínání a vypínání napájení procesorových systémů, konvertorů sběrnic, regulace zátěží srovnání bloků IIC Bus a PMBus IIC bus master – PMBus System manager, dle materiálů Texas Instruments IIC bus slave PMBus device Signály SCL, SDA navíc SMBALLERTn (aktivní v L),signalizace z PMBus device do syst. manager – potřeba obsluhy
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
33
Rozhraní PMBus WP (write protect) optional, doplňková funkce. Pokud je v obvodu implemetována funkce WP - ochrana proti zápisu, zápis do vnitřních pamětí obvodu (změna nastavení) povolen pouze , pokud WP=0, pokud WP = 1 nebo rozepnut, je WP aktivní a zápis je zakázán viz analogicky , jako u IICBus paměti EEPROM 24C02 Použití PMBus, obvody napájení, řidicí obvody impulsích napájecích zdrojů, možnost nastavení parametrů ( napětí, frekvence spínání pulsního zdroje) , telemetrie (– vzdálené monitorování) vnitřních parametrů, měření napětí, proudů , teplot ! na čipu řídicích obvodů napájecích zdrojů počítačových systémů, základnových stanic (base station) GSM (napájecí bloky poč. systémů, disková pole, switche, routery, UPS,.. možnost vzdáleného monitoringu) více o problematice viz www.ti.com/digitalpower A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
34
Příklady obvodů rozhraním PMBus LM25066- System Power Management and Protection IC With PMBus TPS40400 3.0V to 20V synchronous buck controller pozn. buck controller - viz další přednášky o napájecích zdrojích. vest. systémů
A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
35
Programová emulace paralelních a sériových rozhraní Pokud mikrořadič neobsahuje dané rozhraní (SPI, IIC Bus, paralelní rozraní pro LCD,,….) je možno jej programově emulovat. V úloze A4B38NVS – připojení 7 seg. zobrazovače s pos. registrem – optimální využít rozhraní SPI. Ve cvičeních – progr. emulace sériového rozhraní SPI. Řadič LCD HD44780 – má paralelní komunikační rozhraní ( Data, R/W, E), které bylo u mikrořadičů firmy Motorola. Celý proces zápisu (8- bitové) nebo představoval jednu instrukci procesoru pro přenos dat po externí sběrnici. Obsluha LCD na cvičení - typický příklad programové emulace konkrétního paralelního rozhraní. Mikrořadiče s vyvedenou paralelní sběrnicí – možnost přímého připojení externích programovatelných obvodů obvodu (komunikačních řadičů Ethernet, CAN, řadičů High speed USB, …, časovačů,…) Mikrořadiče bez vyvedené sběrnice, pouze se vstupně- výstupními branami – programová emulace paralelního rozhraní pro komunikacy s takovými obvody. Příklad - připojení ext. řadiče Ethernet k ARM7 typu LPC2114, viz, aplik. nota firmy NXP A4B38NVS, 2015, J.Fischer, kat. měření, ČVUT - FEL, Praha
36