TODOPIC
Microcontroladores PIC => Lenguaje Basic para microcontroladores PIC => Mensaje iniciado por: Pedro Pan en 14 de Septiembre de 2006, 20:37:22
-
Hola a todos estoy usando mikrobasic version 2.0.0.1 para comunicar tres pic por medio de I2C, estoy usando la libreria que trae el mikrobasic para eso, pero no se como especificar cual es el maestro y cual es el esclavo, en la ayuda de mikrobasic no dice gran cosa, asi que si alguien pudiera hecharme una manita en esto se lo agradeceria mucho, mi proyecto funciona en comunicar tres computadoras por medio de RS232 y tres pic 16F877 ahorita se oye muy absurdo :mrgreen: :mrgreen:, pero al final tengo que transmitir via RF y los pic me serviran para hacer la codificacion en linea, por lo que ahora estoy tratando de comunicarlos por medio de alamabres asi que si alguien ya uso los modulos I2C o tiene otra sugerencia, talvez me pudiera explicar como especificar el maestro y esclavo, ya busque en el foro y no hay gran informacion de Mikrobasic asi que espero respuestas gracias :-) :-) :-)
-
Hola no tengo el 2.0 y el 5.0 solo habla de comunicacion i2C en "full master", lo cual imagino que es el maestro siempre, que te pasa si todos trabajan en maestro? y habla de que solo los pics con MSSPORT o algo asi son soportados en el portb y portc no mas.
Mira se que no es de mucho mi ayuda, bueno de nada pero porque no checaas bien eso
-
Hola.
Pues yo no se eso de MicroBasic pero, supongo que puedes accesar a los registros de la misma manera que en PBP.
Si eso es cierto, puedes usar la librería que trae Microbasic para establecer la lectura desde un maestro y los demas establecerlos como esclavos.
En los siguientes enlaces se utiliza la instrucción I2CREAD e I2CWRITE para el maestro. Dicha comunicación se hace en software.
Para el esclavo, se le asigna un valor a los registros correspondientes en hardware y se pregunta por las banderas y registros correspondientes.
Si el Microbasic te permite una programación como la de los enlaces, creo que no tendrás mayor problema.
Lo puedes hacer todo por hardware, inclusive tener multimaestros pero, la verdad sea dicha, es muuuuuuuuuuuy tedioso (por lo menos para mi lo fue y ni siquiera terminé la comunicación asi).
Espero te sirva.
http://www.microengineeringlabs.com/resources/samples/pbp/i2cmast.bas
http://www.microengineeringlabs.com/resources/samples/pbp/i2cslave.bas
-
Muchas gracias Mario y Navaismo, en la ayuda dice que solo es soportodado el modo maestro, el modo multi maestro no lo soporta la libreria, pero no especifica como declara al maestro mi al esclavo, Bueno mario revisare los codigos que me recomendastes y les cuento cualquier logro que tenga. Gracias
-
Bueno estuve investigando un poco y creo que la mejor forma de comunicacion entre pics es con la libreria SPI, en la ayuda dice lo siguiente
SPI Library
SPI module is available with a number of PIC MCU models. mikroBasic provides a library for initializing Slave mode and comfortable work with Master mode. PIC can easily communicate with other devices via SPI: A/D converters, D/A converters, MAX7219, LTC1290, etc. You need PIC MCU with hardware integrated SPI (for example, PIC16F877).
Note: This library supports module on PORTB or PORTC, and will not work with modules on other ports. Examples for PICmicros with module on other ports can be found in your mikroBasic installation folder, subfolder “Examples”.
en el cual si puedo indicar cual es el esclavo y maestro.