admin管理员组

文章数量:1487745

第五讲 单片机驱动彩色液晶屏 控制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

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

第五讲 THE END

了解更多信息:

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