我的FPGA

1.安装quartus

2.更新usb blaster驱动

3.新建工程

1.随便找一个文件夹,里面新建demo文件夹,表示一个个工程

在demo文件夹里面,新建src(源码),prj(项目),doc(文档)

2.进去quartus里面,点击new project

 

下面是你的fpga开发板的配置,包括Pin count,Core speed grade 

打开工程

"D:\Desktop\fpga\demo2\prj\demo2.qsf"

4.在src文件夹下写.v文件

// demo.v
module demo (// 不写类型,默认wire型input       clk,output      led
);// 让led是高电平工作assign led=1;
endmodule

5.启动文件

找寻.v文件

开始编译 

绑定led和灯

重新编译

点击Device and Pin Options

 

点击Hardware Setup ,换成usb blaster

 点击start启动

5.Verilog语法

常量说明:每一个变量的值就是0或者1

变量定义:

        wire:在module中input和output后的变量默认是wire型

        rag:如果在always中,才会使用rag

连续赋值:

        assign:(主要用于组合逻辑电路)

        always:(主要用于时序逻辑电路)

6.实例

启动一个灯

module demo (input       clk,output      led
);assign led=1;endmodule

启动多个灯

module demo (input       clk,output [3:0] led
);assign led=4'b1010;endmodule

流水灯

/*
assign,always都是同时进行的
*/
module demo (input       clk,input       rst_n, // 复位output reg [3:0] led
);// 开始wire add_cnt_500ms;assign add_cnt_500ms=1'b1;// 结束wire end_cnt_500ms;reg [24:0] cnt_500ms;assign end_cnt_500ms=add_cnt_500ms&&(cnt_500ms==25_000_000-1);// 计数always @(posedge clk or negedge rst_n) begin// 刚开始才会执行该ifif(!rst_n)begin cnt_500ms<=0;endelse if(add_cnt_500ms)beginif(end_cnt_500ms)begincnt_500ms<=0;endelse begincnt_500ms<=cnt_500ms+1;endendend// 跳灯(移位实现)// always @(posedge clk or negedge rst_n) begin//     if(!rst_n) begin//         led=4'b1000//     end//     else if(led==4'b0001)begin//         led<=4'b1000//     end//     else if(end_cnt_500ms) begin//         led<=(led>>1)//     end// end// 挑灯(拼接实现)always @(posedge clk or negedge rst_n) beginif(!rst_n)beginled<=4'b1000;endelse if(end_cnt_500ms)beginled<={led[0],led[3:1]};endend
endmodule

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/373606.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mac安装配置cmake

本机是2015 macbook pro mid&#xff0c;已经有点老了&#xff0c;用homebrew下cmake老出问题 其实cmake官网安装也不麻烦 一、官网下载对应安装包 Download CMake 和所有dmg文件一样安装 二、改成命令行使用 一般来说 tutorial 给的都是命令行build 命令行的设置如下&am…

elasticsearch集群模式部署

系统版本&#xff1a;CentOS Linux release 7.9.2009 (Core) es版本&#xff1a; elasticsearch-7.6.2 本次搭建es集群为三个节点 添加启动用户 确保elasticsearch的启动用户为普通用户&#xff0c;这里我创建了es用户用于启动elasticsearch 执行命令为es用户添加sudo权限 v…

牛市中途深度调整,一览下半场值得关注的 Solana 生态五大潜力项目

近期有关加密货币的利空消息让市场行情一度陷入了恐慌之中&#xff0c;短期利空的落地也将伴随着接下来市场的蓄势。对于投资者来说&#xff0c;现在布局超跌潜力项目不失为一个不错的机会。作为本轮牛市值得关注的两大生态&#xff0c;Solana和TON的快速发展和吸金效应&#x…

探索东芝 TCD1304DG 线性图像传感器的功能

主要特性 高灵敏度和低暗电流 TCD1304DG 具有高灵敏度和低暗电流&#xff0c;非常适合需要精确和可靠图像捕捉的应用。传感器包含 3648 个光敏元件&#xff0c;每个元件尺寸为 8 m x 200 m&#xff0c;确保了出色的光灵敏度和分辨率。 电子快门功能 内置的电子快门功能是 T…

重生奇迹mu自带四重箭加穿透的弓

1.烈风射手 烈风射手是自带四重箭加穿透的弓之一。该职业的技能树中有一个叫做“四箭连发”的技能&#xff0c;可以让玩家在一次攻击中发射四支箭矢&#xff0c;每支箭矢都带有穿透效果。 2.影魅猎人 影魅猎人也是自带四重箭加穿透的弓之一。该职业的技能树中有一个叫做“穿…

springboot 旅游导航系统-计算机毕业设计源码69476

目 录 第 1 章 引 言 1.1 选题背景 1.2 研究现状 1.3 论文结构安排 第 2 章 系统的需求分析 2.1 系统可行性分析 2.1.1 技术方面可行性分析 2.1.2 经济方面可行性分析 2.1.3 法律方面可行性分析 2.1.4 操作方面可行性分析 2.2 系统功能需求分析 2.3 系统性需求分析…

linux服务器查询端口运行状态,以及防火墙打开指定端口

一&#xff1a;查询端口状态 在项目部署过程中&#xff0c;我们通常会使用nginx等进行转发操作&#xff0c;因此需要配置一些端口来进行跳转与访问&#xff0c; 1、netstat netstat -tuln | grep port 例如&#xff0c;你要查询8090的运行状态&#xff0c;则输入 netstat -tul…

