自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 基于FPGA的蓝牙密码锁,小程序端修改密码(4位密码/6位密码)可扩展功能verilog,已通过上板验证

准备:蓝牙模块、矩阵键盘模块、数码管模块以及开发板即可4位密码/6位密码Quartus或者vivado 都可。

2025-03-29 15:28:52 317

原创 基于FPGA的ESP8266无线数据传输(温湿度DTH11、光照强度BH1750、WIFI模块)连接中国移动onenet云平台,仿真+上板通过+可视化平台搭建

踩得坑:正点原子的esp8266模块不用刷固件,mqtt直接用,买其他的esp8266 -01需要刷固件,我还没买底座,比较麻烦,后来索性换了正点原子的wifi模块。其实用其他的效果一样,都是AT指令+MQTT,只不过需要刷固件。参考:优快云大佬们 ID:紧邻的二氧化碳虽然但是fpga做这些没什么优势,但是架不住有些毕业设计需要,emmmm当个参考吧。

2025-03-27 22:29:03 427 3

原创 OFDM接收机学习-第二章 符号同步模块FPGA的实现

第一章根据短序列的周期性以及延迟相关并长度保持算法进行了判断新数据分组到来的判断。输出的结果就是根据输入给与一个大概位置的有效标志,之后更加精确的判断交给后面的其他模块。因为本实验只使用了一个载波,所以不需要进行载波同步,直接进入符号同步,符号同步会充分利用短序列,燃烧最后价值。消除空闲间隔,输出长序列以及有效数据。理解教材公式,做好数据控制,验证数据计算。实际上板需要结合实际更新阈值等数据。代码参考教材:基于xilinx FPGA的OFDM通信系统基带设计。

2025-01-13 16:12:13 1049

原创 OFDM接收机学习-第一章 分组检测模块FPGA的实现

ofdm发射机信号最终是发出来了2路8位的时域信号,分别是8位实部和虚部。最终的话通过板子验证发射机与接收机之间的正确通信,因此涉及到不同时钟域作用下的信号首先就要考虑信号的同步问题。如何在有噪声的情况下基本正确找到帧头也就是前导码,正确找到前导码也就意味着正确找到了数据域,才能完成两个时钟域之间的正常通信。理解教材公式,做好数据控制,验证数据计算。实际上板需要结合实际更新阈值等数据。

2025-01-11 15:30:49 1219

原创 基于FPGA的洗衣机控制器电子定时器

(2)用两个数码管显示洗涤的预置时间(默认10分钟),再用两个数码管按倒计时方式对各个洗涤状态过程作计时显示,直到 时间到停机;(3)洗涤过程由“开始”信号开始;(1)定时启动正转20秒暂停10秒反转20秒暂 停10秒,定时未到回到“正转20秒暂停10秒……若定时到,则停机发出音响信号;其中围绕工作状态展开进行二次状态设计,正转、反转以及暂停等等。(4)三只LED灯表示“正转”,“反转”、“暂停”三个状态。首先控制空闲状态、工作状态以及结束状态。(5)用动态扫描控制四个数码管的输出。

2025-01-04 20:48:10 872

原创 基于FPGA的出租车里程时间计费器

模块太多,只展示了比较重要的,其他一些模块就是产生分频信号的,无关紧要。需要的一键三连。

2025-01-04 15:15:02 634

原创 OFDM学习-(二)长短序列和PPDU整体数据处理流程

根据框图可以知道发射机这部分信号在DA转换之前,数据是两路,分别是实部和虚部8位信号。通过DA转换也是两路模拟信号,通过IQ调制搞到射频。PPDU包括3部分数据,长短序列是不需要进行ofdm操作的,signal和data的信号需要进行ofdm操作,也就是下面图中扰码、卷积编码、交织等等的操作,最后通过ifft和cp加窗后进行输出,最后将实部信号与虚部信号与训练序列的实部和虚部按照位置分别发送。训练序列的产生要明白:频域上用了12个子载波,间隔为4,BPSK符号格式,功率因数1.4几来着?。

