找回密码
 立即注册
楼主: ercircle

AiCube 图形化自动生成程序,TFT-彩屏@Ai8051U, 驱动 ST7735S,ST7739, ST7789

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:535
  • 最近打卡:2026-05-14 08:52:33
已绑定手机

108

主题

4397

回帖

9850

积分

荣誉版主

无情的代码机器

积分
9850
发表于 2026-3-25 08:52:34 | 显示全部楼层
zhang*** 发表于 2026-3-25 08:44
你好 2.25寸st7789 tft分辨率284*76 。根据你的程序 横屏显示,发现显示到240-255不能正常显示。不知道什么 ...

别的位置呢?异常效果是怎样?修改后得工程上传看看
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:668
  • 最近打卡:2026-05-14 09:41:09

33

主题

154

回帖

876

积分

高级会员

积分
876
发表于 2026-3-25 13:45:07 | 显示全部楼层
erci*** 发表于 2026-3-25 08:52
别的位置呢?异常效果是怎样?修改后得工程上传看看

你好 早上已经解决问题。原因是定位程序MOVE TO 内面高八位和低八位原因导致的。240-255不正确。256就可以。修改后的程序如下:

void LCD_MoveTo(unsigned int X,unsigned int Y)
{
   if(USE_HORIZONTAL==0 || USE_HORIZONTAL==1)     //竖屏显示
         {
   LCD_CMD(0x2A); LCD_DAT((u8)((X+X_OFFSET)/256)); LCD_DAT((u8)(X+X_OFFSET));  //定X列坐标
   LCD_CMD(0x2B); LCD_DAT((u8)((Y+Y_OFFSET)/256)); LCD_DAT((u8)(Y+Y_OFFSET));  //定Y坐标         
         }
else                                          //横屏显示
  {       
    LCD_CMD(0x2A); //设置X列地址
                LCD_DAT((u8)((X+Y_OFFSET)/256)); //开始X高八位
                LCD_DAT((u8)(X+Y_OFFSET));  //开始低八位
                LCD_DAT((u8)((Width-1+Y_OFFSET)/256));//结束地址高8位
                LCD_DAT((u8)(Width-1+Y_OFFSET));//结束地址低八位

    LCD_CMD(0x2B);//定义行坐标
                LCD_DAT((u8)((Y+X_OFFSET)/256)); //开始Y高八位
                LCD_DAT((u8)(Y+X_OFFSET));   //开始低八位
                LCD_DAT((u8)((Height-1+X_OFFSET)/256)); //结束Y高八位
                LCD_DAT((u8)(Height-1+X_OFFSET));   //结束低八位               
  }       
LCD_CMD(0x2C);//开启准备显示
}
一行刚好显示17个汉字
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:474
  • 最近打卡:2026-05-14 08:50:14

3

主题

53

回帖

1924

积分

金牌会员

积分
1924
发表于 2026-3-30 08:31:45 | 显示全部楼层
楼主能不能出一个LCD的驱动案例,基于QSPI液晶接口的屏幕,要是可以最好了,求求了。
点评

点评

