Skip to main content

接口使用

note

本文档由 AI 翻译。如您发现内容有误或有改进建议,欢迎通过页面下方的评论区,或在以下 Issue 页面中告诉我们:https://github.com/Seeed-Studio/wiki-documents/issues

简介

reComputer J401载板 支持 NVIDIA Jetson Orin Nano/NX(Orin Nano 4GB/Orin Nano 8GB, Orin NX 8GB/Orin NX 16GB),提供卓越性能,专为轻松应对复杂的边缘计算任务而设计。它是开发工业自动化系统、构建强大的AI应用等的理想选择。

该载板具备网络连接能力,配备了1个千兆以太网端口以实现快速网络连接。此外,它还提供了4个USB 3.2 Type-A (10Gbps)端口、1个USB 2.0 Type-C端口以及1个CAN连接器,以满足多样化的连接需求。扩展板上安装了1个M.2 Key M 2280用于SSD卡(包含128GB NVMe 2280 SSD),以及1个M.2 Key E插槽用于LTE无线连接扩展。

此外,载板支持多种外设。用户可以通过2个15针MIPI-CSI和1个HDMI 2.1连接器捕获和显示高质量的视频内容,用于摄像头和显示器连接。还包括一个5V PWM风扇接口、一个RTC插座2针RTC接口

载板支持9-19V DC的宽输入范围,使其能够灵活地集成到各种计算任务中。工作温度范围为-10°C至60°C。

有关更多配件建议,请参考 reComputer J401捆绑页面

260针SODIMM

260针SODIMM的主要功能是将载板与 NVIDIA Jetson Orin Nano 4GB/NVIDIA Jetson Orin Nano 8GB, NVIDIA Jetson Orin NX 8GB/NVIDIA Jetson Orin NX 16GB连接。

连接概览

note

如果连接正确,当您连接电源适配器时,您会看到电源指示灯亮起。

M.2 Key M

M.2 Key M是一种M.2连接器的物理和电气布局规范,支持通过PCIe(外设组件互连快速通道)接口进行高速数据传输。M.2 Key M连接器通常用于将固态硬盘(SSD)和其他高性能扩展卡连接到主板或其他主机设备。"Key M"表示M.2连接器的特定针脚配置和键位,这决定了可以连接到它的设备类型。

支持的SSD如下:

连接概览

如果您想移除已安装的SSD并安装新的SSD,可以按照以下步骤操作。

使用方法

我们将解释如何对连接的SSD进行简单的基准测试。

  • 步骤1: 通过执行以下命令检查写入速度。
sudo dd if=/dev/zero of=/home/nvidia/test bs=1M count=512 conv=fdatasync
  • 步骤2: 通过执行以下命令检查读取速度。确保在执行上述写入速度命令后再执行此命令。
sudo sh -c "sync && echo 3 > /proc/sys/vm/drop_caches"
sudo dd if=/home/nvidia/test of=/dev/null bs=1M count=512

M.2 Key E

M.2 Key E是一种M.2连接器的物理和电气布局规范,支持无线通信模块,例如Wi-Fi和蓝牙卡。"Key E"表示M.2连接器的特定针脚配置和键位,优化用于无线网络设备。M.2 Key E连接器通常用于需要无线连接选项的主板和其他设备。这里推荐使用 Intel Wi-Fi/蓝牙模块

连接概览

使用方法

安装 Wi-Fi/蓝牙模块后,您可以在右上角看到 Wi-Fi/蓝牙图标。

Wi-Fi 测试

ifconfig

蓝牙测试

bluetoothctl
power on # 打开蓝牙
agent on # 注册代理
scan on # 搜索其他蓝牙设备
connect xx:xx:xx:xx # 连接目标蓝牙设备
paired-devices # 显示所有已配对设备

CSI 摄像头

CSI 是 Camera Serial Interface(摄像头串行接口)的缩写。它是一种规范,用于描述从图像传感器到主处理器的视频数据串行通信接口。CSI 通常用于移动设备、摄像头和嵌入式系统,以实现图像和视频数据的高速高效传输,用于处理和分析。

支持的摄像头如下:

连接概览

这里的两个 CSI 摄像头连接器标记为 CAM0 和 CAM1。您可以将一个摄像头连接到两个连接器中的任意一个,也可以同时将两个摄像头连接到两个连接器。

使用方法

打开终端(Ctrl+Alt+T),输入以下命令:

sudo /opt/nvidia/jetson-io/jetson-io.py

对于 CAM0 端口

nvgstcapture-1.0 sensor-id=0 

对于 CAM1 端口

nvgstcapture-1.0 sensor-id=1  
note

如果您想进一步更改摄像头设置,可以输入 "nvgstcapture-1.0 --help" 查看所有可用的可配置选项。

RTC

RTC 是 Real-Time Clock(实时时钟)的缩写。它是一种时钟,可以独立于主系统时钟跟踪当前时间和日期。RTC 通常用于计算机、嵌入式系统和其他电子设备,即使设备断电也能保持准确的时间记录。它们通常由一个小电池供电,以确保在断电期间持续运行并保留时间和日期信息。

