目录

启明智显开源项目分享基于Model-3c芯片的86中控面板ZX3D95CM20S-V11项目软硬件全开源

启明智显开源项目分享|基于Model 3c芯片的86中控面板ZX3D95CM20S-V11项目软硬件全开源

前言:

本文为4寸 480*480 RGB接口IPS全面触屏的86中控面板(RT-Thread+LVGL)软硬件开源干货内容,该项目是综合性非常强的RTOS系列项目!项目主控芯片使用 Model 3c,整体实现了简化版本的86中控面板的功能需求。项目可以学习的点非常多,包含:Model 3c 的硬件驱动,LVGL 的移植与RT-Thread 操作等。该项目的源代码适用于启明智显的出厂镜像,只学习应用层开发的也可以尝试学习该项目!


Model 3c芯片介绍:

Model3C 是一款基于 RISC-V 的高性能、国产自主、工业级高清显示与智能控制 MCU,配备强大的 2D 图形加速处理器、PNG/JPEG 解码引擎、丰富的接口,支持 -40 至 +105℃ 工业宽温,封装采用 QFN68,7x7x0.85mm,0.35mm 间距, Model3C 具有高可靠性、高开放性,可广泛应用于工业自动化控制、 串口屏等智慧工业和智慧家居领域。

https://i-blog.csdnimg.cn/blog_migrate/9880494769b3b0f2c0ca8f7d757ca04c.png


Model 3c功能特性:
  • CPU 内核
  • 单核 E907,RV32IMAFC 指令架构,400MHz@1.1V
  • 系统启动
  • 默认按 SD Card(SDMC1)→ SPI NOR → SPI NAND → eMMC(SDMC0)顺序扫描启动

  • 可通过烧写 eFuse 改变并固定启动介质

  • 系统安全
  • SPI 总线加密模块(SPI Crypto,SPI ENC),支持 SPI NAND/SPI NOR 在线

加解密

  • 数据校验引擎(DCE),支持 CRC-32 多项式和累加和两种方式

  • 内置 eFuse 512bits ,其中 128bits 供

用户

自定义使用

  • 片内存储
  • BROM 32KB

  • SRAM 32KB

  • PSRAM 两种规格可选:

32Mb,8-bit 位宽,最高频率 200MHz DDR

  • 存储接口
  • QSPI 支持 SPI NOR Flash / SPI NAND Flash

  • eMMC 4.41/SD 3.01/SDIO 3.0

  • 图像引擎
  • DE 显示引擎:

支持一个 UI 图层,最高性能 1024x768@60fps

支持抖动、伽马及色彩矩阵调整

  • GE 图像引擎:

支持 2D 图形加速,最大性能 1080P@60fps

支持水平和垂直翻转,90/180/270 度旋转

  • VE 视频编解码:

JPEG 解码器,最高性能 720P@60fps

PNG 解码器,最高性能 720P@60fps

  • 显示接口
  • 支持 24-bit 并口 RGB,最高性能 1024x768@60fps

  • 支持 SRGB/I8080/QSPI 屏接口

  • 音频接口
  • 左右声道数字 PWM 输出(DSPK)
  • 通用接口
  • 两路 SPI,支持 3 线/4 线接口,可配置为 Master/Slave

  • 四路 UART,支持 2 线/3 线/4 线接口,兼容工业标准 16550,波特率偏差 <2%

  • 两路 I2C,支持 7 bits 和 10 bits 寻址,最高速率 400Kb/s

  • 两路 CAN,支持 CAN2.0A 和 CAN2.0B,可编程通信速率最高 1Mbps

  • 一组 CIR,支持红外输入和红外输出

  • 五组 GPIO 总共 60 个 IO,支持每个 IO 独立配置:

  • 计数器
  • GTC 通用计时器

  • WDOG 看门狗

  • PWM

  • 模拟
  • 内置 6 通道 12-bit GPADC,采样速率为 1MSPS

  • 集成 RTP 电阻触摸屏接口

  • 时钟和电源管理
  • 芯片时钟源

支持无晶体方案,使用内置 OSC24M,精度±1%

支持外挂 24MHz 晶体,精度取决于晶体

  • CMU 内置四个 PLL

  • SYSCFG 内置三个 LDO

  • 内置 THS 温度传感器,支持高低温中断报警和过温复位芯片

ZX3D95CM20S-V11开源硬件实物图:

https://i-blog.csdnimg.cn/blog_migrate/62a0e4e185e0f1f728ad383bcf28c5ea.png


ZX3D95CM20S-V1186中控面板PCBA原理图:

https://i-blog.csdnimg.cn/blog_migrate/f1b5048f3c74dceb2af7903d8c05491e.png

https://i-blog.csdnimg.cn/blog_migrate/3f4259deac6105be5730d4895bb349aa.png

https://i-blog.csdnimg.cn/blog_migrate/36d2525286b829ac549194ee0d5aae69.png

https://i-blog.csdnimg.cn/blog_migrate/76aa774cedfcdb377d6d2fe3526696f8.png

