九、RISC-V SoC外设注解——SPI接口

      最后更新:2022-03-10 00:29:47 手机定位技术交流文章

      早些时候曾提到RISC-V SoC外部模块,现已纳入SPI外部模块。

      目录

      1. 结构

      2. SPI模块

      2.1 基础知识

      输入和输出端口

      SPI 规则说明2

      参考:

      1. 结构

      如下所述,SPI模块还与公共汽车上的内核进行通信。

      2. SPI模块

      2.1 基础知识

      • SPI是一个高速、全时界面,即环形环形界面的缩略语。 同步 的通信总线。
      • SPI通信协议有助于以更简单、更快的速度传送数据,促进全时通信;然而,没有具体的流量控制,也没有反应机制来核证数据接收情况。
      • 如下图所示,三条公共汽车线由一个主要来源共享(不管其中有多少条是来自设备;每条都有一个单独的CS_N信号线,在低水平运行):

      通信模式和CPOL/CPHA

      根据SPI通信协议,通信有四种方式。模式0、1、2和3时钟使四种模型两极分化。CPHA代表时钟政策和时钟面孔。这篇文章是全球之声在线特稿的一部分。CCPOL 设置允许自由( CS_N 设定为高水平) 。当未选择设备时, SSCK 时钟信号的功率水平。CPHA具体说明数据取样是在SCK时钟的奇边缘还是甚至边缘进行。

      SPI基本通讯过程

      如下图所示,主机视角的通信时间序列。主机控制SSCK,MOSI和CS_N信号时钟信号由SCK表示。用以同步数据,MOSI是接收机器信号的主机输出主机通过此信号线向机器发送数据 。影片的信号由 CS_N 选择 。用以选定从机设备,当MISO信号由机器生成时,低高度是有效的。主机使用信号线从机器读取数据。MOSI和ISO只有在CS_N值低时才有效。每个SCK时钟周期传输一个数据包 。

      2.2 投入/产出港口

      2-3SPI 代码提醒

      步骤1:建立三个存放库。

      SPI_CTRL: 通过选择辅助设备的信号, 配置 SPI 协议的传输模式 。

      SPI_DAT:存储库储存主机与主机之间的数据。

      SPI_STATUS:表明SPI传输(匆忙或匆忙)的运行状态,该状态决定数据传输是否通过读取登记册完成,或者如果未完成,则不开始下一轮数据传输。

      步骤2:制作由SPI驱动(混合)的时钟。

      (c) 创建用于分裂频率的反氯化石蜡,导致分钟数。

      (a) 创建一个新的计数器,spi_clk_edge_cnt,计算 spi_clk 的边缘,从偶数中识别奇数,然后在数据传输完成后重复 spi_clk 。

      第3步:根据拆分时钟的spi_clk的变动情况提供和抽样数据。

      SPI 接口, 模式 0 主机仅负责 :

      1. 按奇数收集机外数据(从机器收集数据由一个特殊的外部配置进行,完全是为了保证主机和机器以相同的协议模式运作);
      2. 机器的数据应该按照偶数写入 。

      对应代码如下:

      在机器写作期间,主机数据MOSI从机器接收数据MOSI。

      第4步:从头开始编写SPI。

      1. C语言根据校外登记地址通过公共汽车登记簿写成。
      2. 对 spi_ status 登记册进行了更新,以反映当前数据传输状态(书面或未完成)。
      3. 发送完成后done == 1'b1,更新数据寄存器spi_data <= {24'h0, rdata};

      步骤5:审查SPI外仓库。

      (a) 使用外部登记员的地址,在公共汽车登记簿上用嵌入的C语言阅读。

      参考:

      对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起,对不起

      Tinyriscv 是RISC-V处理器核心, 由地制成, 极其基本且容易理解。 (gitee.)这个文章是我们对2011年埃及抗议的特别报导的一部分。

      本文由 在线网速测试 整理编辑,转载请注明出处,原文链接:https://www.wangsu123.cn/news/19824.html

          热门文章

          文章分类