STM32中LCD顯示少量漢字

2021-07-30 07:32:20 字數 1049 閱讀 8709

以下程式主要針對stm32中庫函式進行操作:

在lcd顯示漢字,首先需要對漢字進行取模,我們都知道乙個漢字所占用的空間大小是2b。接下來通過取模軟體對所需要顯示的漢字進行取模(注意有的取模軟體可能存在問題)。

在這我們要補充乙個知識就是漢字在計算機中儲存形式:

輸入碼:漢字的字數繁多,字形複雜,常用的漢字有6000—7000個,比英文的26個字母要多得多。在計算機系統中使用漢字,首先遇到的問題就是如何把漢字輸入到計算機內。為了能直接使用西文標準

鍵盤進行輸入,必須為漢字設計相應的編碼方法。漢字編碼方法主要分為三類:數字編碼、拼音編碼和字形編碼。

機內碼:計算機中字元的實際儲存碼。如西文字元,在計算機中是以ascii碼的形式進行儲存的,而我們的漢字,是在區位碼的基礎上加上a0h(16進製制),就變成了漢字在計算集中的儲存碼,也就是機內碼。 漢字點陣碼是一種用黑白兩色點陣來表示漢字字形的編碼。

定義漢字點陣結構體

typedef struct typfnt_gb16                 // 漢字字模資料結構

;緊接著建立自己所需的字型檔,在這我隨意建立乙個:

struct typfnt_gb16 code gb_16 =          // 資料表

其中定義的漢字結構體元素中index[2]存放漢字,而msk用於存放點陣碼。

具體程式如下:

void show_chinese(uint16_t x, uint16_t y, uint8_t *p, 

uint16_t wordcolor, uint16_t backcolor)

else

color = color<<1;}}

p+=2;

x += 16;

if(x > 225)   }}

}}其中tft_set_window(x, y, x+15, y+15)設定要操作的視窗範圍,tft_wrdat(wordcolor)lcd寫資料,

然後就可以直接在主函式中進行漢字的顯示程式編寫:

int main()

}具體的led和tft的初始化各位應該都是很清楚的,在這就不多說了。

使用stm32在lcd上隨意顯示漢字

怎樣在lcd彩屏上顯示漢字,我們習慣使用漢字型檔,也有很多自己做乙個漢字型檔,我就習慣這一種。介紹一下 我做的顯示 同乙個世界!同乙個夢想!首先 在網上下乙個提取點陣的的軟體生成自己的字型檔,const struct typfont16 font16lib 漢字的點陣結構體格式為 typedef s...

STM32學習 LCD的使用

原理 lcd即液晶顯示器,給液晶施加電場,會改變它的分子排列,從而改變光線傳播方向,配合偏振光片,它就具有控制光線透過率的作用,再配合彩色濾光片,就能改變某一顏色透光量的多少。做出可控紅 綠 藍光輸出強度的顯示結構,組成乙個顯示單位,通過控制紅綠藍的強度,可以使該單位混合輸出不同的色彩,這樣的乙個顯...

微控制器中不帶字型檔LCD液晶屏顯示少量漢字

微控制器中不帶字型檔lcd液晶屏如何顯示少量漢字,一般顯示漢字的方法有1.使用帶字型檔的lcd屏,2.通過sd 卡或者外掛程式spi flash存中文字庫,3.直接將需要的漢字取模存入mcu的flash中。第一種方式最方便,帶字型檔的液晶屏 稍貴,第二種方式電路複雜 也不便宜,第三種方法可以儲存少 ...