蓝桥杯嵌入式学习记录——LCD的使用

目录

一、前言

二、LCD代码的移植

三、LCD代码的调用


一、前言

        前一篇文章已经简单记录了一下cubeMX软件的使用和LED的点亮,今天来记录一下LCD的使用。LCD的驱动代码有很多,但实际上在蓝桥杯的比赛中用起来非常简单,因为赛点会提供LCD的驱动代码,我们只需要将代码移植到我们自己的工程里即可,这给予了我们极大的方便。而赛点资源数据包我已上传到我的资源里,完全免费,大家按需自取。

二、LCD代码的移植

(一)首先打开我们的赛点资源包,查看里面的液晶显示屏例程

(二)选择HAL_06_LCD

(三)分别点开下图所示的Inc、Src

(四)找到以下三个文件:fonts.h、lcd.h、lcd.c,并复制到自己的工程文件bsp中

(五)打开自己的工程文件bsp并进行复制

至此,LCD代码的移植已完成

三、LCD代码的调用

        移植完代码后,打开赛点资源包中的代码,找到如下与LCD相关的代码部分,并根据需要复制到自己的工程对应的地方

所有与LCD相关的代码如下:

	LCD_Init();
	
	LCD_Clear(Blue);
	LCD_SetBackColor(Blue);
	LCD_SetTextColor(White);
	
	LCD_DrawLine(120,0,320,Horizontal);
	LCD_DrawLine(0,160,240,Vertical);
	HAL_Delay(1000);
	LCD_Clear(Blue);

	LCD_DrawRect(70,210,100,100);
	HAL_Delay(1000);
	LCD_Clear(Blue);

	LCD_DrawCircle(120,160,50);
	HAL_Delay(1000);

	LCD_Clear(Blue);
	LCD_DisplayStringLine(Line4 ,(unsigned char *)"    Hello,world.   ");
	HAL_Delay(1000);

	LCD_SetBackColor(White);
	LCD_DisplayStringLine(Line0,(unsigned char *)"                    ");	
	LCD_SetBackColor(Black);
	LCD_DisplayStringLine(Line1,(unsigned char *)"                    ");	
	LCD_SetBackColor(Grey);
	LCD_DisplayStringLine(Line2,(unsigned char *)"                    ");
	LCD_SetBackColor(Blue);
	LCD_DisplayStringLine(Line3,(unsigned char *)"                    ");
	LCD_SetBackColor(Blue2);
	LCD_DisplayStringLine(Line4,(unsigned char *)"                    ");
	LCD_SetBackColor(Red);						
	LCD_DisplayStringLine(Line5,(unsigned char *)"                    ");
	LCD_SetBackColor(Magenta);	
	LCD_DisplayStringLine(Line6,(unsigned char *)"                    ");
	LCD_SetBackColor(Green);	
	LCD_DisplayStringLine(Line7,(unsigned char *)"                    ");	
	LCD_SetBackColor(Cyan);	
	LCD_DisplayStringLine(Line8,(unsigned char *)"                    ");
	LCD_SetBackColor(Yellow);		
	LCD_DisplayStringLine(Line9,(unsigned char *)"                    ");	

简单记录一下LCD的各代码意义及作用:

(1)LCD显示屏的初始化

LCD_Init();

(2)LCD清屏操作

LCD_Clear(Blue);

(3)设置LCD显示屏的背景颜色

LCD_SetBackColor(Blue);

(4)设置字体颜色

LCD_SetTextColor(White);

(5)绘制线条,其中120 和 0 是线条的起始坐标,表示线条的起点位于 x 坐标 120、y 坐标 0 的位置。参数 320 是线条的长度,表示线条的宽度为 320 个像素。Horizontal 是线条的方向,表示绘制一条水平线,Vertical表示绘制一条垂直线

	LCD_DrawLine(120,0,320,Horizontal);
	LCD_DrawLine(0,160,240,Vertical);

(6)在指定行数显示指定字符

	LCD_DisplayStringLine(Line4 ,(unsigned char *)"    Hello,world.   ");

       

        例如,我希望在LCD显示屏上的第一行显示“Hello,KAI!”,并且设置背景颜色为蓝色字体颜色为白色,则只需要选取以下代码

//循环前

    LCD_Init();
	LCD_Clear(Blue);
	LCD_SetBackColor(Blue);
	LCD_SetTextColor(White);

//循环内
	LCD_DisplayStringLine(Line0,(unsigned char *)"     Hello, KAI!       ");	

具体代码位置如下:

烧录效果如下:

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

KAIs32

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

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

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

打赏作者

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

抵扣说明:

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

余额充值