TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: JorgitoFRyOle en 21 de Junio de 2005, 14:00:00

Título: Ayuda con memoria dataflash 8Mb
Publicado por: JorgitoFRyOle en 21 de Junio de 2005, 14:00:00
Buenas a tos:

Sigo con mi proyecto de fin de carrera, ya consegui que me funcionara el reloj ds1305, lo comento por si alguien lo esta utilizando y tiene alguna duda.

Mi problema ahora es que utilizo una memoria dataflash conectada al pic mediante un bus spi.

Lo q no se es que flanco tengo q escribir, en que flanco tengo que leer?

Creo que se lee en el flanco de bajada puesto que lo he intentado con el registro de estado y me devuelve 01011110 (94 en decimal). En el de subida me da 0. Alguien sabe xq me lee mal, yo creo que me deberia dar 10111100, puesto que los bits 2 al 5 del registro estado son 1s fijos, alguien me puede decir donde esta el fallo

Mi codigo es:

BYTE FLASH_leer_estado()
{
   BYTE estado;

   //A 0 cuando kiero leer en el flanco positivo
   setup_spi(SPI_MASTER | SPI_H_TO_L | SPI_CLK_DIV_16);
   output_low(FLASH_CS);
   //habilitamos
   delay_us(1);
   //esperamos
   spi_write(LECTURA_REGISTRO_ESTADO);
   //enviamos opcode
   estado = spi_read(0);
   //leemos el registro estado
   output_high(FLASH_CS);
   //deshabilitamos

   return(estado);
   //devolvemos dicho registro
}

A ver si alguien q trabajara con este dispositivo o uno parecido pudiese ayudarme
a saber como se escriben datos en memoria y a leerlos

1saludo

El dia que presente el proyecto me va dar  un coma etilico. No puedo mas