IIC总线VerilogFGPA模块实现注释详尽初学必备,实现了IIC读写EEPROM,已封装成模块,实例中为了testbench测试,将写入的数据变成了固定值,注释详尽,初学者也能明白,本人初学时编写,完整测试通过/****clk50M :50M输入时钟*resetKey :复位信号*IIC_SDA :IIC数据接口*IIC_SCL :IIC控制时钟接口*RWSignal :读写信号,读1,写0*startSignal :开始执行读命令信号,上升沿触发开始*readLen :需要读取的字节个数*beginAddr :开始读取的地址位置*getNum :当前对应地址获取到的字节值*sendNum :要写入的数据*dpDataOkClk :成功读处理完一个字节信息,读或写,将产生一个上升沿*///`MINCLK_DELAY产生一次计数,产生12次计数可以产生一次IIC_SCL信号的跳变//50M/2/2/MINCLK_DELAY/12=IIC_CLK`defineMINCLK_DELAY 4'd5`defineEEPROM_ADDR 7'b1010000`defineSDA_SENDDATA 1'b1`defineSDA_GETDATA 1'b0`defineREADE_DATASG 1'b1`defineWRITE_DATASG 1'b0moduleIICTest0(clk50M,resetKey,IIC_SDA,RWSignal,startSignal,beginAddr,IIC_SCL,sendNum,getNum,dpDataOkClk);
1
.AD7705时钟大于2M时,时钟设置寄存器的CLK位应置1,小于2M时应置0。
DCLK的脉冲宽度要满足最小的脉宽要求。
2024/8/31 9:28:23 10KB 调试!!!!!!!!!
1
FPGAVerilogHDL设计温度传感器ds18b20温度读取并通过lcd1620和8位LED数码管显示的QUARTUSII12.0工程文件,包括完整的设计文件.V源码,可以做为你的学习及设计参考。
moduleds18b20lcd1602display ( Clk, Rst, DQ,//18B20数据端口 Txd,//串口发送端口 LCD_Data,//lcd LCD_RS, LCD_RW, LCD_En, SMData,//数码管段码 SMCom//数码管位码 );input
1
本实验要求设计一个简易的频率计,实现对标准的方波信号进行频率测量,并把测量的结果送到8位的数码管显示,所要求测量范围是1Hz~99999999Hz。
整个设计的基本原理就是对1秒钟之内输入的方波进行计数,把所得数据保存在计数器里,经过译码器处理之后,然后送往数码管显示。
这里采用的方案是在采样时钟的上升沿开始计数,然后在下一个上升沿把计数器里的数据送往数码管,并且把计数器清零,让其重新计数。
整个方案的实现主要分为四个模块:时钟分频(clk_div)模块、计数器模块(counter)、译码器模块(seg8)、扫描输出(saomiao)模块。
2024/5/14 10:38:37 621KB fpga实现的频率计
1
Booth乘法器及测试8*8bitbooth乘法器及测试modulemultiplier(prod,busy,mc,mp,clk,start);output[15:0]prod;//shortforproductoutputbusy;input[7:0]mc,mp;//multiplicandmultipierinputclk,start;reg[7:0]A,Q,M;regQ_1;reg[3:0]count;
2024/5/13 16:18:36 3KB Booth乘法器
1
基于FPGA的UDP硬件协议栈,全部用SystemVerilog写的,不需CPU参与,包括独立的MAC模块。
支持外部phy的配置,支持GMII和RGMII模式。
以下是接口inputclk50,inputrst_n,interfacetousermoduleinput[7:0]wr_data,inputwr_clk,inputwr_en,outputwr_full,output[7:0]rd_data,inputrd_clk,inputrd_en,outputrd_empty,input[31:0]local_ipaddr,//FPGAipaddressinput[31:0]remote_ipaddr,//PCipaddressinput[15:0]local_port,//FPGAportnumber//interfacetoethernetphyoutputmdc,inoutmdio,outputphy_rst_n,outputis_link_up,`ifdefRGMII_IFinput[3:0]rx_data,outputlogic[3:0]tx_data,`elseinput[7:0]rx_data,outputlogic[7:0]tx_data,`endifinputrx_clk,inputrx_data_valid,inputgtx_clk,outputlogictx_en
2024/5/9 1:21:54 52KB FPGA UDP千兆 以太网 源码
1
该文件为QuartusII的工程文件,是直方图均衡图像增强的硬件实现,使用verilog编写。
共4个子模块,总共6个输入输出引脚,输入:clk为时钟引脚,rst是复位信号*(高位有效),imagesize是ROM中存储灰度图的像素个数。
输出:error是错误信号,image是经过处理后的输出像素灰度,req是处理完成的信号,在req为高是,image输出有效。
2024/2/7 0:40:39 3.38MB 图像处理 直方图均衡 QuartusII verilog
1
设计一个通用寄存器组,满足以下要求:①通用寄存器组中有4个16位的寄存器。
②当复位信号reset=0时,将通用寄存器组中的4个寄存器清零。
③通用寄存器组中有1个写入端口,当DRWr=1时,在时钟clk的上升沿将数据总线上的数据写入DR[1..0]指定的寄存器。
④通用寄存器组中有两个读出端口,由控制信IDC控制,分别对应算术逻辑单元的A口和B口。
IDC=0选择目的操作数;
IDC=1选择源操作数。
⑤设计要求层次设计。
底层的设计实体有3个:通用寄存器组数据输入模块包括4个16位寄存器,具有复位功能和允许写功能;
一个4选1多路开关,负责选择寄存器的读出。
一个2路数据分配器实现数据双端口输出,顶层设计构成一个完整的通用寄存器组。
2024/1/29 1:58:14 525KB 组成原理
1
FMC(FPGAMezzanineCard)简而言之,是具有特定功能的子卡模块。
FPGA夹层卡(FMC)标准由包括FPGA厂商和最终用户在内的公司联盟开发,属于ANSI标准,旨在为基础板(载卡)上的FPGA提供标准的夹层卡尺寸、连接器和模块接口。
I/O接口与FPGA分离,不仅简化了I/O接口模块设计,同时还能最大化载卡的重复使用率。
本示例为将几个信号通过ZC706上的FMC接口输出到载卡上。
1.源代码:moduletop(clk,CLKW,D3,D2,D1,D0,CLK_RESET,CLK_COMPUTE);inputclk;outputCLKW,D3,D2,D1,D0,CLK_RESET,CLK_COMPUTE;regCLKW,D3,D2,D1,D0,CLK_RESET,CLK_COMPUTE;integercounter=0;parameterN=20;integercounter1=0;regclk_div=0;initialbegin等等
2024/1/21 3:34:57 814KB fmc
1
HDB3解码Verilog程序源码,hdb3_decode.v,modulehdb3_decode(rst_n,clk,hdb3_in,hdb3_dec,fifo_dec);inputrst_n,clk;input[1:0]hdb3_in;outputhdb3_dec;output[9:0]fifo_dec;
2023/11/30 11:51:26 425KB HDB3解码
1
共 27 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