2025-01-03 22:35:45 1181

原创 基于FPGA的辩论赛系统设计-8名选手-正反两方-支持单选手评分-正反两方评分总和

基于FPGA的辩论赛计分器,(1);答辩倒计时功能,当正反任意一方开始答辩后,倒计时30S。在倒计时最后10S后,LED灯开始闪烁,用来提醒辩论人时间快结束了。(2);答辩评分和计分功能,当答辩方结束答辩后,评委可以通过按键进行评分,基础分数为10分(满分),可以通过按键减少分数,最后通过确认按键确定评分。同时正方和反方的评分总数可以通过按键进行显示,达到一个计分的功能。

2024-12-31 15:16:24 486

原创 基于FPGA 的4位密码锁 矩阵键盘 数码管显示 报警仿真

正确 错误输出对应的led信号 连续错误3次输出led锁定信号。1、通过键盘模拟4位密码输入 矩阵键盘。3、密码可通过管理员按键进行修改。

2024-12-22 10:30:59 547 5

原创 OFDM学习(一)解析OFDM无线通信数据协议

思来想去,焦虑如同有丝分裂一般占据我内心的最高点,打破原本的电解质平衡,整个心理防线破烂不堪,导致焦虑所到之处如同废墟一般。为何焦虑?不仅仅是基础不牢的知识储备,还有课题内容的停滞不前,还有父亲康复的煎熬陪护,还有看不到自己得未来,还有担心不能给予所爱之人稳定且安逸的生活。《研究生FPGA只会写SPI、串口和IIC,感觉毕业之后会找不到工作,请问下一步应该学什么?,看到之后感慨万分,仿佛看到了自己的身影。

2024-12-12 15:22:57 1095

原创 基于FPGA的PI环调节电压

默认DA输出初始电压-AD获取DA输入电压-FPGA负责根据目标值进行调节-最终DA输出电压稳定在目标电压附近-改变目标值DA输出随之改变。AD7606数字量范围与AD9767不同,注意数字量之间要基于基础电压单位进行切换,避免仿真跑飞。error = meas(AD)- target(我都会设置为1.0V)%通过pi环计算ref值,系数定为:Kp=0.5 Ki=0.05。%然后计算需要送出去的值要增加减少多少。%计算target和meas的误差。AD7606-AD采样模块。%然后计算出要送出去的值。

2024-12-09 18:13:48 513

原创 基于FPGA的智能电子密码指纹锁(6位密码) 全套Verilog代码 可上板

其实就是围绕UART和状态机展开的逻辑编写,部分常见代码直接参考了正点原子、野火、等等案例,部分简单功能使用了chatgpt进行描述生成。实现难度并不大,就是涉及的模块较多,不过好好利用仿真结果能够差不多。代码有很多不足之处,有问题欢迎批评指正。

2024-12-07 20:36:10 1297 2

原创 CPLD入门-Quartus-图形化编程-LED骑士之光效果

在这个里程碑中,您将使用 CPLD 和6个 LED 构建骑士之光效果。系统概览如图 2.1 所示。开始使用 EPM240 CPLD.创建中等复杂度的可重用模块。熟悉多种设计输入方法,

2024-11-24 16:42:18 310

原创 FPGA学习-FFT变换-解决频率低信号进行FFT运算的取点问题

首次接触FFT变换是在OFDM中,QAM后的实部信号与虚部信号需要进行FFT转化,将频域信号转化为时域信号,最终通过DA接口转化为模拟信号。当时对于FFT的理解比较浅,对离散傅里叶的变化了解也少之又少。通过结合MTALAB进行了FFT变化操作,了解了直流分量以及FFT的基本计算。后期在vivado中调用fft的ip核遇到了很多问题。踩过的坑一一写在下面,希望能给路过的各位提供一点点价值:1.fft ip核的配置,端口含义config相关数据的配置、ifft、fft对应0和1。

2024-11-24 16:39:17 696

原创 基于FPGA的2FSK调制-串口收发-带tb仿真文件-实际上板验证成功