https://i-blog.csdnimg.cn/blog_migrate/f99df752b34292d7083fb505092adfbe.png

备注:ZX3D95CM20S-V1186中控面板原理图设计,搭载了驱屏MCU–Model 3c芯片、SPK喇叭、LCD屏+触摸、电源、RS485接口、DEBUG以及ESP32-C2模组;


ZX3D95CM20S-V1186中控面板软件开源:

https://i-blog.csdnimg.cn/blog_migrate/5b39b0a31ccfdd7671778aae0693e04b.png

备注:支持的UI驱动, 默认为 LVGL-8.3.10

https://i-blog.csdnimg.cn/blog_migrate/2c20251e6d38753d9ce942a5689192c7.png

备注:SDK 基于 RT-Thread 深度定制的 RTOS 系统,支持 RT-Thread 生态

代码托管于 Gitee 服务器中,可直接克隆:

sudo apt-get install git-lfs
git lfs clone https://gitee.com/qiming-zhixian/zx-rtt-sdk.git

环境安装:

Linux环境准备

资源库更新

在国内使用 apt 进行软件安装,会经常碰到 无法访问或者访问速度非常慢,最简单的办法是替换成国内比较快的镜像网站,测试中 mirrors.aliyun.com 的效果很好

sudo gedit /etc/apt/sources.list   中  cn.archive.ubuntu.com 全部更换为 mirrors.aliyun.com
sudo apt-get update

安装 scons

scons 是一个开发源码,以 python 语言编码的自动化构建工具,它是 Make 的改进的、跨平台的替代品,因此 Luban lite 选择 scons 作为构建工具, 但同时支持对 Makefile 的调用

sudo apt install scons

安装 pycryptodomex

pycryptodomex 是 python 的一个加密库,可以通过用 pip 安装 whl 文件, 也可以通过源码进行编译安装, SDK tools/env/local_pkgs/ 中内置了 pycryptodomex 源码

两种安装都需要安装 pip 来提供相应的组件, 并且 ubuntu20.04 中默认安装的 python3-pip

sudo apt install pip
cd tools/env/local_pkgs/
tar xvf pycryptodomex-3.11.0.tar.gz
cd pycryptodomex-3.11.0
sudo python3 setup.py install

Windows 环境准备:

Windows 下的对应的各种工具已经存放在 tools/env/tools 目录当中, 不需要安装

在 SDK 根目录下有两个批处理文件来实现命令行的使用方法。

ENV 运行环境

直接双击 zx-rtt/win_env.bat 打开专有的 Windows 的 env 命令行工具,后面所有命令都在该命令行工具中进行操作

ENV 是 RT-Thread 的原生工具,是 SDK 包中集成了编译所需要使用的所有的工具的一种使用方式

https://i-blog.csdnimg.cn/blog_migrate/4e8d60735c868c2cf66d7456d5cca6b2.png

CMD 运行环境

直接双击 zx-rtt/win_cmd.bat 打开 Windows 的 CMD 命令行工具,后面所有命令的使用和 ENV 相同

https://i-blog.csdnimg.cn/blog_migrate/a9510c443a73a205cce7b01bda236cc3.png

CMD 是 windows 的使用环境,除了 SDK 的命令外,还可以使用系统自己安装的工具的命令,因此功能更强大

编译 ZX-RTT

scons --list-def            //查看有多少配置
scons --apply-def=0         //选择 0 号配置
scons                       //编译
......

Image file is generated: output/ZX7D0N_rt-thread/images/m3_ZX7D0N_page_2k_block_128k_v1.0.0.img

编译后的镜像名称为 m3_ZX7D0N_page_2k_block_128k_v1.0.0.img

烧录:

ZX-RTT 提供一组工具:

  • PanelLanDownloader:单机刷机软件
  • 调试烧录工具:

https://i-blog.csdnimg.cn/blog_migrate/2ca1af216d64ddb1093f388dd14a14c9.png

下载

相关工具使用 gitee 存储和管理,位于 ZX-RTT SDK 的 tools/downloader 目录下

ls zx-rtt-sdk/tools/downloader

PanelLanDownloader.zip
驱动安装

WINDOW 环境下解压 PanelLanDownloader.zip 后, 进入 PanelLan_Device_drive 目录, 双击 InstallDriver.exe 根据向导指引即可完成安装

刷机

PanelLan 的使用非常简单,选择编译好的镜像,在开发板进入烧写模式后点击“开始”按钮即可自动进行烧写,进入烧写模式,主要以串口烧录;

烧写镜像完成后可以通过串口进行信息的查看,默认的调试串口配置信息为

  • BaudRate:115200
  • Data bits:8
  • Stop bits:1
  • Parity:None
  • Flow control:None

RTOS SDK 开源内容清单:

https://i-blog.csdnimg.cn/blog_migrate/752f013edb311a7e1d846532c056028d.png

开源地址:

敬请期待 M3 7 寸 1024*600 IPS 全面触摸开发板开源

https://i-blog.csdnimg.cn/blog_migrate/74213f9b84e0a537106c08cb71843c61.png