ToB企服应用市场:ToB评测及商务社交产业平台
标题:
基于FPGA的RGB灯WS2812B的控制器设计
[打印本页]
作者:
来自云龙湖轮廓分明的月亮
时间:
2023-3-3 12:30
标题:
基于FPGA的RGB灯WS2812B的控制器设计
这次设计一个RGB灯的控制器,该控制器具有如下特点:
每个灯的颜色可调,亮灭可控
可以设置参数来修改RGB的数目
WS2812B的数据时序如下图所示:
(图片来源自网络、侵权删)
为了方便设计我把T1H和T0L的时间值设为0.8us,为了稳定将RES设置为60us。
设计的思路是,设置一个400ns的计时器,然后再设置一个计400ns次数的计时器(每计三次清零),然后1码就是前两个400us为高电平,第三个400us为低电平;0码也是同理。
一、设计的代码
1、单像素控制模块
[code]`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company: GDUT// Engineer: Lclone// // Create Date: 2023/03/01 12:04:28// Design Name: // Module Name: WS2812B_controller// Project Name: // Target Devices: // Tool Versions: // Description: // // Dependencies: // // Revision:// Revision 0.01 - File Created// Additional Comments:// //////////////////////////////////////////////////////////////////////////////////module WS2812B_controller( input Clk, //时钟信号 input Rst_n, //复位信号 input [23:0] Disp_Data, //像素点的数据 input Data_valid, //数据有效信号 output reg Send_done, //单像素发送完成信号 output reg Data_out //数据输出 ); parameter CNT_400NS = 20; reg [4:0] cnt_400ns; //40us计数器 always @(posedge Clk or posedge Rst_n) begin if(Rst_n == 0) cnt_400ns
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/)
Powered by Discuz! X3.4