Телескопы покупают здесь


A A A A Автор Тема: Arduino для начинающих: вопросы и ответы  (Прочитано 12889 раз)

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

Оффлайн xdАвтор темы

  • *****
  • Сообщений: 17 977
  • Благодарностей: 378
    • Skype - deimos.belastro.net
  • Награды Открытие комет, астероидов, сверхновых звезд, научно значимые исследования.
    • Сообщения от xd
    • Белорусская любительская астрономическая сеть
По многочисленным просьбам создаю тему.
Давайте обсуждать, делиться опытом.
А ещё, если будет актуально, первое сообщение можно будет прилепить и завести здесь FAQ.


Уроки для начинающих. Очень подробно и доходчиво.

#0 Введение в курс. Содержание серии "Основы Arduino для начинающих" - YouTube
« Последнее редактирование: 12 Мар 2017 [15:49:35] от Deimos »
У природы нет плохой погоды, у неё просто на нас аллергия.

Учение без размышления бесполезно, но и размышление без учения опасно /Конфуций/
Слово есть поступок. /Л. Толстой/

Оффлайн Iovch

  • *****
  • Сообщений: 1 287
  • Благодарностей: 124
    • Сообщения от Iovch
Re: Arduino для начинающих: вопросы и ответы
« Ответ #60 : 17 Дек 2018 [20:50:18] »
Вопрос знатокам. Верна ли догадка, что код (boolean bX): if(!bX) bX = true; будет больше места занимать и медленнее отрабатываться чем просто присваивание bX= true; Есть ли смысл проверять в таком случае?
Ньютон SW150/750, Рефрактор триплет 100/365_H/M, CG4_GoTo_H/M, Datyson T7C, Levenhuk T510NG, Canon 450Da, БП2 10х50 Berkut

Оффлайн Eddy_Em

  • *****
  • Сообщений: 1 228
  • Благодарностей: 39
  • САО РАН. Буково forever!
    • Сообщения от Eddy_Em
    • Я на гитхабе
Re: Arduino для начинающих: вопросы и ответы
« Ответ #61 : 17 Дек 2018 [21:25:54] »
Верна ли догадка, что код (boolean bX): if(!bX) bX = true; будет больше места занимать и медленнее отрабатываться чем просто присваивание bX= true;
От степени оптимизации зависит. Посмотрите ассемблерный листинг для разных -Ox.

Оффлайн xdАвтор темы

  • *****
  • Сообщений: 17 977
  • Благодарностей: 378
    • Skype - deimos.belastro.net
  • Награды Открытие комет, астероидов, сверхновых звезд, научно значимые исследования.
    • Сообщения от xd
    • Белорусская любительская астрономическая сеть
Re: Arduino для начинающих: вопросы и ответы
« Ответ #62 : 17 Дек 2018 [22:02:37] »
Если volatile bool bX, то точно будет.
Эксперимент показал, что несмотря на возможность оптимизации в данном случае, компилятор с -O2, -O3, -Ofast, -Os её не выполнил.
У природы нет плохой погоды, у неё просто на нас аллергия.

Учение без размышления бесполезно, но и размышление без учения опасно /Конфуций/
Слово есть поступок. /Л. Толстой/

Оффлайн Iovch

  • *****
  • Сообщений: 1 287
  • Благодарностей: 124
    • Сообщения от Iovch
Re: Arduino для начинающих: вопросы и ответы
« Ответ #63 : 17 Дек 2018 [23:10:15] »
Эксперимент показал, что несмотря на возможность оптимизации в данном случае, компилятор с -O2, -O3, -Ofast, -Os её не выполнил.

Т.е. насколько я понял, простое присваивание - быстрый и оптимальный вариант. Значит оптимизировали реальный код  :)
boolean AxisPush(char* sSTR) //Строка типа "Pw5" - толчек вправо 5 микрошагов
{
 boolean AxisPush=false;
 int ims=atoi(sSTR+2);   //Количество микрошагов
 if ((ims>0)&&(ims<500)) //Микрошагов разрешено
   {
     if(sSTR[1]=='w') {Force_X(false); Stepper_X_step((iTMode==2?-iStDX:iStDX)*ims); ulMilisec = millis(); ulLoopTimer = ulMilisec;} //По Х вправо ims
     if(sSTR[1]=='e') {Force_X(false); Stepper_X_step((iTMode==2?iStDX:-iStDX)*ims); ulMilisec = millis(); ulLoopTimer = ulMilisec;} //По Х влево  ims
     if(sSTR[1]=='n') {Force_Y(false); Stepper_Y_step( iStDY*ims);} //По Y вверх ims
     if(sSTR[1]=='s') {Force_Y(false); Stepper_Y_step(-iStDY*ims);} //По Y вниз  ims
     AxisPush=true;
   }
 return AxisPush;
}
Ньютон SW150/750, Рефрактор триплет 100/365_H/M, CG4_GoTo_H/M, Datyson T7C, Levenhuk T510NG, Canon 450Da, БП2 10х50 Berkut

