VGA显示文字

  1. 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

  1. VGA显示内容布局

规划要显示的内容:

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

在字符显示范围内,有效位置1:

  1. 总结

VGA字符显示,先规划字符大小,布局,利用字符点阵生成工具,然后限定显示范围,输出编码。其中,字符坐标要转换成像素坐标。字符正序显示,需要把坐标倒序处理。

参考:

https://mp.weixin.qq.com/s/WFioASjRQRj4KaSN1cCWkA

VGA显示文字的更多相关文章

  1. 实现password框中显示文字提示的方式

    其实实际上实现中并不能让password中显示文字提示,但是我们在工作中有这样的需求,当没输入东西的时候,框内有提示输入密码,但是当输入东西的时候又显示的是*号,那么是如何实现的呢?其实原理很简单,就 ...

  2. Android 使用Font Awesome 显示文字图标

    Android 使用Font Awesome 显示文字图标 简单几步就可以完成 简单的效果图: 1. 创建 assets 文件夹 在Android Studio 上的创建步骤为: 在 src/main ...

  3. 根据html容器大小和显示文字多少调节字体大小

    在做html相关的东西的时候经常会遇到这样的问题,容器大小(长x宽)固定,容器包含内容(特指文字)多少不固定,这个时候就让人很苦恼了,将字体大小设置成多少才合适呢?下面看看我的解决思路: 首先要知道网 ...

  4. Qt中在图片上叠加显示文字

    Qt中在图片上叠加显示文字   QCustLabel::QCustLabel(QWidget *parent):QLabel(parent){ setPixmap(QPixmap(QString::f ...

  5. VmodCAM图像采集 VGA显示

    先上图 总体框图 效果图 效果不是很好,因为暂时用的是zedboard自带的VGA,其只能RGB只有3*3*3的彩色度 VmodCAM原理图 VmodCAM的zedboard管脚约束见:http:// ...

  6. 动态更新Toolbar Menu以及Menu中同时显示文字和图标

    动态更新Toolbar Menu以及Menu中同时显示文字和图标 我们经常会有这样的需求,在切换Fragment或者点击某个按钮后动态更新Toolbar上Menu项.但是onCreateOptions ...

  7. 解决TextView在显示文字的时候,一行还没显示满就跳到下一行

    转载请注明:转自 http://blog.csdn.NET/u011176685/article/details/48295185 一.问题描述: Android的TextView在显示文字的时候,如 ...

  8. ActionBar只显示图标不显示文字

    问题:ActionBar菜单项android:showAsAction设置为android:showAsAction="always|withText"或者android:show ...

  9. input 输入框获得/失去焦点时隐藏/显示文字(jquery版)

    input输入框在获得或失去焦点时隐藏或显示文字,这样的焦点效果想必很多朋友在填写form表格的时候都曾见识过吧,本文使用jquery实现以下,感兴趣的朋友可以参考下哈 大家可以看效果图的搜索输入框, ...

  10. vga显示彩条

    vga显示驱动程序可分为扫描行列和行列同步两个部分 //注意:只有在有效区域内给vga赋值才会有颜色变化 assign vga_b = isready ? vga_s[:] :'d0; assign ...

随机推荐

  1. C#进阶篇

    ArrayList 1.Arraylist本质上是一个可以自动扩容的object数组 2.由于用万物之父来存储数据,自然存在装箱拆箱 3.当往其中进行值类型存储时就是在装箱,当将值类型对象取出来转换使 ...

  2. MySQL登录退出与导入导出

    登录退出MySQL 登录命令 mysql -u 用户名 -p 密码 -h IP -P 端口 mysql -u root -p password -h 127.0.0.1 -P 3306 一般登录命令 ...

  3. Vue入门笔记二

    <Vue.js项目实战> 开发所需的包称为开发依赖,应该使用--save-dev标志进行安装 应用运行需要的直接依赖应该使用--save标志进行安装 模板 使用Pug Pug(以前称为Ja ...

  4. 【福利活动】深度体验OpenHarmony对接华为云IoT

      本文主要介绍基于OpenHarmony 3.0来接入IoTDA,以BearPi-HM_Nano开发板为例,使用huaweicloud_iot_link SDK对接华为云物联网平台的简单流程.文末为 ...

  5. python读取ini配置文件-configparser使用方法

    我们在操作 ini 配置文件的时候 可以使用 Python 的 configparser 库 具体使用方法如下: from configparser import ConfigParser # 初始化 ...

  6. 当使用git出现提示untracked files时怎么办?

    当使用 git 出现提示 untracked files 时怎么办? 背景介绍: 在使用 git 工具时,遇到如下错误. 报错内容: $ git status On branch master No ...

  7. .Net 代码分析工具对比 visual studio 2022 current

    目录 原因 背景知识 名词解释 分析器 分析器在IDE里 目标 查找思路及过程 CodeMaid Roslyn StyleCop.Analyzer StyleCop? StyleCop.Analyze ...

  8. HarmonyOS Connect FAQ第四期

    原文:https://mp.weixin.qq.com/s/bvaV086QTnpnDFyYAVxQwQ,点击链接查看更多技术内容.在HarmonyOS Connect生态产品的认证测试环节,你是否存 ...

  9. Leetcode-最小覆盖子串

    题目描述 给你一个字符串 s .一个字符串 t .返回 s 中涵盖 t 所有字符的最小子串.如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" . 注意:如果 s 中 ...

  10. jenkins 持续集成和交付 —— 邮箱服务器配置(九)

    前言 简介邮箱服务器的配置,让jenkins在构建完成后,能有一个邮箱结果通知到我们,这样就不用每次盯着jenkins 看是否完成了. 正文 1.安装插件 安装下面这个插件. Email Extens ...