找回密码
 立即注册
楼主: 浦江一水

基于 32G12K128实验箱V9.62_实验之TFT彩屏驱动, ILI9341

[复制链接]
  • 打卡等级:常住居民III
  • 打卡总天数:128
  • 最近打卡:2026-07-01 07:38:53

41

主题

72

回帖

806

积分

高级会员

积分
806
发表于 2026-2-24 14:27:59 | 显示全部楼层
浦江*** 发表于 2026-2-24 13:19
第一行理解为"设置显示区域是一条竖线"也是对的.
其实质是设置一个矩形区域,因为X水平方向的宽度是1, 那 ...

刚才我看了看问题找到了,我的TFT_SET_ADD(X,Y,X,Y+H)函数

void TFT_SET_ADD(unsigned int X,unsigned  int Y,unsigned int X_END,unsigned int Y_END)
{      
                TFT_SEND_CMD(0x2A);     //窗口地址横向                        
    TFT_SEND_DATA16(X);//start column   
    TFT_SEND_DATA(X_END);//start column
                TFT_SEND_CMD(0x2B);     //窗口地址纵向                     
    TFT_SEND_DATA16(Y);                //start row   
    TFT_SEND_DATA16(Y_END);                //start row
    TFT_SEND_CMD(0x2C);     //写入数据   
}第三行TFT_SEND_DATA少写个16,变成只传送8位,非常感谢你的解答
回复

使用道具 举报 送花

  • 打卡等级:常住居民III
  • 打卡总天数:128
  • 最近打卡:2026-07-01 07:38:53

41

主题

72

回帖

806

积分

高级会员

积分
806
发表于 2026-2-26 13:41:50 | 显示全部楼层
浦江老师你好,我参照你的汉字显示函数编写的汉字显示函数,编译没有警告,但页面上出现了警告,我在显示变量数值,编译也出现警告,但也能正常显示,应该指针类型的问题,请帮忙分析分析,如何解决?
我把函数里的指针类型改成char,只在 if(*str>0x80)语句前面出现警告,我又加了个类型转换,警告没了,不知这样合适不合适,但现在显示正常,

void TFT_Str24(u16 X,u16 Y,char * str,u8 Fc,u8 Bc)//显示一个24*24点阵中西文字符串函数
{
        char ch[3];
  while(*str)
  { if((u8)*str>0x80)
    { ch[0]=*str;ch[1]=*(str+1);
      TFT_HZ24(X,Y,ch,Fc,Bc);
      X+=24; str+=2;
    }
    else
    { TFT_A24(X,Y,*str,Fc,Bc); X+=12; str++; }
    if(X>LCD_W-12){ X=0;Y+=24; }
  }
}


微信图片_20260226132639_21_2.jpg
微信图片_20260226132638_20_2.jpg

点评

这种现象我的理解是编译环境的版本较高,对语法检验较严格,认为不符合某种C标准,所以提出警告,大多为数据类型不明确. 但是这不是致命错误, 所以能通过编译,运行也正常. 基本可忽略不计. 但是在页面上出现警告,让人  详情 回复 发表于 2026-2-26 19:23
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:887
  • 最近打卡:2026-07-05 07:21:25

31

主题

428

回帖

4672

积分

荣誉版主

积分
4672
发表于 2026-2-26 19:23:59 | 显示全部楼层
dong*** 发表于 2026-2-26 13:41
浦江老师你好,我参照你的汉字显示函数编写的汉字显示函数,编译没有警告,但页面上出现了警告,我在显示变 ...

   这种现象我的理解是编译环境的版本较高,对语法检验较严格,认为不符合某种C标准,所以提出警告,大多为数据类型不明确. 但是这不是致命错误, 所以能通过编译,运行也正常. 基本可忽略不计. 但是在页面上出现警告,让人看着不舒服,是应该加以克服的.
   具体到上例而言,函数的形参中, char * str 是字符串, 类型是字符型的,每个字符取值范围是0..255. 而在语句调用时, if(*str>0x80)...这就是在比较大小了. 那么取值范围是无符号的0..255呢,还是有符号的-128到+127呢? 这就模糊了, 所以要警告一下. 你加上(u8)强制转换, 数据类型明确了,也就没有警告了.
   应对此类情况, 无非有两种方法, 一个是严格语法表达,二是改变Keil环境设置(比如取消同步语法检验,不警告,具体是要看keil版本在哪设置勾选的).
   不知我的理解是否正确, 仅供参考了.
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:202
  • 最近打卡:2026-07-04 17:28:31
已绑定手机

25

主题

2662

回帖

3411

积分

论坛元老

积分
3411
发表于 2026-5-13 20:29:42 | 显示全部楼层
尊敬的版主,我这几天在STC32G12K128试验箱上面运行STC公司的79-UART-SPI-LCM_DMA-交替使用下载显示图片例程,但是屏幕没有显示,运行您的程序就OK,想请教一下您,有运行STC公司这个79号程序成功过么,我的屏也是5V的TFTILI9341

