Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
microcontrollertechnik:serielle_schnittstellen [2021/10/24 01:58] – angelegt tfischer | microcontrollertechnik:serielle_schnittstellen [2022/11/30 01:42] (aktuell) – mexleadmin | ||
---|---|---|---|
Zeile 6: | Zeile 6: | ||
< | < | ||
</ | </ | ||
- | {{drawio> | + | {{drawio> |
</ | </ | ||
- | * Keine gibt Takt vor. \\ Es sind gleichberechtigte Kommunikationspartner (siehe <imgref BildNr0> | + | * Keiner |
* Jeder darf zu jederzeit senden. | * Jeder darf zu jederzeit senden. | ||
* Senden und Empfangen geschieht über zwei separate Leitungen. | * Senden und Empfangen geschieht über zwei separate Leitungen. | ||
- | * Kommunikation ist nur zwischen zwei Geräten möglich. \\ Ein weiterer Slave würde eine weiteren U(S)ART-Bus benötigen. | + | * Kommunikation ist zunächst |
+ | * Optional ist eine Adressierung möglich (" | ||
- | </ | + | Datenleitungen: |
- | === I2C === | + | * **RXD** : auf den IC bezogener, unidirektionaler Empfangspin |
- | < | + | * **TXD** : auf den IC bezogener, unidirektionaler Sendepin |
- | < | + | |
- | </ | + | |
- | {{drawio> | + | |
- | </ | + | |
- | * Master gibt Takt vor (siehe <imgref BildNr1> | + | |
- | | + | |
- | * Senden und Empfangen geschieht über die gleiche Leitung. | + | |
- | | + | |
- | * Jeder Slave muss anhand der Signale überprüfen, ob die Daten für ihn gemeint sind. | + | |
</ | </ | ||
Zeile 31: | Zeile 23: | ||
< | < | ||
</ | </ | ||
- | {{drawio> | + | {{drawio> |
</ | </ | ||
* Master gibt Takt vor (siehe <imgref BildNr2> | * Master gibt Takt vor (siehe <imgref BildNr2> | ||
Zeile 38: | Zeile 30: | ||
* Alle Slaves hören auf der gleichen Leitung mit und schreiben auf die gleiche Leitung. | * Alle Slaves hören auf der gleichen Leitung mit und schreiben auf die gleiche Leitung. | ||
* Der gewünschte Slave wird über die __S__lave __S__elect Leitung ausgewählt. | * Der gewünschte Slave wird über die __S__lave __S__elect Leitung ausgewählt. | ||
+ | |||
+ | Datenleitungen: | ||
+ | * **MOSI** : unidirektionale Datenleitung von Master zum Slave, auch | ||
+ | * SDI am Slave: Serial/ | ||
+ | * DI/DIN: Data In | ||
+ | * PICO: Peripheral In, Controller Out) | ||
+ | * **MISO** : unidirektionale Datenleitung von Slave zum Master, auch | ||
+ | * SDO am Slave: Serial/ | ||
+ | * DO/DOUT: Data Out | ||
+ | * POCI: Peripheral Out, Controller In | ||
+ | * **CLK**: Taktleitung | ||
+ | * **SS**: Slave Select (auch CS: Chip Select, CE/EN: Chip ENable) | ||
+ | |||
+ | </ | ||
+ | === I2C === | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | {{drawio> | ||
+ | </ | ||
+ | * Master gibt Takt vor (siehe <imgref BildNr1> | ||
+ | * Slave darf nur zu bestimmten Zeiten senden und nur, wenn der Master dies anfordert. | ||
+ | * Senden und Empfangen geschieht über die gleiche Leitung. | ||
+ | * Alle Slaves hören am gleichen Bus mit und schreiben auf die gleiche Leitung. | ||
+ | * Jeder Slave muss anhand der Signale überprüfen, | ||
+ | |||
+ | Datenleitungen: | ||
+ | * **SDA** : bidirektionale Datenleitung (auch SDL: Serial Data Line) | ||
+ | * **SCL** : Taktleitung (Serial Clock Line) | ||
</ | </ | ||