roboforum.ru

Технический форум по робототехнике.
Текущее время: 11 мар 2025, 08:54

Часовой пояс: UTC + 4 часа




Начать новую тему Ответить на тему  [ Сообщений: 1911 ]  На страницу 1, 2, 3, 4, 5 ... 128  След.
Автор Сообщение
 Заголовок сообщения: Вопросы новичка.
СообщениеДобавлено: 04 янв 2017, 17:44 
Не в сети

Зарегистрирован: 04 янв 2017, 17:31
Сообщения: 1
Добрый день!

С миром робототехники и ардуино я знаком совсем недавно, буквально 3-4 дня.
Но имею некоторый базовый набор знаний, который позволил мне сделать несколько программ из разряда мигания диодом и т.п. не заглядывая в туториалы.

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

Программирую на ОС Linux Mint.

1. Среда программирования. Язык программирования C++ является для меня одним из основных на работе, и меня удручает "родная" среда программирования, где лично мне не удалось найти стандартный набор вещей из std, типа vector и т.п.

В связи с этим меня интересует вопрос, какой посоветуете минимальный набор программ/утилит для написания программ на C++(желательно с поддержкой 11 стандарта) для успешной компиляции и прошивки микроконтроллера. Конечно было бы неплохо если бы это была некая надстройка над IDE Eclipse (её я как раз и установил, но не смог так же обнаружить поддержку std::).

2. Напоминаю что вопрос от человека с электротехникой на Вы. Не очень понятен момент. Допустим у меня есть led шкала (на 10 диодов), каждый диод я подключил напрямую к плате (резисторы и т.п. в схеме присутствуют), но я тем самым занял почти все пины на плате, допустим если я захочу добавить ещё 1 шкалу в некоторое абстрактное устройство - я не смогу его подключить к плате?

Т.е. у меня будет по факту 2 шкалы с 10 диодами, итого выходит 20 диодов, на плате явно меньше чем 20 пинов, а мне хотелось бы зажигать определённый светодиод в шкале.

Как обычно решают такую проблемму? (Вопрос немного утрированный, просто интересно на будущеее, возможно я не вижу простого решения в лоб)


Спасибо! Надеюсь найдётся человек, который сможет меня натолкнуть на путь истинный.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 06 янв 2017, 00:49 
Не в сети

Зарегистрирован: 07 авг 2010, 21:29
Сообщения: 1725
Откуда: КМВ
прог. языки: C
ФИО: Андрей
Стандартное решение "в лоб" - использовать для управление светодиодами "матрицу". Нужно 20 штук? бСоединяем их в прямоугольную матрицу 4 ряда 5 столбцов. в каждом ряду соединяем аноды, в каждом столбце - катоды. соответственно 5 выводов ардуинки подключаем к столбцам (катодам), ещё 4 выводов - к рядам.
Управляемых - поочередно подавая "1" на ряды, при этом выставляя на столбцах, в тех позициях что должны светиться "0".

Добавлено спустя 8 минут 13 секунд:
Ну и расширять можно - увеличивая количество столбцов/рядов.
Прочие варианты также возможны, микросхемы-расширители например.
А ещё есть - адресуемые светодиоды. С тремя ногами каждый. Питание, земля и данные. тогда для управления сотней светодиодов потребуется всего одна нога.

Добавлено спустя 2 минуты 35 секунд:
Насчет C++ - ничего не скажу, ИМХО в контроллере количество ресурсов не позволит использовать плюсы.

_________________
Дым, идущий из всех устройств в помещении предвещает появление электрика.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 06 янв 2017, 01:18 
Не в сети
Аватара пользователя

Зарегистрирован: 08 авг 2012, 00:38
Сообщения: 1129
Откуда: Нидерланды, Алмере
Skype: edwbes
ФИО: Эдуард
AndreyMG писал(а):
Как обычно решают такую проблемму? (Вопрос немного утрированный, просто интересно на будущеее, возможно я не вижу простого решения в лоб)

Выбирайте:
1. LED grid
2. сдвиговый регистр


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 06 янв 2017, 01:58 
Не в сети
Аватара пользователя

Зарегистрирован: 06 окт 2004, 18:01
Сообщения: 24218
Откуда: Ебург
прог. языки: C++ / PHP / 1C
ФИО: Антон Ботов
3. Расширитель портов с интерфейсом I2C (например, PCF8574, есть даже готовые мини-платы )

_________________
Проект [[Open Robotics]] - Универсальные модули для построения роботов


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 06 янв 2017, 02:22 
Не в сети
Аватара пользователя

Зарегистрирован: 30 сен 2008, 18:49
Сообщения: 2683
Откуда: Где-то в Латинской Америке
AndreyMG писал(а):
... не удалось найти стандартный набор вещей ...

Standard C++ for Arduino


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 14:13 
Не в сети
Аватара пользователя

Зарегистрирован: 03 янв 2013, 16:27
Сообщения: 1386
Вот решил приобщиться к программированию... Проходит время "паялок" на 2-3 транзисторах и микросхемах, грядёт эра простых конструкций на Ардуино...Себе поставил верхнюю планку сделать программу для 4 светодиодных гирлянд (чтоб как у китайцев на 8 программ). Заказал, как мне кажется, то что надо, вспомнил свой "безмашинный школьный курс про алгоритмы" и написал программку по образу и подобию (для начала.., пока плата дойдёт).И всё ничего, но просмотрел соответствующие темы на форуме и стали возникать сомнения - всё ли я правильно сделал? Если не трудно, коллеги, подсобите.