点评

这位同学你好, 感谢你浏览本帖。 很抱歉最近忙于其它项目编程,没时间来做这个实验。以后有空实验了再说. 应该说,官方的例程是没有问题的。 不过, 根据个人体会,在此提醒一下: STC-ISP版本是很多的。要注意并不  详情 回复 发表于 2026-5-14 16:30
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:887
  • 最近打卡:2026-07-05 07:21:25

31

主题

428

回帖

4672

积分

荣誉版主

积分
4672
发表于 2026-5-14 16:30:26 | 显示全部楼层
wuzhe*** 发表于 2026-5-13 20:29
尊敬的版主,我这几天在STC32G12K128试验箱上面运行STC公司的79-UART-SPI-LCM_DMA-交替使用下载显示图片例 ...

这位同学你好, 感谢你浏览本帖。
很抱歉最近忙于其它项目编程,没时间来做这个实验。以后有空实验了再说.
应该说,官方的例程是没有问题的。
不过, 根据个人体会,在此提醒一下: STC-ISP版本是很多的。要注意并不是最新的是最适合的。
像STC32G128K V9.62 实验箱,现在说算是比较老的版本了,那时适用的是stc-isp V6.9前后的版本,
现在是更新多代的ISP新版本了, 如果你使用USB-Link-D调试器来调试老实验箱的话, 会提醒你固件版本需要更新,一旦更新了. 那么调试器输出S-VCC 5V电源就没有了, 这样显示屏如果没有另外5V供电, 它是不会亮的. 看看是否是这个原因.

按理讲,更新固件不会影响调试器S-VCC 5V输出的. 但是实际就是如此的.即便是你指定输出5V,它也会自动回到3.3V的.
若想要恢复调试器的S-VCC 5V输出, 只能用V6.94前版本, 手动烧写恢复固件版本. 才能恢复USB-Link-Dde S-VCC5V 供电. 这样调试用新ISP版本,总是提醒更新固件, 也是有点别扭的.

什么原因,咱们是难以搞清楚的, 只有官方知道了.估计现在是没人会注意并修正这一点的.
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:202
  • 最近打卡:2026-07-04 17:28:31
已绑定手机

25

主题

2662

回帖

3411

积分

论坛元老

积分
3411
发表于 2026-5-14 19:22:09 | 显示全部楼层
浦江*** 发表于 2026-5-14 16:30
这位同学你好, 感谢你浏览本帖。
很抱歉最近忙于其它项目编程,没时间来做这个实验。以后有空实验了再说 ...

感谢您,我今天在学习TFT彩屏,不知道什么原因,就是不能成功下载图片文件去Flash,今天换了Ai8051U试验箱,还在折腾中..................感谢您百忙中答复我!!!祝您工作顺利!!!

点评

这个实验实际上包含了多个知识点, 建议一步一步来: 1, 先搞一个串口通讯实验, 弄清楚CDC串口功能(因为以后要用官方ISP工具下载图片数据), 实现用printf()函数与PC机通讯; 2, 再搞一个TTF彩屏显示实验,让单片机能操  详情 回复 发表于 2026-5-15 11:54
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:887
  • 最近打卡:2026-07-05 07:21:25

31

主题

428

回帖

4672

积分

荣誉版主

积分
4672
发表于 2026-5-15 11:54:49 | 显示全部楼层
wuzhe*** 发表于 2026-5-14 19:22
感谢您,我今天在学习TFT彩屏,不知道什么原因,就是不能成功下载图片文件去Flash,今天换了Ai8051U试验箱 ...

这个实验实际上包含了多个知识点, 建议一步一步来:
1, 先搞一个串口通讯实验, 弄清楚CDC串口功能(因为以后要用官方ISP工具下载图片数据), 实现用printf()函数与PC机通讯;
2, 再搞一个TTF彩屏显示实验,让单片机能操控显示屏, 实现一些基本功能, 如显示中西文字符串和画点画线功能,以及显示图标等等;
3, 实验对Flash的读写, 实际上就是读写W25Qxx功能.(此时可利用屏幕或通讯检验准确性)
4, 实验PC机下载图片数据到单片机并写入到Flash中;
5, 最后才是如何从Flash中读取图片数据, 并显示在屏幕上.
以上各基本实验,在本论坛里应该都能找到例程的.参考消化一下,变成自己的东西,形成知识点积累.
如果一上来就实验官方例程, 出现问题,就不太好分析是在哪个环节出问题了.
仅供参考, 祝实验顺利!
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:202
  • 最近打卡:2026-07-04 17:28:31
已绑定手机

25

主题

2662

回帖

3411

积分

论坛元老

