当前位置: 首页 > news >正文

使用IIC进行多数据读取测试

IIC系列文章:
(1)I2C 接口控制器理论讲解
(2)I2C接口控制设计与实现
(3)I2C连续读写实现
(4)使用IIC进行多数据读取测试

文章目录

  • 前言
  • 一、control_RD_req模块
  • 二、顶层文件(IIC_control_EEPROM)
  • 三、测试文件(control_RD_req_tb)


前言

使用已完成的IIC模块,将256个数据写入,然后将256个数据读出,测试该模块写入与读取是否正常。

提示:以下是本篇文章正文内容,下面案例可供参考

一、control_RD_req模块

该模块主要用于读写测试的状态转换,其中状态CNT_1和CNT_2是计时5000000ns的延时,这个是仿真模型的两次操作时间间隔,小于这个延时的,操作就会有问题,初始阶段addr 为0000;写入
wrdata为 8’h00,当数据读出后让地址与数据自加1。当地址为256(0-255)是进入STOP状态。

`timescale 1ns / 1ps
// 
// Create Date: 2023/08/17 16:18:01
// Tool Versions: Vivado 2018.3
// Module Name: control_RD_req
//module control_RD_req(input Clk,input Rst_n,input str_go,input RW_Done,output reg wrreg_req,output reg rdreg_req,output reg [15:0]addr,output reg [7:0]wrdata);parameter a_second = 18'd249999;reg [17:0]count;reg [4:0]curr_state;parameter IDLE    = 6'b000001,WRITE   = 6'b000010,CNT_1   = 6'b000100,READ    = 6'b001000,CNT_2   = 6'b010000,STOP    = 6'b100000;			  always @ (posedge Clk or negedge Rst_n)if(!Rst_n)beginwrreg_req <= 0;rdreg_req <= 0;count     <= 0;curr_state     <= IDLE;addr      <= 16'h0000;wrdata    <= 8'h00;endelse begin case (curr_state)	IDLE : begin
http://www.lryc.cn/news/138917.html

相关文章:

  • drools8尝试(加单元测试)
  • Web3和去中心化:互联网的下一个演化阶段
  • stm32 之20.HC-06蓝牙模块
  • [技术杂谈]macOS上todesk无法远程操作鼠标键盘
  • 【C++设计模式】用简单工厂模式实现按汽车重量输出汽车类型
  • 【Ubuntu20.04安装Nvidia驱动、CUDA和CUDNN】
  • [Python进阶] 类的设计模式
  • 设计模式 07 桥接模式
  • linux系统(centos、ubuntu、银河麒麟服务、uos、deepin)判断程序是否已安装,通用判断方法:使用所有应用和命令的判断
  • 机器学习各算法优缺点汇总
  • 手把手教你部署Jenkins教程,小白也能学会(多图预警)!
  • 一种IDEA疑难杂症的解决办法
  • TikTok小店玩法有哪些?一起来玩转TiKTok!
  • Mongodb 集合插入文档自动生成ObjectId
  • C# .aspx网页获取RFID读卡器HTTP协议提交的访问文件Request获得卡号、机号,Response回应驱动读卡器显示响声
  • Kali Linux 2023.3 发布
  • 如何用Python实现从pdf文件精准抓取数据生成数据库!
  • 科技资讯|苹果Apple Watch新专利,可根据服装、表带更换表盘颜色
  • 猜数游戏-Rust版
  • 从零起步:学习数据结构的完整路径
  • 如何在浏览器中启用 WebGL 以使用 HTML5 3D 查看器
  • 【计算机协议】第一章——HTTP协议详解
  • 【FAQ】安防监控视频汇聚平台EasyCVR接入GB国标设备,无法显示通道信息的排查方法
  • Matlab 生成一定信噪比的信号
  • [国产MCU]-W801开发实例-定时器
  • 基于 CentOS 7 构建 LVS-DR 群集,配置nginx负载均衡。
  • 大数据——spark一文全知道
  • Linux命令200例:telnet用于远程登录的网络协议(常用)
  • 使用 eBPF 在云中实现网络可观测性
  • linux安装部署gitlab全教程,包含配置中文