读spi_flash的id

2023-11-04

读SPI_FLASH的ID

  1. 在上一课中spi_i2c_adc_OLED文件夹下添加spi_flash.c及spi_flash.h文件,并添加到si工程中。

  2. 明确目的:在main函数中调用函数读取spiflash的厂家ID和设备ID,并打印。

  3. 明确spi_flash.c文件提供的函数。

    SPI_Read_Flash_ID();    //读取spiflash的厂家ID和设备ID
    
  4. 实现模块函数 SPI_ Read_ Flash_ID

    —SPI_Read_Flash_ID
    SPI_Read_Flash_ID的依据
    SPI_Read_Flash_ID函数
    —各子函数

    SPI_Flash_Set_CS
    

    函数

    SPI_Send_FlashAddr
    

    函数

    SPI_RecvByte【在gpio_spi.c中仿照SPI_SendByte定义】及其子函数SPI_Get_DI
    

    SPI_RecvByte
    SPI_Get_DI

  5. 整理头文件

    —gpio_spi.h
    添加函数
    —spi_flash.h
    spi_flash.h

    —在main.c中添加spi_flash.h
    添加spi_flash.h

  6. 在main函数中调用SPI_Read_Flash_ID并打印ID
    调用SPI_Read_Flash_ID

  7. 修改Makefile,上传文件,编译(成功)
    —修改Makefile
    修改Makefile
    —编译
    编译成功

  8. 烧写新生成的i2c.bin文件,OLED屏幕上打印出SPI_Flash的厂家ID和设备ID(如图1),串口上打印如图2。
    OLED屏幕打印

    串口上打印

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

读spi_flash的id 的相关文章

  • 客户问我,为啥把数据库清空后,添加数据id不是从1开始增长!

    在清空MySQL数据库中的表的记录后 重新插入数据时自增id不是从1开始 要想在插入数据时id从1开始 不能使用可视化工具手动删除 而要用的truncate语句 该语句的作用是清空表中的数据 包括自增主键id 代码如下 truncate t
  • MySQL中的各种自增ID

    微信搜索 coder home 或扫一扫下面的二维码 关注公众号 第一时间了解更多干货分享 还有各类视频教程资源 扫描它 带走我 文章目录 背景 自增ID的数据类型 单位换算规则 自增ID取值范围 无符号位的计算方式 有符号位的计算方式 i
  • ubuntu apt-get 时遇到waiting for headers ——解决方法

    不知为何 当用到apt get 时总是waiting for headers 上网搜寻了解决方法 在这里记录一下 方便自己 方便别人 找到 var cache apt archives partial 目录 进去之后删除里面的东东即可 然后
  • shell类型、添加PATH环境变量、.bashrc、.profile、/etc/profile、/etc/environment

    shell类型 使用 cat etc shells 查看用户的可用shell 使用 echo SHELL 查看当前正在使用的shell 打开terminal终端 shell等待用户输入 并执行输入的操作命令 这种方式叫做交互式模式 执行 s
  • 电子产品量产工具项目开发中遇到的问题(更新......)

    1 找不到tslib h库的头文件 这是因为找不到tslib库的头文件 确定工具链中头文件 库文件目录 对于 IMX6ULL 命令如下 echo main arm linux gnueabihf gcc E v 找到了编译器arm linu
  • linux下signal()软中断信号

    一 signal 信号的功能 软中断信号 signal 又简称为信号 用来通知进程发生了异步事件 在软件层次上是对中断机制的一种模拟 在原理上 一个进程收到一个信号与处理器收到一个中断请求是一样的 二 使用 添加头文件 include
  • Linux多线程编程知识汇总!

    大家好 我杂烩君 什么是多线程编程 1 线程和进程的区别 进程是指正在运行的程序 它拥有独立的内存空间和系统资源 不同进程之间的数据不共享 线程是进程内的执行单元 它与同一进程内的其他线程共享进程的内存空间和系统资源 2 多线程的优势和应用
  • Hibernate之@Id详解

    给实体的一个属性标识为数据库表中的主键时 可以使用 Id public class Student private Integer id Id public Integer getId return id public void setId
  • 树莓派教程 - 1.0 树莓派GPIO库wiringPi 点亮LED

    Git例程源码仓库 https github com ZhiliangMa raspberry git 电脑需要提前安装的工具 SSH 串口 终端神器 MobaXterm 官网下载链接 https mobaxterm mobatek net
  • git push报错 Missing or invalid credentials

    zys zys virtual machine work cpp git push origin master Missing or invalid credentials Error connect ECONNREFUSED run us
  • Ubuntu14.04安装配置NFS用于挂载嵌入式文件系统

    Ubuntu14 04安装配置NFS用于挂载嵌入式文件系统 1 安装 sudo apt get install nfs kernel server rpcbind 2 配置 vi etc exports 在文件的最后一行加上 yaffs2
  • 嵌入式Linux子系统之网络子系统网卡驱动分析

    嵌入式Linux子系统之网络子系统网卡驱动分析 重要数据结构 struct net device 描述网卡驱动的结构 struct net device ops 设备操作统一接口操作集 struct sk buff 网络数据包描述结构 一般
  • pid算法控制

    一 先来彻底搞懂PID到底是啥 啥是PID PID 就是 比例 proportional 积分 integral 微分 derivative 是一种很常见的控制算法 在工程实际中 应用最为广泛的调节器控制规律为比例 积分 微分控制 简称PI
  • 重装ubuntu后Samba从windows不能登录

    Samba登录问题 ubuntu被搞挂了 重装了下 apt get samba后导入之前的smb conf竟然在windows里无法登录 折腾了几个小时后突然发现sb服务器竟然没有从linux里自动倒入密码 所以如下路径 新装ubuntu后
  • VMware player桥接模式不能联网的解决方法

    VMware虚拟机下主要使用两种网络连接方式 桥接模式 NAT模式 桥接模式 直接连接网络 虚拟机独立IP 并与宿主机处于同一网段内 相当于虚拟机是局域网内独立的一台电脑 使用起来较为方便 NAT模式 网络地址转换 借由宿主机的IP访问网络
  • 基于嵌入式Qt的输入法syszuxpinyin自动弹出软件盘的问题

    移植好的syszuxpinyin输入法能正常的检测到控件焦点并自动弹出软键盘 当使用默认的QLineEdit控件时就有了一些小小的问题 问题一 QLineEditt在默认情况下会自动出现焦点 从而导致一进入界面就弹出软键盘 但是我们需要点击
  • Tina填坑

    1 Tina3 5 编译全志X3报错 environment variable SOURCE DATE EPOCH must expand to a non negative integer less than or equal to 25
  • 嵌入式 Linux 入门(七、Linux 下的环境变量)

    嵌入式 Linux 入门第七课 学习理解 linux 的环境变量 矜辰所致 前言 学习完 Linux 的 Shell 命令 和 Shell 脚本 我们还需要理解一个东西 环境变量 理解了 Linux 的环境变量 前面的文章中有些细节的东西
  • linux查看进程绑定cpu核是否成功

    运行top命令 可以看到进程以及进程cpu占有率 然后查看是否有P属性 这个属性用来查看进程绑定的cpu核 这里没有看到cpu占用核心的P属性 运行top后 按 f 键进入top配置界面 然后按上下键选择P选项 此时可以看到P选项前面没有
  • 一张图深度解析Linux共享内存的内核实现

    一张图深度解析Linux共享内存的内核实现 Sailor forever sailing 9806 163 com http blog csdn net sailor 8318 article details 39484747 PDF版本下