连接概览

3V CR1220 纽扣电池 连接到板上的 RTC 插槽,如下图所示。确保电池的 正极 (+) 朝上。

使用方法

  • 步骤 1: 按上述方法连接 RTC 电池。

  • 步骤 2: 打开 reComputer 工业设备。

  • 步骤 3: 在 Ubuntu 桌面上,点击右上角的下拉菜单,导航到 Settings > Date & Time,通过以太网连接到网络,并选择 Automatic Date & Time 以自动获取日期/时间。

note

如果您尚未通过以太网连接到互联网,可以在此手动设置日期/时间。

  • 步骤 4: 打开终端窗口,并执行以下命令以检查硬件时钟时间。
sudo hwclock

您将看到类似以下的输出,但这不是正确的日期/时间。

  • 步骤 5: 通过输入以下命令,将硬件时钟时间更改为当前系统时钟时间。
sudo hwclock --systohc
  • 步骤 6: 移除任何连接的以太网线,以确保不会从互联网获取时间,然后重启设备。
sudo reboot
  • 步骤 7: 检查硬件时钟时间,验证即使设备断电后日期/时间是否保持不变。

  • 步骤 8: 使用您喜欢的文本编辑器创建一个新的 shell 脚本。这里我们使用 vi 文本编辑器。

sudo vi /usr/bin/hwtosys.sh 
  • 步骤 9:i 进入 插入模式,将以下内容复制并粘贴到文件中。
#!/bin/bash

sudo hwclock --hctosys
  • 步骤 10: 使脚本可执行。
sudo chmod +x /usr/bin/hwtosys.sh 
  • 步骤 11: 创建一个 systemd 文件。
sudo nano /lib/systemd/system/hwtosys.service 
  • 步骤 12: 在文件中添加以下内容。
[Unit]
Description=Change system clock from hardware clock

[Service]
ExecStart=/usr/bin/hwtosys.sh

[Install]
WantedBy=multi-user.target
  • 步骤 13: 重新加载 systemctl 守护进程。
sudo systemctl daemon-reload 
  • 步骤 14: 启用新创建的服务以在启动时运行,并启动服务。
sudo systemctl enable hwtosys.service
sudo systemctl start hwtosys.service
  • 步骤 15: 验证脚本是否作为 systemd 服务正常运行。
sudo systemctl status hwtosys.service
  • 步骤 16: 重启设备,您将看到系统时钟现在与硬件时钟同步。

风扇控制

nvfancontrol 是一个用户空间风扇速度控制守护进程。它根据 nvfancontrol 配置文件中的温度到风扇速度映射表管理风扇速度。

nvfancontrol 服务包含一些基本元素,包括 Tmargin、启动 PWM、风扇配置文件、风扇控制和风扇调节器。所有这些都可以通过配置文件根据用户的偏好进行编程。本章将在以下部分中解释每个元素。

note

如果您想修改 nvfancontrol.conf,请确保您已阅读 相关文档

使用方法

  • 步骤 1: 停止 nvfancontrol systemd 服务。
sudo systemctl stop nvfancontrol
  • 步骤 2: 修改 nvfancontrol.conf
vi /etc/nvfancontrol.conf 
note

修改 nvfancontrol.conf 后,按 Esc 并输入 :q 退出。

  • 步骤 3: 删除状态文件。
sudo rm /var/lib/nvfancontrol/status
  • 步骤 4: 重启 nvfancontrol systemd 服务。
sudo systemctl restart nvfancontrol

GPIO

40 针接头的详细信息如下:

接头针脚模块针脚名称模块针脚SoC 针脚名称默认用途备用功能
1---主 3.3V 电源-
2---主 5.0V 电源-
3I2C1_SDA191DP_AUX_CH3_NI2C #1 数据-
4---主 5.0V 电源-
5I2C1_SCL189DP_AUX_CH3_PI2C #1 时钟-
6---地线-
7GPIO09211AUD_MCLKGPIO音频主时钟
8UART1_TXD203UART1_TXUART #1 发送GPIO
9---地线-
10UART1_RXD205UART1_RXUART #1 接收GPIO
11UART1_RTS*207UART1_RTSGPIOUART #2 请求发送
12I2S0_SCLK199DAP5_SCLKGPIO音频 I2S #0 时钟
13SPI1_SCK106SPI3_SCKGPIOSPI #1 移位时钟
14---地线-
15GPIO12218TOUCH_CLKGPIO-
16SPI1_CSI1*112SPI3_CS1GPIOSPI #1 芯片选择 #1
17---GPIO-
18SPI1_CSI0*110SPI3_CS0GPIOSPI #0 芯片选择 #0
19SPI0_MOSI89SPI1_MOSIGPIOSPI #0 主输出/从输入
20---地线-
21SPI0_MISO93SPI1_MISOGPIOSPI #0 主输入/从输出
22SPI1_MISO108SPI3_MISOGPIOSPI #1 主输入/从输出
23SPI0_SCK91SPI1_SCKGPIOSPI #0 移位时钟
24SPI0_CS0*95SPI1_CS0GPIOSPI #0 芯片选择 #0
25---地线-
26SPI0_CS1*97SPI1_CS1GPIOSPI #0 芯片选择 #1
27I2C0_SDA187GEN2_I2C_SDAI2C #0 数据GPIO
28I2C0_SCL185GEN2_I2C_SCLI2C #0 时钟GPIO
29GPIO01118SOC_GPIO41GPIO通用时钟 #0
30---地线-
31GPIO11216SOC_GPIO42GPIO通用时钟 #1
32GPIO07206SOC_GPIO44GPIOPWM
33GPIO13228SOC_GPIO54GPIOPWM
34---地线-
35I2S0_FS197DAP5_FSGPIO音频 I2S #0 字段选择
36UART1_CTS*209UART1_CTSGPIOUART #1 清除发送
37SPI1_MOSI104SPI3_MOSIGPIOSPI #1 主输出/从输入
38I2S0_DIN195DAP5_DINGPIO音频 I2S #0 数据输入
39---地线-
40I2S0_DOUT193DAP5_DOUTGPIO音频 I2S #0 数据输出