设计实现连续相位 2FSK 调制器,2FSK 的两个频率为:fI=15KHz,f2=3KHz,波特率为 1500 bps,比特0映射为f 载波,比特1映射为 载波。1)接收到被发送的数据帧后,按下面格式生成突发帧:帧头(1111111101111110,16比特)+数据帧长度字节(高位在前)+数据帧(来自UART接口的数据字节,每个字节高位在前)+XOR校验字节(长度字节、数据的XOR结果)+结尾8比特(0000000)2)通过 DAC 模块输出已调信号波形。

2024-11-22 18:33:27 1466

原创 基于FPGA的FM调制(载波频率、频偏、峰值、DAC输出)-带仿真文件-上板验证正确

FM、AM等调制是学习FPGA信号处理一个比较好的小项目,通过学习FM调制过程熟悉信号处理的一个简单流程,进而熟悉信号变换的一些基本方法。能够学习真好,需要学习的太多了,时不时的记录一下,好记性不如烂笔头。

2024-11-22 18:33:06 2778 2

原创 FPGA学习-RGB LCD显示正弦波

板子:正点原子达芬奇的FPGA开发板,后续FPGA学习硬件都是基于该开发板,软件环境基于vavido和modelsim完成显示屏算是一个比较常见的功能模块,最开始接触是一种长方形的模块,比较low像外面超市那种循环播放的红色字幕的屏幕。后来在接触就是oled屏幕,当时32学习这个屏幕也是主要围绕通信协议以及封装函数,显示都是直接调用封装好的函数,本身没有涉及太多的逻辑。今天来看看这个板卡配套的大屏幕的工作流程吧,了解屏幕的基本参数,通信原理以及图形显示等等。

2024-11-04 17:04:17 891

原创 FPGA学习-将modelsim中的波形数据保存到TXT文件方便MATLAB画图分析

Modelsim导出TXT文件。

2024-10-17 16:06:33 422

原创 OFDM学习-IP核学习-FIFO IP核和FFT IP核在vavido中的配置以及使用

记录一下OFDM学习中遇到的ip核使用方法,个人之前主要用Quatus,之前用ip核也比较少,记录一下配置过程吧以及一些参数的含义,避免我忘记,个人自用,有问题欢迎指出。记录一下东西能够让人心静下来,正处于秋招这个烦躁的时间点,希望一切能够有个好的结局吧。

2024-10-12 16:52:06 963

原创 OFDM学习-通过共轭配对实现IFFT输出虚部为零-输出实部信号-避免后续DA转化后进行的操作

正常来讲,OFDM发射机中,经过IFFT输出的两路信号分别是实部信号和虚部信号,完成基本的信号处理后需要进行DA转换,分别对cos和相差90度相位的cos相乘后进行信号叠加,进而完成信号发射的基本形式。本文是通过处理IFFT的输入,利用共轭的基本性质,最后使得IFFT的虚部信号输出基本为0,实际仿真得出虚部信号在(FE~01)之间,基本满足。提示:以下是本篇文章正文内容,下面案例可供参考共轭这个处理手段能够减少后面的一定操作,如果需要,可以简化整体的一个流程。

2024-10-12 10:22:16 585

原创 32位/16位/4位超前进位加法器 Verilog

首先,搭建1位的全加法器模块,实现1位数据的相加。一位的全加法器相对简单,针对输入信号数据1、数据2以及进位信号输出两个信号,分别是相加之后的结果和进位信号。其中相加的结果直接使用异或门进行计算,避免使用组合逻辑,避免产生系统延迟,计算进位信号使用与门和或门搭配进行实现,当输入信号任意两个或者三个为高电平时,则说明需要进行进位。基于Verilog语言设计一个32位加法器,普通加法器基本上都是串行逻辑,但是随着数据位的增加,串行执行所需要的周期就越长,因此对整个系统造成的相位落后就越大。

2024-07-16 09:13:07 685

原创 基于FPGA的四层电梯 层数可改 Verilog 通过仿真带tb文件

