第五讲 单片机驱动彩色液晶屏 控制RA8889软件:显示文字:Part1.内部字库

本文主要是介绍第五讲 单片机驱动彩色液晶屏 控制RA8889软件:显示文字:Part1.内部字库,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

单片机驱动TFT彩色液晶屏系列讲座

目录

第一讲 单片机最小系统STM32F103C6T6通过RA8889驱动彩色液晶屏播放视频
第二讲 单片机最小系统STM32F103C6T6控制RA8889驱动彩色液晶屏硬件框架
第三讲 单片机驱动彩色液晶屏 控制RA8889软件:如何初始化
第四讲 单片机驱动彩色液晶屏 控制RA8889软件:绘图
第五讲 单片机驱动彩色液晶屏 控制RA8889软件:显示文字:Part1.内部字库
第六讲 单片机驱动彩色液晶屏 控制RA8889软件:显示文字:Part2.外接字库
第七讲 单片机驱动彩色液晶屏 控制RA8889软件:显示文字:Part3.自建字库
第八讲 单片机驱动彩色液晶屏 控制RA8889软件:显示图片
第九讲 单片机驱动彩色液晶屏 控制RA8889软件:显存操作
第十讲 单片机驱动彩色液晶屏 控制RA8889软件:图像运算
第十一讲 单片机驱动彩色液晶屏 控制RA8889软件:播放avi视频
第十二讲 单片机驱动彩色液晶屏 如何打包bin档
第十三讲单片机驱动彩色液晶屏 bin档的烧录方法

如何通过RA8889 / RA8876来显示文字?

UI界面需求最大的两个功能,第一个是显示图形,第二个是显示文字。文字部分有ASCII和中文,或者是多国语言,下面我们就专门针对RA8889如何显示文字展开介绍。本章涉及内容较多,会分为三篇进行介绍。
在这里插入图片描述

单片机在没有使用嵌入式OS的情况下,显示文字有很多方法。先介绍如何调用RA8889内建文字。这颗控制芯片内建12x24 ASCII字体的ROM,字体为ISO/IEC 8859-1/2/4/5字符集。

调用内建字符出来显示的速度很快且只占用MCU很少的资源,用户可指定前景、背景色,以及是否为透明色,文字可以放大1~4倍,只是越大锯齿会越明显,参考下图实例:
在这里插入图片描述

显示内建文字,调用API举例:

Internal_CGROM_Select_ISOIEC8859_1();		//选择字符集
Select_Font_Height_WxN_HxN_ChromaKey_Alignment(24,4,4,0,0);		//设定文字的尺寸、透明色、对齐方式,根据函数名也可以看出来参数含义
Font_Line_Distance(0);		//行间距
Set_Font_to_Font_Width(0);	//文字间距
Print_Internal_Font_String(100,330,800,480,0xFFFFFF,0x000000,"Embeded Fonts of RA8889");
如果只是要调用通用的ASCII字符,那么无需多言,这篇文章您看到这边即可。

如果您的产品有西欧各国文字显示的需求,那么您接着往下看!

RA8889内建了ISO/IEC 8859-1/2/4/5字符集,各字符集先简要说明一下:
在这里插入图片描述

字符集表如下,常用ASCII存放在0x00 ~ 0x7F,0x80 ~ 0xFF存放西欧字符。
在这里插入图片描述
显示内建的西欧文字实际效果展示:
在这里插入图片描述
调用API代码如下:

	// 设定字体格式Select_Font_Height_WxN_HxN_ChromaKey_Alignment(24, 1, 1, 0, 0);// 显示4种欧洲文字字符演示Internal_Font_Europe_ISO8859_1();Internal_Font_Europe_ISO8859_2();Internal_Font_Europe_ISO8859_4();Internal_Font_Europe_ISO8859_5();

其中,函数是这样写的:
在这里插入图片描述

