stm32 例程中lcd顏色初始化顯示
阿新 • • 發佈:2019-01-07
初次投稿,水平很低,如有錯誤,純屬正常,歡迎指正。這篇技術非常低,僅供娛樂
先給出一個例程中的lcd程式碼
STM3210B_LCD_Init();LCD_PowerOn();
LCD_Clear(White);
LCD_SetTextColor(White);
LCD_SetBackColor(Green);
LCD_ClearLine(Line0);
LCD_ClearLine(Line1);
LCD_ClearLine(Line2);
LCD_ClearLine(Line3);
LCD_ClearLine(Line4);
LCD_DisplayStringLine(Line1," ************* ");
LCD_DisplayStringLine(Line3," ***************** "); LCD_SetTextColor(Green);
LCD_SetBackColor(White); ps 嗯,我是先是程式碼,下一行是註釋 下面逐行分析 系統初始化lcd屏,開啟電源後,有如下設定 LCD_Clear(White);
LCD_SetBackColor(Green); //同樣沒問題,字型為白,背景為綠 LCD_ClearLine(Line0);
LCD_ClearLine(Line1);
LCD_ClearLine(Line2);
LCD_ClearLine(Line3);
LCD_ClearLine(Line4); //將第0,1,2,3,4行的東西清空 LCD_DisplayStringLine(Line1," ************* ");
LCD_DisplayStringLine(Line3," ***************** ");
LCD_SetTextColor(Green);
LCD_SetBackColor(White); //這最後兩行程式碼是幹嘛的,that's intersting //其實就是由於 LCD_ClearLine(Linex); //
void LCD_ClearLine(u8 Line)
{
LCD_DisplayStringLine(Line, " ");
}
這個函式的原始碼是這樣的,所謂的清空,就是將對應行數全部寫為空,這裡寫為空是指將空白的地方變為背景色。
一開始我們設定了字型的顏色為白色,背景為綠色,這麼一寫,就把前面四排都變為綠色了(可以理解為被綠色的背景色填充),這樣上面四排是綠色“背景”,下面4排是白色背景(可見上文中最後兩行程式碼),在第1和3行寫東西,此時字型為白色,所以就是綠底白字.而在第6行顯示文字時,就改成了白底綠字。
所以最後的顯示效果為:前四行綠底白字,後四行白底綠字。