Autor Tema: Necesito informacion sobre memorias i2c  (Leído 5971 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Necesito informacion sobre memorias i2c
« en: 11 de Abril de 2007, 00:01:26 »
hola, ya termine el proyecto en el que estaba, pronto lo colgare para que al que le pueda resultar util lo tenga disponible, pero antes quiero hacerle unas mejoras.
se trata de las memorias i2c. me gustaria saber algo mas de ellas.
*lo primero es saber que es cada una y si la equivalencia entre las memorias 24Cxx es directa con la 24LCxx... es decir, es lo mismo una 24c08 y una 24lc08? esta pregunta surge porque al querer leer o escribir memorias eeprom desde el winpic o desde el icprog solo puedo escojer las 24Cxx y no las LC que son las que tengo yo...
*de esto deriva una segunda pregunta, que es porque en winpic al lado de 24c08 dice 1kb, cuando es de 8kb? y eso ocurre con todas las 24cxx... el valor en Kb esta dividido entre 8.
*esta pregunta es sobre como usar las direcciones de memoria. imaginemos que tengo una memoria de 8kb (la 24lc08b), esta tiene una capacidad de almacenamiento de 8192 datos de 1byte. es decir, que tendra direcciones desde 0 (0x00) hasta 8191 (0x1fff). con lo que con usar una direccion que este ente estos valores escribiremos o leeremos de esa direccion. esta direccion tendra que ser de 13bits (2^13=8192), aunque en la practica utilicemos 16bits. si usaramos una memoria de 64kb podriamos usar una direccion de 16bits tambien... pero imaginemos que queremos usar una memoria de 128kb... ahora como hacemos? porque al guardar la direccion en una variable de 16 bits se nos desborda, ya que necesitariamos una variable de 17 bits para manejar las 131072 direcciones de una memoria de 128kb... no?
*y la ultima, entiendo como manejar memorias i2c por software, ya que el compilador ccs trae los drivers para manejar las distintas memorias. pero si quisiera manejarla por hardware con un pic que tenga hard i2c? tengo que usar los mismos drivers de ccs?
se que son bastantes preguntas, no hace falta que respondan a todo, yo por mi parte estoy investigando. desde ya muchas gracias!!!
salu2
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado elreypic2

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1297
Re: Necesito informacion sobre memorias i2c
« Respuesta #1 en: 11 de Abril de 2007, 11:31:20 »
Que tal Marttyn:

Con respecto tu primera pregunta:

Cita:
lo primero es saber que es cada una y si la equivalencia entre las memorias 24Cxx es directa con la 24LCxx... es decir, es lo mismo una 24c08 y una 24lc08?

Respuesta: Si las dos memorias son compatibles una con otra.

Cita:
que es porque en winpic al lado de 24c08 dice 1kb, cuando es de 8kb?
De hecho es 1KB (1 kilobyte) o lo que es lo mismo 8Kb (8 Kilobits). Es decir, esta memoria tiene solamente 1024 bytes

Una cosa que debes tener en cuanta es la diferencia entre escribir KB y Kb. Como lo menciono anteriormente KB es kilobytes y Kb es kilobits.

Asi que ya con esto creo que quedara mas claro tu concepto y se ira tu confusion.

Para despejar aun mas tu duda te recomiendo leer las hojas de datos de las memorias que deseas utilizar en ellas veras como se direcciona una memoria de 128KB (1 Mb) 24LC1025.

Saludos y espero haber ayudado.

Elreypic.

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re: Necesito informacion sobre memorias i2c
« Respuesta #2 en: 11 de Abril de 2007, 15:38:04 »
jajaaj, pues vaya burro estoy hecho!
no se como me confundi con algo asi! tienes toda la razon! b es bit y B es byte! pues con eso queda todo dicho.
lo unico que me queda por saber es como manejar i2c por hard...
salu2 y gracias por "designoranciarme"  :D
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado KALLITOS

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1256
Re: Necesito informacion sobre memorias i2c
« Respuesta #3 en: 11 de Abril de 2007, 17:44:26 »
Por estos lares se dice "desasnarme" :D :D
A un microcontrolador hay que sacarle hasta el ultimo byte....(YO)

Cómo puede ser que un pic24EP512 me quede corto de memoria, señores de MICROCHIP saquen pics con más memoria flash

Más de 45 mil lineas de codigo y aun no termino el equipo, asu mare!!

S34ML08G1TFI200 no necesito mas memoria externa.

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re: Necesito informacion sobre memorias i2c
« Respuesta #4 en: 11 de Abril de 2007, 19:32:53 »
si, en mi tierra se dice igual, pero no me acordaba la palabra y esa fue la primera que se me vino...  :mrgreen:
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Necesito informacion sobre memorias i2c
« Respuesta #5 en: 12 de Abril de 2007, 11:57:44 »
jajaaj, pues vaya burro estoy hecho!
no se como me confundi con algo asi! tienes toda la razon! b es bit y B es byte! pues con eso queda todo dicho.
lo unico que me queda por saber es como manejar i2c por hard...
salu2 y gracias por "designoranciarme"  :D

Jeje, no te sientas tan mal, es una Pregunta muy común y muchos confunden este dato.  Salvo en las PCs, en lo que es cosas pequeñas , de pocos bytes, suelen venir especificadas en bits.

Saludos
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado PalitroqueZ

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 5474
    • Electrónica Didacta
Re: Necesito informacion sobre memorias i2c
« Respuesta #6 en: 12 de Abril de 2007, 15:50:34 »
sin ánimo de armar una alharaca por esto de la b mayúscula y minúscula pero ¿no es igual escribir Kb y KB? saquenme de esta duda.

La propiedad privada es la mayor garantía de libertad.
Friedrich August von Hayek

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re: Necesito informacion sobre memorias i2c
« Respuesta #7 en: 12 de Abril de 2007, 16:55:23 »
pues como se ve no... B es de Byte y b es de bit...  :mrgreen:
sera algo que no tengas muy en cuenta... hasta que te pase como a mi...
ahora diferenciare sin problemas las b de las B, el problema sera tener que deducir que quiere decir cada uno cuando le de igual las mayusculas y las minusculas.
y menos mal que me aclararon esto a tiempo y todavia puedo cambiar la memoria que usare en mi proyecto, xq cuando este todo soldado y el programa hecho, me iba a costar descifrar xq mi memoria solo rendia 1/8 de  la capacidad que creia que tenia!

llegamos a la conclusion que las memorias mas grandes que hay eeprom son de 128kB? si necesito mas?
vaaale  :roll:  tengo el proyecto de redpic para usar 4 de estas juntas, pero si 512 sigue siendo poco?
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Necesito informacion sobre memorias i2c
« Respuesta #8 en: 12 de Abril de 2007, 20:10:36 »
sin ánimo de armar una alharaca por esto de la b mayúscula y minúscula pero ¿no es igual escribir Kb y KB? saquenme de esta duda.

Casualmente eso es lo que venía diciendo :)  .  Suenan igual, parecen iguales pero... no lo son .

