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

屠龙刀三STC32G12K128实验板驱动TFT(128x160)彩屏

[复制链接]
  • 打卡等级:以坛为家II
  • 打卡总天数:493
  • 最近打卡:2025-05-01 08:31:58

30

主题

347

回帖

3476

积分

荣誉版主

积分
3476
发表于 2024-6-5 14:47:48 | 显示全部楼层
感谢 STC芯征程 版主的鼓励和鲜花。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:493
  • 最近打卡:2025-05-01 08:31:58

30

主题

347

回帖

3476

积分

荣誉版主

积分
3476
发表于 2024-6-5 14:55:40 | 显示全部楼层
NT*** 发表于 2024-6-5 10:20
不是用STC32_STC8_usb.h 替换 STC32G.h, 也替换不了。

删除当前文件夹中的STC32G.H,使用系统中的STC32G.H。
添加STC32_STC8_usb.h仅仅是为了增加u8和u16的定义,不是替代。
明白了,是我理解偏差了,很抱歉。
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:493
  • 最近打卡:2025-05-01 08:31:58

30

主题

347

回帖

3476

积分

荣誉版主

积分
3476
发表于 2024-6-5 17:11:30 | 显示全部楼层

为什么要“删掉文件夹中的 STC32G.H 文件,使用系统中的。”?
出于好奇,一探究竟。

原来的编译截图是这样的:
编译结果3.jpg

此时,STC32G.H文件在当前文件夹内,文件的开始就有 #include <intrins.h>的。
编译结果: 0错误,0警告。
删除当前文件夹内的STC32G.H文件。(编译器只能找系统中的STC32G.H了)
再编译... 果然...
出现找不到_nop_()的三条错误提示... 3错误...

打开系统中的...C251\INC\STC\STC32G.H
一看, STC32G.H文件开始是没有#include <intrins.h>的.
于是就建议在主程序中添加#include <intrins.h>. 否则编译就要错的...

探索到此, 是不是感觉兜了一个圈? 先删了后再添加, 多此一举了? 而且又缩小了intrins.h使用范围。

不过,对我等新手有一个重要的启示, 那就是STC32G.H是有可能多变的,不能一概而论,不能全部指望使用所谓系统中的。

于是再探...
在我计算机D盘(编程分区)内是搜索“STC32G.H”,结果找到一大堆。根据文件大小归纳了一下:
关于STC32G.H.jpg

这些文件来自官方的屠龙刀DEMO、实验箱DEMO、降龙棍DEMO等文件包。
上述文件列表中,原文件名都是STC32G.h, 图示列表的文件名括弧内是文件长度字节。
显然,文件大小不同,内容一定是不同的。
其中STC32G(65526).h和STC32G(74002).h(这是来自系统的73K)两个文件的开始都没有#include <intrins.h>。
其余STC32G(xxxxx).H文件都含有 #include <intrins.h>,占绝大多数。

那么再思考一下,所谓系统中的STC32G.h是从何而来的?个人认为不会是由C251安装时自动生成的,而是STC-ISP软件在添加STC型号时加进去的。
那么再思考一点,为什么官方的DEMO程序包中都有一个COMM文件夹,其中存放着与DEMO板有关的相应的STC32G.h文件呢? 为什么不统一使用系统中的呢?
显然,   STC32G.h 文件不是一成不变的, 而是要根据实际需要再组织来定义配置的。
基于这一点因素,将STC32G.h放在当前文件夹中(随实验项目放在一起)是必要的。
否则发送给别人使用,由于编译环境的不同,通常是要出错的。
即便是自己,若以后变换项目或变换编译环境了,也是会产生麻烦的。

在此有一个小小的建议:
官方STC-IAP软件是否可考虑,在要加入系统的STC32G.H文件中添加 #include <intrins.h>,
至少理由是软件提供的延时函数代码中包括_nop_()函数, 需要这个包含,这样可减少一些新手学习者们的困惑。

