Autor Tema: I2C y SPI a la vez  (Leído 5334 veces)

0 Usuarios y 2 Visitantes están viendo este tema.

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
I2C y SPI a la vez
« en: 20 de Febrero de 2005, 13:34:00 »
Hola, hay alguna posibilidad de usar estos dos dispositivos a la vez??? como debería hacerlo?? no encuentro nada por el estilo, y la verdad no se como hacerlo :S

Gracias y saludos!

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
RE: I2C y SPI a la vez
« Respuesta #1 en: 20 de Febrero de 2005, 15:28:00 »
vale ya lo tengo, la respuesta es si, usando este comando:
NOFLOAT_HIGH

#use i2c(Master, SDA=PIN_C4, SCL=PIN_C3,force_hw,NOFLOAT_HIGH)

Salu2!

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
RE: I2C y SPI a la vez
« Respuesta #2 en: 21 de Febrero de 2005, 15:30:00 »
Sabeis si se puede conectar un dispositivo I2C a pines q no sean los del I2C, es que he visto en algun lado (no puedo probarlo q ahora no tengo el DS1307 Enfurruñado ) que si se omite el force_hw en el #use se podria poner esto:

#use i2c (Master, SDA=PIN_A0, SCL=PIN_A1), conectando de esta forma el dispositivo esclavo i2c a esos pines del puerto A, esq tengo algun problemilla con q el SPI y el I2C me compartan el pin C3, y esto me vendría muy muy bien.

Salu2! y gracias Sonrisa

Desconectado pikman

  • Moderador Local
  • PIC24F
  • *****
  • Mensajes: 679
RE: I2C y SPI a la vez
« Respuesta #3 en: 21 de Febrero de 2005, 20:38:00 »
En algunos PIC o mejor los que cuentan con MSSP, puedes optar por una inteface U otra, entonces puedes usar el MSSP, por harware para el SPI, creo que es lo mas conveniente pues por soft CCS no genera las rutinas, y el I2C lo haces por software, solamente debes indicar otro pin que no coincida con los del MSSP, y listo, en mi caso use un IS4004 grabador digital de voz y el I2C para las 24LC256, un RTC DS1307 y uun I/O expander MPC23016, en un 18F452, y anda muy bien, el Master Serial Syncronous Port, es lo que llamo MSSP, tambien puedes optar por la configuracuion contraria y usar el driver para la 93C56 que tiene CCS por soft, la ultima es insertar en "asm" las rutinas provistas por microchip que estan disponibles en www.microchip.com y podras usar , si la memoria te alcanza, cualquier microcontrolador.

saludos

ARIEL
saludos
PikMan

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
RE: I2C y SPI a la vez
« Respuesta #4 en: 22 de Febrero de 2005, 08:15:00 »
muchas gracias pikman Sonrisa

lo q yo kiero hacer es conectar por SPI un LCD en color, y por I2C un ds1307, tal y como comentas irá perfecto!

Gracias! Giño

Desconectado Ignite

  • PIC16
  • ***
  • Mensajes: 107
RE: I2C y SPI a la vez
« Respuesta #5 en: 22 de Febrero de 2005, 08:24:00 »
Por distintos pines supongo ke si puedes, pero con los mismos no se.... porque el I2C depende bastante de las cargas que le pongas detrás, ya que se supone que tiene un límite de valor de capacidad(lo pone en las especificaciones del protocolo) para que funcione correctamente. Con lo cual supongo que depende bastante de lo que quieras colgar en el mismo bus.

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
RE: I2C y SPI a la vez
« Respuesta #6 en: 22 de Febrero de 2005, 09:11:00 »
pues el principal problema esq el ds1307 (i2c) necesita resistencias pull up en las lineas sda y scl, y la pantalla SPI no, esto hacia q la pantalla se reseteara en cuanto se deja de leer el ds1307, en fin un follon q parece q se resuelve cambiando los pines del i2c, la cosa esq no sabia hasta ayer (hoy confirmado) que esto podia hacerse!, ya que como puede pasar con el RS-232, el SPI, o el USB, creia q el i2c tb era fijo, con suerte no es asi, asiq ahora va perfecto Sonrisa

Salu2!

