Lazarus

Материал из scratchduino
Перейти к: навигация, поиск

1. Установка библиотеки 5dpo.

Для работы с последовательным портом в Lazarus’е необходимо установить библиотеку 5dpo. Скачать библиотеку можно отсюда http://wiki.lazarus.freepascal.org/5dpo. После распаковки архива появится папка Sdpo. Далее необходимо запустить Lazarus и добавить библиотеку. Для этого в пункте меню Package выберите Open package file (.lpk) и в папке Sdpo найдите файл sdposeriallaz.lpk, нажмите Open. В появившемся окне нажмите кнопку Install (рисунок 1).

рисунок 1

На запрос разрешения на пересборку – отвечаем утвердительно. Пересборка займет некоторое время, затем Lazarus перегрузится. В панели компонентов Lazarus появится новая вкладка 5dpo и на ней элемент TSdpoSerial (рисунок 2).

рисунок 2


2. Создаем простую программу в Lazarus, которая должна при нажатии на кнопку передовать что-нибудь на последовательный порт.

В меню Fail выбираем “New…” и в открывшемся окне – “Application”. На форме размещаем два компонента: SdpoSerial1 и Button1 (рисунок 3).

рисунок 3


рисунок 4
В инспекторе объектов (Object Inspector) для объекта SdpoSerial1 устанавливаем параметры, как на рисунке 4. (По умолчанию, последовательный порт Arduino это /dev/ttyACM0, но, возможно, у вас он имеет другое имя). Далее программируем действия наших объектов: дважды щелкаем по кнопке Button1 и в открывшемся редакторе кода пишем SdpoSerial1.Active:=true; (рисунок 5).
рисунок 5

Пусть у нас при нажатии кнопки на порт передается "hello". Для объекта SdopSerial1 пишем код как на рисунке 6. Все, маленькая программа готова, компилируем. Осталось добавить скетч на Arduino.

рисунок 6

3. Скетч на Arduino.

Мы просто воспользовались одним из предложенных в Arduino примеров, который разбирает то, что было передано на последовательный порт: File->Examples->Strings->CharacterAnalysis. Загрузите этот пример в Arduino. (рисунок 7).

рисунок 7

Далее запустите прогамму в Lazarus (кнопка Run) и нажмите на кнопку Button1. Откройте консоль и дайте команду cat /dev/ttyACM0, вы увидете подробный побуквенный разбор нашего "hello" (рисунок 8).

рисунок 8
Персональные инструменты
Пространства имён

Варианты
Действия
Навигация
Инструменты
Печать/экспорт