当前位置: 首页 > news >正文

gowin GW1N4 LED

基于上已篇文章基础上增加LED闪烁的功能

 《gowin GW1N4 OSC IP 使用》 gowin GW1N4 OSC IP 使用-CSDN博客 https://blog.csdn.net/wzy15965343032/article/details/136172184?spm=1001.2014.3001.5502

代码:

module osc_test(input rst_n,output test_clk,output reg led,output led2
);
parameter BLINK_PERIOD = 12_500_000;  // LED 翻转周期//parameter BLINK_PERIOD = 0.5 / (1 / 50,000,000) = 25,000,000
//parameter BLINK_PERIOD = 0.5 / (1 / 25,000,000) = 12,500,000reg [31:0] counter;  // 32 bits counter for BLINK_PERIOD cycles
wire clkin;Gowin_OSC my_osc (.oscout(clkin)
);assign test_clk = clkin;
assign led2 = led;always @(posedge clkin or negedge rst_n) beginif (~rst_n) begin  // Reset counter and LED on negative edge of rst_ncounter <= 0;led <= 0;end else beginif (counter == BLINK_PERIOD) begin  // Toggle LED every BLINK_PERIOD cyclesled <= ~led;counter <= 0;  // Reset counterend else begincounter <= counter + 1;  // Increment counterendend
endendmodule

这段代码定义了一个名为 osc_test 的模块,其中包含了一个时钟信号 clkin,一个复位信号 rst_n,以及两个输出信号 ledled2

  • parameter BLINK_PERIOD = 12_500_000; 定义了 LED 翻转的周期,即 LED 每隔 BLINK_PERIOD 个时钟周期翻转一次。
  • reg [31:0] counter; 定义了一个 32 位的寄存器 counter,用于计数时钟周期。
  • wire clkin; 定义了一个时钟信号输入端口 clkin
  • Gowin_OSC my_osc (.oscout(clkin)); 实例化了一个名为 my_oscGowin_OSC 模块,将其输出端口 oscout 连接到 clkin
  • assign test_clk = clkin;clkin 赋值给 test_clk,用于输出测试时钟信号。
  • assign led2 = led;led 的状态赋值给 led2,使得 led2led 同步。

接下来是一个 always 块,用于控制 LED 的翻转。在时钟信号 clkin 的上升沿或复位信号 rst_n 的下降沿触发时执行。如果复位信号 rst_n 为低电平,则将 counterled 复位为 0;否则,当 counter 达到 BLINK_PERIOD 时,翻转 led 并将 counter 复位为 0,否则递增 counter

最后,注释部分是被注释掉的之前的代码,可能是之前版本的 LED 翻转实现。

相关文章:

gowin GW1N4 LED

基于上已篇文章基础上增加LED闪烁的功能 《gowin GW1N4 OSC IP 使用》 gowin GW1N4 OSC IP 使用-CSDN博客 https://blog.csdn.net/wzy15965343032/article/details/136172184?spm1001.2014.3001.5502 代码&#xff1a; module osc_test(input rst_n,output test_clk,output …...

Linux ipvlan详解(l2、l3、l3s和bridge、private和vepa模式)

Linux ipvlan详解&#xff0c;测试l2、l3、l3s和bridge、private和vepa模式。 最近在看Docker的网络&#xff0c;看到关于ipvlan网络的介绍。查阅了相关资料&#xff0c;记录如下。 参考 1.图解几个与Linux网络虚拟化相关的虚拟网卡-VETH/MACVLAN/MACVTAP/IPVLAN 2.IPVlan 详…...

理解并实现OpenCV中的图像平滑技术

导读 图像模糊&#xff08;也称为图像平滑&#xff09;是计算机视觉和图像处理中的基本操作之一。模糊图像通常是噪声减少、边缘检测和特征提取等应用的第一步。在本博客中&#xff0c;我们将重点介绍如何使用Python中的OpenCV库应用多种模糊技术。 理论概述&#xff1a; 基本…...

ChatGPT高效提问—prompt实践(白领助手)

ChatGPT高效提问—prompt实践&#xff08;白领助手&#xff09; ​ 随着社会的不断发展&#xff0c;白领的比例越来越高。白领的工作通常较为繁忙&#xff0c;需要管理复杂的项目。工作量大、要求高、任务紧急&#xff0c;时间分配不当部分可能导致工作效率低下&#xff0c;任…...

Code Composer Studio (CCS) - Comment (注释)

Code Composer Studio [CCS] - Comment [注释] References Add Block Comment: 选中几行代码 -> 鼠标右键 -> Source -> Add Block Comment shortcut key: Ctrl Shift / Remove Block Comment: 选中几行代码->鼠标右键->Source->Remove Block Comment s…...

springboot/ssm校园菜鸟驿站管理系统Java校园快递取件管理系统

springboot/ssm校园菜鸟驿站管理系统Java校园快递取件管理系统 开发语言&#xff1a;Java 框架&#xff1a;springboot&#xff08;可改ssm&#xff09; vue JDK版本&#xff1a;JDK1.8&#xff08;或11&#xff09; 服务器&#xff1a;tomcat 数据库&#xff1a;mysql 5.…...

