Inglés | 简体中文 | 繁體中文 | 日本語 | alemán | 한국어
La memoria Flash serie W25Q25XX proporciona una solución de almacenamiento para sistemas con espacio, pines y energía limitados. La serie 25Q ofrece flexibilidad y rendimiento mucho más allá de los dispositivos Serial Flash ordinarios. Son ideales para copiar código en RAM, ejecutar código directamente desde Dual/Quad SPI (XIP) y almacenar voz, texto y datos. El dispositivo funciona con una única fuente de alimentación de 2,7 V a 3,6 V con un consumo de corriente tan bajo como 4 mA activo y 1 μA para apagado. Todos los dispositivos se ofrecen en paquetes que ahorran espacio.
LibDriver W25QXX es el controlador de funciones completas de W25QXX lanzado por LibDriver. Proporciona funciones de lectura flash, escritura flash, etc. LibDriver cumple con MISRA.
/src incluye archivos fuente LibDriver W25QXX.
/interface incluye la plantilla independiente de la plataforma LibDriver W25QXX SPI o QSPI.
/test incluye el código de prueba del controlador LibDriver W25QXX y este código puede probar la función necesaria del chip de forma sencilla.
/ejemplo incluye código de muestra LibDriver W25QXX.
/doc incluye el documento fuera de línea LibDriver W25QXX.
/datasheet incluye la hoja de datos W25QXX.
/project incluye el código de muestra común de la placa de desarrollo de MCU y Linux. Todos los proyectos utilizan el script de shell para depurar el controlador y las instrucciones detalladas se pueden encontrar en README.md de cada proyecto.
/misra incluye los resultados del escaneo de códigos LibDriver MISRA.
Consulte la plantilla independiente de la plataforma SPI o QSPI de interfaz/interfaz y finalice el controlador SPI o QSPI de su plataforma.
Agregue el directorio /src, el controlador de interfaz para su plataforma y sus propios controladores a su proyecto; si desea utilizar los controladores de ejemplo predeterminados, agregue el directorio /example a su proyecto.
Puede consultar los ejemplos en el directorio /example para completar su propio controlador. Si desea utilizar los ejemplos de programación predeterminados, aquí le explicamos cómo utilizarlos.
#include "driver_w25qxx_basic.h"
uint8_t res ;
uint8_t manufacturer ;
uint8_t device_id ;
uint8_t data [ 8 ];
res = w25qxx_basic_init ( W25Q128 , W25QXX_INTERFACE_SPI , W25QXX_BOOL_TRUE );
if ( res != 0 )
{
return 1 ;
}
...
res = w25qxx_basic_get_id (( uint8_t * ) & manufacturer , ( uint8_t * ) & device_id );
if ( res != 0 )
{
( void ) w25qxx_basic_deinit ();
return 1 ;
}
w25qxx_interface_debug_print ( "w25qxx: manufacturer is 0x%02X device id is 0x%02X.n" , manufacturer , device_id );
...
res = w25qxx_basic_write ( 0x00000000 , ( uint8_t * ) data , 8 );
if ( res != 0 )
{
( void ) w25qxx_basic_deinit ();
return 1 ;
}
...
res = w25qxx_basic_read ( 0x00000000 , ( uint8_t * ) data , 8 );
if ( res != 0 )
{
( void ) w25qxx_basic_deinit ();
return 1 ;
}
...
( void ) w25qxx_basic_deinit ();
return 0 ;
#include "driver_w25qxx_advance.h"
uint8_t res ;
uint8_t manufacturer ;
uint8_t device_id ;
uint8_t data [ 8 ];
res = w25qxx_advance_init ( W25Q128 , W25QXX_INTERFACE_SPI , W25QXX_BOOL_TRUE );
if ( res != 0 )
{
return 1 ;
}
...
res = w25qxx_advance_get_id (( uint8_t * ) & manufacturer , ( uint8_t * ) & device_id );
if ( res != 0 )
{
( void ) w25qxx_advance_deinit ();
return 1 ;
}
w25qxx_interface_debug_print ( "w25qxx: manufacturer is 0x%02X device id is 0x%02X.n" , manufacturer , device_id );
...
res = w25qxx_advance_write ( 0x00000000 , ( uint8_t * ) data , 8 );
if ( res != 0 )
{
( void ) w25qxx_advance_deinit ();
return 1 ;
}
...
res = w25qxx_advance_read ( 0x00000000 , ( uint8_t * ) data , 8 );
if ( res != 0 )
{
( void ) w25qxx_advance_deinit ();
return 1 ;
}
...
( void ) w25qxx_advance_deinit ();
return 0 ;
Documentos en línea: https://www.libdriver.com/docs/w25qxx/index.html.
Documentos sin conexión: /doc/html/index.html.
Consulte CONTRIBUTING.md.
Copyright (c) 2015 - presente LibDriver Todos los derechos reservados
La licencia MIT (MIT)
Por la presente se concede permiso, sin coste alguno, a cualquier persona que obtenga una copia
de este software y archivos de documentación asociados (el "Software"), para tratar
en el Software sin restricción, incluidos, entre otros, los derechos
utilizar, copiar, modificar, fusionar, publicar, distribuir, sublicenciar y/o vender
copias del Software y para permitir a las personas a quienes el Software es
proporcionado para ello, sujeto a las siguientes condiciones:
El aviso de derechos de autor anterior y este aviso de permiso se incluirán en todos
copias o partes sustanciales del Software.
EL SOFTWARE SE PROPORCIONA "TAL CUAL", SIN GARANTÍA DE NINGÚN TIPO, EXPRESA O
IMPLÍCITAS, INCLUYENDO PERO NO LIMITADO A LAS GARANTÍAS DE COMERCIABILIDAD,
IDONEIDAD PARA UN FIN PARTICULAR Y NO INFRACCIÓN. EN NINGÚN CASO EL
LOS AUTORES O TITULARES DE DERECHOS DE AUTOR SERÁN RESPONSABLES DE CUALQUIER RECLAMACIÓN, DAÑOS U OTROS
RESPONSABILIDAD, YA SEA EN UNA ACCIÓN DE CONTRATO, AGRAVIO O DE OTRA MANERA, QUE SURJA DE,
FUERA DE O EN RELACIÓN CON EL SOFTWARE O EL USO U OTRAS NEGOCIOS EN EL
SOFTWARE.
Envíe un correo electrónico a [email protected].