User Tools

Site Tools


en:i2cspi
no way to compare when less than two revisions

Differences

This shows you the differences between two versions of the page.


Next revision
en:i2cspi [2015/03/05 13:41] – created kaklik
Line 1: Line 1:
 +FIXME **This page is not fully translated, yet. Please help completing the translation.**\\ //(remove this paragraph once the translation is finished)//
 +
 +====== Konvertor z I²C na SPI ======
 +
 +The module allows controling of SPI devices by [[en:i2c|I²C bus]]. Therefore is possible to control SPI devices trought [[en:pymlab|Pymlab library]].
 +
 +===== Basic features =====
 +
 +  * 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
 +
 +
 +===== I²C Adderess selection =====
 +
 +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í.
 +
 +I²C address can be selected from several addresses by jumper selection or by placement of resistors soldered at PCB. 
 +
 +
 +===== 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.}}
 +
  
en/i2cspi.txt · Last modified: 2015/03/05 19:35 (external edit)