Оффлайн Кvatt1000

  • *****
  • Сообщений: 837
  • Благодарностей: 9
  • Мне нравится этот форум!
    • Сообщения от Кvatt1000
Re: Arduino для начинающих: вопросы и ответы
« Ответ #64 : 04 Мар 2019 [20:36:17] »
Добрый вечер !
Начал изучать широкоформатный и общественный Arduino )
Купил модуль контроллера https://roboshop.spb.ru/Arduino-mega-2560-wi-fi-esp-8266
Контроллер mega2560 связь ch340.
https://m.habr.com/ru/post/402429/
Скачал первые попавшиеся драйвера на их же сайте.
Протыкался пол дня, результат нулевой. Драйвер установился и только. Сисетма windows 7 32bit.
Пробовал на другой машине, тоже самое, система таже.
В среде arduino плата не видится . Шаманские танцы с бубном продолжались целый день.
Скачал по ссылке одного из сайтов официальные драйвера.
Установились без проблем с подписью (авторской).
Танцы теже - бубен другой.
Переключал перемычки dip - 7 штук. Бесполезно.
https://m.habr.com/ru/post/402429/
Нажимал кнопку reset на плате arduino в разных режимах соединения - бесполезно.
Сегодня заехал в магазин купил дешевый модуль на чипе ch340.
Буду дальше экспериментировать.

Конечно не хватает МАТчасти, но не думал, что всё так плохо.
Canon EOS Canon 1100D - в шкафу
Космос тяжело даётся.......

Оффлайн ASheff

  • *****
  • Сообщений: 10 499
  • Благодарностей: 247
  • Артем
    • Сообщения от ASheff
Re: Arduino для начинающих: вопросы и ответы
« Ответ #65 : 04 Мар 2019 [22:43:40] »
А в IDE ардуины выбираете нужный тип платы?
- Meade Maxvision 80/480 APO
- SW HEQ5Pro belt-mod
- Canon EOS 550Da, ASI 178MC, Datyson T7M
- MC Helios 44M-6, MC Юпитер-37А,Canon 70-200/4

Оффлайн Кvatt1000

  • *****
  • Сообщений: 837
  • Благодарностей: 9
  • Мне нравится этот форум!
    • Сообщения от Кvatt1000
Re: Arduino для начинающих: вопросы и ответы
« Ответ #66 : 05 Мар 2019 [00:08:09] »
А в IDE ардуины выбираете нужный тип платы?
Танцы с бубном продолжались около часа. Потом заметил интересное сообщение в среде Arduino.
"Сом - порт закрыт, не обслуживается." - не дословно, но смысл в этом.
Тогда подумал о винде 7.
Оказалось "брандмауэр винды" блокирует связь по usb , через эмуляцию сом-порта.
Отключил "брандмауэр" и всё заработало.
Прошил сначала "outinserial"из примеров , открыл монитор сом-порта - данные поступают, светодиоды на модуле контроллера мигают.
Прошил "blinking" тоже заработало, светодиод мигает.
  В дополнение
1) антивирус avast, думал с ним проблемы - никакой разницы работает или остановлен.
2) антибаннер adguard , тоже самое, никакой разницы.

Буду дальше заниматься. Теперь уже непосредственно с кодом и модулями  :)
Canon EOS Canon 1100D - в шкафу
Космос тяжело даётся.......

Оффлайн ASheff

  • *****
  • Сообщений: 10 499
  • Благодарностей: 247
  • Артем
    • Сообщения от ASheff
Re: Arduino для начинающих: вопросы и ответы
« Ответ #67 : 05 Мар 2019 [00:09:33] »
Оказалось "брандмауэр винды" блокирует связь по usb

Странно, первый раз о таком слышу :)
- Meade Maxvision 80/480 APO
- SW HEQ5Pro belt-mod
- Canon EOS 550Da, ASI 178MC, Datyson T7M
- MC Helios 44M-6, MC Юпитер-37А,Canon 70-200/4

