每個(gè)英文,是由一個(gè)字節(jié)的ASCII碼表示的。
每個(gè)中文,是由兩個(gè)字節(jié)的GBK碼表示的。
每個(gè)GBK碼由2個(gè)字節(jié)組成,第一個(gè)字節(jié)的數(shù)值區(qū)間為0X81~0XFE,第二個(gè)字節(jié)的數(shù)值區(qū)間為0X40~0XFF,不過,第二個(gè)區(qū)間中的0x7F和0xFF這兩個(gè)位置沒有對(duì)應(yīng)的字符。
把所有的漢字都放到一座大樓里邊,這座大樓有126個(gè)房間,每個(gè)房間放190個(gè)漢字。就可以容納所有的中文漢字和符號(hào)。房間號(hào)是從0x81開始,一直到0xFE,一共126個(gè)房間。每個(gè)房間有192個(gè)座位,座位編號(hào)從0x40一直到0xFF,其中,0x7F和0xFF座位上沒有放置漢字和字符。(這就是對(duì)GBK碼最形象的解釋)
例如漢字“瑞”的GBK編碼為C8 F0,第一字節(jié)C8,位于0X81~0XFE之間,第二字節(jié)F0,位于0X40~0XFF之間。就是說,“瑞”這個(gè)字,位于大樓門牌號(hào)為0xC8房間當(dāng)中的編號(hào)為0xF0的座位上。
除了以上內(nèi)容,視頻中還介紹了從W25Q16芯片中讀取漢字字模的方法。
在W25Q16中,我們放的是16X16像素的字模,16X16像素的字模,每個(gè)漢字需要32個(gè)字節(jié)來表示。
我們放字模的時(shí)候,是從W25Q16的地址0開始放的,也就是說,W25Q16當(dāng)中的第0~31個(gè)字節(jié),就是GBK字庫中的第一個(gè)漢字,就是GBK碼為0x8140的漢字。這個(gè)漢字位于漢字大樓的門牌號(hào)為0x81房間中的編號(hào)為0x40座位。因?yàn)殚T牌號(hào)是從0x81開始的,實(shí)際上就是位于第1個(gè)房間。因?yàn)樽痪幪?hào)是從0x40開始的,實(shí)際上就是第一個(gè)房間當(dāng)中的第一個(gè)字符。也就是W25Q16當(dāng)中存儲(chǔ)的第一個(gè)字符。
這樣,就可以很容易的寫出取字模的函數(shù)了。
|