蓝桥杯--嵌入式STM32G431RBT6(LCD显示屏篇)

蓝桥杯–嵌入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函数功能以及具体使用。
③主函数编写显示效果。
④认真仔细。

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
【资源说明】 树莓派状态LCD显示屏程序C源码+程序说明.zip树莓派状态LCD显示屏程序C源码+程序说明.zip 1.基本信息: 本例程使用单独LCD模块进行了验证,你可以在工程的Examples\中查看对应的测试例程; 本例程均在Raspberry Pi 4B上进行了验证; 2.管脚连接: 管脚连接你可以在\lib\Config目录下查看DEV_Config.h中查看,这里也再重述一次: EPD => RPI(BCM) VCC -> 5V GND -> GND DIN -> 10(SPI0_MOSI) CLK -> 11(SPI0_SCK) CS -> 8(CE0) DC -> 25 RST -> 27 BL -> 18 3.基本使用: 你需要执行:make,编译程序,会生成可执行文件:main 运行:sudo ./main 屏幕尺寸 如你购买的是1.54inch LCD,那么你应该执行命令: sudo ./main 1.54 如果修改了程序,需要执行:make clean,然后重新make。 4.目录结构(选读): 如果你经常使用我们的产品,对我们的程序目录结构会十分熟悉,关于具体的函数的我们有一份 函数的API手册,你可以在我们的WIKI上下载或像售后客服索取,这里简单介绍一次: \lib\Config\:此目录为硬件接口层文件,在DEV_Config.c(.h)可以看到很多定义,包括: 数据类型; GPIO; 读写GPIO; 延时:注意:此延时函数并未使用示波器测量具体数值,因此会不准; 模块初始化与退出的处理: void DEV_Module_Init(void); void DEV_Module_Exit(void); \lib\GUI\:此目录为一些基本的图像处理函数,在GUI_Paint.c(.h)中: 常用图像处理:创建图形、翻转图形、镜像图形、设置像素点、清屏等; 常用画图处理:画点、线、框、圆、中文字符、英文字符、数字等; 常用时间显示:提供一个常用的显示时间函数; 常用显示图片:提供一个显示位图的函数; \lib\Fonts\:为一些常用的字体: Ascii: font8: 5*8 font12: 7*12 font16: 11*16 font20: 14*20 font24: 17*24 中文: font12CN: 16*21 font24CN: 32*41 \lib\LCD\:此目录下为液晶屏驱动函数; Examples\:此目录下为液晶屏的测试程序,你可在其中看到具体的使用方法; 【备注】 1.项目代码均经过功能验证ok,确保稳定可靠运行。欢迎下载使用体验! 2.主要针对各个计算机相关专业,包括计算机科学、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师、企业员工。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、初期项目立项演示等用途。 4.当然也鼓励大家基于此进行二次开发。在使用过程中,如有问题或建议,请及时沟通。 5.期待你能在项目中找到乐趣和灵感,也欢迎你的分享和反馈!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学好单片机

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值