Оффлайн Кvatt1000

  • *****
  • Сообщений: 837
  • Благодарностей: 9
  • Мне нравится этот форум!
    • Сообщения от Кvatt1000
Re: Arduino для начинающих: вопросы и ответы
« Ответ #68 : 05 Мар 2019 [00:12:30] »
Странно, первый раз о таком слышу
На сегодня всё, а завтра если не забуду, то ещё раз проверю брандмауэр.
И блокировка, если так оно и есть - именно при эмуляции сом-порта.
В добавок ко всему, при отключении из гнезда usb провода платы arduino - в диспетчере оборудования windows сом-порт исчезает. И соответственно обратно , при подключении.
Canon EOS Canon 1100D - в шкафу
Космос тяжело даётся.......

Оффлайн ASheff

  • *****
  • Сообщений: 10 499
  • Благодарностей: 247
  • Артем
    • Сообщения от ASheff
Re: Arduino для начинающих: вопросы и ответы
« Ответ #69 : 05 Мар 2019 [00:15:19] »
именно при эмуляции сом-порта.
А разве по другому бывает с ардуиной? Там вроде всегда com-порт..
- Meade Maxvision 80/480 APO
- SW HEQ5Pro belt-mod
- Canon EOS 550Da, ASI 178MC, Datyson T7M
- MC Helios 44M-6, MC Юпитер-37А,Canon 70-200/4

Оффлайн Кvatt1000

  • *****
  • Сообщений: 837
  • Благодарностей: 9
  • Мне нравится этот форум!
    • Сообщения от Кvatt1000
Re: Arduino для начинающих: вопросы и ответы
« Ответ #70 : 05 Мар 2019 [00:18:19] »
именно при эмуляции сом-порта.
А разве по другому бывает с ардуиной? Там вроде всегда com-порт..
Ещё раз говорю - я могу ошибаться, но такое впечатление драйвер сом-порта сам по себе, а обмен данными под управлением брандмауэра.
Canon EOS Canon 1100D - в шкафу
Космос тяжело даётся.......

Оффлайн Кvatt1000

  • *****
  • Сообщений: 837
  • Благодарностей: 9
  • Мне нравится этот форум!
    • Сообщения от Кvatt1000
Re: Arduino для начинающих: вопросы и ответы
« Ответ #71 : 05 Мар 2019 [07:55:39] »
Вот здесь описана настройка брандмауэра, в частности для портов
https://itfollow.ru/brandmauer-windows-7-otklyucenie/
Вечером попробую настроить на разрешение для сом-порта.
Canon EOS Canon 1100D - в шкафу
Космос тяжело даётся.......

Оффлайн xdАвтор темы

  • *****
  • Сообщений: 17 977
  • Благодарностей: 378
    • Skype - deimos.belastro.net
  • Награды Открытие комет, астероидов, сверхновых звезд, научно значимые исследования.
    • Сообщения от xd
    • Белорусская любительская астрономическая сеть
Re: Arduino для начинающих: вопросы и ответы
« Ответ #72 : 05 Мар 2019 [08:31:50] »
Какое-то странное бубносотрясательство.
У природы нет плохой погоды, у неё просто на нас аллергия.

Учение без размышления бесполезно, но и размышление без учения опасно /Конфуций/
Слово есть поступок. /Л. Толстой/

Оффлайн Кvatt1000

  • *****
  • Сообщений: 837
  • Благодарностей: 9
  • Мне нравится этот форум!
    • Сообщения от Кvatt1000
Re: Arduino для начинающих: вопросы и ответы
« Ответ #73 : 06 Мар 2019 [00:54:12] »
Перепроверил вечером влияние брандмауэра на обмен данными через сом-порт.
От брандмауэра похоже не зависит обмен данными.
Но всё таки. Две платы на столе. У обоих контроллер ch340.
Одна прошивается и передает данные на сом-порт, другая же на отрез отказывается прошиваться.
Позже приложу принт скрин с ошибкой.
Canon EOS Canon 1100D - в шкафу
Космос тяжело даётся.......

Оффлайн ASheff

  • *****
  • Сообщений: 10 499
  • Благодарностей: 247
  • Артем
    • Сообщения от ASheff
Re: Arduino для начинающих: вопросы и ответы
« Ответ #74 : 06 Мар 2019 [00:56:11] »
Две платы на столе.

