Wat is de seriële randinterface?

Een seriële perifere interface (SPI) is een goedkope, vierdraads, full-duplex synchrone seriële communicatie datastroominterface die werkt in een master-slave-relatie. Gegevensoverdracht in seriële apparaten vindt bit voor bit plaats, waardoor SPI een interface met lage snelheid is. Het wordt gewoonlijk gebruikt als een koppeling tussen geïntegreerde schakelingen met trage randapparatuur aan boord die met tussenpozen wordt gebruikt. Het concurreert met parallelle datatransmissieapparatuur, maar naarmate SPI in efficiëntie toeneemt, wordt het voordeel van de eerstgenoemde verminderd. SPI wordt soms "microwire" genoemd, hoewel dit wordt beschouwd als een subsetprotocol van SPI.

Gegevensoverdracht via een seriële perifere interface vindt plaats via een volledig duplex protocol. Gegevens worden tegelijkertijd overgedragen en ontvangen in beide richtingen. Toepassingen die SPI gebruiken, worden in deze modus veel efficiënter; een dergelijke toepassing is tussen een coder-decoder (codec) en een Digital Signal Processor (DSP). Andere toepassingen zijn temperatuur- en druksensoren, evenals flashgeheugen.

Telkens wanneer twee seriële randinterface-apparaten communiceren, wordt het ene apparaat de 'master' genoemd, terwijl het andere apparaat de 'slave' is. Het masterapparaat initieert alle communicatie door signalen naar het slave-apparaat te verzenden. Een seriële perifere interfacebus kan meerdere slave-apparaten op één master aansluiten.

Seriële perifere interface-apparaten gebruiken drie registers - besturingsregister (SPCR), statusregister (SPSR) en gegevensregister (SPDR) - bij het verzenden van gegevens, samen met vier verschillende signalen. Het eerste signaal wordt seriële klok (SCLK) genoemd, die alleen door het masterapparaat wordt gegenereerd. Dit wordt gevolgd door master-out slave-in (MOSI), master-in slave-out (MISO) en slave select (SSn), waarbij "n" het aantal slave-apparaten is waarmee het master-apparaat is verbonden.

In een typische single-slave-configuratie zou een technicus die een seriële randinterface wil gebruiken, SCLK verbinden met de invoer van een slave-apparaat. MOSI voert vervolgens gegevens van het master-apparaat naar het slave-apparaat, terwijl MISO gegevens van de slave naar de master overbrengt. Om te bepalen welk apparaat master is en welk slave, verbindt de eerste Master SSn met Slave SSn en genereert een algemeen discreet invoer / uitvoer-signaal naar de laatste.

Om meerdere slaves aan te sluiten op één master in een seriële randinterface, worden afzonderlijke SSn-signalen van het master-apparaat verbonden met afzonderlijke slaves. SS1 is bijvoorbeeld verbonden met Slave 1, SS2 is verbonden met Slave 2, enzovoort. Net als bij een enkele slave-configuratie is SCLK vanaf het master-apparaat verbonden met de meerdere slaves. MOSI van master naar slaves zijn verbonden, evenals MISO van slaves naar master.

ANDERE TALEN

heeft dit artikel jou geholpen? bedankt voor de feedback bedankt voor de feedback

Hoe kunnen we helpen? Hoe kunnen we helpen?