来自云龙湖轮廓分明的月亮 发表于 2024-12-9 18:30:06

嵌入式蓝桥杯学习4 lcd移植

cubemx设置

复制前面设置过的文件
打开cubemx,将下图中使用的引脚设置为GPIO-Output。
https://i-blog.csdnimg.cn/direct/c4bc7064bdb64ab4994cb88c3b589b28.png
https://i-blog.csdnimg.cn/direct/9cef974a8f9b416e8fcaec54247cf763.png 
点击GENERATE CODE.
文件移植

1.打开比赛提供的文件包,点击Inc文件夹
2.点击Inc文件夹。复制fonts.h和lcd.h,粘贴到我们自己的工程文件夹的bsp中(这里不懂的话,请看嵌入式学习第一篇文章)
3.点击Src文件夹。复制lcd.c,粘贴到bsp中。
https://i-blog.csdnimg.cn/direct/080206c70e4c46c69e8c369d8af87cb5.png
4.在工程中添加进我们刚刚添加过的lcd的文件。
https://i-blog.csdnimg.cn/direct/08cf8f3c8a0446759cca85719d66f1cf.png
5.在main.c中添加lcd的头文件和stdio的头文件

my_main.c
#include "my_main.h"

uint8_t led_sta=0x01;
char text;
void LED_Disp(uint8_t dsLED)
{
        HAL_GPIO_WritePin(GPIOC,GPIO_PIN_All,GPIO_PIN_SET);//所有LED熄灭(l小写)
        HAL_GPIO_WritePin(GPIOC,dsLED<<8,GPIO_PIN_RESET);//左移8位:控制C8-C15引脚,值为1的电量
        HAL_GPIO_WritePin(GPIOD,GPIO_PIN_2,GPIO_PIN_SET);//开锁存器
        HAL_GPIO_WritePin(GPIOD,GPIO_PIN_2,GPIO_PIN_RESET);//关锁存器
}


//程序开始时执行一次
void setup()
{
        LED_Disp(0x00);
        LCD_Init();
        LCD_SetBackColor(Black);
        LCD_SetTextColor(White);

}
//反复执行
void loop()
{
        /*   LCD演示   */
        sprintf(text,"    number:%x",led_sta);
        LCD_DisplayStringLine(Line8,(uint8_t *)text);//局部刷新
       
        LCD_SetBackColor(Yellow);
        sprintf(text,"    T:%d                ",30);
        LCD_DisplayStringLine(Line5,(uint8_t *)text);//局部刷新
        LCD_SetBackColor(Black);
        sprintf(text,"    X:A01");
        LCD_DisplayStringLine(Line6,(uint8_t *)text);//局部刷新
}


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 嵌入式蓝桥杯学习4 lcd移植