家星 · 2022年08月17日 · 浙江

【MM32F5270开发板试用】移植tft液晶屏驱动到MM32

对MM32的初步感受:
第一次使用mm32,因为有mindsdk,配置完环境后,直接上手体验了几个demo,感觉mm32和stm32差别不大,上手体验很好,本次移植tft屏幕驱动,没费什么力气,一次成功。后续会在了解了解mm32替换stm32。

本次项目基础:
https://aijishu.com/a/1060000...

由于屏幕驱动中需要用到延时函数,而我没在MindSDK中找到systick相关的工程,正好看到有大佬移植完成了systick,所以直接用了。

有了延时函数后,离移植成功只需要两步了。
1.更改端口定义的GPIO高低电平的写入函数
2.更改gpio口初始化

//-----------------OLED端口定义---------------- 

#define OLED_SCLK_Clr() GPIO_WriteBit(GPIOA,GPIO_PIN_0,0u)
#define OLED_SCLK_Set() GPIO_WriteBit(GPIOA,GPIO_PIN_0,1u)


#define OLED_SDIN_Clr() GPIO_WriteBit(GPIOA,GPIO_PIN_1,0u)//DIN
#define OLED_SDIN_Set() GPIO_WriteBit(GPIOA,GPIO_PIN_1,1u)


#define OLED_RST_Clr() GPIO_WriteBit(GPIOA,GPIO_PIN_2,0u)//RES
#define OLED_RST_Set() GPIO_WriteBit(GPIOA,GPIO_PIN_2,1u)


#define OLED_DC_Clr() GPIO_WriteBit(GPIOA,GPIO_PIN_3,0u)//DC
#define OLED_DC_Set() GPIO_WriteBit(GPIOA,GPIO_PIN_3,1u)

              
#define OLED_CS_Clr()  GPIO_WriteBit(GPIOA,GPIO_PIN_4,0u)//CS
#define OLED_CS_Set()  GPIO_WriteBit(GPIOA,GPIO_PIN_4,1u)

              
#define OLED_BLK_Clr()  GPIO_WriteBit(GPIOA,GPIO_PIN_5,0u)//BLK
#define OLED_BLK_Set()  GPIO_WriteBit(GPIOA,GPIO_PIN_5,1u)
//GPIO初始化
    GPIO_Init_Type  GPIO_InitStructure;
    RCC_EnableAHB1Periphs(RCC_AHB1_PERIPH_GPIOA, true);
    GPIO_InitStructure.Pins  = GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5;
    GPIO_InitStructure.PinMode  = GPIO_PinMode_Out_PushPull;
    GPIO_InitStructure.Speed = GPIO_Speed_50MHz;
    GPIO_Init(GPIOA, &GPIO_InitStructure);
    
//    GPIO_PinRemapConfig(GPIO_Remap_SWJ_JTAGDisable, ENABLE);
    GPIO_WriteBit(GPIOA,GPIO_PIN_0|GPIO_PIN_1|GPIO_PIN_2|GPIO_PIN_3|GPIO_PIN_4|GPIO_PIN_5,1u);
//主函数
int main(void)
{
    BOARD_Init();

    printf("\r\n lcd example.\r\n");


    LCD_ShowOneChinese(10,0,"极",RED);
    LCD_ShowOneChinese(42,0,"术",RED);
    LCD_ShowOneChinese(74,0,"社",RED);
    LCD_ShowOneChinese(106,0,"区",RED);
    LCD_ShowString(10,40,"MM32",RED);
    while (1)
    {
        ;
    }
}

完成后用杜邦线屏幕和开发板,烧录程序。一次成功
微信图片_20220817220637.jpg

本项目地址:
https://gitee.com/holly-knight/mm32_tft_lcd_demo

下个项目,准备体验了sd卡读取,最终打算做一个基于sd卡的iap升级操作

推荐阅读
关注数
6108
内容数
272
灵动MM32 MCU相关技术知识,欢迎关注~
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息