基于STM8/32的12832OLED點陣字庫顯示 本方案主控采用STM32L051,顯示屏0.91寸128*32OLED,LCD驅動芯片是SSD1306,字庫顯示采用高通GT24L24A2Y字庫芯片,字庫芯片主要用于實現OLED界面上基本文字以及特殊字體的顯示。詳細規格書代碼等資料可查看附件。 以下分別是STM32L051,SSD1306和GT24L24A2Y在原理圖中的模塊電路。 ![]() ![]() 電路原理圖的繪制需要注意的是對于陌生元件或是IC的使用,工程師或是愛好者可根據元器件規格書的闡述繪制相應的原理圖,大部分元件規格書皆有參考電路,根據參考電路結合其他模塊電路的兼容性、抗干擾能力繪制完整電路。本方案中所繪制的原理圖主控電路是使用了stm32l051芯片的系統電路,其主要注意的是紋波及尖峰波對芯片運行的干擾,注意加濾波電容;顯示屏部分則為SPI總線模式的驅動電路,電路中使用內部升壓;最后的字庫芯片驅動電路最為簡單,字庫芯片是有由SPI總線模式通信,相應的使用電路可以根據規格的參考電路直接使用即可。電源電路既是普通的穩壓濾波電路,在此則不詳細說明。完成了電路部分,知道了總線模式,再結合數據手冊才可以對該設備編寫程序代碼。首先是OLED液晶屏的驅動,要液晶屏顯示你想要的數據,主要是LCD初始化成功,下面是LCD初始化程序,根據指令列表編寫的程序代碼: ![]() 初始化顯示屏之前必須對引腳的模式進行相對應的配置,配置GPIO模式和端口時鐘使能,程序如下圖所示: ![]() 顯示驅動成功后則接著是對字庫芯片的文字數據獲取進行編程調試,以下是獲取GB18030文字數據的函數代碼,其中獲取的點陣數據大小為16*16點陣。 ![]() 實際效果圖 以下界面演示以當前較火的智能手環為例。顯示屏上的字模源于GT24L24A2Y,可以顯示16點陣和24點陣中文。另外這款芯片封裝為DFN8 2X3,適用于小型設備應用。 ![]() ![]() ![]() ![]() 字庫芯片中另有64KB可擦寫空間,用于圖標和數據存放。 下圖為24點陣的黑體文字“界面顯示”。 ![]() ![]() |