UART

UART 是通用异步接收器/发送器(Universal Asynchronous Receiver/Transmitter)的缩写。这是一种用于两个设备之间串行通信的通信协议。UART 通信涉及两个引脚:一个用于发送数据(TX),另一个用于接收数据(RX)。它是异步的,这意味着数据传输不需要设备之间共享时钟信号。UART 广泛应用于各种场景,例如微控制器、传感器以及不同电子设备之间的通信。

连接概述

UART 接口使用以下引脚,或者您可以在 J401 上使用其他 UART 接口:

Header PinModule Pin NameModule PinSoC Pin nameDefault UsageAlternate Funcationality
6----
8UART1_TXD203UART1_TXUART #1 发送GPIO
10UART1_RXD205UART1_RXUART #1 接收GPIO
将 J401 与 TTL 的 UART 连接如下:
J401 Header PinUsageUSB translate TTLUsage
6GND
8UART1_TXDU_RXUART_RX
10UART1_RXDU_TXUART_TX

使用方法

  • 步骤 1: 在您的 Windows 笔记本电脑上安装 PuTTy,并按照以下设置配置 PuTTy:
  • 步骤 2: 在 Jetson 上安装 PuTTy,打开终端(ALT+Ctrl+T),并输入以下命令。
sudo apt install putty
  • 步骤 3: 使用 Windows 上的 PuTTy 发送 'hello linux' 到 Jetson,并使用 Jetson 上的 PuTTy 发送 'hello windows' 到 Windows。
note

确保您的波特率设置为 115200。

结果如下所示:

I2C

I2C 是集成电路间通信(Inter-Integrated Circuit)的缩写。这是一种广泛使用的串行通信协议,用于系统中多个集成电路之间的通信。I2C 使用两条双向线路:一条用于数据(SDA),另一条用于时钟(SCL)。连接在 I2C 总线上的设备可以充当主设备或从设备,从而允许多个设备相互通信。I2C 因其简单性、灵活性以及能够连接各种设备(如传感器、存储芯片和嵌入式系统及电子设备中的其他外设)而受到欢迎。

连接概述

I2C 接口使用以下引脚,或者您可以在 J401 上使用其他 I2C 接口:

Header PinModule Pin NameModule PinSoC Pin nameDefault UsageAlternate Funcationality
2---主 5.0V 电源-
3I2C1_SDA191DP_AUX_CH3_NI2C #1 数据-
5I2C1_SCL189DP_AUX_CH3_PI2C #1 时钟-
6----

将 J401 与 Grove-3-Axis Digital Accelerometer 通过 I2C 连接如下:

J401UsageGrove-3-Axis Digital AccelerometerUsage
25V 电源Vcc-
3I2C1_SDASDAI2C_SDA
5I2C1_SCLSCLI2C_SCL
6GND

测试

打开终端(ALT+Ctrl+T),并输入以下命令:

i2cdetect -y -r 7
note

在命令中,您的通道可能与我的不同:i2cdetect -y -r x

您将看到如下结果:在连接 I2C 之前,通道 7 上未检测到任何 I2C 设备,但连接后检测到地址为 0x19 的 I2C 设备。

info

如果您想使用通用 IO 引脚进行逻辑控制,请参考 此 Wiki

技术支持与产品讨论

感谢您选择我们的产品!我们致力于为您提供多种支持,以确保您使用我们的产品时体验顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。


技术支持按钮说明

  • 论坛支持:点击 论坛 按钮,您可以访问 Seeed Studio 的官方论坛,与社区成员讨论技术问题或分享经验。
  • 电子邮件支持:点击 电子邮件 按钮,您可以通过电子邮件直接联系 Seeed Studio 的技术支持团队。
  • Discord 社区:点击 Discord 按钮,加入 Seeed Studio 的官方 Discord 社区,与其他开发者实时交流。
  • GitHub 讨论:点击 GitHub 讨论 按钮,参与 GitHub 上的技术讨论,获取更多帮助或提供反馈。
Loading Comments...