地下水环评(一级)实践技术及Modflow地下水数值模拟

主要围绕的环评导则&#xff0c;结合不同行业类别&#xff0c;实例讲解地下水环境影响评价的原则、内容、工作程序、方法。包括数据处理分析、数值模型构建以及环评报告编写等。涉及地下水流场绘制软件&#xff08;Surfer&#xff09;的操作流程及数据处理、地下水数值模拟软件…

视频调色的技巧和方法 视频调色的操作步骤 视频调色用什么软件好免费 会声会影下载免费中文版

学会视频调色&#xff0c;就等于掌握了剪辑艺术的密码。视频调色不是为了画面好看&#xff0c;而是通过精心构思的色彩参数&#xff0c;向观众传达作品的情绪和内涵。普通剪辑师与剪辑高手之间的差距&#xff0c;就在于能否领悟视频调色的真谛。 一、视频调色有什么用 掌握混…

Ubuntu22.04.4系统/安装python3.9/pytorch/torchvision【GPU版】

1.安装python3.9 1.1 创建python3.9的虚拟环境 conda create -n QwenChat python3.9 1.2 输入“y” 1.3 创建成功 2.安装pytorch和torchvision 2.1 进入虚拟环境 进入刚刚创建的虚拟环境 conda activate QwenChat 2.2 conda安装 查看cuda的版本 浏览器打开网址PyTorch鼠标往…

Win-ARM联盟的端侧AI技术分析

Win-ARM联盟&#xff0c;端侧AI大幕将起 微软震撼发布全球首款AI定制Windows PC——Copilot PC&#xff0c;搭载全新NPU与重塑的Windows 11系统&#xff0c;纳德拉盛赞其为史上最快、最强、最智能的Windows PC。该设备算力需求高达40TOPS&#xff0c;支持语音翻译、实时绘画、文…

科普文:深入理解负载均衡(四层负载均衡、七层负载均衡)

概叙 网络模型&#xff1a;OSI七层模型、TCP/IP四层模型、现实的五层模型 应用层&#xff1a;对软件提供接口以使程序能使用网络服务&#xff0c;如事务处理程序、文件传送协议和网络管理等。&#xff08;HTTP、Telnet、FTP、SMTP&#xff09; 表示层&#xff1a;程序和网络之…

selenium采集招标网站公告

selenium采集招标网站公告 一、项目介绍二、采集过程三、完整代码一、项目介绍 本次数据采集以某市建设工程交易服务中心数据为例,网址为“http://www.shcpe.cn/jyfw/xxfw/u1ai51.html”,网站首页如下图所示: 采集到的字段如下图所示: 二、采集过程 本次数据采集使用的…

【Linux】多线程_1

文章目录 九、多线程1. 线程概念2. 线程的控制 未完待续 九、多线程 1. 线程概念 我们知道&#xff1a;进程 内核数据结构 进程代码和数据 。那什么是线程呢&#xff1f;线程是进程内部的一个执行分支。一个进程内部可以有多个执行流&#xff08;内核数据结构&#xff09;&…

数据库测试|Elasticsearch和ClickHouse的对决

前言 数据库作为产品架构的重要组成部分&#xff0c;一直是技术人员做产品选型的考虑因素之一。 ClkLog会经常遇到小伙伴问支持兼容哪几种数据库&#xff1f;为什么是选择ClickHouse而不是这个或那个。 由于目前市场上主流的数据库有许多&#xff0c;这次我们选择其中一个比较典…

日本IT工程师的工资水平?一篇带你了解

今天来说下日本IT工程师的工资水平是根据什么来决定的呢&#xff1f; 如何才能提高IT工程师的工资&#xff1f; 首先&#xff0c;这里分享一个日本经济产业部门的最新调查数据&#xff0c;希望对小伙伴们有所帮助。 &#xff08;引用&#xff09; レベル&#xff11; 新人・初…

从零开始搭建vite开发环境

准备 nodejs 18 pnpm https://vitejs.cn/ 开始 pnpm init pnpm add -D vite新建index.html <!DOCTYPE html> <html lang"zh"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width…

ArcGis将同一图层的多个面要素合并为一个面要素

这里写自定义目录标题 1.加载面要素的shp数据 2.点击菜单栏的地理处理–融合&#xff0c;如下所示&#xff1a; 3.将shp面要素输入&#xff0c;并设置输出&#xff0c;点击确定即可合并。合并后的属性表就只有一个数据了。

【模块化与包管理】:解锁【Python】编程的高效之道

目录 1.什么是模块&#xff1f; 2. 模块的导入过程 3. 理解命名空间 4. import语句的多种形式 5. 模块的执行与重新导入 6. 包&#xff08;Package&#xff09; 7. sys模块和os模块 sys模块 常用属性 示例&#xff1a;使用sys模块 os模块 常用功能 示例&#xff1…

C++ 【 PCL 】点云添加随机均匀噪声及源代码

PCL向点云添加均匀随机噪声&#xff1a; #include <iostream> #include <pcl/io/pcd_io.h> #include <pcl/point_types.h> #include <pcl/common/random.h>int main() {// 加载点云文件pcl::PointCloud<pcl::PointXYZ>::Ptr cloud(new pcl::Poi…