521 Shares 1465 views

I2C descrizione dell'interfaccia in russo

I moderni elettrodomestici, dell'elettronica industriale e altre attrezzature telecomunicazioni si trovano spesso soluzioni simili, ma il prodotto può essere virtualmente collegati tra loro. Ad esempio, praticamente ogni sistema include quanto segue:

  • certa unità di controllo "intelligente", che è vantaggiosa in molti casi rappresenta un singolo cristallo microcomputer;
  • unità generiche come un buffer LCD, RAM, porte I / O, EEPROM o convertitori di dati specializzati;
  • componenti specifici, inclusa la configurazione del circuito digitale e un piacere per i segnali video e radio.

Come ottimizzare il loro utilizzo?

Per garantire l'uso più efficiente di queste soluzioni generali per i progettisti e produttori stessi benefici, così da aumentare il livello complessivo di efficienza vari apparati e semplificazione di nodi circuitali utilizzati, la società Philips ha iniziato a sviluppare un semplicissimo bus bidirezionale a due fili che fornisce il controllo mezhmikroskhemnoe più produttivo. Questo bus fornisce un trasferimento di dati tramite l'interfaccia I2C.

Per periodo specificato dal costruttore comprende più di 150 CMOS e dispositivi bipolari che sono compatibili con I2C e destinati per lo svolgimento di lavoro in una delle categorie enumerate. Va notato che l'interfaccia I2C è inizialmente costruito in tutti i dispositivi compatibili, grazie al quale possono senza alcuna difficoltà a comunicare tra loro tramite un bus speciale. Attraverso l'applicazione di tale soluzione costruttiva si è rivelato per risolvere un certo numero di problemi di abbinamento delle varie apparecchiature che è abbastanza caratteristica della portata dello sviluppo di sistemi digitali.

I principali vantaggi

Anche se si guarda a una breve descrizione del UART, SPI, I2C, è possibile evidenziare i seguenti vantaggi di questi ultimi:

  • Per il lavoro è necessario solo due righe – la sincronizzazione e dati. Qualsiasi dispositivo che è collegato ad un bus, può successivamente essere affrontato dal software completamente indirizzo univoco. In qualsiasi momento, esiste una relazione semplice, che permette la funzione principale del trasmettitore master-master o ricevitore.
  • Questo bus offre la possibilità di avere più host, fornendo tutti gli strumenti necessari per il rilevamento di collisione e di arbitrato, aiuta a prevenire il danneggiamento dei dati nel caso in cui due o più della parte superiore comincia a trasmettere simultaneamente le informazioni. In modalità standard fornisce solo sequenziale trasferimento dati a otto bit ad una velocità non superiore a 100 kbit / s, e in modalità veloce, la soglia può essere aumentata a quattro volte.
  • I chip utilizzano una speciale filtro incorporato che sopprime efficacemente picchi e garantisce la massima integrità.
  • Il numero massimo di fiches che possono essere collegati ad un bus è limitato solo dalla sua massima capacità di 400 pF.

I vantaggi per i progettisti

interfaccia I2C, così come tutti i chip compatibili possono notevolmente accelerare il processo di sviluppo, dal circuito funzionale al suo prototipo finale. Va notato che a causa della possibilità di tali chip collegano direttamente al bus senza utilizzare tutti i tipi di circuiti aggiuntivi è previsto spazio per un ulteriore miglioramento e modifica di un prototipo di sistema scollegando e collegamento dei vari dispositivi dal bus.