Y la diferencia es nada más y nada menos que 8 a 1!!

Entonces si compras una memoria MMC de 32Mb, estas comprando una de 4MB y puede que basado en eso hagas mál tus cálculos de previsión de la memoria que te hace falta para un desarrollo y podría ser catastrófico.
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado Marioguillote

  • Moderadores
  • PIC24H
  • *****
  • Mensajes: 1926
    • Servisystem
Re: Necesito informacion sobre memorias i2c
« Respuesta #9 en: 12 de Abril de 2007, 20:43:49 »
Hola a todos !  :)

Una cosa que debes tener en cuanta es la diferencia entre escribir KB y Kb. Como lo menciono anteriormente KB es kilobytes y Kb es kilobits.

Yo tenía entendido, que KB y Kb eran lo mismo. Kilobytes o KiloBytes.
Que cuando se hablaba de bits, se especificaba con la palabra a continuación de la K. Es decir Kbits.
O sino encontrar la K solita. Eso significaban bits. Como dicen las hojas de datos de las memorias éstas en cuestión.
24C08 = 8K
Confieso que a mí también me paso al conocerlas, que pensaba que los últimos números significaban la cantidad de Bytes.

Y realmente es como dice Mauricio : Suenan igual, parecen iguales pero... no lo son .

Saludos a todos!
Mario
« Última modificación: 13 de Abril de 2007, 08:35:34 por Marioguillote »

Desconectado maunix

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 4751
    • Mi Sitio Web Personal
Re: Necesito informacion sobre memorias i2c
« Respuesta #10 en: 13 de Abril de 2007, 08:32:44 »
En realidad la información está detallada en los datasheets.  Ahí se puede entender bien a qué se refieren, solo que uno al leer rápido malinterpreta, pero si baja el datasheet y lo lee, seguramente lo entiende y no quedan lugar a dudas.

 :)

Por eso siempre es bueno bajarse las hojas de datos.
- La soberbia de un Einstein es entendible.. la de un salame es intolerable (A.Dolina)
- En teoría no hay diferencia entre la teoría y la práctica. En la práctica... si la hay.
- Lee, Lee, Lee y luego pregunta.(maunix)
- Las que conducen y arrastran al mundo no son las máquinas, sino las ideas (V. Hugo)
- Todos los hombres se parecen por sus palabras; solamente las obras evidencian que no son iguales.(Moliere)
- Todo debería ser hecho tan simple como sea posible pero no mas simple que eso.(A.Einstein)

