0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

单片机spi通信原理详解

互联网偶像派 来源:互联网偶像派 作者:互联网偶像派 2022-12-22 14:03 次阅读

单片机是一个可编程微控制器,和spi通信其实是两个独立的东西。只不过我们用单片机可以去实现spi通信而已,但是实现spi通信不一定非要单片机。

我们人和人之间沟通,要靠说话,并且两个人语言要一样,比如说都用普通话。那芯片和芯片沟通,它们又不会说话,怎么传递信息呢?就是通过通信总线,通信总线有很多种,比如IIC、SPI、USART、CAN,它们的区别就像普通话、英语、韩语、俄语,都是用来传递信息用的,只是传递方式不同。但传递信息,有一个前提,就是语言要相同,也就是通信方式要相同。所以说,spi是一种通信方式,是用来传递信息的。不同的通信方式,传递信息的方式不同。

Spi是一种全双工、高速的、同步的通信总线。简单来说,就是你们两个可以同时快速地说话,你能把你要说的告诉对方,同时也能听到对方说什么,这就是全双工。还有一种叫半双工,就是你们同时只能有一个人说,另一个听,说完了,另外一个才能说。很明显,全双工传递信息的效率更高吧。同步的意思我给你们两个对话设定个条件,比如说我说开始你们才可以对话,我说停止就都不能说话。我们人和人传递信息一般是靠耳朵和嘴巴对吧?

Spi通信传递信息是通过接口,来看下图:

单片机spi通信原理详解

SPI通信协议:单片机spi通信接口什么意思,spi接口干什么用的?spi接口有4根线,分别是CS、SCLK、MOSI、MISO。SCLK是同步信号,一般由主控来控制。既然是通信,自然是需要有个”对象”,如上图A和B。A是SPI Master,也就是主控,比如说单片机,一般就是主控的角色,主控来负责发送SCLK同步信号通知SPI Slave是否需要进行数据通信B是SPI Slave,也就是从机,比如说Flash芯片。CS代表片选信号,为什么要用片选呢?因为一个SPI Master可以跟不同的SPI Slave进行通信。

单片机spi通信原理详解

SPI Master就是通过CS来控制,具体跟哪个SPI Slave通讯,控制CS为低电平就代表选中该SPI Slave。如果说只跟一个从设备通讯,也可以直接把CS串联电阻接地,省的每次都去控制它。MOSI英文全称是Master Output Slave Input,这个一般接主控器件数据输出引脚,从机器件数据输入引脚。MISO英文全称是Slave Input Master Output,这个一般接主控器件数据输入引脚,从机器件数据输出引脚。

除此以外,还有一种特殊的用法,就是只用SCLK和MOSI这两个引脚的SPI通信。比如说我们无际单片机编程实战项目课程里有个OLED屏的应用。

单片机spi通信原理详解

片选引脚CS我直接硬件接地了,因为只有一个从设备。我们主要是控制OLED屏去显示内容,并不需要从OLED读取数据,所以MISO也不需要,这种情况是可以只用2根线的。

来源:电工学习网

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 微控制器
    +关注

    关注

    48

    文章

    7482

    浏览量

    151012
  • 单片机
    +关注

    关注

    6032

    文章

    44513

    浏览量

    632693
  • 通信
    +关注

    关注

    18

    文章

    5968

    浏览量

    135829
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1700

    浏览量

    91291
收藏 人收藏

    评论

    相关推荐

    51单片机中断详解

    单片机_中断理解51单片机中断详解(上)51单片机中断详解(中)51单片机中断
    发表于 11-22 06:08

    AVR 单片机SPI 通信的一种抗干扰方法

    AVR 单片机SPI 通信的一种抗干扰方法
    发表于 05-15 16:03 44次下载

    AVR单片机SPI串行通信的应用

    电子开发过程中的资料-AVR单片机SPI串行通信的应用,感兴趣的小伙伴可以看一看。
    发表于 11-03 15:50 0次下载

    单片机SPI通信接口

    SPI 是一种高速的、全双工、同步通信总线,标准的 SPI 也仅仅使用 4 个引脚,常用于单片机和 EEPROM、FLASH、实时时钟、数字信号处理器等器件的
    发表于 12-26 15:46 9256次阅读
    <b class='flag-5'>单片机</b><b class='flag-5'>SPI</b><b class='flag-5'>通信</b>接口

    基于AVR单片机SPI串行通信的应用

    基于AVR单片机SPI串行通信的应用
    发表于 09-01 11:23 16次下载
    基于AVR<b class='flag-5'>单片机</b>的<b class='flag-5'>SPI</b>串行<b class='flag-5'>通信</b>的应用

    基于51单片机的UART串口通信

    基于51单片机的UART串口通信详解
    发表于 11-21 10:14 6.3w次阅读
    基于51<b class='flag-5'>单片机</b>的UART串口<b class='flag-5'>通信</b>

    单片机串行通信SPI通信教程

    单片机串行通信SPI通信
    发表于 12-20 12:18 11次下载

    单片机数据通信及测控应用技术详解》pdf

    单片机数据通信及测控应用技术详解
    发表于 03-06 11:20 0次下载

    单片机SPI通信协议的应用

    SPI 是一种高速的、全双工、同步通信总线,标准的 SPI 也仅仅使用4个引脚,常用于单片机和 EEPROM、FLASH、实时时钟、数字信号处理器等器件的
    发表于 12-12 14:47 7166次阅读
    <b class='flag-5'>单片机</b><b class='flag-5'>SPI</b><b class='flag-5'>通信</b>协议的应用

    单片机spi通信的通用程序分享

    以下是单片机spi通信的通用程序,在不同晶振情况下可能需调整延时。这里单片机晶振为11.0592MHz。 _nop_();语句指延迟一个机器周期,约1us左右。写1bit约10u
    发表于 12-28 15:23 7407次阅读
    <b class='flag-5'>单片机</b><b class='flag-5'>spi</b><b class='flag-5'>通信</b>的通用程序分享

    使用51单片机进行主从模拟SPI通信资料免费下载

    本文档的主要内容详细介绍的是使用51单片机进行主从模拟SPI通信资料免费下载。
    发表于 06-13 17:45 15次下载
    使用51<b class='flag-5'>单片机</b>进行主从<b class='flag-5'>机</b>模拟<b class='flag-5'>SPI</b><b class='flag-5'>通信</b>资料免费下载

    51单片机软件SPI通讯

    UART、 I2C 和 SPI单片机系统中最常用的三种通信协议。1、初步介绍SPI 是一种高速的、全双工、同步通信总线,标准的
    发表于 11-11 20:36 14次下载
    51<b class='flag-5'>单片机</b>软件<b class='flag-5'>SPI</b>通讯

    单片机SPI通信原理说明

    单片机是一个可编程的微控制器,和spi通信其实是两个独立的东西。
    的头像 发表于 03-30 16:37 5621次阅读
    <b class='flag-5'>单片机</b><b class='flag-5'>SPI</b><b class='flag-5'>通信</b>原理说明

    基于MSP430单片机MCU与DSP的SPI通信设计

    电子发烧友网站提供《基于MSP430单片机MCU与DSP的SPI通信设计.pdf》资料免费下载
    发表于 10-30 10:14 6次下载
    基于MSP430<b class='flag-5'>单片机</b>MCU与DSP的<b class='flag-5'>SPI</b><b class='flag-5'>通信</b>设计

    单片机SPI通信实现

    在深入探讨单片机(如基于STM32、AVR、PIC等)如何通过SPI(Serial Peripheral Interface)进行通信之前,我们先概述SPI
    的头像 发表于 09-09 17:00 399次阅读