单片机--SPI协议

这篇具有很好参考价值的文章主要介绍了单片机--SPI协议。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

【1】SPI协议

1.SPI协议

2.SPI时序

【2】LCD液晶显示屏

【3】点亮LCD显示屏

图片显示

汉字显示


【1】SPI协议

1.SPI协议

SPI(Serial Peripheral Interface)是 摩托罗拉公司(Motorola)首先提出的全双工同步串行外设接口,采用主从模式(Master、Slave)架构。

时钟由Master控制,在时钟移位脉冲下,数据按位传输,高位在前,低位在后(MSB first);

SPI接口有2根单向数据线,为全双工通信。 

 SPI总线被广泛地使用在FLASH(控制寄存器)、ADC(模数转换器)、LCD(液晶显示屏)等设备与MCU间,要求通讯速率较高的场合。

单片机--SPI协议

单片机--SPI协议

SPI模式通常有一个主设备和一个或多个从设备,需要至少4根线,事实上3根也可以(单向传输时)。也是所有基于SPI的设备共有的,它们是MISO(主设备数据输入)、MOSI(主设备数据输出)、SCLK(时钟)、CS(片选)。

(1)MISO– Master Input Slave Output,主设备数据输入,从设备数据输出;

(2)MOSI– Master Output Slave Input,主设备数据输出,从设备数据输入;

(3)SCLK – Serial Clock,时钟信号,由主设备产生;

(4)CS – Chip Select,从设备使能信号,由主设备控制。

2.SPI时序

起始信号:NSS信号线由高变低,是SPI通讯的起始信号

结束信号:NSS信号由低变高,是SPI通讯的停止信号

数据传输:SPI使用MOSI及MISO信号线来传输数据,使用SCK信号线进行数据同步。MOSI及MISO数据线在SCK的每个时钟周期传输一位数据高位在前低位在后,且数据输入输出是同时进行的。SPI每次数据传输可以 8 位或 16 位为单位,每次传输的单位数不受限制。

单片机--SPI协议

SPI通信模式图:

单片机--SPI协议

单片机--SPI协议

总结:

SPI有四种通信模式:

当CPHA为0,是SCK时钟线为奇数边沿采样

(1)CPOL=0,空闲状态是时钟为低电平

(2)CPOL=1,空闲状态是时钟为高电平

当CPHA为1,是SCK时钟线为偶数边沿采样

(1)CPOL=0,空闲状态是时钟为低电平

(2)CPOL=1,空闲状态是时钟为高电平

数据线被采样,都是等待数据线变化稳定半个时钟周期进行采样。

单片机--SPI协议

单片机--SPI协议

【2】LCD液晶显示屏

液晶的形成:

某些物质在熔融状态或被溶剂溶解之后,尽管失去固态物质的刚性,却获得了液体的易流动性,并保留着部分晶态物质分子的各向异性有序排列,形成一种兼有晶体和液体的部分性质的中间态,这种由固态向液态转化过程中存在的取向有序流体称为液晶。

单片机--SPI协议

物理特点:通电时导通,排列变得有秩序,使光线容易通过;不通电时排列混乱,阻止光线通过

液晶显示屏内部构造:

单片机--SPI协议

颜色深度:

 ① R,G,B三基色组合形成各种颜色。

②能显示的颜色数由RGB的数字信号的位数来决定。

单片机--SPI协议

例如,以3位数字信号来表示颜色深度

单片机--SPI协议

 RGB24表示的意思是(24位真彩色)

         R:8     

        G:8     

        B:8

  所以根据公式得到显示的颜色深度是2^8*2^8*2^8

  STM32G030开发板板载的显示屏是RGB16也称为RGB565

   颜色深度: 2^5 * 2^6 *2^5

  由一个16位的数据控制一个像素点的颜色显示正红色:  1111 1000 0000 0000

【3】点亮LCD显示屏

1.查看原理图

    底板原理图

单片机--SPI协议

单片机--SPI协议

打开STM32CubeMX新建工程配置对应引脚

单片机--SPI协议

单片机--SPI协议

单片机--SPI协议

单片机--SPI协议

将驱动文件放到工程目录下

单片机--SPI协议

单片机--SPI协议

单片机--SPI协议

单片机--SPI协议

单片机--SPI协议

单片机--SPI协议

图片显示

1.使用画图工具修改图片为像素128*128 ,取消纵横比

 2.图片保存为BMP格式

单片机--SPI协议单片机--SPI协议

 3.取模工具打开,配置16位真彩色,大小128*128

 单片机--SPI协议

4.保存并复制生成的数组,放到程序中 

单片机--SPI协议

使用函数显示图片

单片机--SPI协议

 运行效果

单片机--SPI协议

汉字显示

1.  打开汉字取模软件

单片机--SPI协议