Ci sono un sacco di vantaggi che impostare l'interfaccia I2C. La descrizione, in particolare, consente di vedere i seguenti vantaggi per i progettisti:

  • Blocchi nel diagramma funzionale completamente corrispondono ai circuiti integrati, e assicura così una sufficientemente rapida transizione da un principio funzionale.
  • Non c'è bisogno di sviluppare interfacce bus, perché il pneumatico è inizialmente integrato in un chip speciale.
  • comunicazione integrata e indirizzamento protocolli di dispositivi permette al sistema di essere completamente software definito.
  • Lo stesso tipo di chip possono essere utilizzati, se necessario in completamente diverse applicazioni.
  • Il tempo di sviluppo totale è significativamente ridotta a causa del fatto che i progettisti possono diventare molto rapidamente familiarità con i blocchi funzionali utilizzate più di frequente, come pure tutti i tipi di chip.
  • Se lo si desidera, è possibile aggiungere o rimuovere i gettoni dal sistema, e non ha molto impatto sulle altre apparecchiature collegate allo stesso bus.
  • Il tempo totale di sviluppo software può essere significativamente ridotta a causa del fatto che non è consentito di utilizzare una libreria di moduli software riutilizzabili.

Inoltre, si segnala una procedura diagnostica estremamente semplice per eventuali guasti e ulteriori debugging, che è diversa interfaccia I2C. Descrizione dice che, se necessario, è possibile senza alcuna difficoltà rintracciare immediatamente anche piccole deviazioni nel funzionamento di tali apparecchiature e, di conseguenza, prendere le misure appropriate. Inoltre degno di nota è che i progettisti hanno fornito soluzioni speciali, che, in particolare, sono molto attraente per una varietà di attrezzature e sistemi che forniscono pile portatile, utilizzando l'interfaccia I2C. in Russo La descrizione sottolinea inoltre che la sua applicazione permette i seguenti importanti vantaggi:

  • Sufficientemente elevata resistenza a qualsiasi anomalia si verifica.
  • il consumo di energia estremamente ridotto.
  • gamma di tensione di alimentazione.
  • Un ampio intervallo di temperature.

Vantaggi per i tecnologi

Vale la pena notare che non solo i progettisti, ma anche la tecnologia è spesso poco tempo fa ha iniziato ad utilizzare un'interfaccia I2C dedicata. alla descrizione russo indica una gamma piuttosto ampia di vantaggi, che sono forniti a questa categoria di professionisti:

  • Standard di bus seriale a due fili con interfaccia aiuta a minimizzare il collegamento tra i chip, cioè, essi presentano meno contatto e richiede meno tracce, facendo circuiti stampati non sono costosi e hanno una dimensione molto più piccola.
  • Completamente integrato interfaccia I2C LCD1602 o qualche altra opzione elimina la necessità di utilizzare il decodificatore di indirizzi, così come altra logica superficiale esterna.
  • Esso prevede la possibilità di utilizzare contemporaneamente più basso su un autobus, che accelera notevolmente le prove e successiva regolazione delle attrezzature, dal momento che il bus può essere collegato ad una linea di assemblaggio di computer.
  • Disponibilità compatibile con tali chip nell'interfaccia VSO, SO e specializzata DIL-pacchetto può ridurre in modo significativo i requisiti per la dimensione del dispositivo.

E 'solo un breve elenco di vantaggi che un'interfaccia diversa I2C LCD1602 e altri. Anche chip compatibili possono aumentare significativamente la flessibilità del sistema utilizzato per fornire estremamente semplice costruzione di varie opzioni di equipaggiamento, così come un aggiornamento relativamente facile per un ulteriore sostegno al livello attuale di sviluppo. Così, è possibile sviluppare un'intera famiglia di attrezzature diverse, utilizzando come base un certo modello di base.

Ulteriore modernizzazione delle attrezzature e l'espansione delle sue funzioni può essere effettuata tramite una connessione standard al bus corrispondente al chip utilizzando l'interfaccia 2C Arduino o qualsiasi altra dell'inventario disponibile. Se necessario per ottenere una maggiore ROM, nel qual caso sarà sufficiente soltanto selezionare un'altra microcontrollore avente una maggiore quantità di ROM. Dal momento che il chip aggiornato, se necessario, in grado di sostituire completamente i vecchi, è possibile aggiungere facilmente nuove funzionalità per apparecchiature o per aumentare le prestazioni complessive da un sezionamento convenzionale chip già obsolete e ulteriormente la loro sostituzione con nuove attrezzature.

ACCESS.bus