Desconectado stk500

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4919
Re: I2C y SPI a la vez
« Respuesta #7 en: 23 de Febrero de 2008, 02:39:54 »
Hola Jim !!
Quizas te sirva esto http://www.captain.at/electronics/pic-mmc/
yo hace tiempo me queria hacer multidiplay y tengo el material tirado por ahi  :lol:
y te voy a seguir los paso para aprender  :-/ :-/ animo Jim

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: I2C y SPI a la vez
« Respuesta #8 en: 23 de Febrero de 2008, 04:06:22 »
Jaime, creo que el único fijo es el USB. Tanto el RS232 como el I2C como el SPI pueden cambiarse por software.

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5544
    • Picmania by Redraven
Re: I2C y SPI a la vez
« Respuesta #9 en: 23 de Febrero de 2008, 06:44:37 »
Jaime, un detalle que a mi me dio dolores de cabeza durante mucho tiempo ... hasta que me leí el manual del CCS. Ja, ja, ja  :D :D :D

Cuando utilizamos el #use RS232 y los pines coinciden con los de la USART siempre se compilará usando el Hardware del PIC salvo que se declare FORCE_SW. Si los pines no coinciden con los de la USART se simulará por Software.

Cuando utilizamos el #use I2C y los pines coinciden con los del  módulo I2C del PIC siempre se compilará simulándolo por Software salvo que se declare específicamente el FORCE_HW. Así cualquier otra combinación de pines o los del Harware sin el FORCE_HW te simulará el I2C por Software.

En CCS el SPI solo es por Hardware y no tienes oportunidad de declararle pines distintos de los del módulo SPI del PIC. Por eso no tienes un #use SPI, sino tan solo un setup_spi() donde podrás modificar sus parámetros.


« Última modificación: 23 de Febrero de 2008, 07:01:35 por RedPic »
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18286
    • MicroPIC
Re: I2C y SPI a la vez
« Respuesta #10 en: 23 de Febrero de 2008, 06:50:56 »
Admitida la corrección de Don Diego, el SPI no puede cambiarse de pines con las directivas de CCS, aunque es muy fácil su implementación por software.

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5544
    • Picmania by Redraven
Re: I2C y SPI a la vez
« Respuesta #11 en: 23 de Febrero de 2008, 06:59:02 »
Eso iba a decir a continuación (estaba comprobándolo).

Tienes por ejemplo la librería MMC_SPI.C que implementa por Soft toda la comunicación SPI con una tarjeta MMC y de la que es muy fácil extraer una librería SPI.C a secas con definición de los pines a utilizar.
« Última modificación: 23 de Febrero de 2008, 07:01:11 por RedPic »
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania

Desconectado jeremylf

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1341
Re: I2C y SPI a la vez
« Respuesta #12 en: 23 de Febrero de 2008, 15:29:46 »
Tambien tendras problemas con la velocidad, ya que el DS1307 como maximo su pin clock acepta hasta 100 khz. Y no creo que tu LCD con interfaz SPI sea menor de 1mhz. Ahi la cosa puede ir lenta... a menos que este mal informado  :D

Yo conectaria el DS1307 a i2c por software y el spi al hardware del pic por el tema de las velocidades; sobre compativilizacion... no sabria decirte porque nunca he probado  :lol:

Suerte.
Salu2.

Desconectado J1M

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1960
Re: I2C y SPI a la vez
« Respuesta #13 en: 23 de Febrero de 2008, 16:14:06 »
El post tiene 3 años!!! para que después digan que hay preguntas que nunca tienen respuesta! jajaja Aun así gracias por las respuestas jejeje

Desconectado RedPic

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 5544
    • Picmania by Redraven
Re: I2C y SPI a la vez
« Respuesta #14 en: 23 de Febrero de 2008, 16:54:46 »
Ya sabes Jaime aquello de que Las cosas de Palacio Van Despacio, y Mas Vale Tarde Que Nunca y también que Nunca es Tarde Si la Dicha es Buena, y A Quien Madruga Dios le Ayuda y ... sobre todo No Por Mucho Tempranar Amanece Mas Madruga ¿o era de otra forma? Ja, ja, ja  :D :D :D
Contra la estupidez los propios dioses luchan en vano. Schiller
Mi Güeb : Picmania


 

anything