VGA显示文字
VGA显示文字
- VGA字符显示的原理
把要显示的字符转换成字符点阵,然后编码存储,着色的部分为1,其它为0.然后在VGA上输出显示。

字符点阵生成软件:
https://www.zhetao.com/fontarray.html
这里一个字符为32*32bit,字符点阵如下图:

字符编码存到内存里的代码如下:
//char dot reg
reg [159:0] char [31:0]; //5 char 32*32*5
//字符“电子实验室”
always@(posedge clk)
begin
char[0] <= 160'h0000000000000000000000000000000000000000;
char[1] <= 160'h0000000000000000000000000000000000000000;
char[2] <= 160'h00038000000000000007800000001e0000078000;
char[3] <= 160'h0003c000000001e00003c00000781f000007c000;
char[4] <= 160'h0003800007fffff00003e0007ff81e000003c000;
char[5] <= 160'h00038000078003f00001e00038783e000e01c030;
char[6] <= 160'h00038000000007e00e01e0000c703f000e01c038;
char[7] <= 160'h0e0381e000000f800e01c03c0f707b800ffffffc;
char[8] <= 160'h0fffffe000003e000ffffffc0f7073801e00007c;
char[9] <= 160'h0f0381e0000378000e00e03e1e70f3c01e0003f0;
char[10] <= 160'h0f0381c00003f0001e70f8781ef1e1e03e0007e0;
char[11] <= 160'h0f0381c00003e0003e7cf0f01cf1c0f03fffffe0;
char[12] <= 160'h0f0381c00003e0003c3ef0e01ce380fc038f8000;
char[13] <= 160'h0f0381c00003c038181ef0001ce701fe001f1c00;
char[14] <= 160'h0fffffc00003c07c000ef0001ceffffc003c0f00;
char[15] <= 160'h0f0381c07ffffffe0780f0001cfdc01800780780;
char[16] <= 160'h0f0381c07803c00003e0e0003ffc007001f003c0;
char[17] <= 160'h0f0381c00003c00001f0e0003c3f307803ffffe0;
char[18] <= 160'h0f0381c00003c00000f0e038003bb87803fffde0;
char[19] <= 160'h0f0381c00003c0000071e07c003bbcf001e381c0;
char[20] <= 160'h0f0381c00003c0007ffffffe00f9dcf00003e0c0;
char[21] <= 160'h0fffffc00003c0003801e0001ff9dee00003c180;
char[22] <= 160'h0f0381d80003c0000003c000ff39fee00003c3c0;
char[23] <= 160'h0f0381980003c0000003f8007839ffc007ffffe0;
char[24] <= 160'h0e0380180003c0000007fe002079efc00383c000;
char[25] <= 160'h000380180003c000000fbfc00079c1800003c000;
char[26] <= 160'h0003801c0003c000001f0fe01c7003980003c000;
char[27] <= 160'h0003801e007fc000007e03f01ff003bc0003c018;
char[28] <= 160'h0003fffe007fc00001f801f003fffffe0003c03c;
char[29] <= 160'h0003fffc000f80000fe000f001e700007ffffffe;
char[30] <= 160'h00000000000700007f0000700000000038000000;
char[31] <= 160'h0000000000000000000000000000000000000000;
end
- VGA显示内容布局
规划要显示的内容:

这里还是以1个block(16*16bit)为色块基本单位,字符显示范围行15~25(不包含25)block内,列8~10(不包含10)block内。下面三个色块布局类似。



