蓝桥杯–嵌入431RBT6(LCD显示屏篇)
蓝桥杯–嵌入式STM32G431RBT6(LCD显示屏篇)
前言
为自己学习蓝桥杯嵌入式开发板做记录,方便以后的复习得心应手!!!
工具
1、KEIL5软件
2、STM32CUBEMX
点亮LCD显示屏流程
①在每一款单片机中,如果需要使用外设必须导入所需的外设的库,其中在STM32G431中,官方给我们的资料包中导入即可。
②进入KEIL软件查看相关源代码,嵌入式竞赛板LCD大小为320x240。驱动LCD代码如下:
void LCD_Init(void);//LCD初始化代码
void LCD_SetTextColor(vu16 Color);//设置字体颜色
void LCD_SetBackColor(vu16 Color);//设置背景颜色
void LCD_ClearLine(u8 Line);//清楚行:参数清楚哪一行
void LCD_Clear(u16 Color);//清屏:参数清屏后颜色
//LCD显示和绘制函数
void LCD_SetCursor(u8 Xpos, u16 Ypos);
void LCD_DrawChar(u8 Xpos, u16 Ypos, uc16 *c);
void LCD_DisplayChar(u8 Line, u16 Column, u8 Ascii);
void LCD_DisplayStringLine(u8 Line, u8 *ptr);
void LCD_SetDisplayWindow(u8 Xpos, u16 Ypos, u8 Height, u16 Width);
void LCD_WindowModeDisable(void);
void LCD_DrawLine(u8 Xpos, u16 Ypos, u16 Length, u8 Direction);
void LCD_DrawRect(u8 Xpos, u16 Ypos, u8 Height, u16 Width);
void LCD_DrawCircle(u8 Xpos, u16 Ypos, u16 Radius);
void LCD_DrawMonoPict(uc32 *Pict);
void LCD_WriteBMP(u32 BmpAddress);
void LCD_DrawBMP(u32 BmpAddress);
void LCD_DrawPicture(const u8* picture);
③在蓝桥杯比赛中常用到以下函数,进入主程序编写。
//比赛常用函数
void STM3210B_LCD_Init(void); //LCD的初始化
void LCD_SetTextColor(vu16 Color); //LCD字体的颜色
void LCD_SetBackColor(vu16 Color); //LCD背景板的颜色
void LCD_ClearLine(u8 Line); // 清除行
void LCD_DisplayStringLine(u8 Line, u8 *ptr); // 行显示字符串
//主函数编写函数
int main(void)
{
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
LED_Disp(0x8f);
LCD_Init();
LCD_Clear(Black);
LCD_SetBackColor(Black);
LCD_SetTextColor(White);
LCD_DisplayStringLine(Line0, (uint8_t *)" ");
LCD_DisplayStringLine(Line1, (uint8_t *)" ");
LCD_DisplayStringLine(Line2, (uint8_t *)" LCD Test ");
LCD_DisplayStringLine(Line3, (uint8_t *)" ");
LCD_DisplayStringLine(Line4, (uint8_t *)" ");
while (1)
{
char a[20];
int a1=0;
sprintf(a," ljw : %d ",a1);//函数功能将双引号中的字符串赋给a字符数组中
//函数原型
int sprintf( char *buffer, const char *format [, argument] … );
LCD_DisplayStringLine(Line9, (uint8_t *)a);
}
}
效果演示
重点
①导入LCD屏幕驱动文件。
②LCD函数功能以及具体使用。
③主函数编写显示效果。
④认真仔细。