[AT32F403/403A] st7789(320x240), soft_spi驱动花屏问题,初始后刷屏没反应.....

[复制链接]
lmhtz 发表于 2025-8-9 12:02 | 显示全部楼层 |阅读模式
本帖最后由 lmhtz 于 2025-8-9 12:14 编辑

/* 初始数据
    LCD_GPIO_Init();
    uDelay_ms(10);
    GPIOB->scr = LCD_RST_PIN;//RST拉高
    GPIOB->scr = LCD_CS_PIN;
    uDelay_ms(10);
    /* 关闭睡眠模式 */
    LCD_Write_Cmd(0x01);
    LCD_Write_Cmd(0x11);
    uDelay_ms(10);
    /* 开始设置显存扫描模式,数据格式等 */
    LCD_Write_Cmd(0x36);
    LCD_Write_Data(0x00);
    /* RGB 5-6-5-bit格式  */
    LCD_Write_Cmd(0x3A);
    LCD_Write_Data(0x66);
    /* porch 设置 */
    LCD_Write_Cmd(0xB2);
    LCD_Write_Data(0x0C);
    LCD_Write_Data(0x0C);
    LCD_Write_Data(0x00);
    LCD_Write_Data(0x33);
    LCD_Write_Data(0x33);
    /* VGH设置 */
    LCD_Write_Cmd(0xB7);
    LCD_Write_Data(0x75);
    /* VCOM 设置 */
    LCD_Write_Cmd(0xBB);
    LCD_Write_Data(0x1A);
    /* LCM 设置 */
    LCD_Write_Cmd(0xC0);
    LCD_Write_Data(0x2C);
    /* VDV and VRH 设置 */
    LCD_Write_Cmd(0xC2);
    LCD_Write_Data(0x01);
    /* VRH 设置 */
    LCD_Write_Cmd(0xC3);
    LCD_Write_Data(0x13);
    /* VDV 设置 */
    LCD_Write_Cmd(0xC4);
    LCD_Write_Data(0x20);
    /* 普通模式下显存速率设置 60Mhz */
    LCD_Write_Cmd(0xC6);
    LCD_Write_Data(0x0F);
    /* 电源控制 */
    LCD_Write_Cmd(0xD0);
    LCD_Write_Data(0xA4);
    LCD_Write_Data(0xA1);
   
    LCD_Write_Cmd(0xD6);     
    LCD_Write_Data(0xA1);
    /* 电压设置 */
    LCD_Write_Cmd(0xE0);
    LCD_Write_Data(0xD0);
    LCD_Write_Data(0x0D);
    LCD_Write_Data(0x14);
    LCD_Write_Data(0x0D);
    LCD_Write_Data(0x0D);
    LCD_Write_Data(0x09);
    LCD_Write_Data(0x38);
    LCD_Write_Data(0x44);
    LCD_Write_Data(0x4E);
    LCD_Write_Data(0x3a);
    LCD_Write_Data(0x17);
    LCD_Write_Data(0x18);
    LCD_Write_Data(0x2F);
    LCD_Write_Data(0x30);
    /* 电压设置 */
    LCD_Write_Cmd(0xE1);
    LCD_Write_Data(0xD0);
    LCD_Write_Data(0x09);
    LCD_Write_Data(0x0F);
    LCD_Write_Data(0x08);
    LCD_Write_Data(0x07);
    LCD_Write_Data(0x14);
    LCD_Write_Data(0x37);
    LCD_Write_Data(0x44);
    LCD_Write_Data(0x4D);
    LCD_Write_Data(0x38);
    LCD_Write_Data(0x15);
    LCD_Write_Data(0x16);
    LCD_Write_Data(0x2C);
    LCD_Write_Data(0x2E);
    /* 显示开 */
    LCD_Write_Cmd(0x21);
    LCD_Write_Cmd(0x29);
    LCD_Write_Cmd(0x2C);

    /* 清屏为白色 */
    LCD_Clear(WHITE);
 楼主| lmhtz 发表于 2025-8-10 01:21 | 显示全部楼层
图片不能上载?
xch 发表于 2025-8-11 09:53 | 显示全部楼层
我也用7789,花屏是因为SPI CLK 频率太高。
网上卖的应该都是山寨的,与手册对不上号。主要是SPI接口时序完全不一致
xch 发表于 2025-8-11 17:08 | 显示全部楼层
TFT 屏引线太长,没做阻抗匹配也跑不了高速
一叶倾城wwq 发表于 2025-8-12 09:14 | 显示全部楼层
7789挺好用的,上个月买了2个,用着没问题,直接用客服给的驱动代码就好了。
trucyw 发表于 2025-8-13 08:17 | 显示全部楼层
ST7789点亮显示很容易的吧
admvip 发表于 2025-8-13 08:43 | 显示全部楼层
点亮屏幕很容易,但是想要好的效果,需要用屏幕厂家给的初始化代码,里面好多参数是厂家测试适配的,自己调参数搞很困难
dw772 发表于 2025-8-13 10:41 | 显示全部楼层
大概率是SPI的速度快了
trucyw 发表于 2025-8-13 13:26 | 显示全部楼层
ST7789 SPI应该不难点吧
实在不行就用GPIO模拟
 楼主| lmhtz 发表于 2025-8-15 07:55 | 显示全部楼层
解决,连续写数据未关联cs原因
 楼主| lmhtz 发表于 2025-8-15 07:56 | 显示全部楼层
发图为什么图片不能保存服务器报错
梦境漫游者 发表于 2025-8-20 10:51 | 显示全部楼层
花屏看看是不是硬件没有接好 或者是信号线太长?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

4

主题

20

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部