TODOPIC
Microcontroladores PIC => Todo en microcontroladores PIC => Mensaje iniciado por: pendexgabo en 12 de Abril de 2005, 08:32:00
-
buenas, estoy en un proyecto donde necesitamos colocar varios pic trabajando en paralelo pero comunicados entre sí a alta velocidad, tenia ganas de implementar un bus de comunicacion mediante protocolo SPI, porque segun tengo entendido soporta velocidades de transmicion superiores a un 1 mb/s.
el tema es que necesito que todos puedan enviar y recibir en cualquier momento, sin un orden predefinido (todos master y todos esclavos), estuve viendo por google pero no pude encontrar nada, alguien tiene una idea de como implementar esto??
se que es posible hacerlo con I2C pero por el momento creo que la velocidad no me alcanza (400 kb/s).
la idea es hacer una red neuronal donde cada PIC es la minima unidad de proceso y cada uno posee una direccion con el cual se identifica en el bus
gracias
-
Buenas pendexgabo.
Es cierto que el bus SPI es bastante rápido, la pantalla del LCD nokia 3310 es SPI y soporta hasta 4Mbps. Lo que nunca vi es que fuera un bus multimaestro.
De todas formas, podrías intentar "imitar" la detección de colisiones en el bus I2C en el SPI.
Otra idea sería crear líneas de "petición de bus" y "bus ocupado" o algo asi, en fin, inventar un protocolo sencillo para que los PICs accedan al bus sin colisionar.
-
creo que en el foro de C encontre algo que decia que los micros quedaban configurados en SLAVE por default y solo cambiaban a MASTER cuando querian transmitir algo, mi problema es ese. como realizar eso, las cuestiones de peticiones ya vere como arreglarlo
gracias
saludos