第一章 T113-S3平台概述
各位同学好,我是你们的嵌入式讲师。今天咱们正式开始《全志T113-S3双屏异显实战方案》的第一课。
说实话,我第一次拿到T113-S3这颗芯片时,第一反应是——这玩意儿真便宜。但用了一段时间后,我发现它远比想象中能打。尤其是在双屏异显这个场景下,它几乎是为这个需求量身定做的。
1.1 芯片特性:一颗被低估的“小钢炮”
T113-S3是全志科技推出的一款双核Cortex-A7处理器。嗯,别一听“双核A7”就觉得弱,我跟你讲,在工业控制和消费电子领域,这颗芯片的性价比简直离谱。
先看几个关键参数:
| 参数项 | 规格 | 我的评价 |
|---|---|---|
| CPU | 双核Cortex-A7 @ 1.2GHz | 跑Linux够用,轻量GUI无压力 |
| GPU | Mali-400 MP2 | 双屏显示全靠它撑场面 |
| 显示接口 | RGB/LVDS/MIPI DSI × 2 | 这才是双屏异显的核心资本 |
| 视频解码 | H.264 1080p@60fps | 做广告机、信息屏绰绰有余 |
| 内存支持 | DDR3/DDR3L/LPDDR3 | 最大2GB,双屏场景建议512MB起步 |
| 封装 | BGA 282 | 手工焊接有点挑战,但能搞定 |
这里我要特别强调一下显示接口。T113-S3内置了两个独立的显示控制器,每个都能独立输出RGB、LVDS或MIPI信号。这意味着什么?意味着你可以让一个屏显示仪表盘,另一个屏显示导航地图,两者互不干扰。
核心要点:T113-S3的双屏异显能力,不是靠软件模拟出来的,而是硬件原生支持。两个显示通道各自有独立的帧缓冲、独立的时序控制器。这一点在后续驱动开发中会反复用到。
1.2 双屏异显应用场景:为什么你需要这个方案?
我在做项目咨询时,经常有人问:“我直接用两个HDMI不就行了?” 嗯,理论上可以,但成本和功耗呢?
双屏异显的典型场景,我列几个给你看看:
- 车载仪表+中控:一个屏显示车速、转速,另一个屏显示导航、音乐。我去年帮一个车机厂商做过类似方案,T113-S3跑起来非常稳。
- 工业HMI+监控屏:主屏显示操作界面,副屏显示设备运行状态。说白了就是一边干活一边看数据。
- 智能收银机:主屏面向店员操作,副屏面向顾客展示商品信息。这个场景对成本极其敏感,T113-S3正好合适。
- 数字标牌/广告机:一个屏播广告,另一个屏播实时数据。我记得有个客户用T113-S3做了个双屏信息发布系统,效果相当不错。
你想想看,这些场景如果用两颗芯片来做,成本翻倍不说,同步问题也够你头疼的。而T113-S3一颗芯片全搞定,这就是它的价值所在。
1.3 开发板选型与资源介绍
好了,理论说完了,咱们聊聊实际干活用的板子。
目前市面上基于T113-S3的开发板,我接触过的有这几款:
| 开发板名称 | 双屏接口 | 价格区间 | 推荐指数 |
|---|---|---|---|
| 全志官方T113-S3 EVB | RGB+LVDS | 约500元 | ⭐⭐⭐⭐ |
| 某宝第三方核心板 | MIPI+RGB | 约200元 | ⭐⭐⭐ |
| 某厂商工业级开发板 | 双LVDS | 约800元 | ⭐⭐⭐⭐⭐ |
我个人习惯用全志官方的EVB起步,原因很简单——资料最全,遇到问题好查。但如果你预算有限,某宝上那些核心板也能用,只是调试时可能需要多花点心思。
选板建议:如果你刚接触T113-S3,我建议先买官方EVB。等把双屏驱动调通了,再根据实际项目需求换板子。我曾经图便宜直接上第三方板,结果发现某个显示接口的引脚定义和官方文档对不上,折腾了两天才搞定。
关于资源,我整理了一份清单,方便你后续查阅:
- SDK:全志官方提供Tina Linux SDK,基于OpenWrt/Linux 4.9内核。双屏驱动相关的代码在
drivers/video/sunxi/disp2/目录下。 - 文档:全志官方有《T113-S3用户手册》和《显示引擎编程指南》。这两份文档是必读的,尤其是显示引擎那本,里面详细讲了双通道的配置方法。
- 工具链:官方推荐使用gcc-linaro-7.2.1-2017.11-x86_64_arm-linux-gnueabi。别问我为什么是这个版本,反正我用下来最稳。
- 调试工具:串口是必须的,建议用FT232或CP2102。另外,逻辑分析仪在调试显示时序时非常有用,我手头常备一台Saleae。
注意:全志的SDK下载需要注册账号,而且有些文档是签了NDA才能拿到的。如果你拿不到官方渠道的资料,可以去GitHub上搜一下“t113-s3 linux”,有不少开源社区的项目可以参考。但切记,不要用商业项目直接跑社区代码,稳定性没保障。
好了,第一章的内容就到这里。这一章我们主要认识了T113-S3这颗芯片的硬件特性,了解了双屏异显能用在哪些地方,也知道了该选什么开发板、准备哪些资源。
下一章,我会带你搭建开发环境,把SDK编译起来,让板子先跑起来。到时候咱们再细聊双屏驱动的初始化流程。
有什么问题,欢迎在课程群里交流。咱们下节课见。