1. 4G
1.1. SIM卡连接
1.2. 4G天线连接
1.3. 手动AT指令拨号联网
如果系统无法正常拨号,可以使用AT指令手动排查问题。
-
确认
EC20CEFILG模块是否正常启动,usb0网卡对应EC20CEFILG模块ifconfig usb0
usb0 Link encap:Ethernet HWaddr AE:0C:29:A3:9B:6D
inet addr:192.168.43.100 Bcast:192.168.43.255 Mask:255.255.255.0 inet6 addr: fe80::ed5d:84b6:c27c:3825/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:18 errors:0 dropped:0 overruns:0 frame:0 TX packets:39 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:3456 (3.3 KiB) TX bytes:3811 (3.7 KiB) -
配置串口属性
如果是 Ubuntu 系统,需要进行配置
# stty -F /dev/ttyUSB2 icrnl opost onlcr icanon echo echoe
-
查询模块状态
# cat /dev/ttyUSB2 &# echo AT+QCFG="usbnet" > /dev/ttyUSB2
如果返回+QCFG: "usbnet",1,即 ECM状态
-
模块配置为
ECM网卡状态echo AT+QCFG="usbnet",1 > /dev/ttyUSB2 -
拨号
echo AT+QNETDEVCTL=1,1,1 > /dev/ttyUSB2 -
ping外网

- 其他AT指令
断开拨号
echo AT+QNETDEVCTL=0,1,1 > /dev/ttyUSB2
查看天线信号的强度,返回值”0-31,99”,尽量确保信号强度在”26-31,99”
echo "AT+CSQ" > /dev/ttyUSB2
查看sim卡或物联卡是否插入了,正常返回READY
echo "AT+CPIN?" > /dev/ttyUSB2
查看运营商,如联通CHN-UNICOM,移动”CHINA MOBILE”
echo "AT+COPS?" > /dev/ttyUSB2
查看sim卡的流量业务是否正常
echo "AT+CGATT?" > /dev/ttyUSB2
返回+CGATT: 1表示attached,+CGATT: 0表示detached,返回+CGATT: 0时请检查卡的流量业务是否正常
2. UART
iHC-3568JGW 多个串口可供使用,包括 2 个 RS485,2个 RS232 和 1个 UART。
各串口对应的设备文件如下:
RS232_1: /dev/ttyS0
RS232_2: /dev/ttyS3
RS485_1: /dev/ttyS4
RS485_2: /dev/ttyS5
UART : /dev/ttyS9
iHC-3568JGW的RS485收发信息受到GPIO的控制,关系如下
| RS485 | GPIO | 内核中gpio编号 | 控制关系 |
|---|---|---|---|
| RS485_1 | GPIO3_C1 | 113 | 拉低接收信息,拉高发送信息 |
| RS485_2 | GPIO2_D6 | 94 | 拉低接收信息,拉高发送信息 |
其他串口正常使用
以 RS485_1 为例:
- 连接
将 RS485_1 的 A、B 引脚分别和主机串口适配器(USB 转 485 转串口模块)的 A、B 引脚相连。
-
开发板发送, 主机接收
将gpio控制节点打开
echo 113 > /sys/class/gpio/export echo out > /sys/class/gpio/gpio113/direction
查看串口信息
busybox stty -F /dev/ttyS4 -a
将串口波特率设置成9600,8位数据模式
busybox stty -F /dev/ttyS4 ispeed 9600 ospeed 9600 cs8
拉高控制引脚
echo 1 > /sys/class/gpio/gpio113/value
主机终端先执行:
/dev/ttyUSB0 为 主机串口适配器 的节点,根据实际修改
cat /dev/ttyUSB0
发送数据,开发板调试串口终端执行:
echo "firefly RS485 test..." > /dev/ttyS4
-
主机发送,开发板接收
开发板调试串口终端先执行:
echo 0 > /sys/class/gpio/gpio113/value busybox stty -echo -F /dev/ttyS4 # 关闭回显 cat /dev/ttyS4
主机终端执行:
/dev/ttyUSB0 为 主机串口适配器 的节点,根据实际修改
echo "firefly RS485 test..." > /dev/ttyUSB0
3. CAN
- 连接
只需将设备的 CANH、CANL 和通讯端的 CANH、CAHL 对应连接即可。
-
发送数据
ip link set can0 down ip link set can0 type can bitrate 250000 ip link set can0 up cansend can0 123#1122334455667788
-
接收数据
ip link set can0 down ip link set can0 type can bitrate 250000 ip link set can0 up candump can0
-
loopback 模式测试
ip link set can0 down ip link set can0 type can bitrate 50000 loopback on ip link set can0 up candump can0 & cansend can0 123#11223344556677
4. DIN
网关支持两路光耦隔离接口,其中,INPUT1在硬件原理图中对应于IO_IN_1, INPUT2在硬件原理图中对应于IO_IN_2,COM在硬件原理图中对应于IO_IN_COM。
- 电路原理图

- 检测
当 INPUT1、INPUT_COM 导通时,GPIO0_C2 会检测到低电平;当 INPUT1、INPUT_COM 断开时,GPIO0_C2 会检测到高电平。 当 INPUT2、INPUT_COM 导通时,GPIO0_C4 会检测到低电平;当 INPUT2、INPUT_COM 断开时,GPIO0_C4 会检测到高电平。
对应 GPIO 口如下:
GPIO0_C2 : 18
GPIO0_C4 : 20
检测方式如下:
# 申请 GPIO
echo 18 > /sys/class/gpio/export
# 设置为输入
echo in > /sys/class/gpio/gpio18/direction
# 读取电平值
cat /sys/class/gpio/gpio18/value
5. DOUT
网关支持两路继电器接口,OUTPUT1对应于硬件原理图中的IO_OUT_1,OUTPUT2对应于硬件原理图中的IO_OUT_2,COM对应于硬件原理图中的IO_OUT_COM。
- 电路原理图

- 控制
当 GPIO0_C3 输出低电平,OUTPUT1、COM 断开;当 GPIO0_C3 输出高电平,OUTPUT1、COM 导通。 当 GPIO0_C7 输出低电平,OUTPUT2、COM 断开;当 GPIO0_C7 输出高电平,OUTPUT2、COM 导通。
对应 GPIO 口如下:
GPIO0_C3 : 19
GPIO0_C7 : 23
控制方式如下:
# 申请 GPIO
echo 19 > /sys/class/gpio/export
# 设置为输出
echo out > /sys/class/gpio/gpio19/direction
# 设置电平值,1 / 0
echo 1 > /sys/class/gpio/gpio19/value