回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-6-5 18:58:17 | 显示全部楼层
本帖最后由 科学妞妞 于 2024-6-5 19:00 编辑
浦江*** 发表于 2024-6-5 17:11
为什么要“删掉文件夹中的 STC32G.H 文件,使用系统中的。”?
出于好奇,一探究竟。

现在新的程序,下载后,直接打开后,编译,结果如下,见图 新建位图图像.bmp 超限了吗
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:493
  • 最近打卡:2025-05-01 08:31:58

30

主题

347

回帖

3476

积分

荣誉版主

积分
3476
发表于 2024-6-6 08:26:44 | 显示全部楼层
科学*** 发表于 2024-6-5 18:58
现在新的程序,下载后,直接打开后,编译,结果如下,见图超限了吗

明白了。
是的,是超限了。C251未“注册”,编译代码限制2K以内。
现在面临的首要问题是“如何建立C251的编译环境”。先看看官方的手册。再......
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-6-6 08:43:41 | 显示全部楼层
浦江*** 发表于 2024-6-6 08:26
明白了。
是的,是超限了。C251未“注册”,编译代码限制2K以内。
现在面临的首要问题是“如何建立C251的 ...

好,知道了
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-6-6 09:03:07 | 显示全部楼层
本帖最后由 科学*** 于 2024-6-6 09:12 编辑

新的程序是完美的例程了

Rebuild target 'Target 1'
compiling Main.C...
compiling LCD_7735.C...
linking...
Program Size: data=56.0 edata+hdata=256 xdata=0 const=8457 code=37839
creating hex file from ".\OUT\TestLCD7735"...
".\OUT\TestLCD7735" - 0 Error(s), 0 Warning(s).
Build Time Elapsed:  00:00:02
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:419
  • 最近打卡:2025-05-01 07:24:50

4

主题

511

回帖

1991

积分

金牌会员

积分
1991
发表于 2024-6-6 10:03:07 | 显示全部楼层
一水坛友的,那个有4个按键的控制(128x160)彩屏的IC7735的程序,也是不错的例程,比方说,进入,是个列表菜单,上下按钮,再选择,确认后,进入不同的页面,看个文字,或者图片,控制个灯,什么的。也不错,满是实际需求,也值得爱好者们,认真学习的,最重要的是一水坛友的,编程风格很好,严谨细致,备注和布局,可说为爱好者编程楷模,期待,坛友更新
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:493
  • 最近打卡:2025-05-01 08:31:58

30

主题

347

回帖

3476

积分

荣誉版主

积分
3476
发表于 2024-6-6 11:14:50 | 显示全部楼层
科学*** 发表于 2024-6-6 09:03
新的程序是完美的例程了

Rebuild target 'Target 1'

能顺利通过编译,真替你高兴。
好事多磨,这个实验过程虽有曲折,但也应该是有收获和快乐的。
留意这个过程中的各个知识点......
回复 支持 反对

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:493
  • 最近打卡:2025-05-01 08:31:58

30

主题

347

回帖

3476

积分

荣誉版主

积分
3476
发表于 2024-6-6 21:08:43 | 显示全部楼层
科学*** 发表于 2024-6-6 10:03
一水坛友的,那个有4个按键的控制(128x160)彩屏的IC7735的程序,也是不错的例程,比方说,进入,是个列表菜 ...

看到你这个回复,再说两句:
1。那个带4个按键的屏, 看似是一个测试带键屏的小实验, 其实就是一个小应用程序的框架, 可扩展, 是比较实用的。让你看出来了。
2。感谢你对我编程的认可,有点夸奖啦。不敢说“风格”,只是长期编程的自我习惯,在专家看来,或许是不规范的,更不敢称“楷模”了。

回复 支持 反对

使用道具 举报 送花

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

本版积分规则

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

GMT+8, 2025-5-2 06:48 , Processed in 0.260485 second(s), 107 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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