SPI接口,如何对W25Q64进行读写操作?深度解析
一、SPI概述
SPI(SerialPeripheralInterface)是一种同步串行通信协议,广泛应用于微控制器和外围设备之间的数据传输。它由摩托罗拉公司开发,具有全双工通信能力,即可以同时进行数据的发送和接收。
SPI通信通常涉及四条信号线:
(1)MOSI(MasterOutSlaveIn):主设备发送数据,外设接收数据。
(2)MISO(MasterInSlaveOut):外设发送数据,主设备接收数据。
(3)SCLK(SerialClock):由主设备生成的时钟信号,用于同步数据传输。
(4)SS(SlaveSelect):选择特定的从设备进行通信。
SPI的优点包括简单的硬件连接、高速数据传输和全双工通信。其缺点是通常需要更多的引脚,尤其是在多个从设备的情况下,每个从设备需要一个独立的SS引脚。此外,SPI没有标准化的协议层,因此设备间的兼容性需要仔细管理。
二、演示功能
本文使用Air780E核心板的SPI总线读写FLASH。
三、硬件环境
3.1 Air780E开发板
3.2 TYPE-C线快充线
3.3 杜邦线

购买链接(数量:6)
3.4 USB延长线

购买链接(数量:1)
3.5 FLASH模块

购买链接(数量:1,注意,一定要选W25Q64型号)
3.6 16针2.54MM间距排针

购买链接(数量:2)
四、软件环境
注:以下软件下载链接,请复制后,粘贴到浏览器URL地址栏进行下载;
4.1 Luatools
Luatools日志打印与程序烧录软件下载
4.2 core固件和源码脚本
注:core固件,是基础环境,该固件由合宙官方提供,用户不可修改;源码脚本,为应用程序,可由客户自行修改;
五、软硬件资料
1、Air780E开发板原理图,打开Air780E产品手册,访问页面中的《EVB_Air780X_V1.6.zip》
2、Air780E开发板使用说明,打开Air780E产品手册,访问页面中的《开发板Core_Air780E使用说明V1.0.5.pdf》
3、API使用介绍说明
5.1 开发板按钮与指示灯图示与说明
BOOT按钮:启动引导,主要用于进入程序下载模式;
复位按钮:系统复位;
开机按钮:冷起动,用于给4G模块开机;
电源指示:供电后常亮,红色;
网络行指示:入网后常亮,翠绿色;

5.2 硬件安装与连接
5.2.1 SIM卡安装
5.2.2 实物连接图
5.2.2.1 线序定义与颜色对应

5.2.2.2 FLASH端

5.2.2.3 开发板端

六、代码示例介绍
6.1 程序流程图

6.2 完整程序清单
注:完整复制后保存为main.lua,可直接使用。

七、功能验证
7.1 开机
按图1进行连接无误后,开发板电源指示红灯常亮,网络指示灯灭,此时按下开机键,约2秒后释放,等待几秒网络指示绿灯常亮,即开机成功,如下图:

7.2 打开Luatool软件工具并进入项目管理测试页面

7.3 按序号步骤,创建项目


7.4 按如下步骤进行程序烧录



7.5 确认烧录结果


7.6 关闭下载页面,并回到查看日志页面