Вложения:
ООН-R3-MEGA328P-ATMEGA16U2-для-Arduino-Совместимый-Кабель-USB.jpg_50x50.jpg
ООН-R3-MEGA328P-ATMEGA16U2-для-Arduino-Совместимый-Кабель-USB.jpg_50x50.jpg [ 1.41 КиБ | Просмотров: 17173 ]
ООН-R3-MEGA328P-ATMEGA16U2-для-Arduino-Совместимый-Кабель-USB.jpg_50x50 (1).jpg
ООН-R3-MEGA328P-ATMEGA16U2-для-Arduino-Совместимый-Кабель-USB.jpg_50x50 (1).jpg [ 1.9 КиБ | Просмотров: 17213 ]
программа бег. огней.jpg
программа бег. огней.jpg [ 35.56 КиБ | Просмотров: 16773 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 15:46 
Не в сети

Зарегистрирован: 03 янв 2012, 12:55
Сообщения: 3298
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...
Ещё нужно правильно выбрать то, чем собираетесь управлять. Тут прямая зависимость: цена/удобство.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 16:15 
Не в сети
Аватара пользователя

Зарегистрирован: 03 янв 2013, 16:27
Сообщения: 1386
Вот такую на алиэкспресс заказал... Зря?


Вложения:
плата.jpg
плата.jpg [ 168.59 КиБ | Просмотров: 16803 ]
Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 16:26 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Почему зря? Самый классик. Еще закажи mini pro десяток, они по <100р стОят. Это позволит преодолеть страх потери бойца. :) Да и для твоих игрушек будет более подходящий размер.


Еще проводочков закажи, папа-папа, папа-мама, мама-мама. Очень хорошо отучает паять. Я начинаю забывать про паяльник :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 16:39 
Не в сети
Аватара пользователя

Зарегистрирован: 03 янв 2013, 16:27
Сообщения: 1386
Понял, закажу...А программа "по русски написана"?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 17:20 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Ну нормальный код для начала. Только лучше код выкладывать в теге "code"
Назначать состояние "int n = 1;" - лишнее, т.к. потом идет переназначение в "for (n=1...". Правильно будет так: "int n;". Еще для циклов "for" лучше использовать беззнаковые переменные, не "int n;", a "unsigned int n;". Потом это избавит от лишних предупреждений при компиляции. Ну это когда ты слезешь с arduino ide и перейдешь на чистый gcc :)
Еще, если ты используешь стиль: "for (int k = 1...", то используй этот стиль и для переменной "n".
Еще в ардуинах есть специфика, нужен "void setup()" и "void loop(){}"
Самый лучший путь быстрого старта с ардуиной - перепробовать примеры, начни с примера blink.

Добавлено спустя 4 минуты 27 секунд:
Ой, забыл, на arduino mini нет usb/com переходника, нужен отдельный, закажи пару штук. Вообще, usb/com - расходник и нужная штука, у меня их постоянно не хватает...

https://ru.aliexpress.com/wholesale?ltype=wholesale&d=y&origin=y&isViewCP=y&catId=0&initiative_id=SB_20170119045730&SearchText=usb+com+ttl+adapter&blanktest=0&tc=af

Добавлено спустя 2 минуты 22 секунды:
Для батарейных игрушек используй ардуины про мини на 3 вольта, но у них пониженная частота - 8мгц.

Добавлено спустя 19 минут 50 секунд:
Ой, "void setup()" и "void loop(){}" были у тебя, пойду таблеточки от невнимательности приму...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 17:24 
Не в сети
Аватара пользователя

Зарегистрирован: 18 апр 2009, 22:18
Сообщения: 10668
8 мгц это печально, есть же повышалки мелкие. за батарейные игрушки руки отпиливать давно нужно, есть же аккумуляторы. даже самые говёно-копеечные nimh прослужат в разы дольше, чем батарейки, а по деньгам разницы почти нет. пальчиковые ещё есть литиевые, давно уже достаточно недорогие, но если с литием кто-то не дружит (перезаряд, переразряд), лучше nimh.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 17:28 
Не в сети
Аватара пользователя

Зарегистрирован: 03 янв 2013, 16:27
Сообщения: 1386
Спасибо, пойду разбираться с рекомендациями...


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 17:29 
Не в сети
Аватара пользователя

Зарегистрирован: 13 янв 2011, 15:25
Сообщения: 8033
Откуда: Санкт-Петербург
Angel71 писал(а):
8 мгц это печально, есть же повышалки мелкие. за батарейные игрушки руки отпиливать давно нужно

Батарейным я называю все автономное, конечно лучше аккумы. Вот недавно на ардуино мини 3V, ds18b20 и nrf2401 сделал датчик беспроводной. Питается от часовой батарейки. Ну какая наф повышалка dc/dc? :shock:


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Вопросы новичка.
СообщениеДобавлено: 19 янв 2017, 19:07 
Не в сети

Зарегистрирован: 03 янв 2012, 12:55
Сообщения: 3298
Откуда: Москва
прог. языки: VB6, BASCOM, ASM...
https://ru.aliexpress.com/item/Nano-V3- ... 77152.html


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 1911 ]  На страницу 1, 2, 3, 4, 5 ... 128  След.

Часовой пояс: UTC + 4 часа


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

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


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
phpBB SEO