单片机--SPI协议

单片机--SPI协议

单片机--SPI协议

定义一个char类型的二维数组,并初始化为汉字字模数据

单片机--SPI协议

调用汉字显示函数,按要求传递参数即可。

单片机--SPI协议

运行效果

单片机--SPI协议

  文章来源地址https://www.toymoban.com/news/detail-451446.html

到了这里,关于单片机--SPI协议的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 单片机——通信协议(UART协议解析篇)

            在嵌入式系统设计中,UART通信是一种广泛使用的串行通信协议,它通过 两条信号线实现全双工 的数据传输和接收。UART通信协议以其简单、灵活和易于集成的特点,在嵌入式设备之间以及与外部设备进行通信时发挥着重要作用。本文将详细介绍 UART 通信的 工作原

    2024年02月04日
    浏览(32)
  • 单片机IO模拟串口协议

            嵌入式硬件平台调试中常用的debug方法是看串口打印定位问题,但有时候会遇到单片机没有串口外设或者串口引脚被占用的情况,这时候也可以在代码里操作空闲的IO输出不同个数的脉冲来达到调试的效果,但是要用逻辑分析仪抓线逐个看波形比较费劲。既然都IO抖线

    2024年02月10日
    浏览(28)
  • MDIO接口协议与其详解——单片机

    MDIO(Management Data Input/Output)接口协议是一种常用于管理和配置网络设备的串行通信协议。在单片机领域,MDIO接口常用于与网络交换机、PHY芯片等外部设备进行通信。本文将详细介绍MDIO接口协议的原理和使用方法,并提供相应的源代码示例。 一、MDIO接口协议原理 MDIO接口协

    2024年02月22日
    浏览(43)
  • 【GD32】从0开始学GD32单片机(9)—— SPI外设详解+主机从机发送和接收例程

    SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种 高速的,全双工,同步的 通信总线。 SPI总共需要4根线来实现通信, NSS:片选线,用于选择需要通信的从机;CLK:同步时钟线,用于提供同步时钟信号;MISO:主机读从机写线;MOSI:主机写从机读线 。 GD32F103系列的

    2023年04月08日
    浏览(33)
  • 单片机:STM32F4x HAL库软硬SPI驱动ST7735s 1.8寸LCD屏幕

    说明:此篇为学习记录。可能存在错误或者不足。如有问题请指出。 主控芯片:STM32F411CEU6 主控开发板:WeAct STM32F411CEU6最小系统板 TFT-LCD屏幕:合宙1.8寸TFT-LCD,驱动为ST7735s MDK版本:5,32 HAL库版本:1.27.1 STM32CubeMX版本:6.7.0 ST7735s支持8080并口,3线和4线串行接口,模块的驱动方

    2024年02月03日
    浏览(45)
  • 51单片机(IIC协议OLED屏)

    1.1、概述:IIC全称Inter-Integrated Circuit (集成电路总线) 是由PHILIPS公司在80年代开发的两线式串行总线,用于连接微控制器及其外围设备。IIC属于半双 工同步通信方式 1.2、特点:简单性和有效性。 由于接口直接在组件之上,因此IIC总线占用的空间非常小,减少了电路板的空间和

    2024年01月22日
    浏览(37)
  • 智融SW3526多协议芯片单片机驱动

    目录 1、芯片概念      2、SW3526配置ADC寄存器 3、SW3526获取ADC数据 4、IIC底层驱动代码  5、SW3526写指令时序图 6、单片机IIC写指令代码  7、SW3526读数据时序图  8、单片机IIC读数据代码 9、SW3526资料(52和32的程序) 10、SW3526产品模型         SW3526 是一款高集成度的多快充协

    2024年02月02日
    浏览(29)
  • 【stm32单片机基础】红外NEC协议解码

    红外通信协议是一种基于红外线的传输技术,广泛使用的家电遥控器几乎都是采用的红外线传输技术,由于红外线为不可见光,对环境影响很小,红外线遥控不会影响其他家用电器,也不会影响临近的无线电设备。红外遥控的编码方式目前广泛使用的是: PWM(脉冲宽度调制)的

    2024年02月01日
    浏览(26)
  • PC 机与单片机通信(RS232 协议)

    PC 机与单片机通信 (RS232 协议 ) 目录: 1、单片机串口通信的应用 2、PC控制单片机IO口输出 3、单片机控制实训指导及综合应用实例 4、单片机给计算机发送数据: [实验任务] 单片机串口通信的应用,通过串口,我们的个人电脑和单片机系统进行通信。 个人电脑作为上位机,向

    2024年02月04日
    浏览(33)
  • STM32单片机(九)USART串口----第一节:USART串口协议

    ❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要从零基础开始学习入门单片机,且有一定C语言基础的的童鞋

    2024年02月16日
    浏览(33)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包