Desconectado elreypic2

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1297
Re: Necesito informacion sobre memorias i2c
« Respuesta #11 en: 13 de Abril de 2007, 10:36:32 »
Marttyn:

Respondiendo a tu pregunta de en caso de necesitar mas memoria, entonces lo que tienes que hacer es buscar otro tipo de memoria. POr ejemplo memorias con protocolo SPI y del tipo flash. Asi de estas se encuentran las de la serie AT25FXXX que van desde 512Kb (64KB) hasta 4Mb (512 KB). Pero si eso no es es suficiente entonces usas la siguiente serie AT25DF/26XXX la cual va desde 4Mb hasta 32 Mb. Pero si esto no es sificiente entonces usas la siguiente serie, AT45XXX
que va desde 1 Mb hasta 64 Mb. Todas las anteriores fabricadas por ATMEL.

Calro esta que aqui no termina la solucion ya que tambien se pueden emplear memorias SD o memorias Pendrive (USB) entonces tu capacidad seria ya del orden de MBytes (para que no se confunda) o hasta de GBytes. Pero usar este tipo de solucion incrementa considerablemente el costo del dispositivo.

Saludos y espero haber contribuido aun mas.

Elreypic.

Desconectado Marttyn

  • Colaborador
  • PIC24H
  • *****
  • Mensajes: 1835
    • IDEAA
Re: Necesito informacion sobre memorias i2c
« Respuesta #12 en: 13 de Abril de 2007, 12:43:21 »
los datasheets tengo una coleccion completa de todos los micros, memorias y componentes que utilizo habitualmente, pero a veces, y sobre todo siendo tan nuevo en esto, al haber tantas hojas para buscar ya no sabes ni donde mirar. con las memorias 24x ya lo tengo claro, incluso me hice un driver para manejar las 241025 (con ayuda del post de redpic para manejar 4 de estas).
con lo que comenta elreypic tengo suficiente memoria para un buen rato antes de tener que pasarme a pendrives o similares :mrgreen:
gracias a to2!
salu2
La gente ve las cosas que existen y se pregunta por qué.
Yo prefiero imaginar lo que no existe y preguntarme por qué no.

Desconectado micro_pepe

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3206
Re: Necesito informacion sobre memorias i2c
« Respuesta #13 en: 01 de Septiembre de 2010, 19:35:17 »
Que tal Marttyn:

Con respecto tu primera pregunta:

Cita:
lo primero es saber que es cada una y si la equivalencia entre las memorias 24Cxx es directa con la 24LCxx... es decir, es lo mismo una 24c08 y una 24lc08?

Respuesta: Si las dos memorias son compatibles una con otra.

Elreypic.

Segun esto, una C y una LC son compatibles. Os comento el problema que tengo, en CCS uso la libreria de una 2402. Coloco una memoria 24C02, y en algunas ocasiones no guarda los datos que grabo.

Sin embargo, si coloco una 24LC16 que tenía a mano, si los mantiene.

Estoy usando solamente los 7 primeros bytes, del 0 al 6, por lo que no es problema de sobredireccionar.

Creo que todo a punta a un mal estado de la memoria, pero quizas no sea así, ¿Alguien experimentó algo parecido?

Saludos.
Se obtiene más en dos meses interesandose por los demás, que en dos años tratando de que los demás se interesen por ti.

新年快乐     的好奇心的猫死亡

Desconectado ASTROCAR

  • PIC24F
  • *****
  • Mensajes: 664
Re: Necesito informacion sobre memorias i2c
« Respuesta #14 en: 02 de Septiembre de 2010, 09:39:05 »
Buenos dias, yo en lo particular siempre parto de esta maña venezoelana y digo que nadie diseña, hace o dice  algo sin un significado logico en tal caso por algo esa identificdacion en las eeprom i2c y estudiando  en tiempo pasado logicamente encontre un documento que hacia referencia a esas letras y si mal no recuerdo era para identificar el tipo de memoria y su velocidad pero ya es cuestion de buscar con mas calma pero de que no es igual no lo es las LC son mas rapidas que las C.

Ahora algo que comento el colega que abrio estye post y creo se escapa es lo de direccionar las eeprom, es decir a mayor capacidad la eeprom tiene mas direcciones y seria imposible leerla con una variable byte loq ue hace este protocolo es que divide sus data en bloque o pagina como le llaman algunos y y cada bloque esta contituido por en byte 256 posiciones pero lo que tendria es que saber direccionar a que bloque de la eeprom vas a leer o escribir.

Saludos y espero me entiendas.
Atten.
Alexander Santana.
Barcelona-Venezuela.
EL APRENDER ES NADA; MEJOR ES COMPARTIR EL APRENDIZAJE