Снежинки непонятки со скейтчем

Ардуинщики всех стран - объединяйтесь! В этом форуме, конечно.
Ответить
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2363
Зарегистрирован: Ср июл 02, 2008 18:30:00
Откуда: Таганрог

Сообщение Efimozi »

хочу повторить проект

https://youtu.be/-nvy44W74eg

https://github.com/SerGO83/ws2812_chris ... 5-arduino-


но не знаю что делать с приведенными исходниками, как из этого получить скейтч
Последний раз редактировалось Efimozi Сб ноя 04, 2023 19:04:34, всего редактировалось 3 раза.
Реклама
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Изучить радиоэлектронику, программирование, слесарное дело.
Контактная информация:
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2363
Зарегистрирован: Ср июл 02, 2008 18:30:00
Откуда: Таганрог

Сообщение Efimozi »

молодчага! исчерпывающе!
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Каков вопрос, таков ответ :dont_know:
Писать статью за того ютупера я точно не буду. Подождём, мож кто другой менее ленивый.
Контактная информация:
Реклама
Эиком - электронные компоненты и радиодетали
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2363
Зарегистрирован: Ср июл 02, 2008 18:30:00
Откуда: Таганрог

Сообщение Efimozi »

да я и не предлагаю писать программу, пытаюсь разобраться с тем, что есть и понять пригодно ли оно
Реклама
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

[uquote="Efimozi",url="/forum/viewtopic.php?p=4497889#p4497889"]как из этого получить скейтч[/uquote]

*.ino - Arduino Sketch File
Это уже скетч (без "й" произносится)

Добавлено after 1 minute 53 seconds:
[uquote="Efimozi",url="/forum/viewtopic.php?p=4497896#p4497896"]понять пригодно ли оно[/uquote]
кликаете в гитхабе на файл, видите его содержимое. несколько сотен строк кода....
Контактная информация:
Реклама
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2363
Зарегистрирован: Ср июл 02, 2008 18:30:00
Откуда: Таганрог

Сообщение Efimozi »

я так понимаю это две части одного скетча, как это всё собрать до кучи и возможно ли? если этот код вставить в ардуино IDE, проверку не проходит
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

ок, ща поставлю. Давно собирался (раз мир требует ардуино)...

Добавлено after 23 minutes 38 seconds:
Neopixel strip в менеджере библиотек установлен?
Контактная информация:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2363
Зарегистрирован: Ср июл 02, 2008 18:30:00
Откуда: Таганрог

Сообщение Efimozi »

Adafruit_NeoPixel по идее есть, метеоритный дождь делал пару часов назад
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

тогда, наверное, придётся раскрыть тайну, какую ошибку выдает эта унылая среда Ардуино ИДЕ (ща разберёмся и я её удалю и постараюсь забыть)
Контактная информация:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2363
Зарегистрирован: Ср июл 02, 2008 18:30:00
Откуда: Таганрог

Сообщение Efimozi »

exit status 1
'effect008' was not declared in this scop

Вот в этом тексте

/******************************************************************************
*
* Автор SerGO
* sergo83@mail.ru
*
*******************************************************************************/
#include <Adafruit_NeoPixel.h>

#define PIN 5

#define LEN_ROW 5 // кол-во точек в луче
#define LEN_STAR 31 // кол-во точек в звезде
#define NUM_ROW 6 //кол-во лучей в звезде
#define NUM_STARS 9 //кол-во звезд в гирлянде
#define MAX_LEDS 280 //количство светодидов в ленте

int cnt_j, cnt_i,cnt_k, num_kadr, stage;

Adafruit_NeoPixel strip = Adafruit_NeoPixel(MAX_LEDS, PIN, NEO_KHZ800+NEO_GRB);

void setup() {
strip.begin();
}

void loop() {
unsigned char i;

for (i = 0; i<6; i++) { effect008();} dimmer_off();
for (i = 0; i<6; i++) { effect007();} dimmer_off();
for (i = 0; i<6; i++) { effect006();} dimmer_off();
for (i = 0; i<6; i++) { effect005();} dimmer_off();
for (i = 0; i<20; i++) { effect004();} dimmer_off();
for (i = 0; i<300; i++) { effect003();} dimmer_off();
for (i = 0; i<100; i++) { test_spinner_spiral_dot();} dimmer_off();
for (i = 0; i<10; i++) { effect001();} dimmer_off();
for (i = 0; i<10; i++) { effect002();} dimmer_off();
}




что с вот этим текстом делать?

https://github.com/SerGO83/ws2812_chris ... _stars.ino
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария

Сообщение veso74 »

У Вас есть Arduino или модуль на STM32F103?
Если Arduino, все необходимые файлы собрал в одну папку.
При необходимости там же находятся и скомпилированные hex файли (к UNO, Nano, Pro Mini).
(отредактировал код за несколько неточностей и предупреждения: главным образом из-за типов данных и их границ)
Старт файл: stars_9-6-5.ino
Вложения
stars_9-6-5.zip
(55.91 КБ) 67 скачиваний
Последний раз редактировалось veso74 Сб ноя 04, 2023 20:54:24, всего редактировалось 1 раз.
Контактная информация:
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Должно быть так:
Создана папка с именем stars_9-6-5
В ней должны быть два файла: effects_stars.ino и stars_9-6-5.ino
Должна быть подключена библиотека Adafruit_NeoPixel

