码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 温湿度计传感器DHT11控制数码管显示verilog代码及视频


    名称:温湿度计传感器DHT11控制数码管显示

    软件:QuartusII

    语言:Verilog

    代码功能:

        使用温湿度传感器DHT11采集环境的温度和湿度,并在数码管显示

        本代码已在开发板验证

        开发板资料:

    大西瓜第一代FPGA升级板原理图.pdf

       DHT11传感器电路图:

    DHT11.jpg

    演示视频:温湿度计传感器DHT11控制数码管显示verilog_Verilog/VHDL资源下载

    FPGA代码Verilog/VHDL代码资源下载网:www.hdlcode.com

    代码下载:

    温湿度计传感器DHT11控制数码管显示verilog_Verilog/VHDL资源下载名称:温湿度计传感器DHT11控制数码管显示(代码在文末付费下载)软件:QuartusII语言:Verilog代码功能: 使用温湿度传感器DHT11采集环境的温度和湿度,并在数码管显示 本代码已在开发板验证 开发板资料:大西瓜第一代FPGA升级板原理图.pdf DHT11传感器电路图:演示视频:FPGA代码Verilog/VHDL代码资源下载网:www.hdlcode.comicon-default.png?t=N7T8http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=220

    部分代码展示

    //==========================================================================
    //温湿度计dht11的数据采集,采集间隔1s
    //==========================================================================
    module dht11(
    						i_clk,
    						i_rst_n,
    						io_data,
    					   o_temp,
    						o_humi
    							);
    
    input i_clk;//50mhz
    input i_rst_n;//低电平复位
    inout io_data;//数据端口
    output reg [7:0]o_temp;//输出温度
    output reg [7:0]o_humi;//输出湿度
    reg o_data;//输出数据
    
    
    
    reg [39:0]get_data;//dht11获取的数据
    reg [5:0]data_num;//获取数据的位数
    reg[3:0]crt_state;//三段状态机
    reg [3:0]next_state;
    parameter idle		= 4'b0001;//空闲状态
    parameter init		= 4'b0010;//主机请求复位状态
    parameter ans 		= 4'b0100;//从机应答
    parameter rd_data	= 4'b1000;//接受数据
    
    reg data_sam1;//输入采样1
    reg data_sam2;//输入采样2
    
    reg data_pluse;//检测输入上升沿脉冲
    always@(posedge i_clk )
    begin
    	data_sam1<=io_data;
    	data_sam2<=data_sam1;
    	data_pluse<=(~data_sam2)&data_sam1;
    end
    reg[26:0] cnt_1s;//1s计数器  
    always@(posedge i_clk or negedge i_rst_n )
    	if(!i_rst_n)
    		cnt_1s<=27'd0;	
    	else if(cnt_1s==27'd49999999)
    		cnt_1s<=27'd0;
    	else
    		cnt_1s<=cnt_1s+1'b1;
    
    reg updata=0;
    reg[26:0] cnt_2s=27'd0;//2s计数器  
    always@(posedge i_clk or negedge i_rst_n )
    	if(!i_rst_n)
    		cnt_2s<=27'd0;	
    	else if(cnt_2s==27'd99999999)
    		cnt_2s<=27'd0;
    	else
    		cnt_2s<=cnt_2s+1'b1;
    		
    always@(posedge i_clk)
        if(cnt_2s==27'd99999999)
            updata<=1;
        else
            updata<=0;		
    		
    /============状态机
    always@(posedge i_clk or negedge i_rst_n )
    				if(!i_rst_n)
    						crt_state<=idle;
    				else if(updata==1)//2s更新一次
    						crt_state<=idle;
    				else
    						crt_state<=next_state;
    

    设计文档:

    设计文档.doc

    1. 工程文件

    2. 程序文件

    3. 程序编译

    4. RTL图

    5. 仿真图

    按键消抖模块仿真

    数码管显示模块仿真

    开启控制模块仿真

  • 相关阅读:
    超详细Python自动化测试学习指南,附学习路线图+企业真实项目。看完月薪30K指日可待。。。
    TypeScript 之 Hello World!
    vite配置.env环境变量文件,开发环境,测试环境,预发布环境,生产环境
    Ipad2018可以用电容笔吗?四大款口碑好的电容笔推荐
    无损剪切音视频文件的跨平台工具: LosslessCut | 开源日报 0908
    [附源码]计算机毕业设计JAVA 图书管理系统
    day8-机器学习模型评估
    Spring实战之有条件的加载bean/按某个条件加载bean
    搭建truenas开源存储
    ElasticSearch之结构化搜索
  • 原文地址:https://blog.csdn.net/diaojiangxue/article/details/134097723
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号