八、总结
至此,我们已使用Air780E开发板的SPI接口完成了对W25Q64读写操作。
SPI接口,如何对W25Q64进行读写操作?深度解析的更多相关文章
- spring-data-redis的事务操作深度解析--原来客户端库还可以攒够了事务命令再发?
一.官方文档 简单介绍下redis的几个事务命令: redis事务四大指令: MULTI.EXEC.DISCARD.WATCH. 这四个指令构成了redis事务处理的基础. 1.MULTI用来组装一个 ...
- SPI 用户空间的读写操作
spi_device 虽然用户空间不需要直接用到spi_device结构体,但是这个结构体和用户空间的程序有密切的关系,理解它的成员有助于理解SPI设备节点的IOCTL命令,所以首先来介绍它.在内核中 ...
- SPI编程1:用户空间的读写操作
spi_device 虽然用户空间不需要直接用到spi_device结构体,但是这个结构体和用户空间的程序有密切的关系,理解它的成员有助于理解SPI设备节点的IOCTL命令,所以首先来介绍它.在内核中 ...
- EEPROM的操作---SPI接口和I2C接口
参考:http://blog.csdn.net/yuanlulu/article/details/6163106 ROM最初不能编程,出厂什么内容就永远什么内容,不灵活.后来出现了PROM,可以自己写 ...
- STC8A8K64S4A12通过SPI接口操作基于ST7920的LCD12864液晶模块
文章地址:https://www.cnblogs.com/jqdy/p/12665430.html 1. 硬件连接 1.1 64引脚的STC8A8K64S4A12 使用的是最小核心板,所以引脚皆引出可 ...
- flash读写学习笔记与spi接口及简单测试验证(三)
FPGA中的视频图像资源,以及想要永久存储的程序都是要存储在flash中,flash是FPGA一个不可缺少的部分,flash的种类有很多,根据winbond公司的128Mbit Qual SPI接口的 ...
- CC3000 SPI接口编程介绍
CC3000 SPI 操作: CC3000的SPI 是基于五根线CLCK,CSn,IRQ,MISO,MOSI:通信模式如下图: CLCK:时钟频率0-26M从主机到从机,提供SPI接口时钟 CSn:低 ...
- SPI接口扫盲 SPI定义/SPI时序(CPHA CPOL)
SPI接口扫盲 douqingl@gmail.com 为何要写这篇文档?百度上找出来的SPI接口中文描述都说的太过简略,没有一篇文档能够详尽的将SPI介绍清楚的.wikipedia英文版[注释 ...
- 嵌入式物联网之SPI接口原理与配置
本实验采用W25Q64芯片 W25Q64是华邦公司推出的大容量SPI FLASH产品,其容量为64Mb.该25Q系列的器件在灵活性和性能方面远远超过普通的串行闪存器件.W25Q64将8M字节的容量分为 ...
- Blackfin DSP(五):BF533的SPI接口
533SPI的特性 最高速度可达SCLK/4: 支持主模式和从模式: 可使用8个GPIO口作为从选择线: 1 slave select input pins 7 slave select output ...
随机推荐
- zabbix 应用框架分析
本文通过源码分析,探究zabbix web应用的整体架构,所有分析基于zabbix 3.0.10进行. 总体而言,zabbix web应用使用PHP开发,大量应用OOP方法,主要采用mvc架构,同时包 ...
- ZABBIX Maps(拓扑图) 数据可视化
本篇文章将介绍如何利用zabbix内置 Maps模块展示主机数据指标以及如何关联触发器 构建业务地图让异常指标更加直观呈现 下面我将从网络设备.服务器和vmware esxi和IP主机去为大家解析za ...
- 在 Windows 中启用 Administrator 帐户
打开管理员终端. 启用: net user administrator /active:yes 关闭: net user administrator /active:no
- 运行 Java 程序
Java 程序实际上就是我们编译好的 Java 类文件.运行 Java 程序就是运行 Java 类的 main 函数. 编译并运行 Java 文件 源文件: package com.example; ...
- 【Linux】之切换root用户与重启系统相关命令
一.切换用户 <Linux中怎么从root用户切换到普通用户> su是在用户间切换,可以是从普通用户切换到root用户, test@ubuntu:~$ su Password: root@ ...
- vue 报错 Component template should contain exactly one root element. If you are using v-if on multiple elements
vue 报错 Component template should contain exactly one root element. If you are using v-if on multiple ...
- WebShell流量特征检测_冰蝎篇
80后用菜刀,90后用蚁剑,95后用冰蝎和哥斯拉,以phpshell连接为例,本文主要是对这四款经典的webshell管理工具进行流量分析和检测. 什么是一句话木马? 1.定义 顾名思义就是执行恶意指 ...
- Python 潮流周刊#69:是时候停止使用 Python 3.8了(摘要)
本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...
- MyBatis——案例——查询-查询详情
查询-查询详情 (根据id获取商品全部信息(即商品对象)) 1.编写Mapper接口方法:Brand selectById(int id); 2.编写SQL ...
- Vue3——Vue Router
安装 vue-router 依赖包 npm install vue-router@4 创建 router 文件夹,然后在里面创建一个 index.ts 文件,用于定义你的路由配置 // index.t ...