Lazarus+Arduino
Модератор: Модераторы
Lazarus+Arduino
Всем привет. Есть такая штука как arduino uno v3. С этой платой можно общаться через com-порт. Как праивльно работать с com-портом в lazarus??? Спасибо.
Ну, для начала надо заменить клавиатуру, а то на вашей знак вопроса западает. А потом - воспользоваться поиском здесь по форуму, либо в Гугле.
У меня друг пишет для под Arduino на Си. И вроде как именно он язык нон гратта для сего девайса...
maksmkv писал(а):Как праивльно работать с com-портом в lazarus???
Воспользуйтесь Ararat synapse.
VirtUX писал(а):У меня друг пишет для под Arduino на Си. И вроде как именно он язык нон гратта для сего девайса...
Для девайса - да. Но у человека видимо задача взаимодействия с железкой с компа.
Да, я хочу напмсать программу только для данного девайса. В интернете очень мало инфы по лазарус и особенно работы с ком портом
maksmkv писал(а):я хочу напмсать программу только для данного девайса.
Если Вы хотите писать код управляющий данным девайсом (и подключенными к нему элементами), то пишите на Си. Вся инфа и примеры в интернете именно на Си. При чем этот Си не тот, что обычный, а слегонца модифицированный для данного девайса (если я ничего не напутал). Т.ч. лазарь тут, вроде как, ни при чем.
Добавлено спустя 6 минут 17 секунд:
А вот если потом хотите написать прогу взаимодействующую с данным девайсом, то лучше
я не вижу вариантов...B4rr4cuda писал(а):synapse
На данном устройстве AVR процессор. На данный момент FreePascal данный процессор не поддерживает, но работы уже начались.
Если хочете писать на Pascale - есть коммерческий microPascal for AVR.
Если хочете использовать Lazarus + FreePascal, покупайте плату с ARM процессором, например RasberryPi. Есть готовая сборка Lazarus для RasberryPi.
Если хочете писать на Pascale - есть коммерческий microPascal for AVR.
Если хочете использовать Lazarus + FreePascal, покупайте плату с ARM процессором, например RasberryPi. Есть готовая сборка Lazarus для RasberryPi.
О каких начатых, а может уже законченных работах речь?mig-31 писал(а):На данном устройстве AVR процессор. На данный момент FreePascal данный процессор не поддерживает, но работы уже начались.
А, то такие статьи публикуются, но упоминания о FreePascal/Lazarus в них нет.
Отечественная образовательная робототехника. Часть 2: Переклеивание шильдиков или самобытные решения?
P.S. И даже на Github при поиске:
AVR++Lazarus
AVR++FreePascal
некучно.
Для PIC контроллеров есть проект компилятора PicPas
Для 6502 от этого же автора. P65Pas
Выложил свои эксперименты по работе с Arduino UNO (16МГц).
https://github.com/wavebvg/arduinouno
Но я уже давно это дело забросил.
https://github.com/wavebvg/arduinouno
Но я уже давно это дело забросил.
А как Вы настроили Lazarus, чтоб работало меню по Ctrl+пробел?wavebvg писал(а):Выложил свои эксперименты по работе с Arduino UNO (16МГц).
Добавлено спустя 3 минуты 10 секунд:
wavebvg подскажите, пожалуйста.
А как выглядит проблема?dalfy писал(а):подскажите
Для начала попробуйте открыть один из отладочных проектов -- в нем прописаны пути и никаких проблем быть не должно. К примеру arduinouno/apps/servo/servo.lpr
Так же должен быть собран компилятор под AVR с приблизительно такими параметрами:
Код: Выделить всё
make clean crossall crossinstall NOGDB=$NOGDB PREFIX="$INSTALL_PATH" OS_TARGET=embedded CPU_TARGET=avr SUBARCH=avr5 BINUTILSPREFIX=avr-Компилятор ppcavrembedded (как-то так) положил в общую папку Lazarus: bin. Проект компилируется нормально, но если я напишу, например, port и нажму Ctrl+пробел, что б увидеть все имеющиеся порты, то курсор перескакивает на первую строку в первую позицию и ни какого выпадающего меню не проявляется. Что надо сделать, чтобы появлялось выпадающее меню подсказка. Измучился уже весь.wavebvg писал(а):А как выглядит проблема?
Добавлено спустя 1 час 13 минут 25 секунд:
Компилятор я не собирал, скачал с помощью программы fpcdelux. Думаете из-за этого может не проявляться выпадающее меню?wavebvg писал(а):Так же должен быть собран компилятор под AVR
Могу предположить, что у Вас отсутствуют "ppu-шки", которые должны быть где-то в fpc/lib/fpc/3.3.1/units/avr-embedded/dalfy писал(а): Компилятор ppcavrembedded (как-то так) положил в общую папку Lazarus: bin. Проект компилируется нормально, но если я напишу, например, port и нажму Ctrl+пробел, что б увидеть все имеющиеся порты, то курсор перескакивает на первую строку в первую позицию и ни какого выпадающего меню не проявляется. Что надо сделать, чтобы появлялось выпадающее меню подсказка
В fpc.cfg это прописано в виде:
Код: Выделить всё
...
-Fu/XXX/fpc/lib/fpc/$fpcversion/units/$fpctarget
-Fu/XXX/fpc/lib/fpc/$fpcversion/units/$fpctarget/*
-Fu/XXX/fpc/lib/fpc/$fpcversion/units/$fpctarget/rtl
...Это хорошо, что Вы относитесь к проблемам с юморомdalfy писал(а): Измучился уже весь.
В fpc.cfg добавил все путиwavebvg писал(а):у Вас отсутствуют "ppu-шки"
Код: Выделить всё
-Fuc:\fpcupdeluxe\fpc\bin\x86_64-win64\
-FDC:\fpcupdeluxe\cross\bin\avr-embedded\
-XPavr-embedded-
-FlC:\fpcupdeluxe\cross\lib\avr-embedded\$fpcsubarch\
-FuC:\fpcupdeluxe\fpc\units\avr-embedded\$fpcsubarch\
-FuC:\fpcupdeluxe\fpc\units\avr-embedded\$fpcsubarch\*
-FuC:\fpcupdeluxe\fpc\units\avr-embedded\$fpcsubarch\rtl
-Fic:\fpcupdeluxe\fpcsrc\rtl\inc\Ошибка: ppcavr.exe can't be executed, error message: Failed to execute ""ppcavr.exe" -B -Tembedded -CpAVR5 -MObjFPC -Scgi -O1 -vewnhildubq -FuD:\Prj\me -FuD:\Prj\mkproj\timer\kod\LTimers\ -oD:\Prj\mkproj\timer\kod\LTimers\test -WpATMEGA328P -al timers.lpr
Почему он спрашивает про ppcavr.exe я не понял.
При загрузке Lazarus появляется сообщение, что компилятор не поддерживает целевую платформу avr-embedded, но при этом подсказка появляется.
Ума не приложу, что делать...
Подскажите, пожалуйста...
Скорее всего версии ppu-шек не совпадают с версией компилятора, и IDE не может в этом деле разобраться.
Я сам вчера смог сломать "автодополнение", правда сам не понял как. Пересобрал FPC и всё снова заработало.
Я сам вчера смог сломать "автодополнение", правда сам не понял как. Пересобрал FPC и всё снова заработало.
Это первую попытку найти компилятор он показал. Если включить подробный вывод, IDE покажет все свои попытки.Почему он спрашивает про ppcavr.exe я не понял.
