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

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

3天内不再提示

如何利用verilog实现4线SPI配置时序

FPGA之家 来源:FPGA之家 2020-09-07 17:15 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

第二篇以德州仪器(TI)的高速ADC芯片——ads52j90为例,介绍完了4线SPI配置时序。本篇将以该芯片SPI结构为例,具体介绍如何利用verilog实现4线SPI配置时序。

无论实现读还是写功能,都先要提供SCLK。假如FPGA系统工作时钟40MHz,我们可以利用计数器产生一个n分频的时钟作为SCLK,本例中n取8,SCLK频率5MHz。SCLK产生的代码如下:

SCLK时钟有了,接下来我们建立一个状态机实现读和写功能:

初始化状态的下一个状态就是写寄存器操作了,每次SCLK的上升沿写入数据:

写完一个寄存器参数,CSB先拉高。接下来在进入下一个状态,本篇例子下一个状态的操作是读取对应寄存器地址的数据。我们首先需在SCLK的上升沿写入8bit的寄存器地址,接下来在SCLK的下降沿读取16bit的数据。

到此,读写操作都完成了。代码上的注释可以便于大家理解,大家还可以仿真看一下波形加深理解。

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

    关注

    31

    文章

    1374

    浏览量

    114836
  • SPI
    SPI
    +关注

    关注

    17

    文章

    1907

    浏览量

    102452
  • ADC芯片
    +关注

    关注

    3

    文章

    99

    浏览量

    21165

原文标题:FPGA通过SPI对ADC配置简介(四)---Verilog实现4线SPI配置

文章出处:【微信号:zhuyandz,微信公众号:FPGA之家】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    如何配置才能让ADL5202正常工作 verilog代码方面要什么要求吗?

    我在FPGA板子上,用SPI对ADL5202进行配置,A通道配置成功了,B通道没有配置成功(不知道为啥),但它应该有一个默认增益吧。我不知道ADL5202没有正常工作是硬件(FPGA板
    发表于 05-21 08:12

    AD9516 spi数据写不进或读不出来如何解决

    最近在用AD9516芯片,照着芯片手册的时序写了一份spi代码,寄存器配置采用评估板生成的,现在主要有两个问题:1.spi时序,数据都没问题
    发表于 05-15 06:15

    EEPROM产品线全解析

    :由国家半导体公司开发,使用SK(时钟线)、DI/DO(数据线,半双工)、CS(片选线)三根线 - 协议简单:通信协议比I2C和SPI更简洁,易于
    发表于 05-06 15:18

    如何利用SPI数据实时反馈调整锡膏印刷参数?

    利用SPI(锡膏检测系统)数据实时反馈调整锡膏印刷参数,可通过构建“检测-分析-调整”闭环系统实现,其核心在于以SPI的三维测量数据为基准,结合工艺优化算法动态修正印刷机参数,具体实施
    的头像 发表于 04-15 09:08 543次阅读

    详解电源时序配置方法

    随着系统应用的发展,电源应用的需求越来越多,同时在一个系统中,电源Rail要求也越来越多,而且不同的Rail需要按照一定的时序上电或者下电。
    的头像 发表于 03-25 07:44 1.2w次阅读
    详解电源<b class='flag-5'>时序</b><b class='flag-5'>配置</b>方法

    SGM4563:SPI总线或UART接口的4位电平转换器

    来自SGMICRO,具备诸多出色特性。 文件下载: SGM4563.pdf 一、产品概述 SGM4563是一款4位、非反相、双向电压电平转换器,拥有两条独立可配置的电源线。A端口和B端口分别跟踪
    的头像 发表于 03-16 14:45 227次阅读

    RK 平台 SPI 开发完全指南(驱动 + 配置 + 测试 + 优化)

    Linux 平台 SPI 驱动已形成完善的开发体系,支持 Master/Slave 双模式、多速率适配及灵活配置。本文基于 Rockchip 官方开发指南,从功能特性、驱动配置、测试验证到优化方案
    的头像 发表于 01-30 22:35 1423次阅读
    RK 平台 <b class='flag-5'>SPI</b> 开发完全指南(驱动 + <b class='flag-5'>配置</b> + 测试 + 优化)

    实战复盘:RK3588 SPI+PCIe3x4方案启动修复,从节点配置到驱动适配全解析

          在 RK3588 嵌入式项目中, “ 接口配置不匹配 ” 是高频踩坑点 —— 近期 基于 linux6.1 内核 调试 SPI 闪存 +PCIe3x4 外设 方案时,就遇到了 “eMMC
    的头像 发表于 01-08 10:24 947次阅读
    实战复盘:RK3588 <b class='flag-5'>SPI+PCIe3x4</b>方案启动修复,从节点<b class='flag-5'>配置</b>到驱动适配全解析

    FPGA实现基于SPI协议的Flash驱动控制芯片擦除

    本篇博客具体包括SPI协议的基本原理、模式选择以及时序逻辑要求,采用FPGA(EPCE4),通过SPI通信协议,对flash(W25Q16BV)存储的固化程序进行芯片擦除操作。
    的头像 发表于 12-02 10:00 2998次阅读
    FPGA<b class='flag-5'>实现</b>基于<b class='flag-5'>SPI</b>协议的Flash驱动控制芯片擦除

    GPIOB模拟spi的方法及lcd屏幕的接入

    越高,数据传输速率越快。由于spi接口较为简单,同时《RISC-V架构与嵌入式开发快速入门》书中也详细介绍过,在此原理部分介绍从略。 二、spi接口及lcd主要代码实现 lcd所需的GPIOB的
    发表于 10-30 07:59

    如何利用Verilog HDL在FPGA上实现SRAM的读写测试

    本篇将详细介绍如何利用Verilog HDL在FPGA上实现SRAM的读写测试。SRAM是一种非易失性存储器,具有高速读取和写入的特点。在FPGA中实现SRAM读写测试,包括设计SRA
    的头像 发表于 10-22 17:21 4642次阅读
    如何<b class='flag-5'>利用</b><b class='flag-5'>Verilog</b> HDL在FPGA上<b class='flag-5'>实现</b>SRAM的读写测试

    数字电压表设计教程之使用FPGA实现SPI协议通讯

    LTC2308通过一个标准4线SPI数字接口进行通信。LTC2308模数转换芯片有8个ADC通道和12位的分辨率,输入信号时钟频率范围不超过500KHz,按照Nyquist采样定理则建议输入信号在250KHz以下。
    的头像 发表于 10-07 09:22 1912次阅读
    数字电压表设计教程之使用FPGA<b class='flag-5'>实现</b><b class='flag-5'>SPI</b>协议通讯

    【RA4L1-SENSOR】点亮 WS2812 全彩点阵屏

    所需的时序 使能硬件 SPI0 功能,在 RASC 上配置如下: 引脚配置SPI 外设配置
    发表于 06-09 12:48

    【RA4L1-SENSOR】SPI点亮16级灰阶OLED显示屏

    瑞萨 R7FA4L1BD4CFP 有 1 个 SPI 接口,除此之外,还有 6 个 SCI 接口可以实现 Simple SPI 功能,这次使用 SP
    发表于 06-09 01:14

    ADE1202双通道可配置隔离式数字输入技术手册

    输入或接触输入。DOUTx 引脚上的 ADE1202 数字输出信号反映用户可配置信号调理后的输入信号状态。SPI 协议支持寻址,允许多达八个套件共享一个 4 线
    的头像 发表于 05-30 09:31 1338次阅读
    ADE1202双通道可<b class='flag-5'>配置</b>隔离式数字输入技术手册