启明智显开源项目分享|基于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 具有高可靠性、高开放性,可广泛应用于工业自动化控制、 串口屏等智慧工业和智慧家居领域。


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开源硬件实物图:


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

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


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

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

备注:SDK 基于 RT-Thread 深度定制的 RTOS 系统,支持 RT-Thread 生态file:///C:/Users/Lenovo/Desktop/m3-doc/quick-start/sdk-brief.html#rtos

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

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

环境安装:

 Linux环境准备

file:///C:/Users/Lenovo/Desktop/m3-doc/quick-start/sdk-brief.html#linux

资源库更新

在国内使用 apt 进行软件安装,会经常碰到 Index of /ubuntu/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 无法访问或者访问速度非常慢,最简单的办法是替换成国内比较快的镜像网站,测试中 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 环境准备:

http://file:///C:/Users/Lenovo/Desktop/m3-doc/quick-start/sdk-brief.html#windows

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

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

ENV 运行环境

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

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

CMD 运行环境

http://file:///C:/Users/Lenovo/Desktop/m3-doc/quick-start/sdk-brief.html#cmd

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

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

编译 ZX-RTT

http://file:///C:/Users/Lenovo/Desktop/m3-doc/quick-start/sdk-brief.html#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:单机刷机软件

  • 调试烧录工具:

下载

相关工具使用 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://gitee.com/qiming-zhixian/zx-rtt-sdk.git

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

 上一页下一页 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/274889.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

交换域系数的选择:图像处理与编码的关键策略

在图像处理和编码领域&#xff0c;选择适当的交换域系数对于实现高效的图像处理和编码至关重要。交换域系数是指在特定的数学变换下产生的频域系数。通过选择合适的交换域系数&#xff0c;可以实现图像的压缩、增强和重构。本文将深入探讨交换域系数的选择在图像处理和编码中的…

HPCC:高精度拥塞控制

HPCC&#xff1a;高精度拥塞控制 文章目录 HPCC&#xff1a;高精度拥塞控制摘要1 引言1.1 背景1.2 现有CC的局限性1.3 HPCC的提出 2 研究动机2.1 大型RDMA部署2.2 RDMA目标2.3 当前RDMA CC中的权衡DCQCNTIMELY 2.4 下一代高速CC 3 技术方案3.1 INT3.2 HPCC设计3.3 HPPC的参数 4…

改进YOLO系列 | YOLOv5/v7 引入高效的混合特征编码器 AIFI

论文地址:https://arxiv.org/abs/2304.08069 代码地址:https://github.com/PaddlePaddle/PaddleDetection 中文翻译:https://blog.csdn.net/weixin_43694096/article/details/131353118 注意!这个模块需要 torch>=1.9 才能使用 源代码 import torch import torch.nn …

深入探究Protostuff枚举类型的序列化

背景&#xff1a; 有一天突然被一个群组排查线上问题&#xff0c;说是一个场景划线价和商品原价一模一样。看到问题时&#xff0c;我的内心毫无波澜&#xff0c;因为经常处理线上类似的问题&#xff0c;但了解业务后发现是上个版本经我手对接的新客弹窗商品算价&#xff0c;内心…

C# MVC +Layui侧边导航栏的收缩及展开

目录 1、头部代码 2、侧边栏&#xff08;例子只写了一级导航&#xff0c;需要多级可自行添加&#xff09; 3、body内容填充 4、 JS 1、头部代码 <div class"layui-layout layui-layout-admin"> <div class"layui-header"> …

MySQL 核心模块揭秘 |《发刊词》

1. 为什么要写专栏&#xff1f; 我还在做业务系统研发的时候&#xff0c;有一段时间&#xff0c;系统不稳定&#xff0c;慢 SQL 很多。我们团队花了很长时间持续优化 SQL。 我们有一个表格&#xff0c;从慢查询日志里整理出了很多慢 SQL。其中一些 SQL&#xff0c;按照我们的…

大华NVR和IPC通过主动注册协议方式接入AS-V1000视频监控平台的步骤

最近有人经常用到有的型号的大华网路摄像机&#xff0c;不支持国标GB28181标准&#xff0c;问我们能否接入到在公网的AS-V1000平台 &#xff1f; 我们早期就开发了大华的主动注册协议SDK&#xff0c;能够支持大华的NVR和IPC接入到AS-V1000平台。 今天就直接讲解如何一步步的把局…

人工智能 机器学习 深度学习:概念,关系,及区别说明

如果过去几年&#xff0c;您读过科技主题的文章&#xff0c;您可能会遇到一些新词汇&#xff0c;如人工智能&#xff08;Artificial Intelligence&#xff09;、机器学习&#xff08;Machine Learning&#xff09;和深度学习&#xff08;Deep Learning&#xff09;等。这三个词…

关于使用Selenium获取网页控制台的数据