积分
3411
发表于 2026-5-15 13:50:27 | 显示全部楼层
浦江*** 发表于 2026-5-15 11:54
这个实验实际上包含了多个知识点, 建议一步一步来:
1, 先搞一个串口通讯实验, 弄清楚CDC串口功能(因为以 ...

感谢您的耐心指导,确实要按照您的计划进度,慢慢学习。。。。。。。。。。再一次感谢!

点评

这位同学你好! 今天抽空做了一下关于第79例程的实验, 结果是成功的. 完全与官方描述的一致. 过程中几个要点说一下: 硬件条件: STC32G128K V9.62实验箱. 加装320x240的TTF显示屏.USB-Link-D调试器. 软件条件: STCA  详情 回复 发表于 2026-5-16 12:15
回复

使用道具 举报 送花

  • 打卡等级:以坛为家III
  • 打卡总天数:887
  • 最近打卡:2026-07-05 07:21:25

31

主题

428

回帖

4672

积分

荣誉版主

积分
4672
发表于 2026-5-16 12:15:55 | 显示全部楼层
wuzhe*** 发表于 2026-5-15 13:50
感谢您的耐心指导,确实要按照您的计划进度,慢慢学习。。。。。。。。。。再一次感谢! ...

这位同学你好!
今天抽空做了一下关于第79例程的实验, 结果是成功的.
完全与官方描述的一致.

过程中几个要点说一下:
硬件条件:
STC32G128K V9.62实验箱. 加装320x240的TTF显示屏.USB-Link-D调试器.
软件条件:
STCAI-ISP软件V6.94版, 图片Bin文件若干,DEMO 79的官方代码文件 LCM_Test.hex

实验步骤:
1,  正确连接(应该知道怎样连接的)后, 上电, 看显示屏是否点亮(不管显示显示啥内容,背光要亮).
     如果不亮(是USB-Link-D 没有S-VCC 5V供电给显示屏), 则要用STCAI-ISP软件V6.94版,重烧USB-Link-D固件.
2,  以上通过后, 将LCM_Test.hex下载到实验箱CPU中, 注意主频选35MHz. (应该知道怎样下载的)
3, HEX下载成功后,程序启动, 显示屏显示白色,无内容, 这是正常的.
    LCM_Test.hex已经启动,这时要注意INT0和INT1两个键的用法.各有短按长按之分...(使用说明中有描述,官方程序就是这样设计使用的)
    开始下载图片文件....
    上位机STCAI-ISP软件V6.94版, 切换到USB-CDC串口助手, 打开STC-USB-CDC1-UART串口, 波特率115200. (注意准确选择通讯端口)
    短按INT1键, 观察串口助手的窗口显示:
    接收←Ready to receive data...
    说明通讯口通了. 已准备好接收图片数据下载了.....
   点击发送文件, 设置一次发送256字节, 间隔1ms, 打开待发送的BIN文件. 点击发送,
   串口助手的窗口显示可以看到,哗哗的字节流动, 稍等片刻, 一个图片文件下载完毕, 有提示的...
   重复以上操作, 每短按一次INT1键, 下载一个图片文件......  
   先后共重复4次,下载4个bin图片文件数据...
   结束后, 屏幕显示依然空白,这是正常的, 因为此时还没执行显示图片程序.
   短按INT0键, 显示一幅图片, 再短按一次INT0键, 切换下一幅图片.... 这是手动切换.
   如果长按INT0键, 则程序自动循环显示刚刚下载的图片.
   ......
   整个实验完毕, 再对照一下, 使用手册的描述, 复习一下.
   这个过程, 说明官方的DEMO是没有问题的, 实验通过也是比较容易的, 但是收获印象不一定是很深刻的.
   真正理解和掌握其中的原理和编程技巧, 还是要细细琢磨深入学习的. 成为自己的积累技术, 还是按此前所说,一步一步来....

实验的工具和相关文件, 打包如下, 免得再费时收集了.
祝你实验顺利愉快, 学习进步.

关于STC32G128实验箱DEMO第79-交替下载显示图片例程实验.rar (6.14 MB, 下载次数: 2)


实验界面-注意串口助手接收窗口内容.bmp
回复

使用道具 举报 送花

  • 打卡等级:以坛为家I
  • 打卡总天数:202
  • 最近打卡:2026-07-04 17:28:31
已绑定手机

25

主题

2662

回帖

3411

积分

论坛元老

积分
3411
发表于 2026-5-17 12:31:36 | 显示全部楼层
感谢您!我好好学习一下!
真是要努力,向您看齐!

真的,很感动,连STC ISP6.94都帮我找好了,其实这个STC ISP6.94,我在STC官网找了很久,都没能发现,

再一次万分感谢浦江老师!!!


还专门拍了试验视频,真的是要感谢您,要向您学习,把每一件事情干好,干到极致,才能学到东西

您写的答复,十分详细,每个字都凝聚着您的心血,我会好好研究学习这段程序,真有点收货才不枉费您的心意和付出!!!

再一次感谢您!



官网最旧的已经是6.96L:
截图202605171302563877.jpg
回复

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2026-7-5 08:05 , Processed in 0.079685 second(s), 87 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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