彭 偉
(武漢城市職業(yè)學(xué)院,湖北 武漢 430064)
物聯(lián)網(wǎng)嵌入式系統(tǒng)節(jié)點(diǎn)微控制器,通常直接提取使用未經(jīng)壓縮的字符像素?cái)?shù)據(jù)用于驅(qū)動(dòng)顯示,導(dǎo)致嵌入式系統(tǒng)資源被大量占用,而U8G2圖形驅(qū)動(dòng)庫(kù)則非常好地解決了這一問題。本文將提取U8G2的像素?cái)?shù)據(jù)并剖析研究行程編碼壓縮算法;在Proteus環(huán)境下設(shè)計(jì)Arduino+OLED電路[1-4]進(jìn)行顯示仿真測(cè)試,為物聯(lián)網(wǎng)嵌入式系統(tǒng)類似設(shè)計(jì)提供重要參考。
U8G2是單色LCD、OLED及eInk顯示驅(qū)動(dòng)庫(kù),以頁(yè)面緩沖模式下的顯示程序?yàn)槔?,針?duì)OLED有語句U8G2_SSD1306_128X64_NONAME_1_4W_SW_SPI u8g2(U8G2_R0,/*clock=*/13,/*data=*/11,/*cs=*/10,/*dc=*/9,/*reset=*/8),可構(gòu)造面向 OLED(SSD1306)的 U8G2對(duì)象,同時(shí)完成SPI接口引腳配置。U8G2顯示字符通過enableUTF8Print()使其能支持Unicode編碼,通過setFont設(shè)置字體,通過drawStr輸出字符串。C程序中的字體像素?cái)?shù)據(jù)須符合u8g2fontformat要求,其最前面一段為編碼個(gè)數(shù)及比特位0和1的行程編碼寬度等,其后是各字符編碼、壓縮編碼長(zhǎng)度及行程編碼字節(jié)等。
BDF是Adobe字形位圖格式,使用ASCII編碼,以字體全局信息開始,其后是各字形位圖數(shù)據(jù)。以u(píng)nifont.bdf字庫(kù)文件為例,其開頭部分全局信息如下:
STARTFONT 2.1 /*字體文件版本*/
FONT XXX /*表示字體名*/
SIZE 16 75 75 /*字符大小及在XY方向分辨率
FONTBOUNDINGBOX 16 16 0 -2 /*X方向?qū)挾扰cY方向高度及XY方向偏移*/
STARTPROPERTIES 24 /*24為所列屬性個(gè)數(shù)*/
/*這里是大量公共屬性,具體內(nèi)容此略*/
ENDPROPERTIES /*全局屬性結(jié)束*/
CHARS 57086 /*字庫(kù)文件字符總個(gè)數(shù)*/
以下是各字符具體結(jié)構(gòu)信息,以"1"為例:
STARTCHAR U+0031 /*"1"的編碼*/
BBX 8 16 0 -2 /*字符邊框8*16,偏移0/-2*/
/*限于篇幅,這里略去了其他屬性項(xiàng)*/
BITMAP /*字符位圖點(diǎn)陣編碼起始標(biāo)識(shí)*/
/*以字符"1"的位圖像素為例,每1字節(jié)占一行,表示8像素,為縮減篇幅以下將16字節(jié)列于一行*/
00 00 00 00 08 18 28 08 08 08 08 08 08 3E 00 00
ENDCHAR /*字符結(jié)束標(biāo)志*/
/*限于篇幅,這里略去大量其他字符像素?cái)?shù)據(jù)*/
ENDFONT /*字體文件結(jié)束標(biāo)志*/
將指定字符集各字符像素?cái)?shù)據(jù)從BDF文件提取到C文件,可使用U8G2提供的bdfconv.exe,它根據(jù)指定映射文件(如myFONT.map)給出的待提取字符集編碼從BDF字庫(kù)文件提取字符像素?cái)?shù)據(jù)并進(jìn)行RLE壓縮[5];然后以字符串形式存入C文件。假定myFONT.map內(nèi)有:$0031、$0032、$0041、$0042、$554a、$4e2d、$56fd,它們分別是字符“12AB 啊中國(guó)”的Unicode編碼,BDF字庫(kù)文件為unifont.bdf,轉(zhuǎn)換命令行及輸出示例如下:
bdfconv.exe -v ../bdf/unifont.bdf -b 0 -f 1 -M ../build/ myFONT.map-n MyU8g2fonts -o MyU8g2fonts.c
const uint8_t MyU8g2fonts[173] U8G2_FONT_SECTION("MyU8g2fonts") =
"7 主站蜘蛛池模板: 丁香婷婷在线视频| 四虎影视无码永久免费观看| 国产在线精品人成导航| 久久久久亚洲av成人网人人软件| 久久99精品久久久久久不卡| 2021最新国产精品网站| 免费国产黄线在线观看| 亚洲一区波多野结衣二区三区| 操国产美女| 99青青青精品视频在线| 99精品这里只有精品高清视频| 亚洲天堂自拍| 四虎AV麻豆| 99re视频在线| 日韩国产黄色网站| 99久久精品国产自免费| 午夜性刺激在线观看免费| 国产精品播放| 国产精品免费电影| 国产精品v欧美| 日韩小视频在线观看| 99精品影院| 国产欧美日韩专区发布| 国产一级毛片高清完整视频版| 不卡视频国产| 九九九精品视频| 亚洲乱码精品久久久久..| 欧美午夜在线视频| 国产福利拍拍拍| 亚洲无码免费黄色网址| 午夜三级在线| 国产毛片基地| 99精品免费欧美成人小视频| 麻豆精品国产自产在线| 四虎永久免费网站| 天天综合色天天综合网| 色综合国产| 久久综合结合久久狠狠狠97色 | 久久6免费视频| www.狠狠| 久久美女精品| 美女无遮挡拍拍拍免费视频| 成人在线欧美| 亚洲一级毛片| 久久视精品| 国产精品手机视频| av在线5g无码天天| 久久久受www免费人成| 国产三级视频网站| 综合天天色| 99热这里只有精品免费| 久久精品国产999大香线焦| 无码电影在线观看| 国产香蕉在线视频| 高清无码手机在线观看 | 亚洲成肉网| 无码高潮喷水在线观看| 美女视频黄又黄又免费高清| 色窝窝免费一区二区三区| 噜噜噜久久| 精品国产中文一级毛片在线看| 嫩草影院在线观看精品视频| 国产va欧美va在线观看| 国产成熟女人性满足视频| 久久综合色88| 国产69精品久久久久孕妇大杂乱| 国产美女无遮挡免费视频| 国产无遮挡裸体免费视频| 中文字幕人成乱码熟女免费| 在线观看亚洲人成网站| 国产喷水视频| 国产JIZzJIzz视频全部免费| 婷婷色中文网| 国模在线视频一区二区三区| 亚洲六月丁香六月婷婷蜜芽| 54pao国产成人免费视频| 久久特级毛片| 国产在线精品网址你懂的| 伊人久久综在合线亚洲2019| 一本二本三本不卡无码| 激情在线网| 欧美一级在线|