|
對(duì)于ILI9341的240x320屏幕,零知開(kāi)源平臺(tái)已經(jīng)可以支持該顯示屏的常用操作了,一個(gè)示例如下:
- /**
- * 文件: ili9341-并口顯示.ino by 零知實(shí)驗(yàn)室
- * -^^- 零知開(kāi)源,讓電子制作變得更簡(jiǎn)單! -^^-
- * 時(shí)間: 2018/08/02 17:55
- * 說(shuō)明:
- **/
- #include "ili9341_parallel.h"
- //參數(shù)依次表示引腳: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);
-
- //畫(huà)實(shí)心矩形
- display.drawBox(0,10,80,60,BLUE);//blue
-
- //畫(huà)線(xiàn)
- display.drawLine(0,80, 100,80, RED);
-
- //畫(huà)圓
- display.drawCircle(20,120,20,RED);
-
- //畫(huà)空心矩形
- display.drawFrame(0,130,90,140,GREEN);
-
- //顯示ascii字符串
- display.drawString(0,180,GRAYBLUE, "www.lingzhilab.com");
-
- //顯示中文,參數(shù):點(diǎn)的坐標(biāo)、背景、字體顏色、大小:26/24、漢字
- display.drawUTF8_ZH(0,200,BLACK,MAGENTA,16,"零知開(kāi)源");
- display.drawUTF8_ZH(10,250,BLACK,LIGHTBLUE,16,"讓電子制作變得更簡(jiǎn)單");
- }
- // the loop routine runs over and over again forever:
- void loop() {
- // put your main code here, to run repeatedly:
- }
復(fù)制代碼 其顯示效果如下:
在上面我們使用的接口是8位并口操作,可以進(jìn)行常用圖形的顯示、字符串顯示,以及中文顯示,由于中文的字庫(kù)較大,因此我們可以按照自己的需求加入中文字庫(kù)。
下面主要說(shuō)下如何加入自己的中文字體,主要修改軟件庫(kù)中的ili9341_font.h文件,因?yàn)槲覀兪褂玫氖莡tf-8編碼格式,因此也可以顯示其他外文字體。
1、我們先要制作字庫(kù)(只需要加入自己需要的):
我們使用附件中的軟件pctolcd工具制作:
打開(kāi)軟件后,在配置中選擇如下:
然后我們?cè)谲浖刑钊胱约盒枰@示的所有中文字符,并選擇size大小(請(qǐng)選擇16x16和24x24的),點(diǎn)擊生成字模,再把生成的字模拷貝到ili9341_font.h文件中的Chinese_code[]數(shù)組中,如下:
2、我們需要制作漢字對(duì)應(yīng)的UTF8編碼表:
首先我們使用附件中的工具(utf8中文編碼生成工具)來(lái)生成,我們只需要把你需要的所有漢字填寫(xiě)到該軟件目錄下的 text.txt 文件中(注意:text.txt文件要保證是一個(gè)utf8格式的),然后打開(kāi)軟件選擇好漢字文件和utf8編碼文件,如下:
點(diǎn)擊生成編碼,即可在coding.txt文件中生成漢字對(duì)應(yīng)的utf8編碼表,打開(kāi)該文件復(fù)制編碼表填入到ili9341_font.h文件中的Chinese_text[]數(shù)組中,如下:
經(jīng)過(guò)上面的步驟我們就制作號(hào)了自己的漢字字庫(kù)了,現(xiàn)在我們只需要使用display.drawUTF8_ZH();接口函數(shù)顯示漢字就可以了。
附件請(qǐng)看原貼:
游客,本帖隱藏的內(nèi)容需要積分高于 1 才可瀏覽,您當(dāng)前積分為 0
(出處: 零知實(shí)驗(yàn)室)
|
|