Uživatelské nástroje

Nástroje pro tento web


cs:i2chub

Rozdíly

Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.

Odkaz na výstup diff

Obě strany předchozí revizePředchozí verze
Následující verze
Předchozí verze
cs:i2chub [2013/07/11 10:14] – [I2Chub01A] kaklikcs:i2chub [Unknown date] (aktuální) – upraveno mimo DokuWiki (Unknown date) 127.0.0.1
Řádek 1: Řádek 1:
-====== I²C rozbočovač I2Chub01A ====== +====== I²C rozbočovač I2Chub02B ====== 
-Modul určený k rozvětvení dvouvodičové sběrniceZapojení konektoru je zároveň uzpůsobeno rozvodu napájeníA modul je tedy velice výhodné použít na robotech pro zasíťování čidel ve hvězdicové topologii.+[[http://www.mlab.cz/Modules/CommSerial/I2CHUB02A/DOC/I2CHUB02A.cs.pdf|Dokumentace modulu]] 
 +[[http://www.ust.cz/shop/product_info.php?cPath=22_27&products_id=230|E-shop UST]]
  
 +Modul určený k rozvětvení dvouvodičové sběrnice. Zapojení konektoru je zároveň uzpůsobeno k rozvodu napájení. A modul je tedy velice výhodné použít na robotech pro zasíťování čidel ve hvězdicové topologii.
 ===== Používání modulu ===== ===== Používání modulu =====
  
-Před použitím modulu a připojením napájení se ujistěte, zda všechna připojená čidla mohou být provozována na zvoleném napájecím napětí. Neboť připojením +5V napájení na 3,3V čidlo dojde k jeho zničení. +<WRAP WARNING>Před použitím modulu a připojením napájení se ujistěte, zda všechna připojená čidla mohou být provozována na zvoleném napájecím napětí. Neboť připojením +5V napájení na 3,3V čidlo dojde k jeho poškození, nebo zničení.</WRAP> 
 + 
 +Modul má na standardy MLAB poměrně nezvyklé uspořádání výstupních konektorů, kdy konektory na I²C nejsou paralelně zdvojeny, ale naopak každá hřebínková řada je připojena k jednomu výstupnímu kanálu obvodu TCA9548A a číslována číslicemi 0 až 7.  
 + 
 +==== Python ==== 
 + 
 +Ovládání modulu je  implementováno v balíku [[cs:pymlab|pymlab]] v [[cs:i2c|I²C  subsystému stavebnice MLAB]]. 
 + 
 +==== Linux ==== 
 + 
 +V jádře Linuxu existuje modul pca954x, který slouží k ovládání integrovaných obvodů řady pca9541-8, které jsou však programátorsky kompatibilní s obvodem TCA9548A, použitým v modulu I2HUB02A. Protože I2C není plug-and-play  sběrnice.  Musíme tento modul nahrát do jádra ručně: 
 + 
 +  sudo modprobe pca954x 
 + 
 +Následně je možné modul přiřadit ke konkrétní I²C adrese na konkrétní sběrnici 
 + 
 +  root@OpenWrt:/# echo pca9548 0x70 > /sys/bus/i2c/devices/i2c-1/new_device  
 +  root@OpenWrt:/# dmesg | tail 
 +  i2c i2c-1: Added multiplexed i2c bus 2 
 +  i2c i2c-1: Added multiplexed i2c bus 3 
 +  i2c i2c-1: Added multiplexed i2c bus 4 
 +  i2c i2c-1: Added multiplexed i2c bus 5 
 +  i2c i2c-1: Added multiplexed i2c bus 6 
 +  i2c i2c-1: Added multiplexed i2c bus 7 
 +  i2c i2c-1: Added multiplexed i2c bus 8 
 +  i2c i2c-1: Added multiplexed i2c bus 9 
 +  pca954x 1-0070: registered 8 multiplexed busses for I2C switch pca9548 
 +  i2c i2c-1: new_device: Instantiated device pca9548 at 0x70 
 + 
 +Tento postup způsobí rozdělení hlavní zběrnice na několik segmentů, kdy ke každému segmentu I²C zběrnice lze z jádra přistupovat zvlášť.  
 + 
 +Alternativně je však možné výstupy modulu přepínat ručně použitím přímého zápisu do routovacího registru. Například tento příkaz aktivuje všechny jeho porty (Pozor, pokud budeme v takovém případě na dva různé porty připojena zařízení se stejnými adresami, tak dojde velmi pravděpodobně k zablokování sběrnice.) 
 + 
 +  sudo i2cset -y -r  1 0x70 0xff 
 + 
 + 
 +===== Související stránky ===== 
 + 
 +  * [[cs:i2c|MLAB a sběrnice I²C]] 
 + 
 + 
 +===== Reference ===== 
 + 
 +  * [[https://forum.openwrt.org/viewtopic.php?id=30224|I2Chub02A v OpenWRT]] 
 + 
 +===== Problémy =====
  
 +U verze I2CHUB02A se vyskytla výrobní vada a některé PCB měly nevodivé některé prokovy. Závada se projevovala tak, že nebyly připojeny některé pull-up odpory na napájení.
cs/i2chub.1373537664.txt.gz · Poslední úprava: 2013/07/11 10:14 (upraveno mimo DokuWiki)