本文介绍了上海晶珩睿莓 1 开发板的相关信息,包括资源分布、主控、参数特点、外设等,介绍了环境搭建、镜像烧录、系统配置、串口登录、网络连接、SSH 连接、eMMC固件上传等流程,并通过 GPIO 控制实现了工程测试。
睿莓 1 是一款高性能、小巧且性价比高的单板计算机,适合物联网、智能网关、工业控制和创客开发等多种应用场景。

top view

bottom view

动态效果见顶部视频。
主控采用晶晨 Amlogic S905X4 高级应用处理器

芯片采用 12nm 制程工艺,四核心 Cortex-A55 架构,整数的计算能力可以达到 21800+,主频 2.0GHz,支持 OpenGL ES3.2,Vulkan 1.1 与 OpenCL 2.0 的Arm ,GPU 为 Mali-G31Mp2。
详见:amlogic.cn .
eMMC (Embedded Multi Media Card) 是 MMC 协会订立、主要针对手机或平板电脑等便携式产品的内嵌式存储器标准规格。eMMC在封装中集成了一个控制器,提供标准接口并管理闪存。
板载 eMMC 为三星 KLM8G1GETF-B041
SEC:Samsung Electro-Mechanics

参数如下
详见:KLM8G1GETF-B041(eMMC 5.1) | eMMC | 三星半导体官网 .
随机存取存储器 (Random Access Memory,RAM),又称主存,是与 CPU 直接交换数据的内部存储器。
板载 RAM 内存型号为 K4F6E3S4HM-MGCJ

详见:K4F6E3S4HM-MGCJ(16 Gb) | DRAM | 三星半导体官网 .


详见:睿莓 1 - EDATEC .
包括系统镜像的下载、SD卡烧录、分区检查、eMMC装载等。
镜像下载地址:https://www.123pan.com/s/vjW7Vv-w9Q7A.html
可使用油猴脚本解锁下载限制,详见:GitHub - QingJ01/123pan_unlock .
准备一张容量为 32 GB 的 Micro-SD 卡,将其接入 USB 读卡器并连接电脑;
下载 安装并运行 balenaEtcher 软件;
加载解压后的系统镜像,选择目标 SD 卡并执行烧录;

烧录完成后,在 boot 磁盘分区下,新建空白的 ssh 文件,以实现开机自动使能 SSH 服务。

使用 USB 转 TTL 工具连接睿莓 40pin 的 6 (GND)、8 (TXD)、10 (RXD) 引脚,另一端连接电脑 USB;

打开串口调试助手或 MobaXterm 软件,选择对应端口,相关参数配置包括波特率 921600 bps、数据位 8 、无校验位、停止位为 1 ;
配置完成后,打开串口,根据提示输入初始账户名和密码 (均为 phantom) ,即可进入系统

详见:上海晶珩电子科技-哔哩哔哩视频 . .
包括有线和无线连接方案。
使用网线连接开发板和路由器,上电启动系统,进入路由器终端,可查看开发板分配的 ip 地址

使用串口或有线网 SSH 登录板端系统;
执行如下指令扫描并获取可用 WiFi 列表
sudo iwlist wlan0 scan
方案 1:使用图形界面配置无线网;
sudo raspi-config 进入图形配置界面;终端执行 ifconfig 查询并获取 wlan0 对应的 ip 地址

方案 2:修改 WLAN 配置文件,终端执行指令
sudo nano /etc/wpa_supplicant/wpa_supplicant.conf
添加以下内容
country=CN
network={
ssid="xxx"
psk="xxx"
}
Ctrl+X 退出,回车保存。
PS: 图形配置界面其实也是修改WLAN配置文件。
终端执行如下指令,使能 SSH
sudo raspi-config
输入上方命令后,出现图形配置界面,

选择 Interface Options 接口配置,找到 SSH,选择 Yes 使能 SSH 功能。3 Interface Options -> 2 SSH -> Yes
使用上下箭头控制高亮选项移动,Enter 和 ESC 键实现确认和退出,左右箭头控制界面下方的选项;
配置完成后,保存退出。

