FPGA实现数字、字母显示

该文介绍了一个使用Verilog编写的Bitmap模块,用于在TFT屏幕上显示数字0-9和FPGA字母。Bitmap模块基于case结构,结合digit和yofs输入生成5*5的位图。随后,TFT驱动模块接收16位RGB565信号,处理800x480分辨率的显示。顶层模块通过PLL产生33M时钟,并根据坐标决定显示内容。
摘要由CSDN通过智能技术生成

简介

使用纯verilog实现bitmap模块,基于该模块实现在tft屏幕显示数字0-9,以及FPGA字母

Bitmap模块

在这里插入图片描述
该模块为5*5的bitmap,纯组合逻辑,基于case实现

  • digit[3:0]: 要显示的数字bcd码,取值0-9时,bitmap为数字,取值11-14时,bitmap为FPGA四个字母,其他情况输出0
  • yofs[2:0]: y坐标,取值范围0-4,其他情况输出0
  • bits[4:0]: y坐标所对应的bitmap行

代码:

module bitmap(
    input [3:0] digit,        	// digit 0-9, 11-14 will be "FPGA"
    input [2:0] yofs,     		// vertical offset (0-4)
    output reg [4:0] bits    	// output (5 bits)
);
// combine digit,yofs
wire [6:0] caseexpr = {
   digit,yofs};
  
always @(*)
    case (caseexpr)
    // 0
    7'o00: bits = 5'b11111;
    7'o01: bits = 5'b10001;
    7'o02: bits = 5'b10001;
    7'o03: bits = 5'b10001;
    7'o04: bits = 5'b11111;
    // 1
    7'o10: bits = 5'b01100;
    7'o11: bits = 5'b00100;
    7'o12: bits = 5'b00100;
    7'o13: bits = 5'b00100;
    7'o14: bits = 5'b11111;
    // 2
    7'o20: bits = 5'b11111;
    7'o21: bits = 5'b00001;
    7'o22: bits = 5'b11111;
    7'o23: bits = 5'b10000;
    7'o24: bits = 5'b11111;
    // 3
    7'o30: bits = 5'b11111;
    7'o31: bits = 5'b00001;
    7'o32: bits = 5'b11111;
    7'o33: bits = 5'b00001;
    7'o34: bits = 5'b11111;
    // 4
    7'o40: bits = 5'b10001;
    7'o41: bits = 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值