Я всё это сделал, у меня всё скомпилировалость.

В тоже время я лишний раз убедился, какое это говно - ардуино, и код в ней тоже говно. Компилятор лжёт неправильными варнингами,
не разбираясь в типах, а программист пишет подобное:

Код: Выделить всё

for (m = 0; m < LEN_STAR; m++) {  //цикл для зажигания одной цвезды одним цветом
   cnt_kadr = num_kadr * LEN_STAR;
   int temp = m + cnt_kadr - lenShlf*LEN_STAR;
   if ((temp>=0)&&(temp<MAX_LEDS)) {
       strip.setPixelColor(temp , strip.gamma32(strip.ColorHSV(180*180,255,25)));
   }
}
Хотя должен был как-то так, не вычисляя одно и тоже в цикле:

Код: Выделить всё

uint temp = (uint)((num_kadr - lenShlf)*LEN_STAR);
uint gamma = strip.gamma32(strip.ColorHSV(180*180,255,25));
for (m = 0; m < LEN_STAR; m++) {  //цикл для зажигания одной цвезды одним цветом
   if ((temp + m)<MAX_LEDS)) {
      strip.setPixelColor(temp , gamma );
   }
}
не, в топку ардуино. Это путь к деградации и повышенному расходу валерьянки.
Контактная информация:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2363
Зарегистрирован: Ср июл 02, 2008 18:30:00
Откуда: Таганрог

Сообщение Efimozi »

Спасибо, мужики, сейчас сгоняю в гараж, вернусь и буду пробовать
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

[uquote="veso74",url="/forum/viewtopic.php?p=4497974#p4497974"](отредактировал код за несколько неточностей и предупреждения: главным образом из-за типов данных и их границ)[/uquote]
нормально там с границами, там с ардуино ненормально.
Ваша редакция:

Код: Выделить всё

  uint16_t tmp = 220*18;
        strip.setPixelColor(j + cnt_kadr , strip.gamma32(strip.ColorHSV(tmp,255,25)));
было:

Код: Выделить всё

 
        strip.setPixelColor(j + cnt_kadr , strip.gamma32(strip.ColorHSV(220*180,255,25)));
найдите одно отличие...
strip.ColorHSV, первый аргумент имеет тип uint16_t, 220*180 = 39600, что никак не вылетает из диапазона, притом, что если написать

Код: Выделить всё

 
        strip.setPixelColor(j + cnt_kadr , strip.gamma32(strip.ColorHSV(39600,255,25)));
то варнинг чудесным образом исчезает.
Контактная информация:
Поставщик валерьянки для Кота
Сообщения: 1925
Зарегистрирован: Сб май 05, 2012 20:24:52
Откуда: KN34PC, Болгария

Сообщение veso74 »

Да, "реакции" комплятора понятны, но часто непредсказуемы, но их обходим и идем дальше :).
Ardunimo-среда замечательная, и она привлекает все больше и больше людей :).
В каждой среде (для меня: еще в AVR, PIC, STM8/32 ...) есть свои недостатки и сюрпризы (отрицательные). Иначе будет скучно :P.
Контактная информация:
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Это да. Но после громадной, тяжёлой и суперудобной и быстрой MS Visual Studio я с ужасом увидел, как работает Ардуино ИДЕ, написанная на яве... это пипец - библиотеку в менеджере просто не смог подключить, он 15 минут обновлял список, любое нажатие в строке вызывало его ступор. Тпы аргументов функции не подсвечиваются, а файл библиотеки открыть не позволяет, и как тогда быть-то? Неее... не хочу больше. Согласен, в других средах бывают косяки. Но после VS и IAR, Arduino IDE - унылое г, не способное по клику на варнинг перенаправить в место возникновения....
Контактная информация:
Поставщик валерьянки для Кота
Аватара пользователя
Сообщения: 2363
Зарегистрирован: Ср июл 02, 2008 18:30:00
Откуда: Таганрог

Сообщение Efimozi »

Ещё раз спасибо, ребята, я не спец в программировании, и если честно, спасаюсь графической средой программирования FL Prog, за что очень благодарен создателям этой среды!

Вопрос с программированием решен - теперь паять, слесарить, - это по мне!
Друг Кота
Сообщения: 13796
Зарегистрирован: Чт сен 20, 2007 14:08:00

Сообщение kalobyte »

Martian писал(а): Но после VS и IAR, Arduino IDE - унылое г, не способное по клику на варнинг перенаправить в место возникновения....
есть в ерсия 2.0 на басе вс кода, там все есть и еще больше
тематические ответы только в форуме, в приват не пишите
Друг Кота
Сообщения: 12867
Зарегистрирован: Сб дек 18, 2021 19:25:32

Сообщение Martian »

Это которая требует вин10? Нет уж, "не собираюсь из-за какой-то дуры два этажа сносить"
Контактная информация:
Ответить

Вернуться в «Arduino»