资源描述
DA-661/662/663-LX用户手册
第三版,2008年6月
P2
DA-661/662/663-LX用户手册
在使用本手册之前,请认真阅读以下使用许可协议,只能在协议条款允许的范围内使用本手册中介绍的产品。
版权声明
Copyright © 2008 Moxa Inc.
保留所有版权. 未经MOXA公司书面许可,任何公司与个人不得以任何形式复制本手册的全部或者部分内容。
商标
MOXA是Moxa公司的注册商标,本手册中的所有其他商标或注册商标归相应厂商所有。
免责声明
任何未经允许擅自更改文章中的内容与Moxa无关
Moxa所提供的文档,只作为使用参考,而不包含任何形式的对特殊使用目的的担保。Moxa保留改变和升级该手册以及手册中涉及的相关产品或程序的权利。
手册中包含的信息尽可能准确可靠。由于该手册的使用直接或间接引起的对第三方权益的损害与Moxa无关。
产品可能包含一些由于疏忽造成的技术或排版上的错误。这样的错误将会被定期修正,并在再版中避免出现这类错误。
技术支持联络信息:
Moxa 美国:
Toll-free: 1-888-669-2872
Tel: +1-714-528-6777
Fax: +1-714-528-6778
Moxa 中国 (上海办公室):
Toll-free: 800-820-5036
Tel: +86-21-5258-9955
Fax: +86-10-6872-3958
Moxa 欧洲:
Tel: +49-89-3 70 03 99-0
Fax: +49-89-3 70 03 99-99
Moxa 亚太区:
Tel: +886-2-8919-1230
Fax: +886-2-8919-1231
P3、4
目录
第一章 介绍 1-1
概述 1-2
软件架构 1-2
日志文件系统(JFFS2) 1-3
软件包 1-4
第二章 开始应用 2-1
DA-661/662/663电源连接 2-2
连接DA-661/662/663与PC 2-2
串行Console端口 2-2
Telnet Console 2-3
SSH Console 2-4
配置以太网络 2-5
通过串行Console修改网络设置 2-5
使用网络方式修改网络设置 2-6
利用PCMCIA接口配置WLAN 2-6
测试程序——开发Hello.c 2-12
安装工具链(Linux) 2-12
检查闪存空间 2-13
编译Hello.c 2-13
上传并运行“Hello”程序 2-14
开发您的第一个应用 2-14
测试环境 2-14
编译tcps2.c 2-15
上传并运行“tcps2-release”程序 2-16
测试过程总结 2-18
第三章 嵌入式Linux系统的管理 3-1
系统版本信息 3-2
系统镜像备份 3-2
升级Firmware 3-2
恢复出厂默认设置 3-4
备份用户文件系统 3-4
配置多台DA-661/662/663 3-4
启用和禁用守护进程 3-5
设置运行级别 3-7
调整系统时间 3-8
手动设置时间 3-8
NTP客户端 3-9
自动更新时间 3-9
Cron—用于执行计划任务的守护进程 3-10
连接外围设备 3-10
USB存储器 3-10
CF卡 3-11
第四章 通信管理 4-1
Telnet/FTP 4-2
DNS 4-2
Web服务—Apache 4-3
IPTABLES 4-4
NAT 4-8
NAT示例 4-8
起动时使用NAT 4-9
拨号服务—PPP 4-9
PPPoE 4-12
NFS(网络文件系统) 4-14
将DA-661/662/663设置为NFS服务器 4-14
将DA-661/662/663设置为NFS客户端 4-15
邮件 4-16
SNMP 4-16
OpenVPN 4-17
第五章 编程指南 5-1
闪存映射表 5-2
Linux工具链介绍 5-2
GDB调试程序 5-3
设备API 5-4
RTC(实时时钟) 5-4
蜂鸣器 5-4
WDT(看门狗计时器) 5-5
UART 5-8
LCM 5-10
KeyPad 5-10
Make File示例 5-11
附录A 系统命令 A-1
busybox(V1.00-rc3): Linux常用命令工具集 A-1
文件管理工具 A-1
编辑 A-1
网络 A-2
进程 A-2
其他 A-2
MOXA 特殊工具 A-2
附录B 使用按键操作LCD显示屏 B-1
P5
第一章 介绍
DA-661/662/663系列是基于RISC架构的即开即用型嵌入式计算机平台,面向工业数据采集应用。该系列的上述3个型号都具有16个RS-232/422/485串行通讯接口。基于Intel Xscale IXP-425通信处理器,该系列具有1个CF插槽、1个PCMCIA插槽和2个USB hosts口。此外,DA-661带2个以太网口,DA-662带4个以太网口,DA-663带2个光纤以太网通道,并都外壳采用标准的19英寸宽1U机架式坚固封装。牢固的机架封装设计提供了面向苛刻工业环境下的可靠保护,并且便于用户在标准的19英寸机架上完成DA-661/662/663产品的安装。DA-661/662/663为基于分布式的嵌入式应用,如SCADA系统、工厂车间自动化和电力监控等场合提供了理想的解决方案。
本章主要内容如下:
概述
软件架构
l 日志文件系统(JFFS2)
l 软件包
P6
概述
DA-661/662/663系列是基于RISC架构的理想的嵌入式应用计算机平台。该系列的上述3个型号基于RISC CPU和RAM存储技术,具有RS-232/422/485串行设备通讯接口。其中,DA-661带2个以太网口,DA-662带4个以太网口,DA-663带2个光纤以太网通道。
DA-661/662/663系列采用了IXP-425 533MHz RISC CPU处理器。与X86架构平台相比,采用了CISC设计的RISC架构和最新半导体技术的该处理器为DA-661/662/663系列提供了强大的计算引擎和通信功能,并且发热量低,其内置的32MB NOR Flash ROM和128MB SDRAM为您的应用软件计算机安装提供了足够的存储空间,另外RISC CPU还集成了多个LAN口。DA-661/662/663系列先进的网络通信能力和强大串口设备控制能力使其成为数据采集和工业控制应用的理想通信平台。
DA-661/662/663系列预安装的Linux操作系统为软件程序开发提供了一个开放的操作环境。桌面PC编写的软件可以很容易地通过GNU交叉编译工具移植到DA-661/662/663。上述操作系统、设备驱动程序(如Keypad,LCM和蜂鸣器控制)和您自己开发的应用都存储在NOR闪存中。
DA-661/662/663 Linux系列包括3种机型,所有机型都带有16个串口,各个机型的软硬件特征类似,其主要区别只在于网络接口类型和数量上。DA-661-LX有2个以太网口,DA-662有4个以太网口,DA-663有2个多模光纤通道口。
软件架构
预装在DA-661/662/663中的Linux操作系统具有标准的Linux操作系统的架构。遵循POSIX标准的程序可以使用Moxa提供的GNU 工具链(www.uClinux.org )轻松移植到DA-661/662/663。除了标准的POSIX API之外,DA-661/662/663还提供了许多设备驱动,如LCM、蜂鸣器、Keypad以及UART。
(图略)
P7
DA-661/662/663的内置Flash ROM 包括 Boot Loader, Linux Kernel, Root File System和User Root File System 等多个分区。
为了避免用户程序导致Root File System的崩溃,DA-661/662/663使用了特殊设计且具有保护性设置的Root File System以防万一。这种Root File System加载后具备串口和以太网通讯能力,用户可装载Factory Default Image文件。User directory将保存用户的设置和应用。
DA-661/662/663还有一套内部机制来防止系统崩溃以提高系统可靠性,具体工作流程如下:
当Linux内核被引导以后,便会加载只读的root file system,随后启动相应的服务和防护进程。在此期间,内核通过rc或inittab搜索用于系统配置的参数。
通常,内核会使用Root File System来引导系统。由于Root File System处于受保护状态且用户不能更改,因而可提供一个“安全”区域
欲了解更多关于存储结构和编程信息,请参考第五章“编程人员指南”。
日志文件系统(JFFS2)
User Root File System以日志文件系统 (JFFS2)的格式存放于闪存当中。文件通过这种格式的处理并以压缩文件系统形式存放于闪存中,对用户来讲它是透明的。
JFFS2文件系统由瑞典Axis通讯公司开发,它支持将文件系统直接存放于闪存中,取代了传统存储设备。它是为Flash-ROM芯片而设计的,也可以用于具有特殊的可写需求的Flash-ROM芯片。JFFS2文件系统能够延长flash闪存的使用寿命,它将falsh目录结构存放在RAM当中。日志文件系统可以在任何时候维护。而JFFS2文件系统比较稳定,就算是在系统崩溃或突然掉电的情况下,重新引导系统时也无需进行磁盘系统的检查。
JFFS2是JFFS文件系统的最新版本。提高了系统的磨损性能以及废物收集功能、提高了RAM 对系统内存要求的响应能力、提高了压缩性能、改进了对并发过程的支持并支持将Flash故障挂起、支持硬连接。
JFFS2的主要特点如下:
直接访问Flash ROM
稳定、可靠
突然掉电的情况下,系统仍然稳定
正常或非正常关机后再次引导系统,无需检查磁盘系统
更加耐用
透明压缩
尽管JFFS2是日志文件系统,但仍不能排除数据丢失的危险。系统掉电之后文件系统会保持原先的状态,并可重新挂载。尽管如此,若在写入数据的过程中突然掉电,则系统再次启动时,未写完的数据不再保留,而已经写完的数据不会受影响。
欲了解有关JFFS2的详细信息,请点击以下网站:
http://www.linux-mtd.infradead.org/
P8
软件包
Boot Loader Redboot (v1.92)
内核 Monta Vista embedded Linux 2.6.10
协议栈 ARP, PPP, CHAP, PAP, IPv4, ICMP, TCP, UDP, DHCP, FTP, SNMP
V1/V2, HTTP, NTP, NFS, SMTP, SSH 1.0/2.0, SSL, Telnet, PPPoE, OpenVPN
文件系统 JFFS2, NFS, Ext2, Ext3, VFAT/FAT
OS shell command bash
Busybox Linux normal command utility collection
工具
tinylogin 登录与用户管理工具
telnet telnet客户端程序
ftp FTP 客户端程序
smtpclient 电子邮件工具
scp 安全文件传输客户端程序
进程
pppd 串口来电/拨出进程
snmpd snmpd代理进程
telnetd telnet服务进程
inetd TCP 服务管理器进程
ftpd ftp服务进程
apache web服务进程
sshd 安全保护服务
nfs-user-server 网络文件系统服务
openvpn 虚拟专有网络
openssl 打开SSL
Linux工具链
Gcc (V3.4.3) C/C++ PC 交叉编译器
GDB (V6.3) 源码级调试服务
Glibc (V2.2.5) POSIX 标准C语言库
Windows 工具链
Gcc (V3.4.3) C/C++ PC 交叉编译器
GDB (V6.3) 源码级调试服务
Glibc(V2.2.5) POSIX 标准C语言库
Insight (V60.1) Windows环境源码级调试服务
P9
第二章 开始应用
本章我们将讨论DA-661/662/663 的接线,通电以及如何开始使用编程及其他功能。
本章主要内容如下:
DA-661/662/663电源连接
连接DA-661/662/663与PC
u 串行Console端口
u Telnet Console
u SSH Console
配置以太网络
u 通过串行Console修改网络设置
u 使用网络方式修改网络设置
u 利用PCMCIA接口配置WLAN
测试程序——开发Hello.c
u 安装工具链(Linux)
u 检查闪存空间
u 编译Hello.c
u 上传并运行“Hello”程序
开发您的第一个应用
u 测试环境
u 编译tcps2.c
u 上传并运行“tcps2-release”程序
u 测试过程总结
P10
DA-661/662/663电源连接
先将SG线与DA-661/662/663左上方的保护触头相连,然后使用电源适配器为DA-661/662/663供电。系统启动大约需要花30秒~60秒的时间。一旦系统启动完毕,绿色Ready灯会被亮起,此时产品机型名称将出现在LCM显示屏上。
!注意: 当DA-661/662/663上电之后,系统完成启动过程大约需要花30秒~60秒的时间。直到操作系统启动完毕,绿色的Ready灯才会亮起。
连接DA-661/662/663与PC
有两种方式可完成DA-661/662/663与PC的连接:(1)通过串行Console端口;(2)通过网络Telnet。
串行Console端口
串口console端口方便用户使用console方式进入DA-661/662/663。尤其在第一次使用DA-661/662/663的时候特别有用。由于信号通过直接串行连接进行传输,因此用户不必知道DA-661/662/663的任何一个IP地址也不需要再找其它的串口console工具。
串口console端口的设置如下表所示。
波特率 115200 bps
奇偶校验位 None
数据位 8
停止位 1
数据流控制 None
端子 VT100
一旦连接建立,我们会看到如下画面:
(图略)
如需登录,请输入登录名和口令,其默认值均为“root”:
Login: root
Password: root
P11
Telnet Console
如果您知道两个IP地址中任一个IP地址和子网掩码,您可以使用Telnet登陆DA-661/662/663的Console工具,每个端口的默认IP地址和子网掩码为:
默认IP地址 默认子网掩码
LAN 1 192.168.3.127 255.255.255.0
LAN 2 192.168.4.127 255.255.255.0
LAN 3 192.168.5.127 255.255.255.0
LAN 4 192.168.6.127 255.255.255.0
使用一条交叉网线就可以直接连接您的PC和DA-661/662/663。第一次使用时您应该将PC机的IP地址和子网掩码均改为与DA-661/662/663在同一子网段。例如,您如果要连接LAN1,就可以将PC的IP地址设置为192.168.3.126,而子网掩码设置为255.255.255.0;您如果要连接LAN2,则可以将PC的IP地址设置为192.168.4.126,而子网掩码同样设置为255.255.255.0。
注意:DA-661和DA-663均有2个LAN口,而DA-662为4个LAN口。
如果是通过集线器或交换机连接到您的本地局域网,可以使用一条直通网线。默认IP地址和子网掩码如上所示。根据系统提示,输入用户名和密码便可登陆。默认用户名和密码为:
Login: root
Password: root
在bash command shell下,您可以配置DA-661/662/663的网络属性。接下来的章节中给出了相关的配置指令。
P12
!注意
l 串口 Console 提示:在选择终端类型的时候请选择VT100,并且请使用DA-661/662/663附带的CBL-RJ45F90-150电缆连接串行console端口。
l Telnet 提示:当您通过局域网络连接DA-661/662/663时,请务必配置PC的以太网卡地址和DA-661/662/663在同一子网。.如果第一次连接失败,请重新检查串口和IP设置,然后拔出并重新插上DA-661/662/663电源线。
DA-662有4个LAN口,LAN3和LAN4仅用于DA-662机型。
SSH Console
DA-661/662/663为了给用户提供更为安全的设置方法,我们还提供SSH Console支持。
Windows 用户
点击http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html 下载Putty(免费软件),该软件用于在Windows环境下同DA-661/662/663建立SSH Console。下图为所需设置的一个简单示例。
(图略)
Linux 用户
对安装Linux操作系统的机器来讲,可以通过使用“ssh”命令进入DA-661/662/663的SSH Console。
#ssh 192.168.3.127
选择 yes 以完成连接
注意 通过网络进入DA-661/662/663的Console,SSH较Telnet更安全。
P13
配置以太网络
用户可通过串口Console方式或网络方式来在线修改DA-661/662/663的网络设置。
通过串行Console修改网络设置
在这部分,我们将介绍如何使用串口Console来修改DA-661/662/663的网络设置。
1、 照前面所描述的方法通过串口Console方式进入DA-661/662/663,然后输入#cd /etc/network/ 改变路径。
2、 输入#vi interfaces,用vi编辑器来编辑网络配置文件。您可以将DA-661/662/663的以太网口配置为静态或动态(DHCP)IP地址。
静态 IP 地址:
如下图所示,有4个网络字段需要修改:address,network,netmask 和 broadcast 。默认LAN1的IP地址是192.168.3.127,LAN2的IP地址是192.168.4.127,其默认的子网掩码均为255.255.255.0。
(图略)
动态 IP 地址:
DA-661/662/663的IP地址默认配置为静态。为了将其中一个或两个LAN口配置为动态,我们可以使用dhcp替代static,同时删除或注释掉 address,network,netmask 和 broadcast 行。
P14
LAN1 的缺省设置 DHCP动态设置
iface ixp0 inet static iface ixp0 inet dhcp
address 192.168.3.127
network 192.168.3.0
netmask 255.255.255.0
broadcast 192.168.3.255
(图略)
3、LAN口启动设置修改完成之后,使用如下命令激活LAN口的设置。
#/etc/init.d/networking restart
注意:IP设置修改之后,请使用networking restart命令激活新的IP地址。尽管如此,LCM显示仍为旧的IP地址。如果要更新LCM的显示,你需要重启DA-661/662/663。
使用网络方式修改网络设置
IP设置可以通过网络方式激活,但是如果没有修改/etc/network/interfaces文件,新的网络设置是不会被写入flash ROM中的。
例如,输入命令#ifconfig ixp0 192.168.1.1可将LAN1的IP地址修改为192.168.1.1。
(图略)
利用PCMCIA接口配置WLAN
目前支持以下 IEEE802.11g 无线模块产品:
ASUS—WL-107g
CNET—CWC-854 (181D version)
Edmiax—EW-7108PCg
Amigo—AWP-914W
GigaByte—GN-WMKG
Other brands that use the Ralink RT2500 series chip set
配置 IEEE802.11g 无线局域网络:
1、 首先拨出 CardBus无线网卡。
2、 使用命令#vi /etc/networking/interfaces,利用vi编辑器打开接口配置文件,并对802.11g网络设置进行编辑(DA-661/663的无线接口名应为“eth2”;DA-662的无线接口名应为“eth4”)。
(图略)
P15
3、其他的WLAN参数包含在RT2500STA.dat文件中。要打开文件请先进入RT2500STA文件夹,然后打开vi编辑器,或者输入命令#vi/etc/Wireless/RT2500STA/RT2500STA.dat也可以直接用vi编辑器打开文件。不同参数的设置选项如下表所示。
(图略)
P16
CountryRegion—设置您所在国家/地区的合法频段
设置
描述
0
use channels 1 to 11
1
use channels 1 to 11
2
use channels 1 to 13
3
use channels 10, 11
4
use channels 10 to 13
5
use channel 14
6
use channels 1 to 14
7
use channels 3 to 9
WirelessMode—设置无线模式
设置
描述
0
11b/g mixed
1
11b only
2
11g only
SSID—设置softAP SSID
设置
任意32字节串
NetworkType—设置无线操作模式
设置
描述
Infra
下部基础结构模式 (通过接入点来传输数据)
Adhoc
点对点模式 (主机与主机直接传输数据)
Channel—设置频道
设置
描述
0
自动
1 to 14
你希望使用的频道
AuthMode—设置鉴权模式
设置
OPEN
SHARED
WPAPSK
WPANONE
EncrypType—设置加密类型
设置
NONE
WEP
TKIP
AES
P17~19
DefaultKeyID—设置默认密钥ID
设置
1~4
Key1Str, Key2Str, Key3Str, Key4Str—设置密钥字符串 Key1 到 Key4
设置
密钥输入可用5个ascii字符,10个16进制数字,13个ascii字符或者26个16进制数字
TxBurst—WPA预共享密钥
设置
8到64个ASCII字符
WPAPSK—启用或禁用 TxBurst
设置
描述
0
禁用
1
启用
TurboRate—启用或禁用 TurboRate
设置
描述
0
禁用
1
启用
BGProtection—设置11g/11b保护(功能保留,仅供工程师测试使用)
设置
描述
0
自动
1
常开
2
常闭
ShortSlot—启用或禁用 short slot time
设置
描述
0
禁用
1
启用
TxRate—设置 TxRate
描述
描述
0
自动
1
1 Mbps
2
2 Mbps
3
5.5 Mbps
4
11 Mbps
5
6 Mbps
6
9 Mbps
7
12 Mbps
8
18 Mbps
9
24 Mbps
10
36 Mbps
11
48 Mbps
12
54 Mbps
RTSThreshold—设置 RTS 阈值
设置
1~2347
FragThreshold—设置碎片阈值
设置
256~2346
示例1:配置无线LAN的AP连接,AP设置为OPEN/NONE(鉴权/加密模式)
(图略)
示例2:配置无线LAN的AP连接,AP设置为SHARED/WEP(鉴权/加密模式)
(图略)
示例3:配置无线LAN的AP连接,AP设置为WPAPSK/TKIP(鉴权/加密模式)
(图略)
示例4:配置无线LAN的AP连接,AP设置为WPAPSK/AES(鉴权/加密模式)
(图略)
P20
测试程序——开发Hello.c
本小节我们将使用标准的“Hello"程序为大家演示如何对DA-661/662/663进行编程。总体上来讲,编程工作可以分为如下7个步骤。
1、 将DA-661/662/663连接至一台Linux PC
2、 安装工具链(GNU 交叉编译器&glibc)。
3、 设置交叉编译器和glibc的环境变量。
4、 编写代码,编译。
5、 使用FTP或NFS将程序下载至DA-661/662/663。
6、 调试程序
l 如果有bug,返回第4步。
l 如果没有bug,请继续第7步。
7、 备份用户文件(如有需要,请将程序保存于DA-661/662/663)
安
展开阅读全文