测试qspi屏可以点亮,目前有个小缺陷,需要多用一个独立io控制CS: QSPI屏驱IC:CO5300AF-51 QSPI触控IC:CST9217 例程IO分布: 独立CS:P1.6 选择QSPI数据口: NCS(P1.2), IO0(P1.3), IO1(P1.4), IO2(P1.1), IO3(P  详情 回复 发表于 2026-4-9 23:28
QSPI屏已买在路上了。  发表于 2026-4-1 09:48
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:474
  • 最近打卡:2026-05-14 08:50:14

3

主题

53

回帖

1924

积分

金牌会员

积分
1924
发表于 2026-4-2 08:49:15 | 显示全部楼层
拉布*** 发表于 2026-3-30 08:31
楼主能不能出一个LCD的驱动案例,基于QSPI液晶接口的屏幕,要是可以最好了,求求了。
点评 ...

牛牛牛B
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:535
  • 最近打卡:2026-05-14 08:52:33
已绑定手机

108

主题

4397

回帖

9850

积分

荣誉版主

无情的代码机器

积分
9850
发表于 2026-4-9 23:28:57 | 显示全部楼层
拉布*** 发表于 2026-3-30 08:31
楼主能不能出一个LCD的驱动案例,基于QSPI液晶接口的屏幕,要是可以最好了,求求了。
点评 ...

测试qspi屏可以点亮,目前有个小缺陷,需要多用一个独立io控制CS:


QSPI屏驱IC:CO5300AF-51
QSPI触控IC:CST9217



例程IO分布:
独立CS:P1.6
选择QSPI数据口: NCS(P1.2), IO0(P1.3), IO1(P1.4), IO2(P1.1), IO3(P1.0), CLK(P1.5)
选择I2C1数据口: SCL(P2.5), SDA(P2.4)




qspi_lcd_test_0410.zip (2.29 MB, 下载次数: 5)

点评

基于这个工程如何实现打点函数、画线和图片显示呢?  发表于 2026-4-15 15:45
厉害,学习一下  发表于 2026-4-10 17:14
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:474
  • 最近打卡:2026-05-14 08:50:14

3

主题

53

回帖

1924

积分

金牌会员

积分
1924
发表于 2026-4-10 17:27:22 | 显示全部楼层
erci*** 发表于 2026-4-9 23:28
测试qspi屏可以点亮,目前有个小缺陷,需要多用一个独立io控制CS:

AI8051U可以测试一下?

点评

画点,画线,画图最终都是矩阵填充,1x1,1xn,nxn 都可参考这个函数lcd_fill_area 具体实现可借鉴实验箱例程: https://www.stcaimcu.com/data/download/DemoCode/AI8051U-DEMO-CODE-V1.2.zip AI8051U-DEMO-CODE-V1  详情 回复 发表于 2026-4-15 17:28
使用AiCube的接口,代码基本一致,拷贝到8051U的工程就行。  详情 回复 发表于 2026-4-10 17:45
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:535
  • 最近打卡:2026-05-14 08:52:33
已绑定手机

108

主题

4397

回帖

9850

积分

荣誉版主

无情的代码机器

积分
9850
发表于 2026-4-10 17:45:12 | 显示全部楼层
拉布*** 发表于 2026-4-10 17:27
AI8051U可以测试一下?

使用AiCube的接口,代码基本一致,拷贝到8051U的工程就行。

注意IO切换,以及对应的io模式更改
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:474
  • 最近打卡:2026-05-14 08:50:14

3

主题

53

回帖

1924

积分

金牌会员

积分
1924
发表于 2026-4-14 15:05:23 | 显示全部楼层
erci*** 发表于 2026-4-10 17:45
使用AiCube的接口,代码基本一致,拷贝到8051U的工程就行。

注意IO切换,以及对应的io模式更改

如果不是使用你这一块屏幕,代码需要修改哪里,我的液晶是NV3030B,320*172

点评

一般改屏幕初始化部分,找卖家要初始化和指令示例 [attachimg]135810[/attachimg]  详情 回复 发表于 2026-4-14 15:16
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:535
  • 最近打卡:2026-05-14 08:52:33
已绑定手机

108

主题

4397

回帖

9850

积分

荣誉版主

无情的代码机器

积分
9850
发表于 2026-4-14 15:16:21 | 显示全部楼层
拉布*** 发表于 2026-4-14 15:05
如果不是使用你这一块屏幕,代码需要修改哪里,我的液晶是NV3030B,320*172

一般改屏幕初始化部分,找卖家要初始化和指令示例


截图202604141516152293.jpg
三天不学习,赶不上刘少奇~
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:474
  • 最近打卡:2026-05-14 08:50:14

3

主题

53

回帖

1924

积分

金牌会员

积分
1924
发表于 2026-4-14 17:05:37 | 显示全部楼层
erci*** 发表于 2026-4-14 15:16
一般改屏幕初始化部分,找卖家要初始化和指令示例

原点坐标不对怎么设置,还有怎么手动配置AICUBE,我在尝试使用stc8051u-34k64配置qspi,但是不知道配置步骤。

点评

原点行列差值也是卖家提供,例程里可以搜EXAMPLE_LCD_X_GAP,EXAMPLE_LCD_Y_GAP aicube教程: 程序自动生成器,AiCube-ISP V6.96T, STC89/15/STC8H/STC32/8051U - AiCube-ISP , 程序自动生成工具, 支持STC89/15/8H  详情 回复 发表于 2026-4-14 17:31
回复

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2026-5-14 16:54 , Processed in 0.590957 second(s), 97 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表