单片机学习小组
直播中

陈苏文

7年用户 207经验值
私信 关注

stm32 mini板TFTLCD显示模块源程序

实验器材:
     MiniSTM32F103开发板V3版本
     
实验目的:
     学习彩色TFTLCD显示屏的使用
     
硬件资源:
     1,DS0(连接在PA8)
     2,串口1(波特率:9600,PA9/PA10连接在板载USB转串口芯片CH340上面)
     3,ALIENTEK 2.8/3.5/4.3/7寸TFTLCD模块(通过GPIO驱动,连接关系见lcd.h)
     
实验现象:
     本实验利用MiniSTM32开发板连接ALIENTEK TFTLCD模块(除CPLD版本7寸屏模块外,其余所有ALIENTEK的
     LCD模块都可以支持),实现TFTLCD模块的显示,下载成功后,通过把LCD模块插入TFTLCD模块接口(靠右
     插),按下复位之后,就可以看到LCD模块不停的显示一些信息并不断切换底色。同时该实验会显示LCD驱
     动器的ID,并且会在串口打印(按复位一次,打印一次)。
     
注意事项:  
     1,4.3寸和7寸屏需要比较大电流,USB供电可能不足,请用外部电源供电(5V电源,接VOUT2即可).
     2,本例程在LCD_Init函数里面(在ILI93xx.c),用到了printf,如果不初始化串口1,将导致液晶无法显示!!
     3,LCD模块在开发板的LCD接口上面,必须靠右插。
  

单片机源程序如下:
  • #include "led.h"
  • #include "delay.h"
  • #include "sys.h"
  • #include "usart.h"
  • #include "lcd.h"
  • //ALIENTEK Mini STM32开发板范例代码11
  • //TFTLCD显示实验
  • int main(void)
  • {
  •          u8 x=0;
  •         u8 lcd_id[12];                        //存放LCD ID字符串
  •         delay_init();                     //延时函数初始化
  •         uart_init(9600);                 //串口初始化为9600
  •         LED_Init();                                  //初始化与LED连接的硬件接口
  •          LCD_Init();
  •         POINT_COLOR=RED;
  •         sprintf((char*)lcd_id,"LCD ID:%04X",lcddev.id);//将LCD ID打印到lcd_id数组。
  •           while(1)
  •         {
  •                 switch(x)
  •                 {
  •                         case 0:LCD_Clear(WHITE);break;
  •                         case 1:LCD_Clear(BLACK);break;
  •                         case 2:LCD_Clear(BLUE);break;
  •                         case 3:LCD_Clear(RED);break;
  •                         case 4:LCD_Clear(MAGENTA);break;
  •                         case 5:LCD_Clear(GREEN);break;
  •                         case 6:LCD_Clear(CYAN);break;
  •                         case 7:LCD_Clear(YELLOW);break;
  •                         case 8:LCD_Clear(BRRED);break;
  •                         case 9:LCD_Clear(GRAY);break;
  •                         case 10:LCD_Clear(LGRAY);break;
  •                         case 11:LCD_Clear(BROWN);break;
  •                 }
  •                 POINT_COLOR=RED;
  •                 LCD_ShowString(30,40,200,24,24,"Mini STM32 ^_^");
  •                 LCD_ShowString(30,70,200,16,16,"TFTLCD TEST");
  •                 LCD_ShowString(30,90,200,16,16,"ATOM@ALIENTEK");
  •                  LCD_ShowString(30,110,200,16,16,lcd_id);                //显示LCD ID
  • ……………………
  • …………限于本文篇幅 余下代码请从电子发烧友下载附件…………



所有资料51hei提供下载:
    ALIENTEK MINISTM32 实验11 TFT LCD液晶显示实验.rar  



更多回帖

发帖
×
20
完善资料,
赚取积分