Cómo usar Slave Select en el transceptor SPI

0

Soy un completo idiota cuando se trata de tecnologías inalámbricas, pero estoy bastante familiarizado con los protocolos a través de cables. Por eso, conozco el SS en los buses SPI y que hay un cable separado para cada dispositivo signle. Cuando se trata de tecnología inalámbrica, ¿hay una dirección insertada al principio como en I2C o cómo se implementa?

Es posible que esté haciendo la pregunta equivocada por completo aquí, pero necesito un punto de partida para continuar mi propia investigación.

Notas:

Estaré usando un avr Arduino, por lo que cualquier implementación de software para usar la interfaz SPI de manera I2C también es adecuada.

También, esto es para un proyecto de automatización del hogar, por lo que habrá muchos dispositivos, pero intentaré mantener la comunicación al mínimo y en ráfagas.

Esta es el transceptor que estoy viendo ahora mismo

    
pregunta Areuz

2 respuestas

1

El formato de los datos transmitidos a través de SPI depende completamente del dispositivo. Normalmente, no hay un byte de dirección según I2C, ya que esta funcionalidad se proporciona a través del pin de selección del esclavo (es decir, la selección del esclavo con el que hablar a través del hardware vs software).

Parte del esquema de SPI es que es un protocolo inherentemente síncrono, lo que significa que puede operar en una amplia gama de frecuencias (desde virtualmente DC con botones, hasta decenas de Megahertz).

Los parámetros clave a los que se debe prestar atención cuando se inicia con SPI y se verifica la compatibilidad del dispositivo.

Fase del reloj : transfiere datos en el flanco ascendente o descendente del reloj

Polaridad del reloj : ¿cuál es el estado del reloj cuando está inactivo (lectura no seleccionada)

Habilitar polaridad : la selección de esclavo alta o baja habilita al esclavo.

Frecuencia de reloj máxima : la frecuencia de reloj máxima que el esclavo puede tolerar.

Editar: De alguna manera me perdí la parte sobre la tecnología inalámbrica

Los dispositivos inalámbricos pueden funcionar con muchos protocolos diferentes y es un campo muy amplio (al igual que el envío de señales a través de cables). La mejor manera de comenzar con la tecnología inalámbrica para un proyecto de automatización del hogar es utilizar un módulo que se encargue del protocolo inalámbrico para usted, luego ordene este módulo a través de una interfaz como SPI o I2C.

El transceptor en particular que enumeró es más básico y tendrá que idear e implementar su propio protocolo. Creo que Jeff en JeeLabs utiliza módulos similares a estos y ha realizado un extenso trabajo al usarlos con fines de automatización del hogar.

Alternativamente, Ebay puede ser una buena fuente de módulos baratos que también administran el firmware. He tenido una buena experiencia con lo siguiente en proyectos relacionados con la automatización del hogar.

  • Módulos HC-05 , se trata de un dispositivo Bluetooth que se puede usar como un enlace transparente (alimente el nivel ttl async serial en el módulo y obtenga caracteres en una consola Bluetooth en su dispositivo maestro (teléfono, portátil, etc.))
  • Módulos ESP8266 , estos vienen en muchos sabores y variedades, e incluso pueden programarse directamente utilizando el entorno de desarrollo Arduino. Estos pueden conectarse a puntos de acceso wifi normales o incluso transmitir una red. Las bibliotecas de alto nivel también están disponibles, lo que permite su uso como un microservidor web o para conectarse para usar los protocolos de Internet de cosas como MQTT.
respondido por el Hugoagogo
1

Tenga en cuenta: La conexión entre Arduino y este dispositivo es SPI, pero no implementa "SPI inalámbrica".
Depende de usted implementar cualquier protocolo de comunicación.

    
respondido por el mic

Lea otras preguntas en las etiquetas