在字符显示范围内,有效位置1:
- 总结
VGA字符显示,先规划字符大小,布局,利用字符点阵生成工具,然后限定显示范围,输出编码。其中,字符坐标要转换成像素坐标。字符正序显示,需要把坐标倒序处理。
参考:
https://mp.weixin.qq.com/s/WFioASjRQRj4KaSN1cCWkA
VGA显示文字的更多相关文章
- 实现password框中显示文字提示的方式
其实实际上实现中并不能让password中显示文字提示,但是我们在工作中有这样的需求,当没输入东西的时候,框内有提示输入密码,但是当输入东西的时候又显示的是*号,那么是如何实现的呢?其实原理很简单,就 ...
- Android 使用Font Awesome 显示文字图标
Android 使用Font Awesome 显示文字图标 简单几步就可以完成 简单的效果图: 1. 创建 assets 文件夹 在Android Studio 上的创建步骤为: 在 src/main ...
- 根据html容器大小和显示文字多少调节字体大小
在做html相关的东西的时候经常会遇到这样的问题,容器大小(长x宽)固定,容器包含内容(特指文字)多少不固定,这个时候就让人很苦恼了,将字体大小设置成多少才合适呢?下面看看我的解决思路: 首先要知道网 ...
- Qt中在图片上叠加显示文字
Qt中在图片上叠加显示文字 QCustLabel::QCustLabel(QWidget *parent):QLabel(parent){ setPixmap(QPixmap(QString::f ...
- VmodCAM图像采集 VGA显示
先上图 总体框图 效果图 效果不是很好,因为暂时用的是zedboard自带的VGA,其只能RGB只有3*3*3的彩色度 VmodCAM原理图 VmodCAM的zedboard管脚约束见:http:// ...
- 动态更新Toolbar Menu以及Menu中同时显示文字和图标
动态更新Toolbar Menu以及Menu中同时显示文字和图标 我们经常会有这样的需求,在切换Fragment或者点击某个按钮后动态更新Toolbar上Menu项.但是onCreateOptions ...
- 解决TextView在显示文字的时候,一行还没显示满就跳到下一行
转载请注明:转自 http://blog.csdn.NET/u011176685/article/details/48295185 一.问题描述: Android的TextView在显示文字的时候,如 ...
- ActionBar只显示图标不显示文字
问题:ActionBar菜单项android:showAsAction设置为android:showAsAction="always|withText"或者android:show ...
- input 输入框获得/失去焦点时隐藏/显示文字(jquery版)
input输入框在获得或失去焦点时隐藏或显示文字,这样的焦点效果想必很多朋友在填写form表格的时候都曾见识过吧,本文使用jquery实现以下,感兴趣的朋友可以参考下哈 大家可以看效果图的搜索输入框, ...
- vga显示彩条
vga显示驱动程序可分为扫描行列和行列同步两个部分 //注意:只有在有效区域内给vga赋值才会有颜色变化 assign vga_b = isready ? vga_s[:] :'d0; assign ...
随机推荐
- 记录--微信调用jssdk--Invalid Signature, updateAppMessageShareData: denied等问题
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 最近在做安卓内嵌入H5活动页拉新活动,遇到的棘手问题记录下, 一是为了日后遇到同样问题好回顾,二是希望能帮到有同样问题的兄弟. 废话不多说 ...
- Eagle+欧奥PicHome创建私有的pinterest网站
Pinterest和花瓣网, 是设计师寻找灵感的天堂!它能够帮你采集.存储和发现灵感.可以说是设计师必用的网站. Eagle是设计师个人的灵感收集工具,它能够方便的采集素材,并快速为图片标签,分类,评 ...
- Java内存马1-传统web内存马
1.前置知识 (1)Tomcat Tomcat是一个开源的.轻量级的.用于Java Servlet和JavaServer Pages(JSP)的Web应用程序服务器.它是Apache软件基金会的一个项 ...
- KingbaseES数据库分区表添加主键与索引的建议
一.初始化测试环境 # 数据库版本信息 KingbaseES V008R006C007B0012 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.1.2 ...
- Python 代码混淆工具概述
在保护Python代码安全方面,有多种混淆工具可供选择,包括 Cython, Nuitka, Pyminifier 和 IPA guard.本文将介绍这些工具的特点和适用情况,以及在实际应用中的注意事 ...
- k-均值聚类算法 Primary
目录 案例--区分好坏苹果(有Key) 案例--自动聚类(无Key) k-均值聚类算法(英文:k-means clustering) 定义: k-均值聚类算法的目的是:把n个点(可以是样本的一次观察或 ...
- #线段树#洛谷 2221 [HAOI2012]高速公路
题目 分析 首先把收费站之间化为点,那这样即是区间加和区间查询, 考虑求的应该是 \[\frac{\sum a[i]*(r-i+1)*(i-l+1)}{C(r-l+2,2)} \] 分子可以拆成 \[ ...
- 赵海鹏:如何进行 OpenHarmony 音频特性架构设计和开发工作
编者按:在 OpenHarmony 生态发展过程中,涌现了大批优秀的代码贡献者,本专题旨在表彰贡献.分享经验,文中内容来自嘉宾访谈,不代表 OpenHarmony 工作委员会观点. 赵海鹏 江苏润和软 ...
- C# 通过ARP技术来观察目标主机数据包
由于之前写的C# 实现Arp欺诈的文章属于网络攻击,不能够被展示,所以这边我们稍微说一下C#调用ARP包以及查看其他电脑上网数据包的技术,委婉的说一下ARP在局域网之中的应用. 本文章纯属技术讨论,并 ...
- C语言 02 安装
C 语言的编译器有很多,其中最常用的是 GCC,这里以安装 GCC 为例. Windows 这里以 Windows 11 为例 官方下载地址:https://www.mingw-w64.org/ 选择 ...