注意到了吗?文字是乱码!该文件是使用Keil打开的,即使我们将编码改为UTF-8,显示出来一样是乱码!Keil内核编码支持还是有限。 在这里插入图片描述

经过测试,我们找到一种可行的方法。使用VS Code平台安装EIDE扩展后,再导入编辑Keil工程,保存相应的编码即可。

方法如下:

(1)先打开文件,再同时按住Ctrl+Shift+P,输入“更改文件编码”:
在这里插入图片描述
(2)选中后,再选择“通过编码保存”:
在这里插入图片描述
(3)选中后,再输入“8859-1”即可找到“Westen(ISO 8859-1)”这个选项:
在这里插入图片描述
保存好后,再输入或者贴上ISO8859-1编码内的文字,显示出来就不会乱码了:
在这里插入图片描述

其它编码类似,同时强调一下不同编码只能存到不同文件并相应地保存编码,这样就可以显示不同编码的字体了。

我会将这段编码文件上传给大家下载!若需要更详细信息请访问官网:www.lcdvision.com.cn

关注我!带你用单片机玩转TFT液晶控制芯片!

第五讲 THE END

了解更多信息:http://www.lcdvision.com.cn

这篇关于第五讲 单片机驱动彩色液晶屏 控制RA8889软件:显示文字:Part1.内部字库的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/679170

相关文章

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

Java+AI驱动实现PDF文件数据提取与解析

《Java+AI驱动实现PDF文件数据提取与解析》本文将和大家分享一套基于AI的体检报告智能评估方案,详细介绍从PDF上传、内容提取到AI分析、数据存储的全流程自动化实现方法,感兴趣的可以了解下... 目录一、核心流程:从上传到评估的完整链路二、第一步:解析 PDF,提取体检报告内容1. 引入依赖2. 封装

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用

Linux之platform平台设备驱动详解

《Linux之platform平台设备驱动详解》Linux设备驱动模型中,Platform总线作为虚拟总线统一管理无物理总线依赖的嵌入式设备,通过platform_driver和platform_de... 目录platform驱动注册platform设备注册设备树Platform驱动和设备的关系总结在 l

Windows环境下解决Matplotlib中文字体显示问题的详细教程

《Windows环境下解决Matplotlib中文字体显示问题的详细教程》本文详细介绍了在Windows下解决Matplotlib中文显示问题的方法,包括安装字体、更新缓存、配置文件设置及编码調整,并... 目录引言问题分析解决方案详解1. 检查系统已安装字体2. 手动添加中文字体(以SimHei为例)步骤

浅析Spring如何控制Bean的加载顺序

《浅析Spring如何控制Bean的加载顺序》在大多数情况下,我们不需要手动控制Bean的加载顺序,因为Spring的IoC容器足够智能,但在某些特殊场景下,这种隐式的依赖关系可能不存在,下面我们就来... 目录核心原则:依赖驱动加载手动控制 Bean 加载顺序的方法方法 1:使用@DependsOn(最直

linux解压缩 xxx.jar文件进行内部操作过程

《linux解压缩xxx.jar文件进行内部操作过程》:本文主要介绍linux解压缩xxx.jar文件进行内部操作,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、解压文件二、压缩文件总结一、解压文件1、把 xxx.jar 文件放在服务器上,并进入当前目录#

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

Spring如何使用注解@DependsOn控制Bean加载顺序

《Spring如何使用注解@DependsOn控制Bean加载顺序》:本文主要介绍Spring如何使用注解@DependsOn控制Bean加载顺序,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录1.javascript 前言2. 代码实现总结1. 前言默认情况下,Spring加载Bean的顺

SpringSecurity显示用户账号已被锁定的原因及解决方案

《SpringSecurity显示用户账号已被锁定的原因及解决方案》SpringSecurity中用户账号被锁定问题源于UserDetails接口方法返回值错误,解决方案是修正isAccountNon... 目录SpringSecurity显示用户账号已被锁定的解决方案1.问题出现前的工作2.问题出现原因各