打印
[STM32F1]

STM32F103RET6 emWin ILI9488 [SPI DMA]

[复制链接]
991|5
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主

1、使用3.5寸SPI触摸显示屏,分辨率:480*320 ;驱动IC: ILI9488;
     采用的是SPI DMA 驱动,使用emWin。




2、TFT LCD驱动接口部分:
     2.8inch,3.5inch接口通用
   

3、项目产品照片:



4、产品配线图:








5、产品适配TFT LCD 对照:



6、应用说明:
  a.3.5英寸SPI触摸显示屏模块,采用SPI四线接口,只能支持RGB666数据模式。
      【说明: 想采用RGB565模式,怎么测试都不能正常初始化!】

  b.因为原来项目用的是2.8英寸SPI触摸显示屏模块,驱动IC是: ILI9341,采用RGB565模式,是可以正常使用的。
   现在采用3.5英寸SPI触摸显示屏模块,想继续选用原来的模式,怎么测试都没有成功,只好改成RGB666模式的,
   才正常运行。

  c. 原来采用RGB565模式的SPI DMA驱动,也就必须修改,才能正常运行。

  请看下面的DMA驱动代码部分:  
    LCD_Core.rar (1.55 KB)

   ILI9488_ucgui.rar (1.94 KB)

  void LCD_putPixel(u16 x, u16 y, u16 color) {
  
   u8 t3clr[3];

   t3clr[0]=(color>>8)&0xF8;
   t3clr[1]=(color>>3)&0xFC;
   t3clr[2]=color<<3;

    LCD_setAddressWindowToWrite(x, y, x, y);   
    dmaSendData8(t3clr, 3);   
}

static void LCD_putPixelCont(u16 x, u16 y, u16 color) {
   LCD_putPixel(x,y,color);
}

void LCD_fillRect(u16 x1, u16 y1, u16 w, u16 h, u16 color) {
    u32 count = w * h;
    LCD_setAddressWindowToWrite(x1, y1, (u16) (x1 + w - 1), (u16) (y1 + h - 1));   
    dmaFill8(color, count);   
}


void LCD_fillScreen(u16 color) {
    LCD_fillRect(0, 0, LCD_getWidth(), LCD_getHeight(), color);
}







使用特权

评论回复
沙发
mmuuss586| | 2020-5-16 20:26 | 只看该作者
这板子成本不低;

DCDC隔离电源模块都用这么好了,还有继电器;

也就不差晶振和屏的钱,晶振可以换贴片的,屏也可以用好些的

使用特权

评论回复
板凳
xfcjava2|  楼主 | 2020-5-18 19:47 | 只看该作者
mmuuss586 发表于 2020-5-16 20:26
这板子成本不低;

DCDC隔离电源模块都用这么好了,还有继电器;

多谢指点!

彩色显示屏,对于用户来说:只是一个辅助的调试显示;
电路板都具有隔离RS-485接口了,用户根本用不到显示屏。

使用特权

评论回复
地板
dongnanxibei| | 2020-5-19 08:55 | 只看该作者
分享的好东西啊, 感谢。

使用特权

评论回复
5
幻森| | 2023-1-3 15:51 | 只看该作者

使用特权

评论回复
6
AdaMaYun| | 2023-1-4 14:24 | 只看该作者
好详细啊,一楼给得到建议很中肯

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

26

主题

449

帖子

42

粉丝