真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MicroPython控制OLED顯示中文的方法是什么

今天小編給大家分享一下MicroPython控制OLED顯示中文的方法是什么的相關(guān)知識(shí)點(diǎn),內(nèi)容詳細(xì),邏輯清晰,相信大部分人都還太了解這方面的知識(shí),所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

作為一家“創(chuàng)意+整合+營(yíng)銷”的成都網(wǎng)站建設(shè)機(jī)構(gòu),我們?cè)跇I(yè)內(nèi)良好的客戶口碑。創(chuàng)新互聯(lián)提供從前期的網(wǎng)站品牌分析策劃、網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作、成都做網(wǎng)站、創(chuàng)意表現(xiàn)、網(wǎng)頁制作、系統(tǒng)開發(fā)以及后續(xù)網(wǎng)站營(yíng)銷運(yùn)營(yíng)等一系列服務(wù),幫助企業(yè)打造創(chuàng)新的互聯(lián)網(wǎng)品牌經(jīng)營(yíng)模式與有效的網(wǎng)絡(luò)營(yíng)銷方法,創(chuàng)造更大的價(jià)值。

0x01實(shí)驗(yàn)器材

TPYBoardv102開發(fā)板1塊

0.96寸OLED顯示屏(ssd1306)1塊

杜邦線若干

0x02前期準(zhǔn)備

1、在font.py和ssd1306.py基礎(chǔ)上做的開發(fā)。

2、在font.py中增加中文字模。

font.py中已有英文、數(shù)字和符號(hào)的字符,我們需要做中文的字模添加到font.py中。

2.1首先下載字模提取工具。

解壓,雙擊運(yùn)行PCtoLCD2002.exe。

MicroPython控制OLED顯示中文的方法是什么

2.2    頂端菜單欄,點(diǎn)擊[選項(xiàng)]按下方圖片設(shè)置,設(shè)置完畢后點(diǎn)擊[確定]保存設(shè)置。

MicroPython控制OLED顯示中文的方法是什么

2.3    回到主界面,在輸入框中輸入“我”點(diǎn)擊[生成字模]。

MicroPython控制OLED顯示中文的方法是什么

取得的字模數(shù)據(jù)如下:

 

0x04,0x0E,0x78,0x08,0x08,0xFF,0x08,0x08,0x0A,0x0C,0x18,0x68,0x08,0x08,0x2B,0x10

0x40,0x50,0x48,0x48,0x40,0xFE,0x40,0x44,0x44,0x48,0x30,0x22,0x52,0x8A,0x06,0x02/*"我",0*/

2.4    將取到的字模數(shù)據(jù)添加到font.py中。

MicroPython控制OLED顯示中文的方法是什么

綠色框中是“我”的16進(jìn)制utf-8編碼。

在線工具:http://tool.lu/hexstr/

參照以上方法,我依次添加了“我愛你祖國”這5個(gè)漢字的字模。

byte2 = {

 

0xe68891:

    [

    0x04,0x0E,0x78,0x08,0x08,0xFF,0x08,0x08,0x0A,0x0C,0x18,0x68,0x08,0x08,0x2B,0x10,

    0x40,0x50,0x48,0x48,0x40,0xFE,0x40,0x44,0x44,0x48,0x30,0x22,0x52,0x8A,0x06,0x02,

    ],#我

0xe788b1:

    [

    0x00,0x01,0x7E,0x22,0x11,0x7F,0x42,0x82,0x7F,0x04,0x07,0x0A,0x11,0x20,0x43,0x1C,

    0x08,0xFC,0x10,0x10,0x20,0xFE,0x02,0x04,0xF8,0x00,0xF0,0x10,0x20,0xC0,0x30,0x0E,

    ],#愛

0xe4bda0:

    [

    0x08,0x08,0x08,0x11,0x11,0x32,0x34,0x50,0x91,0x11,0x12,0x12,0x14,0x10,0x10,0x10,

    0x80,0x80,0x80,0xFE,0x02,0x04,0x20,0x20,0x28,0x24,0x24,0x22,0x22,0x20,0xA0,0x40,

    ],#你

0xe7a596:

    [

    0x20,0x11,0x11,0xF9,0x09,0x11,0x11,0x39,0x55,0x95,0x11,0x11,0x11,0x11,0x17,0x10,

    0x00,0xF8,0x08,0x08,0x08,0xF8,0x08,0x08,0x08,0xF8,0x08,0x08,0x08,0x08,0xFE,0x00

    ],#祖

0xe59bbd:

    [

    0x00,0x7F,0x40,0x40,0x5F,0x41,0x41,0x4F,0x41,0x41,0x41,0x5F,0x40,0x40,0x7F,0x40,

    0x00,0xFC,0x04,0x04,0xF4,0x04,0x04,0xE4,0x04,0x44,0x24,0xF4,0x04,0x04,0xFC,0x04

    ],#國

}

3、    在ssd1306.py文件中增加了draw_chinese顯示中文的方法。

  def draw_chinese(self,ch_str,x_axis,y_axis):

    offset_=0

    y_axis=y_axis*8#中文高度一行占8個(gè)

    x_axis=127-(x_axis*16)#中文寬度占16個(gè)

    for k in ch_str:

        code = 0x00#將中文轉(zhuǎn)成16進(jìn)制編碼

        data_code = k.encode("utf-8")

        code |= data_code[0]<<16

        code |= data_code[1]<<8

        code |= data_code[2]

        byte_data=font.byte2[code]

        for y in range(0,16):

            a_=bin(byte_data[y]).replace('0b','')

            while len(a_)<8:

                a_='0'+a_

               

            b_=bin(byte_data[y+16]).replace('0b','')

            while len(b_)<8:

                b_='0'+b_

            for x in range(0,8):

                self.set_pixel(x_axis-x-offset_,y+y_axis,int(a_[x]))#文字的上半部分

                self.set_pixel(x_axis-x-8-offset_,y+y_axis,int(b_[x]))#文字的下半部分

        offset_+=16

找到[20.學(xué)習(xí)OLED顯示中文]。

0x03硬件連接

本次實(shí)驗(yàn)使用OLED的SPI通訊方式,TPYBoardv102帶有2個(gè)SPI接口,我用的SPI1。

具體接線方法如下:

TPYBoard v102 (SPI1)

OLED顯示屏(SPI)

3.3V

VCC (2.8V~5.5V)

GND

GND

X6(SCK)

SCK/D0

X8(MOSI)

SDA/D1

Y10

RES

Y9

DC

NC(懸空)

CS

0x04效果展示

硬件接線OK后,將源碼全部拷貝到TPYBaordv102加載的磁盤中,按下RST按鍵復(fù)位或者使用Putty軟件Ctrl+D軟復(fù)位,重新運(yùn)行。

以上就是“MicroPython控制OLED顯示中文的方法是什么”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會(huì)為大家更新不同的知識(shí),如果還想學(xué)習(xí)更多的知識(shí),請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。


當(dāng)前文章:MicroPython控制OLED顯示中文的方法是什么
鏈接地址:http://weahome.cn/article/jpedhg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部