【Mybatis】TypeHandler使用

引言 在使用MyBatis进行项目开发时&#xff0c;我们经常会遇到Java类型与数据库类型不匹配的情况。为了解决这一问题&#xff0c;MyBatis提供了一个强大的机制——TypeHandler。TypeHandler是MyBatis中一个用于处理Java类型和数据库类型转换的组件&#xff0c;它在MyBatis进行…...

[计算机网络]---网络编程套接字

前言 作者&#xff1a;小蜗牛向前冲 名言&#xff1a;我可以接受失败&#xff0c;但我不能接受放弃 如果觉的博主的文章还不错的话&#xff0c;还请点赞&#xff0c;收藏&#xff0c;关注&#x1f440;支持博主。如果发现有问题的地方欢迎❀大家在评论区指正 目录 一、基础知识…...

分布式文件系统 SpringBoot+FastDFS+Vue.js【二】

分布式文件系统 SpringBootFastDFSVue.js【二】 六、实现上传功能并展示数据6.1.创建数据库6.2.创建spring boot项目fastDFS-java6.3.引入依赖6.3.fastdfs-client配置文件6.4.跨域配置GlobalCrosConfig.java6.5.创建模型--实体类6.5.1.FastDfsFile.java6.5.2.FastDfsFileType.j…...

开源软件:推动软件行业繁荣的力量

文章目录 &#x1f4d1;引言开源软件的优势分析开放性与透明度低成本与灵活性创新与协作 开源软件对软件行业的影响推动技术创新和进步促进软件行业的合作与交流培养人才和提高技能促进软件行业的可持续发展 结语 &#x1f4d1;引言 随着信息技术的飞速发展&#xff0c;软件已经…...

[杂记]mmdetection3.x中的数据流与基本流程详解(数据集读取, 数据增强, 训练)

之前跑了一下mmdetection 3.x自带的一些算法, 但是具体的代码细节总是看了就忘, 所以想做一些笔记, 方便初学者参考. 其实比较不能忍的是, 官网的文档还是空的… 这次想写其中的数据流是如何运作的, 包括从读取数据集的样本与真值, 到数据增强, 再到模型的forward当中. 0. MMDe…...

阿里云香港轻量应用服务器怎么样,建站速度快吗?

阿里云香港服务器中国香港数据中心网络线路类型BGP多线精品&#xff0c;中国电信CN2高速网络高质量、大规格BGP带宽&#xff0c;运营商精品公网直连中国内地&#xff0c;时延更低&#xff0c;优化海外回中国内地流量的公网线路&#xff0c;可以提高国际业务访问质量。阿里云服务…...

事务及在SpringBoot项目中使用的两种方式

1.事务简介 事务&#xff08;transaction&#xff09;是访问并可能操作各种数据项的一个数据库操作序列&#xff0c;这些操作要么全部执行&#xff0c;要么全部不执行&#xff0c;是一个不可分割的工作单位。 事物的四大特性: 原子性&#xff08;Atomicity&#xff09;&#xf…...

stm32--笔记

一、引脚与变量 ​​​​​​​​​​​​​​ 二、STM32时钟 [STM32-时钟系统详解_stm32时钟_KevinFlyn的博客-CSDN博客] 三、定时器中断实验 1、定时器中断实验 ​ stm32关于通用定时器的周期、频率计算公式_stm32tim频率计算_胶囊咖啡的博客-CSDN博客 ​ 【STM32】通用…...

2024前端面试准备之CSS篇(二)

全文链接 1. 什么是伪类和伪元素 伪类(Pseudo-class): 伪类是选择器的一种,用于选择特定状态或条件下的元素。它们以冒号(:)开头,用于向选择器添加额外的特定条件。例如,:hover伪类用于选择鼠标悬停在元素上的状态,:nth-child(n)伪类用于选择父元素下的第n个子元素等。…...

轨道交通信号增强与覆盖解决方案——经济高效,灵活应用于各类轨道交通场景!

方案背景 我国是世界上轨道交通里程最长的国家&#xff0c;轨道交通也为我们的日常出行带来极大的便利。伴随着无线通信技术的快速发展将我们带入电子时代&#xff0c;出行的过程中对无线通信的依赖程度越来越高&#xff0c;无论是车站还是车内都需要强大、高质量的解决方案以…...

学习数据接构和算法的第10天

题目讲解 尾插 #include <stdio.h> #include <stdlib.h> // 定义顺序表结构 #define MAX_SIZE 100 struct ArrayList {int array[MAX_SIZE];int size; // 当前元素个数 }; // 初始化顺序表 void init(struct ArrayList *list) {list->size 0; // 初始时元素个…...

初识KMP算法

目录 1.KMP算法的介绍 2.next数组 3.总结 1.KMP算法的介绍 首先我们会疑惑&#xff0c;什么是KMP算法&#xff1f;这个算法是用来干什么的&#xff1f; KMP&#xff08;Knuth-Morris-Pratt&#xff09;算法是一种用于字符串匹配的经典算法&#xff0c;它的目标是在一个主文本…...