执行 sudo reboot 重启并激活配置。
终端执行 sudo -s 可切换至 root 账户;
sudo -s
su - phantom
终端执行 su - phantom 可切换至其他用户。
终端执行 df -h 查询磁盘空间分配情况;

对于 eMMC 启动系统,终端执行 lsblk 获取存储设备;

对于 SD 卡启动系统,终端执行 lsblk 可获取当前分区情况,

/home/phantom 路径下,sudo dd if=/home/phantom/phantom_2023-04-10-amlogic-bullseye-arm64.img of=/dev/mmcblk1 bs=4MiB
sync
等待命令执行完毕,显示

表明镜像烧录至 eMMC;
安装至 eMMC 的默认镜像没有使能 SSH 服务,若需开机即可使用 SSH 远程连接功能,则终端执行指令
sudo mount /dev/mmcblk1p1 /mnt
sudo touch /mnt/ssh
sudo umount /mnt
重启即可自动开启 SSH 远程服务功能。
这里以 GPIO 控制为例进行工程测试,并实现 LED 闪烁效果。
睿莓 1 板载 2x20P 的 2.54mm 间距排针,对应主控芯片的 28 个 GPIO 并可通过软件控制;
支持 2 路 I2C、1 路 UART、1 路 SPI 以及多路输入输出可配置 GPIO。
睿莓 1 40-Pin 管脚兼容树莓派 40-Pin 管脚(I2C、UART、SPI).
安装 libgpiod,终端执行
sudo apt-get update # 更新软件库
sudo apt-get install libgpiod-dev #安装 libgpiod 的静态库及头文件
sudo apt-get install gpiod #安装基于 libgpiod 的命令行工具
终端执行 gpioinfo 指令,查看 gpiochip 信息

系统 gpiochip0 包括 87 个 GPIO 管脚,已被驱动或系统占用的 GPIO 会在最后一列显示为 [used] .
终端执行指令
gpioset 0 83=0 #设置 chip0 的 line83 管脚为低电平
gpioset 0 83=1 #设置 chip0 的 line83 管脚为高电平
实现 GPIO 输出电平的控制。
结合 Python 调用 gpioset 实现 GPIO 间隔输出高低电平,即 LED 闪烁。
| 睿莓 1 40-Pin 接口 | LED 模块 |
|---|---|
| 7 (GPIO83) | Blue |
| 9 (GND) | GND |
引脚复用表


终端执行 touch blink.py 指令新建文件,并添加如下代码
import subprocess
import time
GPIO_CHIP = "0" # GPIO芯片编号(通过gpiodetect确认)
GPIO_PIN = "83" # GPIO编号(BCM编号,非物理引脚号)
def set_led(state):
"""控制LED状态(1=点亮,0=熄灭)"""
try:
subprocess.run(
["gpioset", GPIO_CHIP, f"{GPIO_PIN}={state}"],
check=True, # 检查命令是否成功
stderr=subprocess.PIPE
)
except subprocess.CalledProcessError as e:
print(f"错误:无法控制 GPIO (详细: {e.stderr.decode().strip()})")
raise
try:
while True:
set_led(1) # 点亮LED
print("ON")
time.sleep(0.5)
set_led(0) # 熄灭LED
print("OFF")
time.sleep(0.5)
except KeyboardInterrupt:
print("\n程序终止")
except Exception as e:
print(f"发生异常: {e}")
finally:
set_led(0) # 确保程序退出时LED熄灭
保存后执行 python3 blink.py 即可。
7 号引脚对应 GPIO83,对应的 LED 闪烁

同时终端打印 LED 状态

动态效果见底部视频。
本文介绍了上海晶珩睿莓 1 开发板的相关信息,包括资源分布、主控、参数特点、外设等,介绍了环境搭建、镜像烧录、系统配置、串口登录、网络连接、SSH 连接、eMMC固件上传等流程,并通过 GPIO 控制实现了工程测试,为后续深入研究做好铺垫,也为该开发板的开发设计和应用提供了参考。
举报
更多回帖