RST_n的问题
module CLK_Generater(
input CLOCK_100,
input RST_n,
input Key,
output reg [3:0] CLK_DivChoose,);
reg [19:0] count; //Delay_10ms
reg CLK_100Hz; //100HZ(10ms)时钟信
reg [2:0] state; //状态标志reg [16:0] cnt;
reg [17:0] Div_cnt;always @(posedge CLOCK_100 or negedge RST_n)
begin
if(!RST_n)
begin
CLK_100Hz<=0;
count<=0;
end
else
begin
if(count<20'd1000000)
begin
count<=count+1'b1;
CLK_100Hz<=CLK_100Hz;
end
else
begin
count<=0;
CLK_100Hz<=~CLK_100Hz;
end
end
endalways@(posedge CLK_100Hz or negedge RST_n)
begin
if(!RST_n)
CLK_DivChoose <= 4'h0;
else
begin
case(state) //按键,不按下去的时候是VCC高,按下去的时候是GND低
0:
begin
if(!Key) //检测键盘是否被按下(Delay_5ms)
state <= 1;
else
state <= 0; //未按下,循环检测
end
1:
begin
if(!Key) //检测键盘是否真的被按下,还是抖动(消抖动(Delay_5ms))
state <= 2; //检测到不是抖动,进行下一步操作
else
state <= 0; //是抖动,回去继续检测按键
end
2:
begin
CLK_DivChoose <= CLK_DivChoose+1'b1;
state <= 3; //只进行加1操作,不连加
end
3:
begin
if(Key) //松手(VCC)检测,有可能是抖动
state <= 4;
else //检测到还是(GND)低电平,未松手
state <= 3;
end
4:
begin
if(Key) //松手(VCC)检测,有可能是抖动
state <= 0;
else
state <= 4; //检测到还是(GND)低电平,未松手
end
endcase
end
end
endmodule
CLK_DivChoose 同时接到4个LED上面,RST_n是复位,Key是加,效果就是按RST_n全暗,按Key LED加1
但是郁闷的是不行,最后发现RST_n我接到了普通IO口上面,他NND竟然就是不行,但是我要是接到CLK2上面去了,系统灰常稳定,灰常稳定
铭记:“RST_n要接全局时钟!!!!!!!!!否则后果自负!”
总结:暂时还没有遇到,但是这是个很好的建议,以后 可以注意去做
RST_n的问题的更多相关文章
- FPGA旋转编码器的实现
module pmodenc( clk, rst_n, A, B, BTN,// A_Debounce,// B_Debounce,// BTN_Debounce,// Rotary_right,// ...
- pwm 占空比 频率可调的脉冲发生器
module xuanpin #(parameter N=25)(clk,clr,key_in_f,key_in_z,f_out);input clk,clr,key_in_f,key_in_z;ou ...
- SPI 2分频MOSI实现
module spi_25M(input clk,input rst_n,output reg sdin,output reg sclk,output reg cs);reg [7:0]cnt;reg ...
- 25M电子琴实现
module qin(input clk,output reg beep,input [3:0] col,output [3:0] row_data,output [7:0]out ,input rs ...
- 基于小脚丫DDS 调频 调幅 调相 切换波形 AD5601输出模拟波形
先讲讲里面的矩阵键盘,矩阵键盘列有下拉电阻,默认全为0000,默认行输入为1111,当有按键按下的时候,列输入会被拉高,这时控制行的输出做行扫描,电子琴用key_flag_r0电平作为使能,这里用ke ...
- spi 10方式编写
//第一个CS变低的时候要sclk为高电平,第一个跳变沿进行赋值 module spi(input clk,input rst_n,output reg sclk,output reg cs,outp ...
- 基于小脚丫的ADC081S101 电压采集595数码管显示
RTL结构图 采集模块运用SPI 通讯 MISO方式收集数据 module ad_collect(input sddata,input rst_n,output reg cs,output reg s ...
- 10-8位7段数码管驱动实验——小梅哥FPGA设计思想与验证方法视频教程配套文档
芯航线--普利斯队长精心奉献 实验目的: 1.实现FPGA驱动数码管动态显示: 2.使用In system sources and probes editor工具,输入需要显示在数码管上的的数据, ...
- 09B-独立按键消抖实验02——小梅哥FPGA设计思想与验证方法视频教程配套文档
芯航线--普利斯队长精心奉献 实验目的: 1.复习按键的设计 2.用模块化设计的方式实现每次按下按键0,4个LED显示状态以二进制加法格式加1,每次按下按键1,4个LED显示状态以二进制加法格式减 ...
随机推荐
- iOS开发——高级篇——如何集成支付宝SDK
一.什么是支付宝 第三方支付平台 和内购非常相似内购是用户将钱付款给苹果,之后苹果分成给商户支付宝是用户将钱付款给支付宝,之后支付宝将钱转入我们的账户 使用支付宝前提购买的物品必须是和应用程序无关的. ...
- 全栈工程师学习Linux技术的忠告
随着科技的普及,Linux作为最受欢迎的服务端操作系统,无人不知,无人不晓.当今,不论是服务器搭建,还是客户端开发,Linux系统的基础技能对全栈来说都是必备的,而了解如下几个问题可以更好的帮助你成为 ...
- thinkphp的CURD操作
增 //a字段是主键 $data['b'] = 'bbb'; $data['c'] = 'c'; $new_id = M('test')->data($data)->add(); //ec ...
- 基于Selenium的模拟浏览器采集
Selenium 也是一个用于Web应用程序测试的工具.Selenium测试直接运行在浏览器中,就像真正的用户在操作一样.支持的浏览器包括IE(7.8.9).Mozilla Firefox.Mozil ...
- nginx泛域名解析实现二级域名多域名
利用nginx泛域名解析配置二级域名和多域名 网站的目录结构为html├── bbs└── www html为nginx的安装目录下默认的存放源代码的路径. bbs为论坛程序源代码路径www为主页程序 ...
- 【K8s】Kubernetes 最近正在看的资料
中国移动Kubernetes多集群统一管理实践: http://www.tuicool.com/articles/FrqQrqI#c-22517 一种新的进入容器的方式: WebSocket + D ...
- SQL Server 流程控制
流程控制语句: BEGIN ... END WAITFOR GOTO WHILE IF ... ELSE BREAK RETURN CONTINURE 1.BEGIN ... END BEGIN ...
- Python QRCODE
- struts2 校验demo
综合练习: <validators> <field name="username"> <field-validator type="requ ...
- C++基础知识面试精选100题系列(21-30)[C++ basics]
[本文链接] http://www.cnblogs.com/hellogiser/p/100-interview-questions-of-cplusplus-basics-21-30.html [题 ...