Verilog HDL——LED流水灯工程&LED点阵显示

这篇具有很好参考价值的文章主要介绍了Verilog HDL——LED流水灯工程&LED点阵显示。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

LED流水灯

/*
file name: top_cpld.v
author: akadiao
data:2022.09.27
log: led light
*/

module top_cpld(
input clk,			//50Hz
input rst_n,		
output [7:0] led
);

//寄存器
reg[31:0] timer;
reg[7:0] led_r;

assign led = led_r;

always @(posedge clk or negedge rst_n)//时钟上升沿 复位下降沿
	if(~rst_n)
		timer <= 0;//复位 计数器清零
	else if(timer == 32'd99_999_999)
		timer <= 0;//计数器清零
	else
		timer <= timer + 1'b1;//计数器+1

		
always @(posedge clk or negedge rst_n)
	if(~rst_n)
		led_r <= 8'b0000_0000;//4LED全灭
	else if(timer == 32'd24_999_999)//计数器计时1s
		led_r <= 8'b0000_0011;//LED1 2 点亮
	else if(timer == 32'd49_999_999)//计数器计时2s
		led_r <= 8'b0000_1100;//LED3 4点亮
	else if(timer == 32'd74_999_999)//计数器计时3s
		led_r <= 8'b0011_0000;//LED5 6点亮
	else if(timer == 32'd99_999_999)
		led_r <= 8'b1100_0000;//LED7 8点亮
	else
		led_r <= led_r;
endmodule

根据8位LED灯与EPM240引脚I/O对应关系
verilog点阵显示图案,FPGA/CPLD,fpga开发,CPLD,Verilog HDL
配置CPLD引脚:

verilog点阵显示图案,FPGA/CPLD,fpga开发,CPLD,Verilog HDL
Hardware SetupUSB-Blaster[USB-0]JTAG Mode

下载工程:

verilog点阵显示图案,FPGA/CPLD,fpga开发,CPLD,Verilog HDL

LED点阵显示

LED点阵电路:
verilog点阵显示图案,FPGA/CPLD,fpga开发,CPLD,Verilog HDL

00IC-EPM240 开发板采用的点阵型号是 10788。8×8LED 点阵共有 16 个引脚,分别控制 8 行和 8 列,行列共同决定其中一个 LED 的亮灭。图中 ROW 为行,L 为列,当行为高电平列为低电平的时候 LED 亮。 因此,点亮对应LED时,将行坐标置高电平,列坐标置低电平即可。


显示“牛”字:
verilog点阵显示图案,FPGA/CPLD,fpga开发,CPLD,Verilog HDL
采用不断刷新的方式显示

/*
file name: top_cpld.v
author: akadiao
data:2022.10.09
log: led lattice
*/

module top_cpld(
input clk,			//50Hz
input rst_n,		
output [15:0] H_
);

//寄存器
reg[31:0] timer;
reg[15:0] led_H;

assign H_ = led_H;

always @(posedge clk or negedge rst_n)//时钟上升沿 复位下降沿
	if(~rst_n)
		timer <= 0;//复位 计数器清零
	else if(timer == 32'd00_140_000)
		timer <= 0;//计数器清零
	else
		timer <= timer + 1'b1;//计数器+1


always @(posedge clk or negedge rst_n)
	if(~rst_n)
		led_H <= 16'b1111_1111_0000_1111;
	else if(timer == 32'd00_020_000)
		led_H <= 16'b1111_1111_1110_1111;//竖
	else if(timer == 32'd00_040_000)
		led_H <= 16'b0000_0100_1000_0001;//横1
	else if(timer == 32'd00_070_000)
		led_H <= 16'b0010_0000_0000_0001;//横2
	else if(timer == 32'd00_100_000)
		led_H <= 16'b0000_0010_1111_1011;
	else if(timer == 32'd00_120_000)
		led_H <= 16'b0000_1000_1111_1110;
	else
		led_H <= led_H;
endmodule


verilog点阵显示图案,FPGA/CPLD,fpga开发,CPLD,Verilog HDL

verilog点阵显示图案,FPGA/CPLD,fpga开发,CPLD,Verilog HDL文章来源地址https://www.toymoban.com/news/detail-769947.html

到了这里,关于Verilog HDL——LED流水灯工程&LED点阵显示的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • led流水灯

      本章将讲解流水灯的制作,在Cyclone IV开发板上依次点亮四个led灯,并以一定间隔亮灭,达到流水灯的效果。 图1. DIP发光二极管(直插型) 图2. SMD发光二极管(贴片型)   LED灯就是发光二极管,二极管功能很多,在本实验中我们暂且将其看作是一个开关。二极管在正向

    2024年02月13日
    浏览(52)
  • Verilog 实现流水灯

    信号定义 信号名 端口类型 信号说明 Clk i 输入时钟信号,50MHz Rst_n i 输入复位信号,低电平有效 Led[7:0] o 输出LED信号,低电平有效 仿真图 关于Modelsim的使用,请自行百度 如果是第一次使用开发板的童鞋,参看这里更新驱动,切记,前提条件是开发板正确和PC连接,并且已经通

    2024年02月11日
    浏览(40)
  • 51单片机学习--LED流水灯

    延时代码可通过软件生成,系统频率要和开发板的晶振频率相对应。  

    2024年02月16日
    浏览(55)
  • 【C51基础实验 LED流水灯】

    前言: 前几篇学会了LED驱动原理,并且成功点亮了一颗LED和实现了LED的闪烁,那么这篇紧接着就来解锁LED的新功能,LED流水灯。当然这里前提是基于肉眼余晖可见光达成的效果。 开发板上 LED 模块电路原理图如下图所示: 看上图中 LED 采用共阳接法 ,D1-D8 连接到单片机的

    2024年02月10日
    浏览(40)
  • Quartus II使用——3 LED流水灯

    1.学习要求 目标:实现8个LED灯(LED 0~LED 7)间隔100ms依次点亮,然后全部熄灭,再依次点亮。 2.仿真分析 clk是50Mhz时钟,那么一个周期为(1X10^9)/(50X10^6)=20ns,1秒对应50000000个时钟周期,100ms=5000000个时钟周期。 复位时,LED灯全部熄灭    :led=8\\\'hff 点亮第1个LED灯               

    2023年04月22日
    浏览(38)
  • FPGA入门————LED流水灯(超详细教程)

    本文使用软件为vivado,其实用哪个软件都是一样的,主要是掌握核心编程思想。 如有需要下载vivado软件下载可以参考: vivado及ISE各版本软件下载方法、链接及详细步骤,官方网页下载_ise软件下载_千寻xun的博客-CSDN博客 目录 一、新建工程及设计文件 二、编写LED流水灯程序

    2024年02月08日
    浏览(43)
  • ARM入门(实现LED流水灯)超简单

            实现效果将LDE2到LED5依次点亮再依次熄灭。点亮LED灯就像我们接触编程语言的第一天输出一个\\\"hello world\\\"一样,这是一个最基础的入门操作。这里我们以点亮LED2的过程进行详细讲解,因其他LED灯的点亮过程都是一样的,所以就不做一一介绍了。 1、首先第一步我们需

    2023年04月10日
    浏览(49)
  • FPGA学习分享--01 led流水灯的实现

    需求 : 博宸电子的ZYNQ7020DEV开发板 Vivado 2018.3 一定的verilog语言基础 博主目前学习的是 博宸电子的ZYNQ7020DEV开发板 ,下面是关于本次分享led流水灯的原理图 图1 涉及本次led流水灯的电路 首先,从图1来看,每个led端口都和一个阻值为4.7k的电阻和一个发光二极管相连,并且发光

    2024年02月04日
    浏览(39)
  • FPGA学习——verilog实现流水灯

    学习芯片: EP4CE6F17C8 verilog代码如下: 配置引脚,查看芯片的指导书: 烧录运行结果如下: 如图我们可以看见开发板上四个led灯同时被电亮。 代码如下: 配置引脚,查看clock和key的引脚: 运行结果如下图: 此时可以看见四个led灯同时闪烁。 流水灯代码实现: 实验效果图如

    2024年02月16日
    浏览(56)
  • 3、stm32:GPIO输出——LED闪烁、LED流水灯、蜂鸣器

    目录 一、GPIO简介 二、GPIO基本结构 三、GPIO模式 四、GPIO常用寄存器 (1)端口配置低高寄存器(GPIOx_CRL/GPIOx_CRH)(x=A…E) (2)端口输入数据寄存器(GPIOx_IDR)(x=A…E) (3)端口输出数据寄存器(GPIOx_ODR)(x=A…E) (4)端口位设置/清除寄存器(GPIOx_BERR)(x=A…E) (5)端口位清除寄存器(GP

    2024年02月09日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包