A causa del fatto che il pneumatico ha una natura bifilare del, e la possibilità di programmare indirizzamento ACCESS.bus per una delle piattaforme più ideale è appunto interfaccia I2C. Specification (descrizione in russo è presentato in questo articolo), questo dispositivo rende un'alternativa molto più conveniente utilizzare attivamente precedente interfaccia RS-232C per il collegamento di varie periferiche per computer che utilizzano un principio utilizza un quattro-connettore.

Introduzione alla specifica

Per le applicazioni avanzate di controllo a 8 bit, che utilizzano microcontrollori, offre la possibilità di installare diversi criteri di progettazione:

  • sistema completo nella maggioranza dei casi vantaggiose comprende un microcontrollore e altre periferiche, tra cui la memoria e varie porte di ingresso / uscita;
  • il costo totale di combinare vari dispositivi devono essere estremamente minimizzata in un singolo sistema;
  • un sistema che è affidata funzioni di controllo, non prevede la necessità di effettuare la trasmissione di dati ad alta velocità;
  • efficienza complessiva dipende direttamente sulle attrezzature, nonché la natura del bus di collegamento.

Per sviluppare il sistema, pienamente compatibile con i criteri di cui sopra, è necessario utilizzare il bus in cui l'interfaccia seriale I2C da utilizzare. Nonostante il fatto che v'è una banda del bus seriale parallelo, richiede un minor numero di connessioni e meno chip contatto. Non va dimenticato il fatto che il pneumatico comprende non solo i fili di collegamento, ma anche una varietà di formati e procedure necessarie per assicurare la comunicazione all'interno del sistema.

Dispositivo per la comunicazione che utilizzano un'interfaccia I2C emulazione software o il pneumatico deve avere un protocollo specifico che permette diverse possibilità precorrere collisione, perdita o informazioni di blocco. Nei dispositivi veloci devono essere in grado di contattare un lento, e allo stesso tempo il sistema non dovrebbe dipendere apparecchiature collegate, come altrimenti tutti i miglioramenti e modifiche non possono essere utilizzati. È inoltre necessario sviluppare un procedimento mediante il quale l'attuale installazione, un particolare dispositivo è attualmente fornisce il bus di controllo e in quale momento. Inoltre, se i diversi dispositivi aventi frequenza di clock differenti, sono collegate allo stesso bus, è necessario determinare l'origine della sua sincronizzazione. Tutti questi criteri corrispondenti interfaccia I2C per AVR e qualsiasi altro in questo elenco.

Il concetto di base

bus I2C può supportare qualsiasi tecnologia chip utilizzato. Interfaccia I2C LabVIEW e simili che prevedono l'utilizzo di due linee per il trasferimento di informazioni – e sincronizzazione dei dati. Qualsiasi dispositivo collegato così rilevata poiché un indirizzo univoco, indipendentemente dal fatto che è un buffer LCD, la tastiera microcontrollore, memoria o interfaccia, e quindi può funzionare come trasmettitore o ricevitore, a seconda dello scopo per cui specificamente questa apparecchiatura è destinata.

Nella maggior parte dei casi tampone LCD vantaggiosa è un ricevitore standard, e la memoria non solo può ricevere ma anche trasmettere vari dati. Inoltre, il processo di spostamento dispositivi di informazione può essere classificato come slave e master.

In questo caso, il dispositivo si chiama master che avvia la trasmissione di dati e segnali di sincronizzazione sono generati. In questo caso, tutti i dispositivi indirizzabili devono essere considerati in relazione ai suoi slave.

interfaccia di comunicazione I2C prevede più basso, cioè, più di un dispositivo capace di controllo del bus è in grado di connettersi ad esso. La possibilità di utilizzare più di un microcontrollore ad un pneumatico indica che più di un host può essere inviato in qualsiasi momento. Per eliminare il potenziale di caos che rischia di verificarsi quando una tale situazione si verifica, abbiamo sviluppato una procedura di arbitrato specializzata, che utilizza l'interfaccia I2C. Espansori e altri dispositivi prevedono il collegamento dei dispositivi al bus sulla cosiddetta regola di assemblaggio I.