在电梯控制系统设计仿真练习中,学生将能够通过实际的项目实践,深入理解和掌握Verilog语言的应用、FPGA的设计方法以及仿真工具的使用。这种练习不仅培养了学生的工程设计能力,还能够帮助他们理解和分析实际硬件设计与仿真结果之间的关系,从而为未来的工程项目打下坚实的基础。电梯控制器设计任务:设计一个四层楼房自动电梯控制器,用四个 LED显示电梯行进过程,并有数码管显示电梯当前所在楼层位置,在每层电梯入口处设有请求按钮开关,请求按钮按下则相应楼层的LED亮。用CLK脉冲控制电梯运动,每来一个CLK脉冲电梯升(降

2024-07-13 10:05:51 916

原创 GD32系列海棠派学习日志4_ESP8266模块调试

按照这个顺序进行发送,其中注意手机打开TCP创建服务器,手机与ESP8266模块要连接到一个热点上。WIFI模块是我离你越近,你感觉到我对你的喜欢就越强烈~ESP8266接受数据不需要配置。2024.5.30(一天)设置模式 选择模式3。

2024-06-24 11:30:03 277

原创 Quatus软件Verilog调用同步FIFO ip核步骤

FIFO(First In First Out,即先入先出),是一种数据缓冲器,用来实现数据先入先出的读写方式。与 ROM 或 RAM 的按地址读写方式不同,FIFO 的读写遵循“先进先出”的原则,即数据按顺序写入 FIFO,先被写入的数据同样在读取的时候先被读出,所以 FIFO存储器没有地址线。FIFO有一个写端口和一个读端口外部无需使用者控制地址,使用方便。FIFO就是如果两个人同频,那么你们永远都不会走散,我的爱意先进先出,但是存满就会表达爱意哦~

2024-06-01 16:52:44 655

原创 Quatus软件Verilog调用PLL ip核步骤

PLL(Phase Locked Loop,即锁相环)是最常用的IP核之一,其性能强大,可以对输入到FPGA的时钟信号进行任意分频、倍频、相位调整、占空比调整,从而输出一个期望时钟,实际上,即使不想改变输入到 FPGA 时钟的任何参数,也常常会使用 PLL,因为经过 PLL 后的时钟在抖动(Jitter)方面的性能更好一些。Altera中的PLL是模拟锁相环,和数字锁相环不同的是模拟锁相环的优点是输出的稳定度高、相位连续可调、延时连续可调;缺点是当温度过高或者电磁辐射过强时会失锁(普通环境下不考虑该问题)

2024-06-01 15:32:27 1779

原创 GD32系列海棠派学习日志3_FLASH读写实验WQ25XX

FMC即Flash控制器,其提供了片上Flash操作所需要的所有功能,在GD32H7XX系列MCU中,具有高达3840KB字节的片上闪存可用于存储指令或数据。全都封装好了 还是比较方便的,但是我就疑问一个东西,就是为什么这个SPI接口定义完了,没有执行bsp_spi_init这个函数对这个接口进行初始化?但是我感觉他这个不就是开发板上的flash芯片,看原理图应该是WQ25XX系列的,GD自己也做FLASH芯片,正好前段时间调了这个芯片。2024.5.29(1小时)读写函数,参数是地址。

2024-05-30 08:10:47 409

原创 GD32系列海棠派学习日志1_按键使用调试(普通和中断)

key_scan()扫描函数主要是监测按键状态,当有按键按下后,all_key_up标志置高,然后返回按键状态,其中通过结构体将按键的按下时间进行了赋值,主程序可以通过判断对按键状态进行具体的控制。按键基础监测时间10 按键回调函数10ms这个 按下自动调用key_scan(10)主程序通过判断按键持续时间进行相应的操作。按键状态监测,根据按键状态进行控制;按键按下了,人生的命运齿轮开始转动?2024.5.29(1小时)GPIO输入功能原理;按键查询输入检测原理;

2024-05-30 08:09:35 454

原创 GD32系列海棠派学习日志1_点亮LED灯

函数参数结构体定义如图所示,主要是名称、引脚、引脚模式、还有callback函数等等。led.h文件里面介绍了相关操作函数,分别是初始化,点亮,熄灭和翻转函数。主程序通过翻转函数以及LCD屏幕进行显示。开发板上有4个LED灯,接口如图所示。2024.5.29 1小时。灯亮了,我的世界也亮了。

2024-05-29 16:33:19 476

原创 GD32系列海棠派学习日志0_板卡资源介绍熟悉

GD32H757开发板外形尺寸100mm*60mm,板内集成了SDRAM/SD卡槽/TFT LCD接口/RGB565接口/OLED接口/摄像头接口/NOR FLASH/ SWD+USART接口/USB接口,板载资源丰富、采用144引脚的GD32 H757ZMT6作为主控芯片,芯片自带3840K字节FLASH和1024k字节SRAM,并外扩32M字节SDRAM和16M字节NOR FIASH,板子提供多种标准接口方便实验和产品开发。主频:最高600Mhz 144pins。

2024-05-29 16:06:57 530

原创 FPGA通过SPI读取WQ25128 FLASH芯片内容 Verilog语言

按照数据手册一步一步去实现,应该问题不大,写数据的话用到的命令稍微多一点,需要确定相关的状态,还需要擦除一定扇区。如果需要完整代码工程的话可能后台私信我,一键三连哦~

2024-05-24 10:05:37 719 1

原创 Quatus软件Verilog调用FIFO ip核步骤

现有市场中又很有封装好的ip核,学会怎么调用ip核能够减小自身代码量,我觉得就类似学会32里面怎么调用库函数,基本一个道理吧。不过这个ip核还需要配置一下。本文以FIFO IP核为例进行操作,如有错误,希望评论指出~

2024-05-08 15:56:10 389 1

转载 STM32---存储器

RAM是“Random Access Memory"的缩写,被译为随机存储器。所谓“随机存取”,指的是当存储器中的消息被读取或写入时,所需要的时间与这段信息所在的位置无关。这个词的由来是因为早期计算机曾使用磁鼓作为存储器,磁鼓是顺序读写设备,而RAM可随读取其内部任意地址的数据,时间都是相同的,因此得名。实际上现在RAM已经专门用于指代作为计算机内存的易失性半导体存储器。根据RAM的存储机制,又分为动态随机存储器DRAM(Dynamic RAM)以及静态随机存储器SRAM(Static RAM)两种。

2024-03-29 11:38:53 413 1

原创 FPGA Verilog 单芯片控制双AD7606芯片

控制双ad7606的目的是因为所需要的通道数12,单个ad7606只有8个通道,因此需要控制2个ad7606满足12个通道的采样需求。

2024-01-12 16:30:44 2000 3

原创 FPGA Verilog 曼彻斯特编码译码 同步 DPLL(二)

前面进行了曼彻斯特编码的讲解,只要注意数据来源频率与编码时钟频率之间的关系就能够精准进行编码工作。同样这两个问题也是保证译码工作的关键!实际上板之后仿真通过,通过示波器观察信号波形能够获取正确的信号波形。

2024-01-10 18:32:15 1189 3

原创 FPGA Verilog 串行转并行(1位-16位)带tb

可以通过仿真码字不易 留下你的足迹!全部代码开源

2023-12-07 11:43:30 256 1

原创 IT行业的护城河

只有具备了深厚的技术功底,程序员才能够在复杂的系统环境中游刃有余,从容地应对各种挑战,确保系统的稳定性和安全性。总的来说,程序员的护城河是一个综合性的概念,涵盖了技术能力的深度、对创新的追求以及沟通协作等软实力。只有综合考量这些方面,程序员才能够在数字世界中真正成为护城河,捍卫着系统的安全和稳定,为构筑美好的数字未来贡献自己的力量。良好的沟通能力和团队协作精神是非常重要的,它可以帮助程序员更好地与团队成员、业务部门以及用户进行有效的沟通和协作,共同推动项目的顺利进行并取得成功。

2023-11-20 11:47:30 88 1

原创 FPGA Verilog 实现串口发送任意字节数据(8的倍数)已通过上板验证支持常用波特率

/ ** 功能 : 1、基于FPGA的串口多字节发送模块;// 2、可设置一次发送的字节数、波特率BPS、主时钟CLK_FRE;// 3、UART协议设置为起始位1bit,数据位8bit,停止位1bit,无奇偶校验(不可在端口更改,只能更改发送驱动源码);// 4、每发送1次多字节后拉高指示信号一个周期,指示一次多字节发送结束;// 5、数据发送顺序,先发送低字节、再发送高字节。如:发送16’h12_34,先发送单字节8’h34,再发送单字节8’h12。

2023-11-19 12:15:38 1213 4

原创 Verilog 实现CRC_16(DNP)协议校验码已通过仿真

CRC校验(循环冗余校验)小知识CRC即循环冗余校验码(Cyclic Redundancy Check):是数据通信领域中最常用的一种查错校验码,其特征是信息字段和校验字段的长度可以任意选定。循环冗余检查(CRC)是一种数据传输检错功能,对数据进行多项式计算,并将得到的结果附在帧的后面,接收设备也执行类似的算法,以保证数据传输的正确性和完整性。NAME:参数模型名称。WIDTH:宽度,即CRC比特数。POLY:生成项的简写,以16进制表示。

2023-11-19 11:51:55 898 7

原创 Verilog小案例-任意位宽并行数据转串行数据

本文以16位并行数据输入为例,将该数据转化为串行数据进行输出,上板验证正确,不存在错误。同时可以进行修改,可以自行结合修改输入位宽,同步修改cnt以及边界值即可!

2023-11-15 16:16:04 391

原创 FPGA Verilog 曼彻斯特编码译码 同步 DPLL(一)

本章给出了曼彻斯特编码的Verilog代码以及上板验证过程,验证成功,没有出现差错。讲解了定义、编码规则、实验代码、注意事项等等。

2023-11-15 15:47:55 1667

该系统整体包含四个功能:如图2.1数字时钟自定义显示、数字时钟校时、闹钟设置、倒计时设置,根据4个开关的0和1状态,实现功能间的切换

时钟:时钟利用的是开发板上提供的50MHz晶振的系统频率,采用分频器,分别得到1Hz, 0.5Hz两个频率时钟信号。1Hz频率信号用来作为系统的主时钟,触发秒的进位;0.5Hz频率信号整点报时,作为音频输出的节拍频率。 计数器:主计时模块由60秒计数器,60分钟计数器,24小时计数器构成,每个计数器分别有时钟或进位时钟作为输入,有清零端口SW0用于清零,此外,有端口SW1组构成了手动时钟信号,作为置数开关使用,实现手动校时功能。 校时模块:通过按键来模拟下降沿触发,促使时间的变化。 显示模块:译码器模块有4-7译码器和4-8译码器,分别对数据进行处理输入给数码管。 闹钟模块:闹钟模块在满足小时和分钟设定值的时候会亮灯,倒计时模块可以手动输入起始时间,之后打开使能端会开始输出,当计时结束后会亮灯提醒。

2024-12-31

OFDM无线通信研究,包括发射机与接收机仿真,通过该案例能够学习通信数据所需要进行的数据处理操作,进而为实现FPGAofdm通信打好基础 MTALAB仿真文件

OFDM无线通信研究,包括发射机与接收机仿真,通过该案例能够学习通信数据所需要进行的数据处理操作,进而为实现FPGAofdm通信打好基础。MTALAB仿真文件可供学生学习使用,不具备工程参考意义

2024-12-31

新年烟花LED效果,10分频,10khz变1khz,Multisim仿真

数字电路:根据所选方案确定计数器类型(同步计数器或异步计数器),选择合适的芯片(74LS系列芯片),设计计数器的复位、时钟等逻辑电路。在PCB 板上搭建电路,注意芯片的电源、接地及信号连接正确性。模拟电路:选择合适的锁相环芯片(74161N),设计外围电路,包括环路滤波器等元件参数计算与选型。搭建电路时要确保元件精度与布局合理,减少干扰。本次实验设计主要分为两步,一是利用555定时器设计频率为1Hz的自激多协振荡器,二是利用74LS161构成10分频计数器。如图1.1所示,555定时器以及周围电阻电容电路负责产生10khz、3.3v的方波电路,输出作为分频电路的输入。74161N芯片以及周围电路负责进行10分频,使得最终输出为1khz的方波信号。

2024-12-24

基于FPGA 的4位密码锁矩阵键盘 数码管显示 报警仿真

4位数字密码锁 1、通过键盘模拟4位密码输入 矩阵键盘 正确 错误输出对应的led信号 连续错误3次输出led锁定信号 3、密码可通过管理员按键进行修改

2024-12-22

FPGA-EPM240-Quartus-LED-图形化编程

在这个里程碑中,您将使用 CPLD 和6个 LED 构建骑士之光效果。系统概览如图 2.1 所示。系统包含以下模块: 时钟预分频器 BCD 计数器 BCD 解码器 映射模块

2024-11-22

基于Verilog语言设计一个32位超前进位并行加法器 带tb文件 通过仿真 位数可以变8/4/12/24位

基于Verilog语言设计一个32位加法器,普通加法器基本上都是串行逻辑,但是随着数据位的增加,串行执行所需要的周期就越长,因此对整个系统造成的相位落后就越大。因此本实验将设计并行逻辑的加法器,采用超前进位的加法器实现32位加法器。32位加法器本身的逻辑结构还是比较复杂的,因此我选择拆解问题,选择从简单到复杂进行组建模块。首先,搭建1位的全加法器模块,实现1位数据的相加。一位的全加法器相对简单,针对输入信号数据1、数据2以及进位信号输出两个信号,分别是相加之后的结果和进位信号。其中相加的结果直接使用异或门进行计算,避免使用组合逻辑,避免产生系统延迟,计算进位信号使用与门和或门搭配进行实现,当输入信号任意两个或者三个为高电平时,则说明需要进行进位。

2024-07-13

基于fpga 的四层电梯,仿真通过 带tb文件

基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件 基于fpga 的四层电梯,仿真通过 带tb文件

2024-07-13

基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程

基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程 基于fpga的9层电梯,层数可以 基于fpga的9层电梯,层数可以改,任意层数均可实现,先看tb文件 理解怎么个工作流程

2024-07-13

FPGA Verilog DDS 雏形,本资源只是为了调用一下rom ip核 具体使用流程看说明

ROM 读取mif文件,那么如何用该模版生成一个DDS信号发生器,首先需要确定波形数据,用MATLAB软件生成正弦波、方波、锯齿波等等波形数据,存放在你需要数据大小,注意格式为mif,然后调用的rom ip核中导入该文件即可,这时候控制地址,输出数据,即可看到你想要的波形。 ROM 读取mif文件,那么如何用该模版生成一个DDS信号发生器,首先需要确定波形数据,用MATLAB软件生成正弦波、方波、锯齿波等等波形数据,存放在你需要数据大小,注意格式为mif,然后调用的rom ip核中导入该文件即可,这时候控制地址,输出数据,即可看到你想要的波形。 ROM 读取mif文件,那么如何用该模版生成一个DDS信号发生器,首先需要确定波形数据,用MATLAB软件生成正弦波、方波、锯齿波等等波形数据,存放在你需要数据大小,注意格式为mif,然后调用的rom ip核中导入该文件即可,这时候控制地址,输出数据,即可看到你想要的波形。

2024-06-02

FPGA Verilog 计算信号频率,基础时钟100Mhz,通过锁相环ip核生成200Mhz检测时钟,误差在10ns

结合等精度测量原理和原理示意图可得:被测时钟信号的时钟频率fx的相对误差与被测时钟信号无关;增大“软件闸门”的有效范围或者提高“标准时钟信号”的时钟频率fs,可以减小误差,提高测量精度。 实际闸门下被测时钟信号周期数为X,设被测信号时钟周期为Tfx,它的时钟频率fx = 1/Tfx,由此可得等式:X * Tfx = X / fx = Tx(实际闸门)。 其次,将两等式结合得到只包含各自时钟周期计数和时钟频率的等式:X / fx = Y / fs = Tx(实际闸门),等式变换,得到被测时钟信号时钟频率计算公式:fx = X * fs / Y。 最后,将已知量标准时钟信号时钟频率fs和测量量X、Y带入计算公式,得到被测时钟信号时钟频率fx。

2024-06-02

FPGA Verilog PLL锁相环 FIFO同步 ip核调用 仿真工程

FPGA Verilog PLL锁相环 FIFO同步 ip核调用 仿真工程 FPGA(Field-Programmable Gate Array)是一种可编程逻辑器件,允许用户根据设计需求配置其内部逻辑。在FPGA中,Verilog是一种硬件描述语言,用于编写数字电路的逻辑设计。PLL(Phase-Locked Loop)是FPGA中常用的一种频率合成技术,它通过锁定相位来同步不同信号源,常用于时钟管理和频率分频。 锁相环(PLL)在Verilog中实现通常包括电压控制振荡器(VCO)、分频器、鉴相器和低通滤波器等模块。PLL设计的关键在于调整这些模块参数,以达到所需的输出频率和相位关系。 FIFO(First-In-First-Out)是一种常用的存储结构,用于在不同时钟域之间传递数据,解决时钟域间的同步问题。在FPGA设计中,FIFO的Verilog实现会涉及到读写指针管理和深度控制,确保数据的正确存取。 在FPGA设计中,经常需要调用预定义的IP(Intellectual Property)核,如PLL和FIFO IP,这些核由供应商提供,经过验证,可以直接集成到设计中。

2024-06-01

Verilog 实现CRC-16(DNP)协议校验码已通过仿真

Verilog语言可以用于实现CRC_16(DNP)协议校验码,该实现已通过仿真验证。CRC(Cyclic Redundancy Check)是一种错误检测码,广泛应用于数据通信中以确保数据传输的准确性。在这个实现中,Verilog代码通过按照DNP协议规范进行计算和校验,生成符合CRC_16(DNP)标准要求的校验码。CRC_16(DNP)协议采用16位的校验码,对数据进行逐位处理,然后通过特定的多项式进行运算,最终得到校验码。Verilog语言的灵活性和并行计算能力使得这样的复杂运算可以高效地实现。经过仿真验证,该实现能够正确地生成和校验符合CRC_16(DNP)标准的校验码,为数据通信的可靠性提供了重要保障。这种基于Verilog的CRC_16(DNP)协议校验码实现可以广泛应用于各种需要数据完整性保护的场景,例如工业控制系统、智能电网等领域,为数据通信安全性和稳定性提供了可靠的技术支持。

2023-11-19

FPGA Verilog 实现串口发送任意字节数据(8的倍数)已通过上板验证支持常用波特率

FPGA Verilog编程语言可用于实现串口通信,并且可以实现发送任意字节数据,尤其是8的倍数。这种实现已经通过上板验证,并支持常用波特率。在这个实现中,串口模块能够灵活地发送8、16等个数的数据,并且能够自动添加起始位、停止位以及其他必要的控制位,以确保数据的正确传输。这种灵活性使得该串口通信模块适用于各种不同的应用场景,无论是需要大量数据传输的工业控制系统还是对数据精准性要求较高的科学仪器,都可以通过简单的配置来满足需求。使用FPGA Verilog实现串口通信功能不仅能够提供高度的定制化和灵活性,同时也能够充分利用FPGA的并行计算能力,提高数据传输效率,为嵌入式系统的设计提供了更多的可能性。

2023-11-19

2,标准例程-V3.5库函数版本.zip

全套例程

2021-02-04

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除