Идентичные?
- Meade Maxvision 80/480 APO
- SW HEQ5Pro belt-mod
- Canon EOS 550Da, ASI 178MC, Datyson T7M
- MC Helios 44M-6, MC Юпитер-37А,Canon 70-200/4

Оффлайн Кvatt1000

  • *****
  • Сообщений: 837
  • Благодарностей: 9
  • Мне нравится этот форум!
    • Сообщения от Кvatt1000
Re: Arduino для начинающих: вопросы и ответы
« Ответ #75 : 06 Мар 2019 [08:26:33] »
Идентичные?

Первая не работает https://roboshop.spb.ru/Arduino-mega-2560-wi-fi-esp-8266
Представляет собой модернизированную версию платы Arduino Mega 2560. Полная интеграция на одной плате микропроцессора ATmega2560 и чипа Wi-Fi ESP8266.

Вторая работает
 https://roboshop.spb.ru/arduino-uno-ch340
Arduino Uno, в котором в качестве эмулятора COM порта использован чип CH340G, вместо Atmega16U2.
Canon EOS Canon 1100D - в шкафу
Космос тяжело даётся.......

Оффлайн Serj

  • *****
  • Сообщений: 4 532
  • Благодарностей: 94
    • Сообщения от Serj
    • Тверской астроклуб
Re: Arduino для начинающих: вопросы и ответы
« Ответ #76 : 06 Мар 2019 [09:05:28] »
Первая не работает https://roboshop.spb.ru/Arduino-mega-2560-wi-fi-esp-8266
Представляет собой модернизированную версию платы Arduino Mega 2560. Полная интеграция на одной плате микропроцессора ATmega2560 и чипа Wi-Fi ESP8266.
Накупят всякого...  Где на неё мануал найти?
We have met the enemy and he is us.

Оффлайн nolv

  • *****
  • Сообщений: 2 662
  • Благодарностей: 194
    • Сообщения от nolv
Re: Arduino для начинающих: вопросы и ответы
« Ответ #77 : 06 Мар 2019 [09:49:25] »
Первая не работает https://roboshop.spb.ru/Arduino-mega-2560-wi-fi-esp-8266

Dip-переключателями режим выбери.

Оффлайн Кvatt1000

  • *****
  • Сообщений: 837
  • Благодарностей: 9
  • Мне нравится этот форум!
    • Сообщения от Кvatt1000
Re: Arduino для начинающих: вопросы и ответы
« Ответ #78 : 06 Мар 2019 [20:23:20] »
Dip-переключателями режим выбери.
Спасибо конечно, может чего и упустил. Но dip выбирал. Не помогло .

Да. Вы правы. Комбинация , которую я отбросил 00110000. Производит обмен только контроллер-usb.
Я честно ее отбросил. Было интересней с wifi  :)
Прошивка залетела радостно и контроллер ожил  ::)

Всем спасибо!
А для себя личный опыт. Теперь надо штудировать МатЧасть....
Сейчас посыплются комментарии... Что же, пишите )
« Последнее редактирование: 06 Мар 2019 [21:59:38] от Кvatt1000 »
Canon EOS Canon 1100D - в шкафу
Космос тяжело даётся.......

Оффлайн Vitaliy

  • *****
  • Сообщений: 42 178
  • Благодарностей: 1331
    • Сообщения от Vitaliy
    • Два стрельца
Re: Arduino для начинающих: вопросы и ответы
« Ответ #79 : 19 Мар 2019 [22:53:54] »
XOD — это графический язык программирования с открытым кодом. https://xod.io
Народ начал возмущаться, почему российский продукт на английском. В конце концов из русских им почти не пользуется никто. В сети нет обучающих роликов на русском. Нет форума на русском.
Зато активно пользуются иностранцы. Видео есть и форумы.

XOD — графический язык программирования для Arduino - YouTube

Вот только два видео на русском

Автоматическое мусорное ведро своими руками. Программируем Arduino на XOD - YouTube
.
.
Автоматический увлажнитель воздуха своими руками. Arduino и XOD - YouTube
Добро пожаловать на сайт Два стрельца http://www.shvedun.ru/
Телескоп Добсона 8" (203мм) по кличке "Карандаш", Advanced C9¼-SGT XLT, Celestron NexStar 5 SE
Видео Мой канал на Ютубе - http://www.youtube.com/user/VitaliyShvedun
Мои 3D модели https://www.thingiverse.com/vitaliysh/designs
Дзен   https://dzen.ru/vitaliysh
Rutube https://rutube.ru/channel/308317