Elementos de SPI
SCLK - Serial CLocK CE - Chip Enable (Chip Select) (Dos puertos CE0 y CE1) MOSI - Master Out Slave In MISO - Master In Slave Out Sin embarho el SPI master driver esta deshabilitado por default en la raspberry, pero es muy fácil habilitarlo, solo tenemos que teclear una línea de código en la consola para quitarlo de la lista negra o bien hacerlo desde raspi-config.
Manual:
- sudo sed -i 's/blacklist spi\-bcm2708/\#blacklist spi-bcm2708/g' /etc/modprobe.d/raspi-blacklist.conf - sudo rebootAutomático:
- sudo raspi-configUna vez habilitado tenemos los siguientes pines del GPIO funcionales.
MOSI P1-19, MISO P1-21, SCLK P1-23, CE0 P1-24 y CE1 P1-26Ya tenemos habilitado el SPI, lo que para empezar a hacer pruebas necesitamos los siguiente:
- MCP3202 ó MCP3008
- Python y Python-dev
- Spidev
Para instalar python python-dev realizar:
-
sudo apt-get install python-dev python |
- git clone git://github.com/doceme/py-spidev - cd py-spidev/- sudo python setup.py install |
Recordemos que el MCP3202 es un chip de 2 canales codificado a 12 bits por lo tanto vamos a estar leyendo valores de 0 - 4095 y el MCP3008 es un chip de 8 canales codificado a 10 bits teniendo valores desde 0 - 1023. Eso se evalua en el código para la manipulación de datos. Los chips deben conectarse de la siguiente manera.Negro: GND
Naranja: CLOCK
Amarillo: MOSI
Azul: MISO
Violeta: CE
Los canales es donde va a entrar la línea de lo que queremos medir y vamos a manipular tanto el canal como el puerto CE que deseamos medir mediante el siguiente script:
Para crear el script creamos un archivo con extensión .py
Con esto podemos a jugar con los numeros de los canales o de los CE para ver y entender el funcionamiento correcto.
Espero que les haya servido, realmente es una excelente herramienta para hacer medicion de sensores ya que por lo regular estos nos arrojan numeros que van de 0 en adelante.



