SPI接口调试

SPI接口调试以MCP2515芯片的SPI接口为例说明。

大家好,又见面了,我是你们的朋友全栈君。

该篇文章参考:http://blog.csdn.net/amj0622/article/details/4981170

http://ee.ofweek.com/2011-09/ART-8300-2809-28481368.html

http://www.amobbs.com/thread-5018420-1-1.html

一、SPI简介

   SPI接口的全称是”Serial Peripheral Interface”,意为串行外围接口,是Motorola首先在其MC68HCXX系列处理器上定义的。SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间。

   SPI接口是在CPU和外围低速器件之间进行同步串行数据传输,在主器件的移位脉冲下,数据按位传输,高位在前,地位在后,为全双工通信,数据传输速度总体来说比I2C总线要快,速度可达到几Mbps。

   SPI接口是以主从方式工作的,这种模式通常有一个主器件和一个或多个从器件,其接口包括以下四种信号:

(1)MOSI – 主器件数据输出,从器件数据输入
(2)MISO – 主器件数据输入,从器件数据输出
(3)SCLK – 时钟信号,由主器件产生
(4)/SS  – 从器件使能信号,由主器件控制

SPI接口工作方式

      在点对点的通信中,SPI接口不需要进行寻址操作,且为全双工通信,显得简单高效。
      在多个从器件的系统中,每个从器件需要独立的使能信号,硬件上比I2C系统要稍微复杂一些。

SPI接口调试

    SPI接口在内部硬件实际上是两个简单的移位寄存器,传输的数据为8位,在主器件产生的从器件使能信号和移位脉冲下,按位传输,高位在前,低位在后。如下图所示,在SCLK的下降沿上数据改变,同时一位数据被存入移位寄存器。
    1
     SPI接口内部硬件图示:
          2
     最后,SPI接口的一个缺点:没有指定的流控制,没有应答机制确认是否接收到数据。

二、SPI模式

SPI模式由4种mode型,详见下图。

SPI接口调试

SPI接口调试

mode0/3上升沿采样,下降沿锁存。mode1/2下降沿采样,上升沿锁存。

注:Master和Slave同时刻采样或锁存数据。

三、实例说明

以M25P40芯片的SPI接口为例说明。该芯片支持SPI模式如下:

SPI接口调试

即支持Mode0和Mode3两种模式。

3.1读取ID

M25P40的ID号具体组成如下图:

SPI接口调试

datasheet read ID时序

SPI接口调试

DM8168设置Mode0方式操作M25P40,实际读取ID的时序图:

1、DM8168发送读取ID命令 0x9F

SPI接口调试

2、M25P40返回ID

SPI接口调试

下面详细说明制造商ID 0x20返回过程:

SPI接口调试








 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/150386.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • mysql怎么解决1045错误_Navicat for MySQL 1045错误如何解决[通俗易懂]

    mysql怎么解决1045错误_Navicat for MySQL 1045错误如何解决[通俗易懂]在使用Navicat连接MySQL数据库时很多人都会遇到1045错误,主要原因是,你输入的用户名或密码错误被拒绝访问了,如果你不想重装,那么就需要找回密码或者重置密码。NavicatforMySQL1045错误问题描述:1045-Accessdeniedforuser’root’@’localhost'(usingpassword:YES)原因分析:当登录MySQL数据库…

    2022年5月8日
    138
  • 44页智慧生活社区+智慧小区建设方案[通俗易懂]

    44页智慧生活社区+智慧小区建设方案[通俗易懂]喜欢文章可以【转发➕评论】,关注公众号“智慧方案文库“,私信获取解决方案。本文章引用的资料均通过互联网等公开渠道合法获取,仅作为行业交流和学习使用,并无任何商业目的。其版权归原资料作者或出版社所有,作者不对所涉及的版权问题承担任何法律责任。若版权方、出版社认为本文章侵权,请立即通知作者删除。更多方案【2021】77页数字李生智慧园区解决方案(附下载)【2021】102页新一代数字化转型信息化总体规划方案(附下载)【2021】85页5G+物联网智慧校园解决方案(附下载)【2021】60页智慧城市运营管理平台

    2022年10月17日
    3
  • [EE261学习笔记] 4.常用的几个傅里叶变换相关公式

    [EE261学习笔记] 4.常用的几个傅里叶变换相关公式在本文开始前,需要说明一点,以下推导出的各项公式,只是为了实际计算中方便,并不都有其对应的物理意义。首先,我们写出符号f−(t)=f(−t)f−(t)=f(−t)f^-(t)=f(-t),显然,对于奇函数而言,f−=−ff−=−ff^-=-f;对于偶函数而言,f−=ff−=ff^-=f。根据前文傅里叶变换推导,我们知道…

    2022年7月17日
    13
  • window32api_win32api与硬件设备

    window32api_win32api与硬件设备作者:浪子花梦,一个有趣的程序员~.Win32API相关文章如下:Win32利用CreateEvent实现简单的——线程同步Win32消息处理机制与窗口制作Win32远程线程注入.dll文件Win32删除目录下的所有文件——递归遍历(一)Win32服务程序编写——使用SC命令创建与删除(二)Win32服务程序编写——使用命令行参数创建与删除Win32使用快照、psapi.dll、wtsapi32.dll、ntdll.dll四种方式实现——枚举进程(一)..

    2022年10月11日
    2
  • APP性能测试工具——GT 使用方法

    APP性能测试工具——GT 使用方法参考链接:https://www.cnblogs.com/syw20170419/p/7228145.html?utm_source=itdadao&utm_medium=referralGT官方使用介绍文档地址:https://gt.qq.comGT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE,IntegratedDebugEnvi…

    2022年6月28日
    56
  • 文件名太长无法删除怎么办

    文件名太长无法删除怎么办

    2021年10月24日
    48

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号