[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4678: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4680: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4681: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4682: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
virt2real.ru • Просмотр темы - Где посмотреть пример программы на с/с++ для vir2real ?




 

Управляем чем угодно откуда угодно

Где посмотреть пример программы на с/с++ для vir2real ?

Обсуждение линуксовой части и софта на борту виртурилки

Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение infospacer » 20 сен 2013, 17:44

Управление через вэб интерфейс это чудесно, но хотелось бы написать что нибудь полезное на С для virt2real, светодиодиками помигать, моторчик покрутить.
Ну и далее более сложные алгоритмы реализовать, для автономного режима.
Существует ли документация, желательно с примером простейшей программы и процессом компиляции?
Хорошо бы на вики выложить статью либо ссылку на эту тему, специально для начинающих.
infospacer
 
Сообщения: 3
Зарегистрирован: 20 сен 2013, 17:13

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение orangeudav » 20 сен 2013, 18:14

Между вами и ногой со светодиодом находится линукс. Чтобы дергать ногами и прочим вам в любом случае придется писать и читать файлы (как описано в вики). Так что вобщем-то подходит любой язык программирования в котором есть File.open/write/read/close

Ну или вы можете написать драйвер для линуха, который захватит управление ногами и вы будете уже общаться со своим собственным драйвером.

Кстати есть вероятность что например такую задачу как стабилизация полета квадракоптера целиком придется в свой драйвер переносить (ради производительности) либо компилить с включенным RT Linux и выставлять максимальный приоритет своему процессу.
orangeudav
 
Сообщения: 152
Зарегистрирован: 04 сен 2013, 15:35

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение phoenix367 » 20 сен 2013, 18:35

phoenix367
 
Сообщения: 193
Зарегистрирован: 09 сен 2013, 00:19

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение Mirmik » 20 сен 2013, 19:13

Последний раз редактировалось Mirmik 21 сен 2013, 20:09, всего редактировалось 2 раз(а).
... и перерастворяясь из одной формы реальности в другую. И вот он я, рядом с вами падаю в эту же нору, тот кто волшебной палочкой вра...
Аватара пользователя
Mirmik
 
Сообщения: 222
Зарегистрирован: 04 сен 2013, 19:20
Откуда: Московская область, Пушкино

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение andrewion » 20 сен 2013, 19:21

Аватара пользователя
andrewion
 
Сообщения: 150
Зарегистрирован: 03 сен 2013, 21:46

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение Mirmik » 20 сен 2013, 19:55

Helloworld для Virt2real. В самом ненавороченном варианте.
Могут быть ошибки. Сейчас не на чем отлаживаться.

Что будем делать: Мы возьмем компилятор из SDK, компильнем с его помощью программу HelloWorld, полученный файл кинем на virt2real и запустим.

Нужно:
virt2real (целевая машина ЦМ) в одной сети с компьютером (инструментальная машина ИМ)
ИМ должна управляться ОС семейства Linux, иметь скачанный SDK.

Как делать:
ИМ:
- идём в папку ......./virt2real-sdk/codesourcery/arm-2013.05/bin
- Создаём символическую ссылку на файл "arm-none-linux-gnueabi-g++".
- Переименовываем ссылку во чтонибудь попроще (Мой вариант, "virt-gcc" , хотя оно вроде и не gcc, а совсем таки g++ ... )
- Кидаем ссылку в один из каталогов, где Линух ищет свои команды. (Полный список каталогов можно получить, сделав вызов "echo $PATH" через консоль)

Замечательно. Теперь ИМ понимает команду virt-gcc. (Имеет смысл это проверить, сделав соответствующий вызов)

Далее.
- создаем где-нибудь (пусть это будет директория /home/user/) текстовый файл prg.cpp .
- редактируем:

//prg.cpp
#include "stdio.h"
int main(void) {printf("It`s bugged world\n");return(0);}

- выполняем в консоли, находясь в папке с созданным нами файлом
virt-gcc prg.cpp -o prg

Теперь у нас есть бинарник нашей программы скомпилированный специально для ЦМ. Остается только залить его на ЦМ.
Это можно сделать через флешку или:

Пишем в консоли:
scp ./prg root@192.168.1.128:/root/ (Предполагается, что 192.168.1.128 -адрес ЦМ)

Отвечаем на вопросы утилиты копирования, и если все хорошо, файл уходит на ЦМ.
Лежит он в папке /root/

Теперь очередь за ЦМ:
cd /root/
chmod 777 prg
./prg

Если видите наш helloWorld, вы обучились таинству кросскомпиляции.


Разумеется, дальше идет или подшивание компилятора к среде разработки, или написание Makefile. И т.д.
Это (как и само программирование) лежит за рамками сего обзорчика, ибо по большому счету не отличается от программирования в срреде ОС Linux. (что до меня, то я пользуюсь редактором geany)

(Если вдруг что-то неочевидно, спрашивайте...)
... и перерастворяясь из одной формы реальности в другую. И вот он я, рядом с вами падаю в эту же нору, тот кто волшебной палочкой вра...
Аватара пользователя
Mirmik
 
Сообщения: 222
Зарегистрирован: 04 сен 2013, 19:20
Откуда: Московская область, Пушкино

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение andrewion » 20 сен 2013, 23:44

Аватара пользователя
andrewion
 
Сообщения: 150
Зарегистрирован: 03 сен 2013, 21:46

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение Mirmik » 21 сен 2013, 00:19

Безусловно можно... Для этого надо всего-лишь найти исходные коды компилятора и откомпилировать его самим же собой... Я не знаю, где их взять.

Второй вариант - через Makefile процесс переброса скомпилированного файла вполне можно автоматизировать... Только я не знаю, как автоматизировать ввод пароля....

Что касается удобства, то... В общем, дело привычки... С учетом того, что я компилирую с терминала, у меня процесс компиляции нового варианта программы, с учетом того, что инструкции уже сидят в памяти shell-а выглядит "сохранить файл-переключится на терминал(встроенный в geany)-вверх-вверх-ентер-вверх-вверх-ентер-ввод пароля-переключение на путти-вверх-ентер" ... Программа запустилась. Не особо сложно... При нужной сноровке с учетом лага на запросе пароля... Секунды три-четыре...
... и перерастворяясь из одной формы реальности в другую. И вот он я, рядом с вами падаю в эту же нору, тот кто волшебной палочкой вра...
Аватара пользователя
Mirmik
 
Сообщения: 222
Зарегистрирован: 04 сен 2013, 19:20
Откуда: Московская область, Пушкино

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение infospacer » 21 сен 2013, 01:59

infospacer
 
Сообщения: 3
Зарегистрирован: 20 сен 2013, 17:13

Re: Где посмотреть пример программы на с/с++ для vir2real ?

Сообщение scayn » 21 сен 2013, 19:35

Аватара пользователя
scayn
 
Сообщения: 27
Зарегистрирован: 16 сен 2013, 16:14

След.

Вернуться в Софт на виртурилке - SDK, Linux, Github, программирование (C/C++ и др.)

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 5

cron