Технический форум по робототехнике.
=DeaD= » 22 авг 2010, 20:13
=========================================================================================
Вставка от =DeaD= по итогу проекта:
Файлы для прошивки Arduino-совместимого бутлоадера и фьюзов под него доступны тут:
[[Файлы Open Robotics]]
Файлы в ZIP-архиве для добавления в Arduino IDE контроллеров OR-AVR-M128-*:
download/file.php?id=17339
Инструкция в PDF по добавлению в Arduino IDE контроллеров OR-AVR-M128-*:
download/file.php?id=17359
Библиотека для программирования M128-S из под Arduino IDE, поддерживается управление сервами:
post176220.html#p176220
Библиотека для программирования M128-DS из под Arduino IDE, поддерживается управление сервами и двигателями:
post177246.html#p177246
=========================================================================================Попробуем новый формат развития нашего открытого проекта.
Собственно постановка задачи вроде очевидна - обеспечить интеграцию контроллеров OR-AVR-M128-* и Arduino IDE - для начала на самом простом уровне - собрать бутлоадер (естественно на 100% совместимый с Arduino IDE), сделать в Arduino IDE файлы описание, скомпилировать скетч мигающий светодиодом подцепленным к какому-нибудь GPIO-порту, проверить загрузку.
Что получает первый решивший задачу? Ну например такой комплект:
1. Оранжевый ник;
2. ORduino Nano с доставкой;
3. Скидку на любые 3 модуля OR в размере 30% от стоимости - при этом скидка может быть применена к уже купленным модулям, тогда либо эти деньги можно будет использовать для покупки, либо просто получить скажем на банковский счет.
Есть желающие поучаствовать в таком формате?
=DeaD= » 12 сен 2010, 20:48
Обещанная библиотека для программирования M128-DS из под Arduino IDE, поддерживается управление сервами и двигателями.
Добавлено спустя 54 секунды:Кстати, обратил внимание - и у меня приходится RESET нажимать. Завтра гляну, может достаточно будет выпаять кондёр на линии RESET на контроллере

- Вложения
-
ORM128DS-for-Arduino-IDE.zip
- (3.98 КиБ) Скачиваний: 0
Dmitri Vladimirovich » 13 сен 2010, 13:56
Благодарю!
Интегрирование модулей OR-M128-S и OR-M128-DS в Arduino IDE предлагаю счтать выполененым!

Grem » 13 сен 2010, 15:39
интересно, оно кроме вас кому-нибудь нужно?
=DeaD= » 13 сен 2010, 17:43
Нужно

к тому же это повод пиарить наши контроллеры среди Ардуинщиков

Dmitri Vladimirovich » 13 сен 2010, 18:28
А я их уже убрал(. По словам Grem решил что и вправду кроме меня программа всем понятна. Возвращаяю обратно)
- Код: Выделить всё • Развернуть
#include <ORM128DS.h> //подключение библиотеки
void setup() { //функция, которая запускается один раз
or_m128ds_init(); //инициализация контроллера
}
void loop() //главный цикл
{
for(int a = 1; a++; a < 255) //плавное увеличение скорости
{
or_m128ds_motor_set_speed(a,0); //функция установки ШИМ. Значение от -255 до 255.
delay(10); //задержка для плавности изменения скорости
}
}
Ну а для сервы выкладывать может и не надо, там отличий почти нет, но на всякий случай... Может будут какие замечания к моему банальному стилю программирования
- Код: Выделить всё • Развернуть
#include <ORM128DS.h> //подключение библиотеки
void setup() { //функция, которая запускается один раз
or_m128ds_init(); //инициализация контроллера
}
void loop() //главный цикл
{
or_m128ds_servo_set_position(8, 1400); //функция установки положения качалки
delay(1000); //задержка, во время которой серва стоит
or_m128ds_servo_set_position(8, 1600); //функция установки положения качалки
delay(1000); //задержка, во время которой серва стоит
}
Последний раз редактировалось
Dmitri Vladimirovich 14 сен 2010, 11:06, всего редактировалось 3 раз(а).
Grem » 13 сен 2010, 21:51
2
Dmitri Vladimirovich, вместо
- Код: Выделить всё • Развернуть
int a=1;
for(a = 1; a++; a < 255){}
лучше писать
- Код: Выделить всё • Развернуть
for(int a = 1; a++; a < 255){}
Нужно объявлять прямо в цикле, а то при больших объемах кода фиг поймешь куда и зачем int a=1;. Тем более, что в последнем случае переменная локальная, т.е. при окончании цикла переменная
а удалится из ОЗУ, а в первом - будет всегда занимать память.
ALHIMIK » 13 сен 2010, 22:01
мб её(а) лучше сделать статичной тк произойдёт прерывание и в ней может оказать всё что угодно...
Grem » 13 сен 2010, 22:23
нечему ведь у него прерываться

Dmitri Vladimirovich » 14 сен 2010, 11:02
Благодарю за советы!
Я с циклом for работал первый или во второй раз когда писал эту программу)
Исправил.
Добавлено спустя 2 минуты 50 секунд:
2 ALHIMIK: попробую переделать, посмотрим, что получится.
Vooon » 14 сен 2010, 17:23
Ага, а еще попутано местами условие и инкремент.
- Код: Выделить всё • Развернуть
#define SOME_VALUE 255
for (int i=0; i < SOME_VALUE; i++) {
// expressions
}
Dmitri Vladimirovich » 14 сен 2010, 18:11
Благодарю за поправку. Как я писал в циклах не разбираюсь особо, так что не сердитесь

Dmitri Vladimirovich » 16 сен 2010, 18:18
От те раз!
С той же библиотекой IDE начал выдавть ошибку - не понятен ему какой - то таймер. Ошибка появилась внезапно. Вот что выдаёт:
Не подскажете в чём проблема?
- Вложения
-

Grem » 16 сен 2010, 19:13
Самое начало ругани покажи.
=DeaD= » 16 сен 2010, 19:37
Dmitri Vladimirovich писал(а):От те раз!
С той же библиотекой IDE начал выдавть ошибку - не понятен ему какой - то таймер. Ошибка появилась внезапно. Вот что выдаёт:
Не подскажете в чём проблема?
А что выбрано в Tools \ Board не для ORduino Nano ли?

А то в ATMega88 точно нет таких имён.
Dmitri Vladimirovich » 16 сен 2010, 20:16
Ну я вааще.

Реально другая Ардуина стояла, но не местная.
Хоть теперь всё работает.
Вообщем приношу свои извинения!
Самое начало ругани покажи.
Её не было.