广工电工与电子技术实验报告-8路彩灯循环控制电路

news/2024/9/24 4:57:01/

实验代码

module LED_water (clk,led);
    input           clk;
    output  [7:0]   led;
    reg     [7:0]   led;
    integer         p;

    reg clk_1Hz;
    reg [7:0]   current_state, next_state;

    always @(posedge clk) begin
        if(p==25000000-1)begin
            p=0;
            clk_1Hz=~clk_1Hz;
        end
        else begin
            p=p+1;
        end
    end

    parameter S0 = 8'b00000000;
    parameter S1 = 8'b00000001;
    parameter S2 = 8'b00000010;
    parameter S3 = 8'b00000100;
    parameter S4 = 8'b00001000;
    parameter S5 = 8'b00010000;
    parameter S6 = 8'b00100000;
    parameter S7 = 8'b01000000;
    parameter S8 = 8'b10000000;

always @(posedge clk_1Hz) begin
    current_state<=next_state;
end

always @(current_state) begin
    case (current_state)
        S0: next_state<=S1;
        S1: next_state<=S2;
        S2: next_state<=S3;
        S3: next_state<=S4;
        S4: next_state<=S5;
        S5: next_state<=S6;
        S6: next_state<=S7;
        S7: next_state<=S8;
        S8: next_state<=S0;
        default: next_state<=S0;
    endcase
end
    always @(current_state) begin
        case (current_state)
                S0: led<=S0;
                S1: led<=S1;
                S2: led<=S2;
                S3: led<=S3;
                S4: led<=S4;
                S5: led<=S5;
                S6: led<=S6;
                S7: led<=S7;
                S8: led<=S8;
            default: led<=S0;
        endcase
    end
endmodule

实验报告


http://www.ppmy.cn/news/1437126.html

相关文章

vscode中对 python 快速增加header 描述

在首选项→配置用户代码片段→python 然后再 Code/User/snippets/python.json文件中写入 {// Place your snippets for python here. Each snippet is defined under a snippet name and has a prefix, body and // description. The prefix is what is used to trigger the …

FA-128晶振用于医疗设备

血糖仪已成为家庭常用的医疗设备,日本爱普生晶振公司生产的2016封装,32MHz贴片晶振可完美应用于医疗器械血糖仪,此款晶振订货型号为X1E000251005900晶振,型号为FA-128,负载电容分8PF,精度10PPM,其尺寸参数为2.0x1.6x0.5mm,符合ROHS标准且无铅,具有封装尺寸超小,高精度,频率范围…

51单片机中断和定时的结合应用

#include <reg52.h>unsigned int cnt 0;sbit led P1^1;// 初始化定时器 void TimerSetup(){TMOD 0x01; // 定时器的第1个模式TH0 0xB8; // 定时器的初始值-高位TL0 0x00; // 定时器的初始值-低位TR0 1; //启动定时器cnt 0;EA 1; // 开启总中断ET0 1; // 时间中断…

【vue,unapi】UniApp引入全局js实现全局方法,全局变量

创建一个全局文件utils.js export const baseUrl "https://www.baidu.com/"export const fn () > {console.log("demo"); } export const obj {baseUrl : "https://www.baidu.com/",demo(){console.log("demo2");} }第一种&#…

39 vue.js

1.1 vue是什么&#xff1f; vue是当下主流的前端框架&#xff0c;用于构建用户界面的 渐进式 自底向上增量开发的MVVM框架。 渐进式&#xff1a;其实每个框架都有自己的特点&#xff0c;在开发的过程中&#xff0c;可以在原有的系统上&#xff0c;把其中一两个功能用VUE…

C/C++开发,opencv-ml库学习,支持向量机(SVM)应用

目录 一、OpenCV支持向量机&#xff08;SVM&#xff09;模块 1.1 openCV的机器学习库 1.2 SVM&#xff08;支持向量机&#xff09;模块 1.3 支持向量机&#xff08;SVM&#xff09;应用步骤 二、支持向量机&#xff08;SVM&#xff09;应用示例 2.1 训练及验证数据获取 2…

将数据库中的数据接入Echarts图表

将数据库中的数据接入Echarts图表 要在ECharts图表中接入数据库的数据&#xff0c;需要以下步骤&#xff1a; 连接数据库&#xff1a; 使用Python、Java、Node.js等后端语言&#xff0c;通过对应的数据库驱动&#xff08;如mysql-connector-python、JDBC、mysqljs等&#xff09…

矿山自动驾驶技术点分析

自动驾驶多用于乘用车领域&#xff0c;目前矿山自动驾驶量产落地前景广阔&#xff0c;由于矿山工作环境差&#xff0c;污染严重&#xff0c;而且通常矿区面积大&#xff0c;工作任务单一&#xff0c;场景固定&#xff0c;是一个适合进行自动驾驶落地的场景。 矿山自动驾驶俗称智…