本帖最后由 Programus 于 2009-10-17 15:23 编辑
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://programus.blogbus.com/logs/48546092.html
英文原文: http://lejos.sourceforge.net/nxt/nxj/tutorial/Preliminaries/GettingStartedWindows.htm
本版本指南针对LeJOS NXJ 0.85版本
先决条件
USB驱动
如果要在Microsoft Windows下运行LeJOS NXJ,你需要一份适当的USB驱动程序。如果你已经安装过LEGO Mindstorms软件,相应的驱动程序就会随之安装。如果你不想安装LEGO的软件,你可以从RobotC的网站得到一份驱动程序。
Java开发工具包(Java Development Kit,简称JDK)
你还需要在计算机上安装Java开发工具包。请注意仅有Java运行时环境(Java Runtime Environment,简称JRE)是不够的,它无法让你编译Java程序。你可以到Sun的主页上寻找并下载最新的JDK。然后跟着安装程序的指导进行安装。经测试,LeJOS NXJ可以在JDK 1.5和1.6版本下正常工作,但无法运行于更早版本的JDK下。推荐使用JDK 1.6,因为部分PC端例子程序无法在JDK 1.5下正常运行。
另外,你还需要将JDK的bin目录添加到PATH环境变量中,从而保证javac、java等JDK命令可以从命令行正常被调用。如果你不清楚如何进行这一步,请参看下面的“设置环境变量”这一小节。
除此以外,将JDK的安装目录设置为名为JAVA_HOME的环境变量也是一个可选步骤,因为如果你使用ant来编译并生成你的系统,这一步将是必须的。
蓝牙协议支持
如果你希望通过蓝牙与NXT进行通信,在你的PC上则需要装有蓝牙适配器或者内置蓝牙支持以及一个蓝牙协议支持软件。LeJOS NXJ与Microsoft以及Widcomm软件的兼容性已经得到了测试。与其他的同类软件也应该可以协同工作。
当然,你也可以完全不使用蓝牙,只使用LeJOS的非蓝牙功能。
下载软件
你可以从LeJOS NXJ下载页下载LeJOS NXJ。
我们推荐你使用Windows安装程序。当然那里也为喜欢绿色版的朋友提供了绿色版的zip文件下载。运行图形界面安装程序
运行leJOS_NXJ_0.8.5-Setup.exe,你将看到如下界面:
选择[Yes],将看到如下界面:
(注:本安装程序使用开源软件Installjammer制作而成)
点击[Next >]按钮,界面变化如下:
在此,你可以通过点击[Browse…]按钮更改安装路径。
安装程序同时会将检测到的JDK版本显示在本界面上。
确认好安装路径后,点击[Next >]按钮,看到如下界面:
在此选择LeJOS项目的安装路径。默认将安装在用户的home目录下的leJOSNXJProjects目录下。在Windows Vista中,用户的home目录将是C:\Users\用户名,在Windows XP中,用户的home目录是C:\Documents and Settings\用户名。
LeJOS NXJ中的所有Java源代码都被发行为可以被Eclipse或Netbeans打开的工程。
当你完成了项目安装路径的设定,安装过程将会启动。如果你在同样的路径下曾经安装过LeJOS,你将会看到如下提示:
选择[Next >]按钮,旧版本将会被删除:
当你选择[Yes]确定删除旧版本后,你将看到:
然后是
当旧版本的卸载完成后,新版本的安装将会开始:
确认安装路径无误后,请点击[Next >]按钮,开始安装:
当软件安装完成,你会看到如下界面:
当你点击[Finish]按钮后,图形界面版本的NXJ固件替换工具将会启动,并提示你重刷NXT的固件系统。
界面如下:
点击[Start program]按钮(唯一的一个按钮),你会看到如下提示框:
意为:点击[OK]前请确保你的NXT电源已经打开,并已连接到计算机。
请点击[OK]按钮。你会看到另一个提示:
意为:你确定现在删除所有NXT内的文件?
如果你选择[Yes],NXT中的所有文件都将被删除。我们建议你选择[Yes],因为旧版本的nxj文件或许无法在新的固件下正常运行。
接下来你会看到:
此时请确保NXT已经通过USB连接到PC并打开了电源。
然后点击[OK]按钮,你将看到一些类似下图的进度信息:
当更新完成,你会看到如下对话框:
如果你还有其他的NXT需要重刷固件,请点击[Yes],否则,请点击[No]结束固件替换工具。
至此,安装完成!
如果你使用安装程序,请跳过下一小节,直接看最后的“检测你的安装”一节。
手动安装
如果你使用安装程序,请跳过本节,直接看最后的“检测你的安装”一节。
解压文件
将下载到的压缩包文件解压到一个目录,比如:C:\lejosbeta85。Zip压缩文件中包含一个名为lejos_nxt的目录,所以你的NXJ_HOME目录将是C:\lejosbeta85\lejos_nxt
设置环境变量
你需要设置如下环境变量:变量名 | 变量值 | 示例 | NXJ_HOME | LeJOS NXJ的所在目录 | C:\lejosbeta85\lejos_nxt | JAVA_HOME | JDK的安装目录 | C:\Program Files\Java\jdk1.6.0_16 | PATH | 在此变量中加入JDK和LeJOS目录下的bin目录 | C:\Program Files\Java\jdk1.6.0_16\bin;C:\lejosbeta85\lejos_nxt\bin; |
环境变量JAVA_HOME并非总是必需的。另一方面JDK的bin目录可能已经存在于PATH变量中。
[控制面板]中,打开[系统],在其中找到[高级]选项卡下的[环境变量]按钮,点击它可以打开环境变量设置对话框,在此你可以添加新的或者编辑已存在的环境变量。
你既可以将如上环境变量设置为系统变量,也可以设置为用户变量,这取决于你希望让所有用户都能够使用LeJOX NXJ还是仅允许当前用户使用。
使用命令行窗口
你可能需要运行命令行命令来检测安装以及替换固件。如果你打算使用例如Eclipse或者Netbeans一类的集成开发环境(IDE),当你完成了IDE的配置,你或许就不再需要命令行窗口了。
要启动一个命令行窗口,从[开始]菜单中选择[运行],然后XP请输入cmd,Vista请输入Command Prompt。
在命令行窗口中输入命令set,可以列出所有的环境变量,此时你可以检查自己的环境变量是否设置正确。替换固件
要使用LeJOS,你必须使用LeJOS固件替换NXT的现有固件。请注意:这将覆盖任何现有固件。如果你有标准LEGO固件或者其他第三方固件,所有的现存文件都将丢失。
0.85版本加大了固件以及启动菜单所使用的Flash内存,所以如果你第一次使用这一版本固件进行替换,现存的LeJOS NXJ文件也将被删除。
首先,确认你已经将NXT用USB线连接到了计算机,同时开启了NXT的电源。
接下来,你可以使用nxjflash命令启动命令行工具或者nxjflashg启动图形界面工具。
如果你使用命令行工具:
输入nxjflash来将LeJOSNXJ固件刷入NXT。如果你的NXT处于固件更新模式,固件将被更新。你会在命令行窗口中看到一些消息,随后NXT会显示LeJOS的图标,并接下来显示LeJOSNXJ菜单。如果你的NXT安装有早期版本的LeJOS或者LEGO的固件,会显示一个已连接的NXT列表,并提示你输入一个数字进行选择。如果你只有一台NXT连接到计算机,请输入1。如果你的NXT装有其他固件或者nxjflash执行失败,你必须将NXT设定为固件更新模式。按下复位键4秒钟以上就可以将NXT设置为固件更新模式(详见NXT说明书)。当NXT处于固件更新模式时,你会听到轻微的滴答声。此时重新运行nxjflash
如果你是用图形界面工具:
nxjflash的图形界面版是NXJFlashG。运行LeJOSNXJ安装目录下的bin目录下的nxjflashg.bat文件可以启动图形界面工具。工具启动后,点击[StartProgram]然后跟着提示进行。更加详细的说明,请参看“PC上的图形界面工具”一章。(译注:也可以参看上面的安装程序指导后半段。)
检测你的安装
通过编译并运行一个简单地程序,你可以检测你是否在你的计算机和NXT上成功地安装了LeJOS NXJ。
编译和运行你的第一个程序
Java程序在运行之前,首先需要被编译成class文件(又称字节码文件)。对于LeJOS NXJ来说,为了在NXT上运行,所有的class文件都将被连接并产生一个二进制文件(扩展名为nxj)。然后,将此文件上传到NXT中以备运行。
要运行一个简单地程序,比如例子程序中的View,请按照以下步骤进行操作:
启动一个命令行窗口,切换到View程序所在目录:
cd leJOSNXJProjects\samples\View
使用nxjc命令编译程序
nxjc View.java
然后连接,上传并在NXT上运行程序
nxj -r View
你将在NXT上的View程序的菜单
译注:这里的例子程序View与LEGO标准NXT程序中所带的View程序一样,可以简单地测试各个传感器、马达,查看他们的输入以及状态。但因为View程序撰写时8547尚未出品,所以其中没有对8547中LEGO的颜色传感器的支持。但例子程序提供了一个专门测试颜色传感器的程序——ColorSensorTest。你可以在samples\ColorSensorTest目录下找到。编译、连接、上传以及运行方法同上,只需要将文件名以及程序名从View改为ColorSensorTest即可。 |