随机推荐

  • 云计算中微服务是什么Java之命名、标示符、变量

    微服务架构是一种架构模式 它提倡将单一应用程序划分成一组小的服务 服务之间相互协调 互相配合 为用户提供最终价值 每个服务运行在其独立的进程中 服务和服务之间采用轻量级的通信机制相互沟通 每个服务都围绕着具体的业务进行构建 并且能够被独立的
  • 【笔试强训选择题】Day34.习题(错题)解析

    作者简介 大家好 我是未央 博客首页 未央 303 系列专栏 笔试强训选择题 每日一句 人的一生 可以有所作为的时机只有一次 那就是现在 文章目录 前言 一 Day34习题 错题 解析1 总结 前言 一 Day34习题 错题 解析 1 解析
  • 升级 Linux 系统中的 Python 版本

    升级 Linux 系统中的 Python 版本 Python 是一种非常流行的编程语言 广泛应用于各种领域 包括 Web 开发 数据分析等 而对于 Linux 系统来说 Python 更是一个必须的组件 在系统运行和管理中都扮演了重要的角色
  • 大模型Founation Model

    一 背景 自从chatgpt gpt4以特别好的效果冲入人们的视野中 也使得AI产业发生了巨大变革 从17年以来的bert 将AI的各种领域都引入bert类的fine tune方法 来解决单个领域单个任务的一一个预训练模型 在学术界和工业界
  • 谈谈Linux epoll惊群问题的原因和解决方案

    近期排查了一个问题 epoll惊群的问题 起初我并不认为这是惊群导致 因为从现象上看 只是体现了CPU不均衡 一共fork了20个Server进程 在请求负载中等的时候 有三四个Server进程呈现出比较高的CPU利用率 其余的Server
  • 如何区分成员函数和构造函数?

    在面向对象编程中 成员函数和构造函数是类中定义的两种不同类型的函数 构造函数是一个特殊的成员函数 用于创建并初始化类的对象 构造函数的名称必须与类的名称相同 它没有返回值 并且在对象创建时自动调用 构造函数可以有参数 这些参数用于初始化类的
  • 字符串查找之 KMP 算法思路讲解和代码实现

    算法介绍 KMP 算法是一种改进的字符串匹配算法 由 D E Knuth J H Morris 和 V R Pratt 提出的 KMP 算法的核心是利用匹配失败后的信息 尽量减少模式串与主串的匹配次数以达到快速匹配的目的 KMP 算法的时间
  • lab值意义_色差仪lab值如何分析

    色差仪在涂料 建材 油漆 涂料 纺织印染 油墨 塑料 染料颜料制造等表面色料工业的配色方面有着广泛的应用 也称为CIELAB均匀色空间 本文深圳京联泰科技给大家就色差仪LAB值如何分析作说明 L 亮度 轴表示黑白 0为黑 100为白 a 红
  • 树莓派常用命令

    刷系统 格式化 这样就ok了 开启ssh 刷完系统在boot盘跟目录创建文件ssh就可以了小写不需要后缀 汉化 sudo raspi config 选4 再选1 然后把 4个前面是 zh cn的 用 空格选中 然后 ok 选zh CN ut
  • 科研无人机平台P600进阶版,突破科研难题!

    随着无人机技术日益成熟 无人机的应用领域不断扩大 对无人机研发的需求也在不断增加 然而 许多开发人员面临着无法从零开始构建无人机的时间和精力压力 同时也缺乏适合的软件平台来支持他们的开发工作 为了解决这个问题 我们特别开发了科研无人机平台P
  • 访问私有变量或方法

    本文主要介绍一下如何访问类的私有成员变量以及类的私有方法 这里以下面这个类来举例 interface HomeController UIViewController NSString name2 property nonatomic cop
  • 分页插件(jquery.pagination.js)简单案例

    分页插件 jquery pagination js 前言 开发中需要展示数据操作记录 但数量是未知的 使用该插件 实现分页切换页码的功能 1 使用 引入文件 先引入jQuery 再引入pagination组件 2 具体效果 3 html代码
  • ubuntu挂载Windows共享文件夹

    1 windows下设置shared文件夹为共享文件夹 2 linux下执行命令 sudo apt get install cifs utils samba client sudo mount t cifs o username dhc p
  • linux下搭建测试环境

    linux应用服务器 腾讯云服务器 centos7 传送文件上传到 linux服务器 winscp 文件传输工具 jdk及tomcat安装 本服务器安装的是jkd1 8 tomcat8 mysql 5 7 下载jkd1 8 https ww
  • Mysql在大型网站的应用架构演变

    摘要 本文主要描述在网站的不同的并发访问量级下Mysql架构的演变历程 架构的可扩展性往往和并发是息息相关 没有并发的增长 也就没有必要做高可扩展性的架构 常用的扩展手段主要有Scale up和Scale out两种 前者为纵向扩展 主要通
  • Java八大基本数据类型

    Java八大基本数据类型 开发工具与关键技术 MyEclipse 10 java 作者 刘东标 撰写时间 2019 04 04 Java语言提供了八种基本类型 六种数字类型 四个整数型 两个浮点型 一种字符类型 还有一种布尔型 1 数据类型
  • Windows下创建进程简介

    正在执行的应用程序称为进程 进程不仅仅是指令和数据 它还有状态 状态是保存在处理器寄存器中的一组值 如当前执行指令的地址 保存在内存中的值 以及唯一定义进程在任一时刻任务的所有其他值 进程与应用程序的一个重要的区别在于 进程运行时 进程的状
  • Linux笔记:文本编辑器vi基础使用

    文章目录 目的 工作模式 命令行模式 默认模式 光标移动 屏模滚动 选择复制黏贴与删除 搜索与替换 撤销与重复 插入模式 总结 目的 vi是几乎所有Unix Linux系统下都自带的文本编辑器 有点类似于window上的记事本 如果用惯了现
  • Sophus库的安装和使用教程

    本系列文章为原创 转载请注明出处 作者 Dongdong Bai 邮箱 baidongdong nudt edu 若您觉得本博文对您有帮助 请您为我点赞并关注我 以鼓励我写出更优秀的博文 谢谢 一 Sophus库简介 Eigen库是一个开源
  • 读spi_flash的id

    读SPI FLASH的ID 在上一课中spi i2c adc OLED文件夹下添加spi flash c及spi flash h文件 并添加到si工程中 明确目的 在main函数中调用函数读取spiflash的厂家ID和设备ID 并打印 明