SPI: Arduino e Rpi um caso de amor?

SPi


Serial Peripheral Interface Bus


http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus

-Criado pela Motorola nos anos 70;

- Full Duplex, comunicação entre processadores;


Começando a brincar



  • SS - Slave Select   --  Pino
  • SCK - Serial Clock
  • MOSI - Master Output
  • MISO - Master Input


Pode haver outros nomes, mas nos MCU Atmega geralmente nos referimos assim.


Arduino

http://arduino.cc/en/Reference/SPI

http://www.gammon.com.au/forum/?id=10892


#include <SPI.h>
#include "pins_arduino.h"

pinos :

10 -  SS

11 - MOSI

12 - MISO

13 - SCK

Atmega 


-Arduino "herda" do atmega SPI...


http://avrbeginners.net/architecture/spi/spi.html


- Importante:


Registradores!



Usando SPI


Onda Quadrada....


Distância máxima?

http://www.ti.com/lit/an/slla142/slla142.pdf


Interferência?

??????

Usando o SPI


Cansou de velharia?? 

(quando pesquisei old Schmitt trigger isso foi a coisa mais velha que achei...)

http://en.wikipedia.org/wiki/Schmitt_trigger

O SPI na RPi

Física - http://elinux.org/RPi_Remote_Access


Software- https://projects.drogon.net/understanding-spi-on-the-raspberry-pi/


Kernel

https://www.kernel.org/doc/Documentation/spi/spidev_test.c

https://www.kernel.org/doc/Documentation/spi/



O SPI na Rpi


https://github.com/WiringPi/WiringPi2-Python


Problema de conexão:


https://gist.github.com/lardconcepts/6528855


3,3V <->5V



Solução rápida


http://pt.wikipedia.org/wiki/Divisor_de_tens%C3%A3o

Claro não é a solução ideal, um capacitor 22nF paralelo a R2 ajuda....

projetos


  • Conectar vários arduínos em uma Rpi;
  • Usar Roteadores (OpenWRT) conectado à Arduino;
  • .....
Made with Slides.com