2023版 STM32实战11 SPI总线读写W25Q

news/2024/11/16 21:50:28/

SPI全称

英文全称:Serial peripheral Interface 串行外设接口

SPI特点

-1- 串行(逐bit传输)

-2- 同步(共用时钟线)

-3- 全双工(收发可同时进行)

-4- 通信只能由主机发起(一主,多从机)

开发使用习惯和理解

-1- CS片选一般配置为软件控制

-2- 片选低电平有效,从器件CS引脚可直接连接GND

-3- 从机不能主动给主机发数据

-4- 主机想要(接收数据)得在(主动发送数据)的同时(接收数据)

-5- MSB这个词很常用,只需要理解为高位先收发(左高右低)

-6- SPI单向通信只需要3根线(MOSI && SCK && CS) &&只是符号可忽略

-7- SPI双向通信则需要4根线(MOSI && MISO && SCK && CS)

CPOL时钟极性和CPHA时钟相位的

CPOL理解为时钟空闲时候的电平状态(0代表空闲为低电平,1代表高电平)

CPOH理解为收发数据的边沿(0代表第一个边沿,1代表第二个边沿)

SPI的四种模式(如下图)

在这里插入图片描述

W25Q介绍

一种为有限的系统空间提供存储方案的芯片,使用SPI总线通信

W25Q电路图

在这里插入图片描述

W25Q引脚定义

-1- CS

-2- MISO

-3- 3.3V

-4- GND

-5- MOSI

-6- SCK

-7- 3.3V

-8- 3.3V

关于如何查询芯片引脚?(打开STM32手册)

在这里插入图片描述

W25Q编程注意事项

-1- 写入数据,擦除数据前需要写使能,写入数据,擦除数据后需要写失能

-2- 一次最多写入256字节,如果超过则往前覆盖,255-256-0-1-2

-3- 读取数据不用开写使能

编程思路

参考W25Q数据手册(英文/中文) 推荐英文原版

主函数

在这里插入图片描述

全部工程获取

查看下方头像


http://www.ppmy.cn/news/1173301.html

相关文章

SpringMVC系列-5 消息转换器

背景 SpringMVC系列的第五篇介绍消息转换器,本文讨论的消息转换指代调用Controller接口后,对结果进行转换处理的过程。 内容包括介绍自定义消息转换器、SpringMVC常见的消息转换器、Spring消息转换器工作原理等三部分。 本文以 SpringMVC系列-2 HTTP请求…

【华为路由器】配置企业通过5G链路接入Internet示例

场景介绍 5G Cellular接口是路由器用来实现5G技术的物理接口,它为用户提供了企业级的无线广域网接入服务,主要用于eMBB场景。与LTE相比,5G系统可以为企业用户提供更大带宽的无线广域接入服务。 路由器的5G功能,可以实现企业分支…

alpha shape 2D点集边缘线提取

Delaunay三角网 alpha shape 2D点集边缘线提取 1\ Delaunay三角网 参考blog: Scipy 笔记 [Geometry] Alpha Shapes - 原理及我的实现Alpha Shape Widyaningrum E , Peters R Y , Lindenbergh R C . Building outline extraction from als point clouds using medial axis tra…

CSS 的盒子Day03(2)

在Web 开发中, CSS 盒子模型是指如何在浏览器引擎中对 HTML 元素进行建模和如何从CSS属性导出 HTML 元素的尺寸。 [3]盒模型的指导方针由 Web 标准万维网联盟 (W3C)特别是 CSS 工作组描述。在 20 世纪 90 年代末和 2000 年代初的多数时间里,主流浏览器中…

IDC发布生成式AI采用旅程报告:容联云助力银行引入生成式AI

近日,国际数据公司IDC发布了《从典型落地案例看生成式AI采用旅程,3Q23》报告,通过几个典型案例介绍用户采用生成式AI的考量、应用场景、落地路线、决策流程,为最终用户提供参考建议。 容联云基于自研赤兔大模型助力《XX银行服务营…

博途S7-1200PLC自由口通信(Send_P2P和Receive_P2P指令编程)

S7-1200PLC的MODBUS-RTU通信的实战应用和完整SCL源代码,请参看下面的文章链接 https://rxxw-control.blog.csdn.net/article/details/132845221https://rxxw-control.blog.csdn.net/article/details/132845221MODBUS-RTU协议和常用功能码解读 https://rxxw-control.blog.csd…

Flutter最全面试题大全

在理解这些问题之前,建议看一下Flutter架构原理,如下链接: https://blog.csdn.net/wang_yong_hui_1234/article/details/130427887?spm1001.2014.3001.5501 目录 一. 有个Text节点,由于文字内容过多,发生了溢出错误&…

Linux备份Docker的mysql数据并传输到其他服务器保证数据级容灾

目录 简介什么是容灾 ?容灾的分类容灾和备份有什么连系 ? 数据级容灾备份步骤1、scp命令:用于Linux之间复制文件和目录2、编写备份数据库脚本3、crontab定时任务执行脚本4、测试 应用级容灾业务级容灾 简介 为了防止客户系统的数据丢失&…