Generazione del segnale di temporizzazione è un dovere del master, e ciascuno genera un proprio segnale durante il trasferimento dei dati, e inoltre può cambiare solo nel caso in cui "tira" slave lento o altro master quando si verifica una collisione.

impostazioni generali

Come SCL, SDA e sono linee bidirezionali che sono collegati ad una sorgente di alimentazione positiva mediante resistenza pullup. Quando il pneumatico è completamente libero, ogni linea è in posizione elevata. Gli stadi di uscita dei dispositivi collegati al bus devono avere una funzione open-drain o collettore aperto che può essere fornita attraverso il montaggio informazioni di interfaccia IM I2C può essere trasmessa ad un tasso non superiore a 400 kbit / s in modalità veloce, mentre nella velocità standard inferiore a 100 kbit / s. Il numero totale di dispositivi che possono essere connessi simultaneamente al bus, dipende solo un parametro. Questa capacità della linea non è più di 400 pF.

conferma

Conferma una procedura obbligatoria nel trasferimento dei dati. Piombo genera un corrispondente impulso di sincronizzazione, mentre il trasmettitore rilascia la linea SDA durante tale clock conferma. Successivamente, il ricevitore deve assicurare stabile ritenzione linea SDA per lo stato alto orologio stabilmente nello stato basso. In questo caso, è necessario prendere in considerazione l'installazione e tenere.

Nella maggior parte dei casi il ricevitore affrontato vantaggiosa deve necessariamente generare un riconoscono dopo ogni byte ricevuto, e l'unica eccezione qui sono solo quelle situazioni in cui l'inizio di invio include l'indirizzo CBUS.

Se il ricevitore slave non è possibile inviare una conferma del proprio indirizzo, è necessario lasciare la linea di dati in uno stato alto, e quindi il facilitatore segnalerà la possibilità di rilasciare "stop", che interromperà l'invio delle informazioni. Se l'indirizzo è stato verificato, ma non può essere guidato per un lungo periodo di tempo più lungo di accettare tutti i dati che portano dovrebbe anche essere interrotta da inviare. Per fare questo, lo schiavo non conferma il prossimo byte ricevuto e lascia solo la linea dati ad alta, in modo che il master genera un segnale di "stop".

Se la procedura di inoltro, prevedere un master-ricevitore, in questo caso, deve comunicare al termine della trasmissione schiavo condotta, e non è confermata dall'ultimo byte ricevuto. In questo caso, il trasmettitore schiavo rilasciare immediatamente la linea dati per condurre in grado di produrre un segnale di "Stop" o ripetere il segnale di nuovo "Start".

Per controllare la disponibilità delle attrezzature, si può provare a inserire gli esempi standard di bozzetti per l'interfaccia I2C Arduino, come nella foto qui sopra.

arbitrato

Il piombo può iniziare trasmissione di informazioni solo dopo la completa liberazione del pneumatico, ma due o più di primo piano può spendere la generazione del segnale di avvio al tempo minimo di ritenzione. Questo porta alla fine ad un segnale preciso "Start" sul bus.

Il lavoro effettuato sul SDA bus di arbitrato quei momenti fino SCL-bus è in stato alto. Se uno dei principali comincia a trasmettere il basso linea dati, ma l'altro – alto, poi il secondo è completamente scollegato da esso, perché lo stato della SDL non è appropriato maggiore stato della sua estensione.

Perfezionamento l'arbitrato può essere eseguita su più bit. A causa del fatto che i primi indirizzi vengono trasmessi e quindi dati, arbitrale può avere una durata fino alla fine dell'indirizzo, e se sarà indirizzata guidando lo stesso dispositivo, in questo caso, sarà presente e vari dati in arbitrato. A causa di questo arbitrato dati di regime non si perde in caso di collisione.

Se il master perde arbitrato, nel qual caso esso può emettere una SCL impulsi di sincronizzazione al byte di fine, e per cui l'accesso è stato perso.