- 博客(54)
- 收藏
- 关注
原创 FPGA学习笔记——用Vitis IDE生成工程(串口发送)
本文介绍了使用Vitis IDE开发串口发送模块的流程:首先在Vivado中创建Block Design并配置开发板参数,生成顶层设计后导出文件;随后在Vitis IDE中创建工程,完成调试下载步骤。作者简要说明了操作要点,并谦虚表示欢迎指正。全文以简洁步骤呈现了FPGA开发的基本流程,特别提醒需根据实际开发板型号确定参数配置。
2025-10-24 21:32:45
509
原创 FPGA学习笔记——图像锐化之Sobel算子
本文介绍了基于Sobel算子的图像边缘检测与锐化实现方法。Sobel算子通过3×3卷积核计算水平和垂直方向梯度,增强图像边缘信息。文章详细阐述了FPGA实现方案,包括Verilog代码结构、FIFO缓存机制和视频流处理时序控制。实验采用1280×720分辨率图像,通过仿真验证了算法的有效性。代码实现包含顶层模块、Sobel运算模块、3×3模板生成模块和视频源处理模块,最终输出锐化后的图像。文中还提供了测试验证方法和BMP图像读写接口,完整呈现了从算法原理到硬件实现的整个过程。
2025-09-25 08:34:16
1223
原创 FPGA学习笔记——图像锐化之非锐化掩蔽
本文介绍了基于FPGA的非锐化掩蔽图像锐化实现方案。首先阐述了非锐化掩蔽技术原理:通过高斯模糊获取低频分量,计算高频细节后增强处理。接着详细给出了Verilog代码实现,包括顶层mask模块、3×3模板处理模块及FIFO缓存设计。其中模板处理模块采用加权求和计算模糊图像,原始图像与模糊图像差值经比例放大后实现锐化效果。最后提供了仿真测试方案,包括图像数据读取处理和时序控制模块。该方案可有效增强图像边缘细节,为FPGA图像处理提供了实用参考实现。
2025-09-25 08:34:11
691
原创 FPGA学习笔记——图像锐化之拉普拉斯锐化
本文介绍了基于FPGA的图像拉普拉斯锐化实现方法。通过3x3窗口模板和FIFO缓存技术,使用Verilog设计了拉普拉斯算子处理模块,包含顶层模块、锐化核心模块和模板生成模块。实验采用1280x720分辨率图像,通过二阶微分运算突出边缘细节,叠加系数k设为-1增强锐化效果。仿真测试验证了算法有效性,处理后的图像边缘更加清晰。文章提供了完整的Verilog代码实现方案,包括FIFO缓存调用和时序控制等内容,为FPGA图像处理开发提供了参考。
2025-09-24 11:13:31
803
原创 FPGA学习笔记——图像滤波之中值滤波(非线性)
本文介绍了一种Verilog实现的中值滤波算法,用于消除图像中的椒盐噪声。该算法采用优化方法,通过3个步骤完成:先对3x3矩阵的每行排序,再对各列比较得出极值,最后综合比较得到中值。文章详细展示了顶层模块、中值计算模块和比较器模块的Verilog代码实现,并提供了仿真测试方案。实验结果表明该算法能有效处理图像噪声,同时代码通过FIFO IP核实现了数据缓存功能。
2025-09-24 08:40:50
601
原创 FPGA学习笔记——图像滤波之高斯滤波
本文介绍了基于FPGA的高斯滤波实现方法。主要内容包括:1)采用3x3窗口的高斯滤波算法,通过加权计算邻域像素平均值实现保边去噪;2)FPGA实现方案,包含顶层模块设计、FIFO IP核调用以及3x3模板处理模块;3)详细给出了Verilog代码实现,包括图像数据缓存、窗口滑动和加权计算逻辑;4)提供了仿真测试方法,支持从BMP文件读取图像并输出处理结果。实验结果表明,该设计能有效实现1280x720分辨率图像的高斯滤波处理。文中还给出了完整的代码框架和仿真验证流程。
2025-09-24 08:40:38
640
原创 FPGA学习笔记——图像滤波之均值滤波(线性)
本文介绍了基于FPGA的均值滤波实现方法。均值滤波作为一种基础线性平滑滤波,通过计算像素3×3邻域的平均值来抑制噪声和模糊图像。文章详细阐述了实现思路:使用两个FIFO缓存1280像素的行数据,构建3×3卷积窗口,对9个像素数据求平均。提供了完整的Verilog代码实现,包括顶层模块、均值滤波模块和3×3模板模块,以及仿真测试代码。实验采用1280×720分辨率图像,通过读写BMP格式文件进行验证。文中还给出了FIFO IP核的调用方法,完整呈现了从理论到实现的均值滤波处理流程。
2025-09-24 08:40:08
1543
原创 FPGA学习笔记——图像处理之饱和度调节(RGB)
本文介绍了一个基于FPGA实现的图像饱和度调节模块。该模块采用流水线结构,通过计算RGB值与灰度值的差值,并乘以可调系数α(α>1增强饱和度,0<α<1降低饱和度)来实现饱和度调节。代码包含饱和度计算、三级流水线处理、边界判断等模块,并提供了完整的仿真测试环境。实验通过读取BMP图像文件进行处理后输出,验证了算法的正确性。该设计可应用于图像增强、视频调色等场景,具有实用价值。
2025-09-22 17:18:55
656
原创 FPGA学习笔记——图像处理之对比度调节(直方图均衡化)
本文介绍了基于FPGA的直方图均衡化图像处理方法。系统通过RGB2YUV转换、直方图统计和均衡化处理三个模块实现对比度调节。核心算法包括:计算原始直方图、归一化处理、累积分布函数计算及灰度值映射。Verilog代码实现了1280×720分辨率图像处理,包含同步信号控制和BMP文件读写功能。实验对比了均衡化前后的图像效果,验证了该方案能有效增强图像对比度。系统采用流水线设计,在FPGA上实现了实时图像处理。
2025-09-22 14:18:46
1109
14
原创 FPGA学习笔记——图像处理之对比度调节(线性调节)
本文介绍了基于FPGA的图像对比度线性调节方法。通过线性表达式Pout=(Pin-C)*α+C实现对比度调节,其中α为调节系数(α>1增强对比度,α=1无变化,0<α<1降低对比度)。采用Verilog HDL实现四级流水线操作(减法、乘法、加法、输出处理),包含两个主要模块:contrast_adjust完成像素值处理,Contrast模块处理RGB三通道数据。仿真测试使用video_source模块读取BMP图像并输出处理结果。实验结果表明该方法能有效调节图像对比度,且处理过程不会造成
2025-09-22 14:18:35
517
原创 FPGA学习笔记——图像处理之亮度调节(Gamma)
本文介绍了Gamma校正技术在图像亮度调节中的应用。Gamma校正是一种非线性亮度调整方法,通过幂律变换(Vout=Vin^γ)来补偿显示设备的非线性响应(γ≈2.2)。文中给出了两种实现方案:1)平方运算后除以255;2)预先生成查找表。通过Verilog HDL实现了RGB三通道的Gamma校正模块(gamma_adjust.v和gamma.v),并搭建仿真测试平台(tb.v和video_source.v)处理1280×720图像。实验通过读取/写入BMP文件验证了算法效果,同步信号处理确保图像无偏移。
2025-09-19 11:30:31
714
原创 FPGA学习笔记——图像处理之亮度调节(乘法型)
本文介绍了基于乘法型的RGB图像亮度调节方法,通过Verilog实现硬件电路设计。系统采用像素值(I_in)乘以缩放系数(k)的算法,其中k取0-255(128为基准值)。设计包含三个模块:乘法调节模块(处理RGB分量)、顶层控制模块(同步信号处理)和仿真测试模块。测试结果表明,当k>128时图像变亮,k<128时变暗。文章详细说明了算法实现思路、Verilog代码结构及仿真方法,并提供了完整的工程文件,包括BMP图像读写处理和时序控制逻辑。该方案适用于FPGA平台实现实时图像亮度调节。
2025-09-19 11:30:19
612
原创 FPGA学习笔记——Vivado创建工程(2022版)
本文介绍了Vivado 2022版的基本使用流程。首先打开软件创建新工程,依次完成命名、选择RTL工程类型和开发板型号等步骤。重点说明了如何添加设计源文件:通过"+"号创建.v文件,定义文件名后完成添加。最后强调了编写.v文件后的基本操作步骤。该教程适用于已安装Vivado并熟悉Quartus开发流程的用户,为FPGA开发提供了基础操作指南。
2025-09-18 20:28:51
793
原创 FPGA学习笔记——OV5640实时视频显示(Quartus系列的最终章)
本文介绍了基于OV5640摄像头和SDRAM缓存的实时视频显示系统实现方案。系统通过SCCB协议配置OV5640输出720P@30fps RGB565格式数据,采用乒乓缓存机制在SDRAM的两个Bank间交替存储帧数据。设计包含数据采集、SDRAM读写仲裁、VGA显示三个主要模块,使用FIFO进行时钟域同步,解决84MHz摄像与75MHz显示的速率匹配问题。文中详细阐述了系统架构、状态机设计、突发读写仲裁策略,并提供了寄存器配置、I2C接口等关键代码实现。实验成功实现了30fps视频的60Hz显示,通过优化
2025-09-18 20:27:45
1428
原创 FPGA学习笔记——OV5640之SCCB接口协议
SCCB协议是OmniVision公司设计的串行摄像头控制总线协议,用于配置摄像头传感器寄存器。它支持三线(SCCB_E)和两线(SIO_C/SIO_D)模式,与IIC协议类似但存在差异:SCCB使用"Don't Care"应答位而非ACK,且仅支持单次读取。数据传输包含起始/停止信号,每个传输单元为9位(8位数据+1位控制位)。SCCB读写操作需分阶段完成,写操作可连续传输多个字节。该协议最大时钟频率400KHz,可通过IIC协议替代实现。
2025-09-15 17:15:41
1265
原创 FPGA学习笔记——SDR SDRAM的读写(不调用IP核版)
本文介绍了手动实现SDR SDRAM接口的设计方案。与调用IP核版本不同,需要自行编写SDRAM控制器接口。系统通过按键触发从SDRAM读取10个数据并通过串口显示,同时串口接收10字节数据后写入SDRAM。设计采用100MHz时钟与SDRAM通信,包含FIFO数据缓存、按键控制、串口收发等模块。详细分析了SDRAM的初始化流程和读写时序状态机转换,包括预充电、刷新、行激活等关键操作的时间参数要求。提供了完整的Verilog代码实现,包括顶层模块、UART收发、按键消抖和SDRAM控制器等关键模块。
2025-09-07 17:31:56
1078
原创 FPGA学习笔记——SDR SDRAM的读写(调用IP核版)
本文实现了一个基于FPGA的SDRAM读写控制系统,主要功能包括:通过按键触发从SDRAM读取10个数据并通过串口发送显示;通过串口接收10个数据后写入SDRAM。系统采用100MHz时钟与SDRAM通信,使用50MHz时钟处理串口数据,通过PLL生成所需时钟,并利用异步FIFO解决跨时钟域问题。文中详细分析了各模块设计,包括SDRAM IP核调用、串口收发模块、按键消抖、读写控制状态机等,并提供了完整的Verilog代码实现。实验结果表明系统能够正确完成SDRAM的读写操作,实现了设计要求的功能。
2025-09-06 18:33:30
889
原创 FPGA学习笔记——调用SDR SDRAM IP核
本文介绍了Avalon总线协议和SDR SDRAM IP核的创建步骤。首先说明Avalon总线协议只需查阅手册了解引脚功能即可。然后详细列出了创建SDR SDRAM IP核的七个步骤:新建工程、打开Platform Designer、搜索IP核、配置参数、命名连线、生成VHDL文件、添加文件。其中特别强调配置参数时需要参考SDR SDRAM数据手册。
2025-09-04 15:21:02
430
原创 FPGA学习笔记——SDR SDRAM简介
SDRAM(同步动态随机存储器)是一种重要的计算机存储设备,具有同步时钟、动态刷新和随机访问的特点。其核心结构采用行列寻址方式,通过Bank、行、列三级定位存储单元。SDRAM经历了六代技术演进,从SDR到最新的DDR5。其工作原理包括模式寄存器设置、激活、读写、预充电和自动刷新等关键操作命令,通过四路控制信号实现精确控制。存储容量计算公式为:Bank数×行数×列数×数据位宽。SDRAM凭借大容量、高速度和低成本优势,在计算机领域长期占据重要地位。
2025-09-03 19:50:47
1156
原创 FPGA学习笔记——SPI读写FLASH
摘要:本文设计了一个基于FPGA的SPI接口Flash读写控制系统,通过按键和串口实现Flash的ID读取、数据读写和扇区擦除功能。系统包含按键消抖、串口收发、Flash控制等模块,使用状态机实现SPI协议时序控制。按键key1触发ID读取并串口显示,key2读取3字节数据,PC端通过串口发送数据触发页编程,key4执行扇区擦除。实验验证了SPI读写Flash的完整流程,包括WREN、RDID、READ、PP、SE等指令的时序控制,数据传输通过FIFO缓存,最终在串口助手显示操作结果。系统时钟50MHz,S
2025-08-30 18:08:24
1879
原创 FPGA学习笔记——Verilog中可综合和不可综合语句
本文整理了Verilog语言中可综合与不可综合语句的核心分类。可综合部分包括模块声明、端口定义、变量声明、参数设置、各种赋值语句、过程块、条件/选择/循环语句、运算符、位选择、模块实例化和Generate语句等RTL级硬件描述要素。不可综合部分主要涉及仿真专用语句,如initial块、时间延迟、系统任务、事件触发器、非固定循环等。文章还提示了integer/real数据类型、用户自定义原语等需要谨慎使用的边界情况。通过明确区分这两类语句,帮助设计者编写能被EDA工具正确转换为硬件电路的代码。
2025-08-27 16:42:29
1902
原创 FPGA学习笔记——Verilog中可综合和常见的不可综合的系统函数
本文总结了Verilog中可综合与不可综合的系统函数。明确可综合的函数包括$signed()/$unsigned()(数据类型转换)和$bits()(位宽计算);$clog2()在参数为常数时可综合。绝对不可综合的系统函数涉及仿真控制(如$display、$fopen)、时间函数($time)、随机数生成($random)等,这些函数无法映射到实际硬件逻辑。综合工具仅支持少数具有明确硬件含义的系统函数,设计时需注意区分以避免综合问题。
2025-08-27 15:58:58
914
原创 FPGA学习笔记——AHT20温湿度读取并在串口显示(IIC协议)
摘要:本文介绍了基于IIC协议的AHT20温湿度传感器数据读取与串口显示实现方案。系统采用状态机控制流程,包含WAIT、START、IDLE、READ和VLD五个状态,通过IIC接口模块完成数据通信。硬件设计包括AHT20模块、IIC接口和串口发送模块,软件实现了二进制转BCD码、数据处理及UART传输功能。实验成功通过串口助手显示了温湿度数据,其中温度精确到0.1℃,湿度精确到0.1%。文章提供了完整的Verilog代码实现,包括顶层模块、IIC驱动、数据处理和UART发送等关键模块的设计细节。
2025-08-25 15:55:36
558
原创 FPGA学习笔记——简单的IIC读写EEPROM
本文设计了一个基于FPGA的IIC通信系统,实现PC端通过串口向EEPROM写入数据,并通过按键触发随机读取功能。系统包含串口收发、按键消抖、EEPROM读写控制等模块,采用200kHz的IIC时钟频率。写入时地址自动递增,读取时从地址0开始顺序读取并通过串口返回"读数据:xx"格式。详细阐述了状态机设计思路,包括IDLE、WRITE、READ等状态转换逻辑,并提供完整的Verilog代码实现。测试结果表明系统能正确完成数据写入和读取功能,为FPGA与EEPROM的IIC通信提供了可参考
2025-08-22 20:26:54
1358
原创 FPGA学习笔记——IIC协议简介
IIC总线是由飞利浦开发的两线式串行通信协议,采用SDA(数据线)和SCL(时钟线)实现主从设备间的数据传输。协议支持多主多从架构,通过7位地址寻址,传输速率分为标准(100kbps)、快速(400kbps)和高速(3.4Mbps)三种模式。数据传输包含起始条件、地址/方向位、应答机制和停止条件,其中每个字节传输后需接收方应答。操作分为写模式(含字节写和页写)和读模式(当前地址读、随机读和顺序读),通过特定时序实现设备间可靠通信。该协议广泛用于低速外设连接,具有节省IO资源和标准化的优势。
2025-08-18 15:28:16
1263
1
原创 FPGA学习笔记——简单的DS18B20温度检测(数码管和RS232)
本文实现了一个基于FPGA的DS18B20温度检测系统。系统通过单总线协议读取DS18B20温度数据,使用状态机控制初始化、转换和读取过程。温度数据经二进制转BCD处理后,通过数码管显示并经由UART发送至上位机。系统包含驱动模块、数据处理模块、数码管驱动和UART发送模块,实现了温度数据的采集、处理和显示功能。文中详细阐述了状态机设计、时序控制等关键实现细节,并指出了调试过程中遇到的位计数和状态跳转等常见问题。实验结果表明系统能正确采集和显示温度数据。
2025-08-15 09:12:40
446
原创 FPGA学习笔记——DS18B20(数字温度传感器)
DS18B20数字温度传感器技术解析 DS18B20是DALLAS半导体公司推出的单总线数字温度传感器,具有体积小、精度高(±0.5℃)、抗干扰能力强等特点。该传感器采用独特的单总线接口,支持多点组网(通过64位唯一ROM编码识别),供电方式灵活(3-5.5V)。其12位分辨率可实现0.0625℃精度,测量范围-55℃至+125℃。工作流程包括初始化、ROM命令和功能命令三个阶段,通过特定的时序协议(包括480-960μs复位脉冲和存在响应)实现通信。传感器内部包含9字节高速缓存器,可配置温度报警阈值和分辨
2025-08-11 22:03:56
2888
原创 FPGA学习笔记——SPI通讯协议简介
SPI(串行外设接口)是一种高速全双工同步串行通信协议,采用四线制(SCK、MOSI、MISO、/CS)实现主从设备间的数据传输。SPI具有四种工作模式(CPOL/CPHA组合),支持点对点和多从机通信,常用于EEPROM、Flash等嵌入式设备。其优势在于简单高效、传输速率快,但缺乏应答机制。通信时通过片选信号控制起始/结束,每个时钟周期传输1bit数据,支持8/16位传输格式,适合短距离板级通信。
2025-08-07 21:07:31
763
原创 FPGA学习笔记——VGA显示静态图片(ROM IP核)
本文介绍了如何在VGA(640x480@60Hz)模式下显示120x68分辨率图片的实现方法。主要内容包括:1) 使用MATLAB将图片转换为RGB565格式的.mif文件用于ROM存储;2) VGA时序控制模块设计,包括行场同步信号生成;3) FPGA实现方案,包含ROM IP核配置、地址控制逻辑和像素数据输出。系统通过PLL产生像素时钟,在屏幕指定位置显示图片,其他区域填充背景色。关键点在于图片坐标定位、ROM数据读取和VGA时序的精确控制。该方法适用于小尺寸图片在标准VGA模式下的静态显示。
2025-08-07 19:28:34
1401
原创 FPGA学习笔记——VGA静态字符的显示(寄存器)
本文介绍了使用FPGA实现VGA静态显示"风已经起了"五个汉字的设计方案。采用640x480@60Hz显示模式,每个字符显示在64x64格子中,有效字符尺寸为56x56。设计方案包含:1. 计算字符居中位置(行起始159,场起始199);2. 通过位图转换工具提取字符点阵数据;3. 使用Verilog实现显示控制模块,包括VGA时序生成、字符显示位置判断和RGB数据输出。系统通过PLL生成像素时钟,在黑色背景上以金色显示字符。该设计展示了FPGA驱动VGA显示的基本原理和实现方法,为后续
2025-08-07 11:41:07
599
原创 FPGA学习笔记——VGA彩条显示
本文介绍了使用FPGA实现VGA彩条显示的方法。主要内容包括:1) 采用640x480@60Hz显示模式,通过PLL将50MHz时钟分频至25MHz;2) 设计了VGA时序控制模块,包括行场同步信号生成和有效显示区域判断;3) 实现了彩条显示模块,将640像素水平分割为多段(10段或5段),每段显示不同颜色;4) 提供了两种实现方式:if-else条件判断和case语句方法。实验结果表明该设计能正确显示彩色条纹,其中case语句方法更便于扩展显示更多颜色。该方案完整实现了VGA彩条显示功能。
2025-08-06 19:03:07
445
原创 FPGA学习笔记——VGA简介
VGA(视频图形阵列)是IBM于1987年推出的模拟视频传输标准,具有高分辨率、快速显示和丰富色彩等特点。其15针接口包含RGB三基色信号、同步信号和接地引脚。VGA采用逐行扫描方式,通过行场同步信号控制像素显示时序。典型时序包含同步、边框和有效图像等阶段,时钟频率由分辨率、刷新率和帧长决定,如640x480@75Hz模式需31.5MHz时钟。这些基础知识为VGA应用开发提供了重要参考。
2025-08-06 16:27:38
1076
原创 FPGA学习笔记——简易的DDS信号发生器
本文设计了一个基于FPGA的简易DDS信号发生器系统,通过串口接收上位机指令(FE+波形+类型+频率+相位+幅度+EE格式),输出四种可配置波形。系统包含串口收发模块、四个ROM波形存储模块、指令解析模块和波形选择模块。采用状态机控制波形处理流程,支持频率缩放(乘/除)和幅度调节功能。测试结果表明,系统能正确解析指令并输出指定波形(波形1-4),验证了设计的可行性。该设计实现了参数可配置的DDS信号发生器功能,具有结构清晰、扩展性好的特点。
2025-08-05 20:45:49
565
原创 FPGA学习笔记——简单的乒乓缓存(RAM)
摘要:本文实现了一个基于FPGA的串口数据传输系统,采用乒乓缓存机制处理ROM中的方波数据。系统通过按键触发,以50MHz速率进行数据读写,使用双端口RAM实现乒乓缓存,通过状态机控制数据流向(IDLE、RAM1、W2R1、W1R2四种状态)。硬件设计包含按键消抖模块、ROM控制模块、状态控制模块和UART发送模块,通过Verilog实现各功能单元。实验结果表明,该系统能有效实现数据的连续缓存和串口发送功能,验证了乒乓缓存在高速数据传输中的可行性。
2025-08-04 16:20:08
962
原创 FPGA学习笔记——FPGA基础知识
本文系统梳理了FPGA开发的基础知识体系,涵盖数字电路核心概念与设计实践。主要内容包括:1)二进制与编码原理(原码/补码/格雷码转换);2)组合/时序逻辑区别及Verilog实现方式;3)FPGA架构组成(CLB/DSP/BRAM等)与开发流程(RTL→综合→布局布线);4)关键时序问题:锁存器危害防范(完整分支覆盖)、竞争冒险消除(冗余项/格雷码)、亚稳态处理(同步机制/FIFO);5)跨时钟域信号同步方法(打拍/握手/异步FIFO)。全文以硬件设计思维为主线,强调可综合代码规范与时序约束管理,为FPGA
2025-08-03 13:04:34
1617
原创 FPGA学习笔记——串口RS232回环实验
本文介绍了数字电路中的亚稳态问题及其解决方法,并实现了一个完整的串口通信系统。首先解释了亚稳态的概念、成因及危害,指出这是跨时钟域设计中必须处理的关键问题。然后通过Verilog代码实现了UART收发模块:接收模块采用三级寄存器打拍来降低亚稳态风险,包含波特率生成、数据采样等完整功能;发送模块实现数据并串转换和时序控制。顶层模块将收发端口相连形成回环测试结构,并通过仿真验证了各模块功能。整个设计采用9600bps波特率和50MHz时钟,展示了异步串口通信的完整实现方案。
2025-07-27 20:08:01
703
原创 FPGA学习笔记——串口RS232简介
摘要:UART(通用异步收发传输器)是一种异步串行通信协议,可实现全双工通信。它通过RS232接口(RXD、TXD、GND)传输数据,数据帧由起始位、数据位和停止位构成。波特率(如9600、115200)表示每秒传输的码元数,而比特率=波特率×每码元的二进制位数。
2025-07-26 17:26:28
471
原创 FPGA学习笔记——FIFO IP核创建及仿真
本文介绍了使用Quartus 18.0进行FIFO IP核仿真的经验。作者在仿真时遇到问题,通过注释部分代码解决了报错问题。文章详细讲解了同步FIFO和异步FIFO的区别、端口定义及配置方法,并提供了两种FIFO的Verilog实现代码和仿真结果。同步FIFO适用于单时钟域,而异步FIFO用于跨时钟域数据传输。文中包含完整的测试模块代码,展示了FIFO的读写控制逻辑和状态信号监测方法,为FPGA设计中FIFO的使用提供了实用参考。
2025-07-24 20:28:57
904
原创 FPGA学习笔记——8x8的RGB点阵屏循环滚动显示三字符I❤U
本文介绍了基于FPGA的8x8 RGB点阵屏显示控制实现。作者详细分析了代码难点,包括数据传输时序问题和解决方案(采用192位寄存器移位实现字符滚动)。系统包含顶层模块、按键消抖模块、显示控制模块和滚动控制模块,通过状态机实现字符数据的传输与显示。关键点包括:1) 采用拼接移位方式解决点阵屏传输时序问题;2) 按键消抖处理;3) 三组64位寄存器存储字符数据;4) 状态机控制数据显示流程。该设计可扩展修改显示内容,为RGB点阵屏控制提供了实用参考方案。
2025-07-20 14:12:01
428
原创 FPGA——学习笔记之8x8的RGB点阵屏0~F字符的依次显示
本文介绍了一个基于8x8 RGB点阵屏的显示控制系统。系统采用单线归零码通讯协议,每个LED像素点通过自动整形转发技术实现级联传输,支持高达2KHz的扫描频率。硬件设计包含控制模块(实现0-F字符显示)、点阵驱动模块(精确时序控制)和按键消抖模块。系统采用50MHz时钟,通过状态机实现LED驱动时序控制,包含280μs复位时间保证稳定性。测试结果表明,该系统能够稳定实现16种字符的循环显示,具有低功耗、高亮度等特点,适用于高速移动产品应用。
2025-07-17 22:30:42
585
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