Estoy tratando de conectar una Raspberry Pi con un PIC32 a través de SPI. Para RPi estoy usando el código spidev_test.c (lo estoy modificando para adaptarlo a mis necesidades) pero ... porque soy un principiante en hardware de programación, me cuesta mucho entender el código completo en spidev_test. c
Aquí está el spidev_test.c: enlace
Si puede, le agradecería que me explicaran cómo funciona este código. Más exactamente, me gustaría saber lo siguiente:
-
¿Cómo funciona la función ioctl ()? ¿Qué devuelve?
-
¿La función open () devuelve 1/0?
-
¿Para qué sirve la función parse_opts ()?
-
Detalle sobre la estructura spi_ioc_transfer. ¿Almacena en rx_buf el primer elemento de la dirección de la matriz?
-
En la función transfer (), ¿cómo funciona exactamente la transferencia? Quiero decir, ¿el envío ocurre en la declaración de la estructura tr? ¿Dónde está la recepción? (Esta es la pregunta más molesta de todas para mí)