|
本帖最后由 零知实验室-roc 于 2018-8-3 20:05 编辑
对于ILI9341的240x320屏幕,零知开源平台已经可以支持该显示屏的常用操作了,一个示例如下:
[mw_shl_code=cpp,true]/**
* 文件: ili9341-并口显示.ino by 零知实验室(www.lingzhilab.com)
* -^^- 零知开源,让电子制作变得更简单! -^^-
* 时间: 2018/08/02 17:55
* 说明:
**/
#include "ili9341_parallel.h"
//参数依次表示引脚:rs_pin, wr_pin, rd_pin, cs_pin, rst_pin, d0, d1, d2, d3, d4, d5, d6, d7
ili9341_parallel_class display(15,16,17,18,19,0,1,2,3,4,5,6,7);
// the setup routine runs once when you press reset:
void setup() {
// put your setup code here, to run once:
display.begin();
//用颜色清屏
display.clear(BLACK);
//画实心矩形
display.drawBox(0,10,80,60,BLUE);//blue
//画线
display.drawLine(0,80, 100,80, RED);
//画圆
display.drawCircle(20,120,20,RED);
//画空心矩形
display.drawFrame(0,130,90,140,GREEN);
//显示ascii字符串
display.drawString(0,180,GRAYBLUE, "www.lingzhilab.com");
//显示中文,参数:点的坐标、背景、字体颜色、大小:26/24、汉字
display.drawUTF8_ZH(0,200,BLACK,MAGENTA,16,"零知开源");
display.drawUTF8_ZH(10,250,BLACK,LIGHTBLUE,16,"让电子制作变得更简单");
}
// the loop routine runs over and over again forever:
void loop() {
// put your main code here, to run repeatedly:
}
[/mw_shl_code]
其显示效果如下:
在上面我们使用的接口是8位并口操作,可以进行常用图形的显示、字符串显示,以及中文显示,由于中文的字库较大,因此我们可以按照自己的需求加入中文字库。
下面主要说下如何加入自己的中文字体,主要修改软件库中的ili9341_font.h文件,因为我们使用的是utf-8编码格式,因此也可以显示其他外文字体。
1、我们先要制作字库(只需要加入自己需要的):
我们使用附件中的软件pctolcd工具制作:
打开软件后,在配置中选择如下:
然后我们在软件中填入自己需要显示的所有中文字符,并选择size大小(请选择16x16和24x24的),点击生成字模,再把生成的字模拷贝到ili9341_font.h文件中的Chinese_code[]数组中,如下:
2、我们需要制作汉字对应的UTF8编码表:
首先我们使用附件中的工具(utf8中文编码生成工具)来生成,我们只需要把你需要的所有汉字填写到该软件目录下的 text.txt 文件中(注意:text.txt文件要保证是一个utf8格式的),然后打开软件选择好汉字文件和utf8编码文件,如下:
点击生成编码,即可在coding.txt文件中生成汉字对应的utf8编码表,打开该文件复制编码表填入到ili9341_font.h文件中的Chinese_text[]数组中,如下:
经过上面的步骤我们就制作号了自己的汉字字库了,现在我们只需要使用display.drawUTF8_ZH();接口函数显示汉字就可以了。
附件请查看原贴:
零知开源软件库使用-ILI9341并口显示屏
http://www.lingzhilab.com/forum.php?mod=viewthread&tid=422&fromuid=2
(出处: 零知实验室)
|
|