avatar_enek

Среда разработки AVR в кармане! AVRDroid IDE, ArduinoDroid IDE

Автор enek, 20 Авг. 2014 в 09:17

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

enek

До чего прогресс дошел, народ уже бортовой компьютер на ардуине собирает!  :eureka: Бывает сидишь на работе и нечем заняться, а руки чешутся программировать... :-) С микроконтроллерами семейства AVR я познакомился уже довольно давно, случайно в Google Play наткнулся на приложение ArduinoDroid, поставил, потыкал... очень интересно, но нету в моём китайском андроид смартфоне USB хоста :-\ После этого захотелось купить новый смартфон, вот только старый вроде как устраивает и помирать не собирается... :-) Среда разработки думаю что мало чем отличается от той что на компьютере. Подробно останавливаться на этом не буду, но добавлю что счастливым обладателям USB хоста доступно еще одно полезное приложение - ZFlasher AVR. Это прошивальщик AVR, может пригодится в полевых условиях ;-)
С USB хостом всё просто, а вот если его нету то нам поможет AVRDroid IDE. Собрал на макетной платке, поигрался, понравилось :wow:
Одно из достоинств это отсутствие проводов, программируется мега8 с помощью загрузчика через bluetooth, а также можно получать данные через терминал на экран смартфона. Язык программирования - С, откомпиллировал даже то, что было написано в AVR Studio. Недавно приложение с маркета пропало, проект похоже забросили, но он работоспособен.

Я им пользуюсь и хочу поделиться с остальными, расскажу подробно про сборку и настройку. :-)
Для начала нужно приложение com.openlogiclabs.avrdroid-1.apk, в маркете его уже нет, поэтому выкладываю на Google диск. Приложение скачивает кэш отсюда, там же прошивка, схема, исходник бутлоадера под мегу8. У меня иногда не закачивалось до конца и потом лезли ошибки при компиляции, я кэш заливаю по кабелю через adb, всё в архиве, для установки этим способом нужны права root и busybox, и свободное место около 300мБ во внутренней памяти. Только не флешка, нужен линукс раздел внутренней памяти, иначе слетят права доступа к файлам, а в FAT32 такого нет, на sd переносить нельзя!
Собирается всё по схеме, у меня питается от элемента 18650.

Автор использовал модуль HC-05, я использовал модуль HC-06, отличаются лишь подключением светодиода и вывода KEY.  Для работы с приложением нужно изменить имя bluetooth модуля на AVRDROID, приложение больше никого не признает, как это делается написано в даташите. Вкратце - замыкаем вывод KEY к 3.3В, подаем питание, через USB-UART посылаем команду в модуль AT+NAME=AVRDROID. Я это сделал через mxterm, соединился, в окне терминала правой кнопкой - send pattern, далее ASCII - AT+NAME=AVRDROID, repeat count - 1, т.е. один раз. Пришла команда ок, после следующего включения имя bluetooth модуля AVRDROID.
Итак смартфон готов, bluetooth модуль готов, а вот прошивку с бутлоадером нужно шить через программатор.
Приведу свои примеры  Мигаем светодиодом и отправляем байт в терминал смартфона, работа с дисплеем 1602, ШИМим светодиод.
Если покопаться в /data/data/com.openlogiclabs.avrdroid/files/ то можно там найти компилятор и avrdude, теперь понятно как оно работает, как два байта переслать :-)
Ну вот как-то так, кому что непонятно спрашивайте. О том как еще можно соединить смартфон и микроконтроллер развиваем тему  :-)
Что не убивает мой вел, то делает его сильнее...

enek

#1
А еще вот что подумал - а speedict тоже ищет свой девайс по имени устройства? Нуачо, назвать bluetooth модуль как надо и софт можно заюзать :kidding: и протокол обмена тоже изучить в ознакомительных целях ;-D
фото модуля, брал на ebay

подробнее о программировании bluetooth модуля
Configuring The HC-05 Bluetooth Module with AT Commands Arduino поменять имя и пароль
в комментариях к видео обсуждают как можно организовать датчик присутствия, надо взять на заметку ;-)
Что не убивает мой вел, то делает его сильнее...