Writing and Running your first leJOS NXJ Program
Написание и запуск первой leJOS NXJ программы
Написание и запуск первой программы для leJOS NXJ

Это перевод, оригинал находится здесь

Программа HelloWorld (ЗдравствуйМир)

Давайте начнём с простейшей программы Hello World. Мы создадим класс HelloWorld в дефолтном пакете java (пакете по умолчанию):

public class HelloWorld
{

}

leJOS требует, чтоб у класса был стандартный метод main в качестве точки входа в программу:

public class HelloWorld {
  public static void main (String[] args) {
  
  }
}

leJOS NXJ поддерживает стандартный метод java System.out.println и при необходимости прокручивает (делает скроллинг) выводимую информацию на ЖК дисплее.

public class HelloWorld {
  public static void main (String[] args) {
    System.out.println("Hello World");
  }
}

Если вы запустите программу в таком виде, она напечатает "Hello World" и тут же немедленно вернётся в главное меню, так что вы не успеете ничего увидеть (если только вы не супер-реактивный человек).

Необходимо либо заставить программу подождать некоторое время (чтоб можно было успеть прочитать текст) или вообще заставить программу дождаться, когда будет нажата кнопка. Давайте сделаем так, чтоб программа дожидалась нажатия кнопки. Чтоб это сделать, нужно вызвать метод waitForAnyPress() класса Button (кнопка) предоставляемый leJOS. Но сначала нам нужно импортировать класс leJOS NXJ Button в нашу программу. Button находится в пакете lejos.nxt, т.е. полное имя будет lejos.nxt.Button. Вы можете узнать, какие методы поддерживает класс, посмотрев в документацию на API.

Документация на API находится на вэб-сайте leJOS и включена в дистрибутив leJOS в подкаталоге docs/nxt.

Полностью законченная программа HelloWorld выглядит так:

import lejos.nxt.Button;

public class HelloWorld {
  public static void main (String[] args) {
    System.out.println("Hello World");
    Button.waitForAnyPress();
  }
}

Наверх страницы

Компиляция и линковка программы.

Создайте файл с именем HelloWorld.java с исходным текстом, показанным выше. Затем откройте меню "Пуск->Программы->Стандартные->Командная строка" и выполните следующие команды в директории, в которой находится файл HelloWorld.java:

nxjc HelloWorld.java

Появится файл с именемHelloWorld.class, который будет содержать результаты компиляции HelloWorld.java. В отличие от реальной виртуальной машины Java, leJOS не умеет выполнять файлы типа *.class непосредственно. Программа HelloWorld должна быть слинкована с использованием leJOS линкера. Это делается следующей командой:

nxjlink -o HelloWorld.nxj HelloWorld

Эта команда прочитает класс HelloWorld (из файла HelloWorld.class) и все зависимые классы. Затем эти классы будут объединены в один файл, а именно HelloWorld.nxj. Однако, прежде чем файл сможет быть выполнен, его нужно будте загрузить на NXT кирпич.

Наверх страницы

Загрузка и выполнение программы

С помощью вышеуказанной команды вы получили файл HelloWorld.nxj. Теперь вы можете загрузить его на кирпич и запустить на выполнение. Чтоб сделать это, используйте следующую команду:

nxjupload -r HelloWorld.nxj

Параметр -r означает, что программа будет исполнена после того, как она будет загружена в "кирпич". Если не использовать этот параметр, nxjupload только загрузит файл на кирпич, но не запустит его на выполнение. Вы сможете запустить его вручную, через меню кирпича.

Также, есть возможность слинковать и загрузить программу на кирпич одной командой. Следующая команда обладает таким же эффектом, как и вышеуказанные команды nxjlink и nxjupload применённые одна за другой :

nxj -r -o HelloWorld.nxj HelloWorld

Эта команда сначала создаёт файл HelloWorld.nxj и затем загружает его на кирпич NXT. Программа запускается автоматически, т.к. в данном случае указана опция -r.

Наверх страницы



Hosted by uCoz