为单片机专门定制的Unicode字库和API接口

简介

本篇介绍单片机显示汉字等字符的方法,可以显示Unicode字符,同时介绍API接口用法。

硬件需求

RA8889开发板+800x480彩屏

  • 主控MCU为STM32F103VET6或兼容
  • 图形处理器(微型GPU):RA8889

该Unicode字符集涵盖:

  • 简体、繁体、生僻字
  • 日本汉字、平假名、片假名、日文符号
  • 基础拉丁字符,全角
  • 基础拉丁字符,可变宽度设计,含粗细两种字形
  • 常用符号
  • 字库容量:16点阵约707KB,24点阵约1.6MB,32点阵约2.9MB,

用法示例

仅需要以下几行代码,即可显示:

c 复制代码
	unsigned short string_utf16[100];   

	SPI_NOR_initial_DMA (0,1,2,1,0);      //选择FLASH位置BUS1,CS2
	Set_Font_Style(1,1,0);		// 设定字符放大倍数,以及是否透明色
	UFT8toUTF16(string_utf16, (unsigned char*)"瑞佑(RAiO)科技 ");	
	Foreground_color_65k(color65k_green);
	Background_color_65k(color65k_black);
	Show_UTF16(FONT_LIB_ADDR, FONT_BUFFER_ADDR, 10, 10, 2400, 0, 0, string_utf16);
	// ASCII字符:1600,2400,3200为细体;1610,2410,3210 为粗体

特点

  • 通过RA8889硬件加速,显示速度奇快
  • 编辑器采用UTF-8编码,支持全球各个国家的字符显示
  • 基本不占用MCU资源,MCU只需调用API接口
  • 代码短小且高效

方法简介

  1. 将字库bin档烧录到FLASH中(可以和图资JPG、AVI、BMP、PNG等共用)
  2. 将"Show_UTF16.lib"添加到Keil工程中,同时引用头文件"Show_UTF16.h"
  3. 引用读写函数实现的头文件 "RA8889_MCU_IF.h"
  4. 设定字库bin的起始地址
  5. 设定显示缓冲地址
  • 参考下图

显示样张


获取字库和API

当前字库和API在【单片机的视窗】论坛开放免费使用,感兴趣快点试试,找不到请看下方的视频,或者留言。

演示视频

Unicode字库及API接口,单片机需结合瑞佑的RA8889使用