Javaweb之SpringBootWeb案例之AOP概述及入门的详细解析

2.1 AOP概述 什么是AOP&#xff1f; AOP英文全称&#xff1a;Aspect Oriented Programming&#xff08;面向切面编程、面向方面编程&#xff09;&#xff0c;其实说白了&#xff0c;面向切面编程就是面向特定方法编程。 那什么又是面向方法编程呢&#xff0c;为什么又需要面向…...

【Java代码洁癖】NO.2 单元测试mock显式赋值,不能忍

反例 RunWith(MockitoJunitRunner.class) public class Test {Mockpublic SomeBean someBean new SomeBean(); } 正例 RunWith(MockitoJunitRunner.class) public class Test {Mockpublic SomeBean someBean ; } 解读 使用Mock注解的对象不应该被显式赋值&#xff0c;应当…...

5分钟掌握PESQ:Python语音质量评估终极指南

5分钟掌握PESQ&#xff1a;Python语音质量评估终极指南 【免费下载链接】PESQ PESQ (Perceptual Evaluation of Speech Quality) Wrapper for Python Users (narrow band and wide band) 项目地址: https://gitcode.com/gh_mirrors/pe/PESQ 想要客观评估语音处理算法效果…...

手把手教你用AI搞定独立游戏美术:从DeepSeek写方案到Unity导入模型的完整流程

手把手教你用AI搞定独立游戏美术&#xff1a;从DeepSeek写方案到Unity导入模型的完整流程 独立游戏开发最令人头疼的环节之一就是美术资源。传统方式要么需要高昂的外包成本&#xff0c;要么耗费大量时间自学建模。但现在&#xff0c;AI工具链已经能帮我们实现从概念设计到3D模…...

Java毕业设计实战:基于SpringBoot的社区健康档案管理系统开发指南

1. 为什么选择SpringBoot开发健康档案管理系统 作为一个带过上百个Java毕业设计的导师&#xff0c;我强烈推荐用SpringBoot来开发社区健康档案管理系统。去年我带的学生小张就用这个框架完成了他的毕设&#xff0c;不仅顺利通过答辩&#xff0c;还被当地社区卫生服务中心看中直…...

英雄联盟玩家的终极效率工具:League-Toolkit 完整指南

英雄联盟玩家的终极效率工具&#xff1a;League-Toolkit 完整指南 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power &#x1f680;. 项目地址: https://gitcode.com/gh_mirrors/le/League-Toolkit 还在为错过匹配确认而烦恼&a…...

二极管单向导电性的秘密:为什么你的电路不工作?可能是二极管接反了!

二极管单向导电性的秘密&#xff1a;为什么你的电路不工作&#xff1f;可能是二极管接反了&#xff01; 刚接触电子电路的朋友们&#xff0c;一定遇到过这样的困惑&#xff1a;明明按照电路图连接了所有元件&#xff0c;电源也接通了&#xff0c;可电路就是不工作。这时候&…...

智能排障:快马ai助手实时解答openclaw安装难题,告别卡壳

最近在折腾OpenClaw这个工具时&#xff0c;发现它的安装过程真是让人头大——各种依赖报错、环境冲突、权限问题接踵而至。好在发现了InsCode(快马)平台的AI辅助功能&#xff0c;简直像给安装过程装上了智能导航。下面分享我的实战经验&#xff0c;如何用AI快速攻克OpenClaw安装…...

大麦网自动购票工具:技术原理与多场景应用指南

大麦网自动购票工具&#xff1a;技术原理与多场景应用指南 【免费下载链接】Automatic_ticket_purchase 大麦网抢票脚本 项目地址: https://gitcode.com/GitHub_Trending/au/Automatic_ticket_purchase 在数字化票务时代&#xff0c;热门演出门票往往在开票瞬间售罄&…...

【vue】二、vue2仿去哪儿网app——首页开发实战:从零搭建到性能优化

1. 项目初始化与页面结构设计 开始一个Vue2仿去哪儿网App首页项目&#xff0c;首先要搭建基础框架。我习惯用vue-cli脚手架快速初始化项目&#xff0c;这个工具能帮我们处理好webpack配置、基础目录结构等繁琐工作。执行vue init webpack qunar-app命令后&#xff0c;会生成标…...

基于ELK的口罩检测日志分析与可视化

基于ELK的口罩检测日志分析与可视化 1. 引言 在公共场所部署口罩检测系统后&#xff0c;我们面临着一个新的挑战&#xff1a;如何实时监控系统运行状态、快速定位问题、并优化检测性能&#xff1f;传统的日志查看方式已经无法满足需求&#xff0c;我们需要一个能够集中管理、…...

基于Moondream2的工业质检系统:缺陷检测与分类

基于Moondream2的工业质检系统&#xff1a;缺陷检测与分类 1. 为什么传统质检方式正在被重新思考 产线上的质检员每天要盯着成百上千件产品&#xff0c;眼睛酸涩、注意力下降&#xff0c;漏检率悄悄爬升。一台设备表面划痕只有0.1毫米宽&#xff0c;人眼在连续工作两小时后&a…...