stm32实用篇3: 字符显示字库生成
在使用stm32显示文本时,首先要使用字模软件生成字库,如下:
这里,使用的是Consolas字体,点阵大小为16*16(汉字),此时英文字体的大小为8*16,宽度为汉字字体的一半,然后设置选项参数(包括阴码、逐行扫描、十六进制等),具体配置如下:
然后就可以生成字库,首先生成ASCII字库:
会生成两个文件,即字库 + 索引:
因为ASCII编码表的0 ~ 31是不可见字符,从32(空格)33(感叹号!)...开始才是文本字符,因此为了节省空间,直接删去前面多余不用的不可见字符,操作如下:
删除后:
然后利用PCtoLCD取模软件重新加载txt文件生成字库:
利用WinHex软件打开字库,来看一下数据,如果生成正确的话,第一个16字节(英文为16,中文为32)应该为空格,第二个为感叹号:
直接验证一下,这个生成的字符图案的正确性:
/* 生成的字模数据 */
uint8_t test_module[] = {0x00,0x00,0x00,0x18,0x18,0x18,0x18,0x18,0x18,0x08,0x00,0X08,0X18,0X00,0X00,0X00
};void Display_char_test(void)
{uint8_t i = 0, j = 0, k = 0;/* 字模数据有16行 */for (i = 0; i < 16; i++){/* 每行16列,2字节 */for (j = 0; j < 1; j++){/* 每个字节8位 */for (k = 0; k < 8; k++){/* 对每个数据字节从高位到低位进行遍历 */if ((test_module[i * 1 + j] & (0X80 >> (k))) != 0){printf("*");}else{printf(" ");}}}printf("\n");}
}
串口打印结果如下:
这和取模软件的图案一致:
接下来,生成中文GB2312 宋体 的字库:
同样的,看一下生成的字库数据:
同理,根据生成的数据,尝试打印“顿号”:
至此,字库数据生成完毕。
stm32实用篇3: 字符显示字库生成相关推荐
- echarts实用篇(一)——饼状图
echarts实用篇(一)--饼状图 从官网上我们可以看到通常用到的有这几类: 常规饼状图 环形图 嵌套环形图 纹理饼图 南丁格尔玫瑰图 定制饼状图 下面来看看各类的基本做法,直接使用官网上的例子. ...
- SpringBoot系统整理|运维实用篇|黑马视频
写在前面:本博客主要是记录在学习黑马视频中遇到的问题和一些所思所想,日后忘记了,方便回顾查阅,后续遇到新的知识还会继续进行补充.本系列一共分四篇博客记录,分别是基础篇.运维实用篇.开发实用篇.原理篇. ...
- R语言绘图——实用篇 ggplot2绘图
文章目录 R语言绘图--实用篇 ggplot2绘图 绘制等值线图相关 如何绘制等值线图 插值,平滑插值 插值,缺失值插值 色条(色阶)划分 图例的色条(色阶)修改,合理的参数值选用 图例的色条(色阶) ...
- 学习笔记:SpringCloud 微服务技术栈_实用篇①_基础知识
若文章内容或图片失效,请留言反馈.部分素材来自网络,若不小心影响到您的利益,请联系博主删除. 前言 学习视频链接 SpringCloud + RabbitMQ + Docker + Redis + 搜 ...
- 零死角玩转stm32初级篇1-STM32如何编译和下载程序
本篇博文目录: 一.程序的编译 二.程序的下载 1.ISP方式 2.JTAG方式 3.SWD方式 4.SWIM方式 一.程序的编译 Keil uVision5 工具中有四个编译如图,他们分别表示什么意 ...
- SpringBoot运维实用篇
SpringBoot2零基础到项目实战-基础篇 SpringBoot运维实用篇 从此刻开始,咱们就要进入到实用篇的学习了.实用篇是在基础篇的根基之上,补全SpringBoot的知识图谱.比如在基础篇中 ...
- 【实用篇】Nginx的配置文件以及案例详细配置实现
[实用篇]Nginx的配置文件以及案例配置实现 一.nginx 的配置文件 二.配置实例-反向代理 反向代理实例 1 反向代理实例 2 补充:关于 location 指令的说明 三.配置实例-负载均衡 ...
- Mybatis源码分析第一天------Mybatis实用篇
Mybatis源码分析第一天------Mybatis实用篇 一切最基本的操作就是参考官方文档:https://mybatis.org/mybatis-3/zh/configuration.html ...
- iOS直播实用篇(手把手教)
一.简述总体内容 1.直播流程介绍 2.Mac搭建nginx+rtmp服务器(模拟推流拉流) 3.简单的集成推流拉流(实用篇) 4.好的博客推荐 二.直播流程介绍 1.简单的流程图 简单的流程图 2. ...
最新文章
- 安全保密领域人工智能的应用
- 两类传输协议:TCPUDP总结
- spring boot源码下载地址
- Laya自动图集原理
- 在java程序中怎么造成死锁_java – 了解为什么在此实现中发生死锁
- 作为“梅西式”程序员,我要跳槽了
- IDEA出现Module ** must not contain source root **. The root already belongs to module **这类错误的解决方法
- 医院MR图像的pixel array 数字过大解决方案
- 数学建模论文书写总结
- Mac上运行matlab2019b卡顿
- 津巴布韦 apn_津巴布韦的回忆-你负担不起回家
- 【 unity3d 】NGUI playTween与Tween动画 脚本的使用
- 计算机绘图读后笔记3000字,0921计算机绘图0.doc
- JVM3--垃圾回收机制:垃圾回收概述、垃圾回收算法及分类
- python无法打开文件filenotfounderror_解决Python在导入文件时的FileNotFoundError问题
- 【Android系统蓝牙开发】蓝牙基础知识-蓝牙核心系统架构
- 自控力读书笔记 第五章	 大脑的弥天大谎:为什么我们误把渴望当幸福?
- ps命令 proc文件系统
- wxPython控件大全
- 中国重大铁路事故一览,90年代以前基本都是爆炸事故,90年代以后基本都是追尾事故...