Uživatelské nástroje

Nástroje pro tento web


cs:i2cspi

Rozdíly

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


Předchozí verze
cs:i2cspi [Unknown date] (aktuální) – upraveno mimo DokuWiki (Unknown date) 127.0.0.1
Řádek 1: Řádek 1:
 +====== Konvertor z I²C na SPI - I2CSPI01A ======
 +
 +Modul umožňuje ovládání SPI zařízení přes I2C sběrnici. Je tak možné ovládat SPI zařízení za použití knihovny [[cs:pymlab]].
 +
 +===== Základní vlastnosti =====
 +
 +  * I²C-bus slave interface operating up to 400 kHz
 +  * SPI master operating up to 1.8 Mbit/s
 +  * 200-byte data buffer
 +  * Up to four slave select outputs
 +  * Up to four programmable I/O pins
 +  * Operating supply voltage: 2.4 V to 3.6 V
 +  * Low power mode
 +  * Internal oscillator option
 +  * Active LOW interrupt output
 +
 +
 +===== Výběr I²C adresy =====
 +
 +Modul umožňuje výběr několika I2C adres. Tyto adresy mohou být zvoleny jednak osazením rezistorů na PCB a dále konfigurací jumperu na modulu. 
 +V případě změny volby adresy se adresa modulu změní až po odpojení a připojení napájení.
 +
 +
 +===== Použití modulu =====
 +
 +Modul se připojuje na sběrnici konektorem s MLAB standardním uspořádáním pinů. Modul by při správném zapojení měl být vidět na sběrnici. Podobně jako v tomto případě, kdy má zvolenou adresu 2E. 
 +
 +  odroid@odroid:~$ sudo i2cdetect -y 4
 +        1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
 +  00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
 +  10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
 +  20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- 2e -- 
 +  30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
 +  40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
 +  50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
 +  60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
 +  70: 70 -- -- -- -- -- -- --                         
 +  odroid@odroid:~$
 +==== Linux driver ====
 +
 +Protože k integrovanému obvodu sc18is602 existuje driver v Linux kernelu spi-sc18is602, můžeme v systému přímo vytvořit SPI zařízení. 
 +
 +  sudo modprobe spi-sc18is602
 +  echo sc18is602 0x28 > /sys/bus/i2c/devices/i2c-7/new_device
 +  
 +Tím by mělo vzniknout nové zařízení na /sys/class/i2c-adapter/i2c-0/0-0028/spi_master/spi0 a nové systémové rozhraní /sys/class/spi_master/spi0/spi0.0 
 +Tento driver bohužel ale nefunguje při použití modulu [[cs:usbi2c|USBI2C]], kdy nové SPI zařízení v systému nevznikne, neboť driver k tomuto modulu vyžaduje I2C budič. Postup ale funguje při použití rozhraní vytvořeného pomocí [[cs:i2c_avr_usb|i2c-tiny-usb]].
 +
 +[[http://www.spinics.net/lists/lm-sensors/msg37023.html|Zdroj]]
 +
 +
 +==== Pymlab ====
 +
 +Modul zle ovládat z Pythonu pomocí knihovny [[cs:pymlab|Pymlab]].  Pro připojení modulu pak lze použít převodník [[cs:usbi2c|USBI2C]] a ten ovládat z libovolného systému pomocí HIDAPI. Ve zdrojácích knihovny Pymlab je připraven příklad pro SPI komunikaci s [[cs:altimet|barometrickým modulem ALTIMET]], který obsahuje SPI variantu senzoru MPL115A1.
 +
 +{{ :cs:modules:altimet_i2c_spi_link.jpg?direct&400 |Připojení SPI verze senzoru ALTIMET na sběrnici I²C.}}
 +
  
cs/i2cspi.txt · Poslední úprava: 2017/06/05 12:09 (upraveno mimo DokuWiki)