Paso 2: 25AA - / 25LC SPI EEPROM
Todos los grupos demográficos EEPROM buscar lo mismo. A escribir unos números en el chip y luego leerlos. Cada dispositivo tiene las condiciones que se aplican una vez que usted desea escribir más de algunos valores, tales como tamaño de página y límite de limitaciones. Lea más acerca de estos en la hoja de datos para su dispositivo específico.
Si usted no puede obtener una demostración para trabajar, Descargar completo terminal para no perder una sola cosa que hicimos. Resistencias pull-up son el problema más común, compruebe el voltaje del pin de pull-up mediante el menú 'v' en el terminal de Bus Pirate.
Chip: 25AA, SPI EEPROM (1Kbyte).
Bus: SPI. Resistencias de pull-up que sólo se requiere para interfaces de voltaje mixto.
Requisitos de alimentación: 1.8volts a 5.5volts (AA), 2.5volts a 5.5 voltios (LC).
Referencias: hoja de datos, hackear una demostración del día.
Registro de sesión completa Bus Pirate para esta demostración.
No podía incluir algún formato y tablas HTML en un Instructable, usted puede ver el original en el blog de prototipos peligroso.
IC5 es un 25AA-serie I2C EEPROM de Microchip, estos EEPROMs vienen en una tonelada de tamaños. AA partes van desde 1.8volts a 5.5volts, mientras que las partes 25LC tienen mínimo de 2,5 voltios.
C3 (0.1uF) desempareja la EEPROM SPI desde la fuente de alimentación. La escritura (WP) de proteger y sostener pernos pueden ser controlados por un microcontrolador, pero nosotros los discapacitados mediante la celebración de estos pines alta. Los pines del bus SPI, CS,, CLK y DI, son llevados al header JP4.
Programa de instalación
Si está utilizando a un Bus Pirate, conecte al 3EEPROM o 25AA-IC como se muestra en la imagen de la tabla a continuación. SPI normalmente no requiere de resistencias pull-up.
Entretela
En el Bus Pirate prensa terminal am' para el menú y seleccione SPI. Configurar la biblioteca SPI de salida normal pin, utilice los valores predeterminados para todos otros ajustes de modo SPI. Habilitar las fuentes de alimentación (grandes ' W') en el indicador de modo SPI. Por último, obtener un informe de tensión para asegurarse de que las fuentes de alimentación están trabajando ('v').
Vamos a demostrar cómo la EEPROM directamente en 3.3volts utilizando la librería SPI en modo pin normal de interfaz. Resistencias pull-up no son para este demo. Si usted quiere una EEPROM con 5volts de interfaz, utilizar la librería SPI en Abrir modo de colector (HiZ) pin y habilitar las resistencias pull-up con el pin Vpullup (Vpu) conectado a fuente de alimentación de la EEPROM.
Paso 1, apagar la protección de escritura '
SPI > [0b110]
HABILITADO de CS <<< chip select habilitado
ESCRITURA: 0 x 06 <<< deshabilitar escritura proteger comando
CS con discapacidad <<< chip selectas discapacitados
SPI >
25AA - es de escritura protegido en encendido. Bajar chip select (CS) ([]), enviar la escritura desactivar protección comando (0 x 06) y luego eleve CS (]) para habilitar la escritura a la EEPROM.
Protección contra la escritura de desactivar comando 0b00000110 en binario, pero nosotros podemos acortar a 0b110 y el Bus Pirate se entiende todavía.
Paso 2, escriba algunos valores
SPI > [0b10 0 3 2 1]
HABILITADO de CS <<< chip select habilitado
ESCRITURA: 0 x 02 <<< escribir comando
ESCRITURA: 0 x 00 <<< escribir la dirección de inicio
ESCRITURA: 0 x 03 <<< 3 valores para escribir (3,2,1)
ESCRIBIR: 0 X 02
ESCRIBIR: 0 X 01
CS con discapacidad <<< chip selectas discapacitados
SPI >
Ahora puede escribir la EEPROM. En primer lugar, bajar CS para activar 25AA - ([]). Siguiente, envíe la escritura comando (0 x 02) y el lugar para comenzar a escribir (0). Enviar los datos a almacenar (3 2 1), entonces levante CS (]) para guardar los valores.
Nota: hemos utilizado un pequeña 128 byte EEPROM, chips de mayor uso de una dirección de 16 bits (2 bytes). Este comando sería [0b10 0 '''0 ''' 3 2 1] para mayores 256bytes de EEPROMs, tenga en cuenta el segundo 0. Verifique la hoja de datos de la EEPROM.
Paso 3, detrás de leer valores
SPI > [0b11 0 r: 3]
HABILITADO de CS <<< chip select habilitado
ESCRITURA: 0 x 03 <<< comando de lectura
ESCRITURA: 0 x 00 <<< Lea la dirección de inicio
A granel leer BYTES de 0 x 03: <<< Lea 3 valores
0 x 03 0x02 0x01
CS con discapacidad <<< chip selectas discapacitados
SPI >
Finalmente, leer los datos a verificar que la escritura era acertada. Seleccione 25AA - ([]), enviar la lectura comando (0 x 03) y dirección (0) y luego lee tres valores (r: 3). Levante el CS para completar la transacción (]). Coinciden con los valores, la escritura era acertada.
Nota: se utilizó un pequeño 128 byte EEPROM, virutas más grandes utilizan una dirección de 16 bits (2 bytes). Este comando sería [0b11 0 '''0 ''' r: 3] para mayores 256bytes de EEPROMs, tenga en cuenta el segundo 0. Verifique la hoja de datos de la EEPROM.