英语 | 简体中文 | 繁体中文 | 日本语 |德语 | 한국어
W25Q25XX 串行闪存为空间、引脚和功率有限的系统提供了存储解决方案。 25Q 系列提供的灵活性和性能远远超出普通串行闪存设备。它们非常适合将代码映射到 RAM、直接从双/四 SPI (XIP) 执行代码以及存储语音、文本和数据。该器件采用 2.7V 至 3.6V 单电源供电,工作时电流消耗低至 4mA,断电时电流消耗低至 1μA。所有设备均采用节省空间的封装形式。
LibDriver W25QXX是LibDriver推出的W25QXX的全功能驱动程序,提供flash读取、flash写入等功能。LibDriver符合MISRA标准。
/src 包含 LibDriver W25QXX 源文件。
/interface 包括 LibDriver W25QXX SPI 或 QSPI 平台独立模板。
/test 包含LibDriver W25QXX 驱动测试代码,该代码可以简单地测试芯片所需的功能。
/example 包含 LibDriver W25QXX 示例代码。
/doc 包含 LibDriver W25QXX 离线文档。
/数据表包括 W25QXX 数据表。
/project 包含常见的Linux 和MCU 开发板示例代码。所有项目都使用shell脚本来调试驱动程序,详细说明可以在每个项目的README.md中找到。
/misra 包含 LibDriver MISRA 代码扫描结果。
参考/接口SPI或QSPI平台独立模板并完成您的平台SPI或QSPI驱动程序。
将 /src 目录、您平台的接口驱动程序以及您自己的驱动程序添加到您的项目中,如果您想使用默认的示例驱动程序,请将 /example 目录添加到您的项目中。
您可以参考/example目录下的示例来完成您自己的驱动程序。如果您想使用默认的编程示例,请参阅以下使用方法。
#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 ;
在线文档:https://www.libdriver.com/docs/w25qxx/index.html。
离线文档:/doc/html/index.html。
请参阅 CONTRIBUTING.md。
版权所有 (c) 2015 年至今 LibDriver 保留所有权利
麻省理工学院许可证 (MIT)
特此向任何获得副本的人免费授予许可
本软件和相关文档文件(“软件”)的,以处理
不受限制地使用软件,包括但不限于权利
使用、复制、修改、合并、发布、分发、再许可和/或出售
该软件的副本,并允许该软件的使用者
可以这样做,但须满足以下条件:
上述版权声明和本许可声明应包含在所有内容中
软件的副本或主要部分。
该软件按“原样”提供,不提供任何形式的明示或保证
默示的保证,包括但不限于适销性保证,
适用于特定目的且不侵权。在任何情况下都不得
作者或版权所有者对任何索赔、损害或其他责任负责
责任,无论是合同诉讼、侵权诉讼还是其他诉讼,均由以下原因引起:
与本软件无关或与之相关,或者与本软件相关的使用或其他交易
软件。
请发送电子邮件至[email protected]。