背景&#xff1a; 需要获取网页的控制台的数据&#xff0c;如下图 在此文章将使用到 Pycharm 和 Selenium4 Pycharm安装 Selenium安装 from selenium import webdriver from selenium.webdriver.common.by import By import time# 创建浏览器对象 browser webdriver.Chro…

普中STM32-PZ6806L开发板(使用过程中的问题收集)

Keil使用ST-Link 报错 Internal command error 描述: 在某一次使用过程中&#xff0c;前面都是正常使用, Keil在烧录时报错Internal command error, 试了网上的诸多方式, 例如 升级固件;ST-Link Utility 清除;Keil升级到最新版本;甚至笔者板子的Micro头也换了&#xff0c;因为坏…

docker学习笔记02-安装mysql

1.安装mysql8 下载MySQL镜像 docker pull mysql:8.0创建并启动容器 docker run -itd --name mysqltest -p 9999:3306 -e MYSQL_ROOT_PASSWORD123456 mysql其中-it是交互界面 -d是后台执行 -name 指定容器名称 -p指定映射端口 -e设置环境变量 最后mysql是镜像名或者用镜像id如…

消防数据监测可视化大屏:守护城市安全的智慧之眼

在数字化时代&#xff0c;数据已经成为决策的关键。特别是在消防领域&#xff0c;快速、准确的数据分析对于及时应对火情、挽救生命财产具有不可估量的价值。为此&#xff0c;消防数据监测可视化大屏应运而生&#xff0c;成为城市安全的守护者。 一、什么是消防数据监测可视化大…

Qt 中使用 MySQL 数据库保姆级教程(下)

作者&#xff1a;billy 版权声明&#xff1a;著作权归作者所有&#xff0c;商业转载请联系作者获得授权&#xff0c;非商业转载请注明出处 前言 上篇中我们安装好了 MySQL 数据库和 Navicat 软件&#xff0c;下面在 Qt 中尝试使用数据库 1. 在 Qt 中连接 MySQL 数据库&#…

VuePress、VuePress-theme-hope 搭建个人博客 1【快速上手】 —— 防止踩坑篇

vuePress官网地址 &#x1f449; 首页 | VuePress 手动安装 这一章节会帮助你从头搭建一个简单的 VuePress 文档网站。如果你想在一个现有项目中使用 VuePress 管理文档&#xff0c;从步骤 3 开始。 步骤 1: 创建并进入一个新目录 mkdir vuepress-starter cd vuepress-star…

Unity 代码控制Text自适应文本高度

在使用代码给Text赋值时&#xff0c;且文本有多段&#xff0c;并需要根据实际文本高度适配Text组件的高度时&#xff0c;可以使用以下方法&#xff1a; //Text文本 public TextMeshProUGUI text;void Start() {//代码赋值文本text.text "好!\n很好!\n非常好!";//获…

加强->servlet->tomcat

0什么是servlet jsp也是servlet 细细体会 Servlet 是 JavaEE 的规范之一&#xff0c;通俗的来说就是 Java 接口&#xff0c;将来我们可以定义 Java 类来实现这个接口&#xff0c;并由 Web 服务器运行 Servlet &#xff0c;所以 TomCat 又被称作 Servlet 容器。 Servlet 提供了…

ebay如何发货到国外?ebay发货规则是什么?——站斧浏览器

​ebay如何发货到国外&#xff1f; 对于卖家来说&#xff0c;在eBay上向海外买家发货可能会面临一些额外的挑战。以下是一些建议&#xff0c;帮助卖家顺利地将商品发货给海外买家&#xff1a; 1、选择合适的物流服务&#xff1a;eBay合作的物流服务通常提供可靠和经济实惠的国…

【ARMv8M Cortex-M33 系列 2.1 -- Cortex-M33 使用 .hex 文件介绍】

文章目录 HEX 文件介绍英特尔十六进制文件格式记录类型hex 示例Cortex-M 系列hex 文件的使用 HEX 文件介绍 .hex 文件通常用于微控制器编程&#xff0c;包括 ARM Cortex-M 系列微控制器。这种文件格式是一种文本记录&#xff0c;用于在编程时传递二进制信息。.hex 文件格式最常…

【Java EE初阶三 】线程的状态与安全(上)

1. join方法与多线程 1.1 初识多线程 为了提高cpu得利用率&#xff0c;因此就引入了多个线程的概念&#xff1b;即每个线程负责完成整个程序的一部分工作即可。 写一个代码&#xff0c;让主线程&#xff0c;创建一个新的线程&#xff0c;由新线程负责完成运算&#xff08;12。…

人工智能时代,如何借助新技术实现突破?| 圆桌对话

继上篇介绍完干货满满的议题分享后&#xff0c;更精彩的圆桌论坛衔尾相随。本次圆桌对话以“人工智能时代&#xff0c;如何借助新技术实现突破&#xff1f;”为主题&#xff0c;由华锐技术机构市场团队负责人-高媛主持&#xff0c;邀请了AMD中国区数据中心事业部资深架构师-梁朝…