Новое ядро для ардуино IDE

ускоренное ядро с раширенным функционалом

В данный форуме Вы можете создавать темы посвящённые расширению функционала программы или сайта. После рассмотрения Ваше предложение будет перенесено в соответствующее место
starshoy81
Лейтенант
Сообщения: 530
Зарегистрирован: 05.04.2016{, 23:30}
Репутация: 29
Откуда: Санкт-Петербург
Имя: Илья

Новое ядро для ардуино IDE

#1

Сообщение starshoy81 » 17.10.2019{, 12:42}

Мопед не мой, я только разместил объяву :).
Есть такой многостаночник - АлексГайвер. И вот он в соавторстве с ещё одним человеком сделал новое ядро для ардуино IDE, ускоренное и расширенное по сравнению со стандартным. Ссылка на страницу его сайта.
копирую оттуда описание:Показать
"Быстрое и лёгкое ядро для Arduino IDE с расширенной конфигурацией.
Основано на оригинальном ядре Arduino версии 1.8.9, большинство функций заменены на более быстрые и лёгкие аналоги, убрано всё лишнее и не относящееся к микроконтроллеру ATmega328p, убран почти весь Wiring-мусор, код упрощён и причёсан. Добавлено несколько функций и интересных вариантов компиляции: поддержка внутреннего тактового генератора, новая версия загрузчика, вшита новая версия компилятора и многое другое!
Разработано by Александр AlexGyver и Egor ‘Nich1con’ Zaharov"

"Изменения
Облегчено и ускорено

Время выполнения функций, мкс
Функция Arduino GyverCore Быстрее в
millis 1.06 us 1.00 us –
micros 1.19 us 1.13 us –
pinMode 2.90 us 0.57 us 5.09
digitalWrite 2.90 us 0.57 us 5.09
digitalRead 2.45 us 0.50 us 4.90
analogWrite 4.15 us 1.13 us 3.67
analogRead 112.01 us 5.41 us 20.70
analogReference 0.00 us 0.00 us –
attachInterrupt 1.20 us 1.18 us 1.02
detachInterrupt 0.82 us 0.57 us 1.44
tone 5.63 us 2.40 us 2.3

Занимаемое место, Flash, байт
Функция Arduino GyverCore Разница, Flash
millis 26 24 2
micros 24 20 4
pinMode 114 24 90
digitalWrite 200 24 176
digitalRead 190 24 166
analogWrite 406 48 358
analogRead 32 72 -40
analogReference 0 22 -22
attachInterrupt 212 180 32
detachInterrupt 198 150 48
tone 1410 740 670
Serial begin 1028 166 862
print long 1094 326 768
print string 2100 1484 616
print float 2021 446 1575
parseInt 1030 214 816
readString 2334 1594 740
parseFloat 1070 246 824

Примечание: analogRead и analogReference имеют расширенную функциональность и весят чуть больше
Скетч, состоящий из однократного вызова перечисленных выше функций, занимает

Ядро Arduino: 3446 байт (11%) Flash / 217 байт (10%) SRAM
Ядро GyverCore: 1436 байт (4%) Flash / 94 байт (4%) SRAM

Пустой скетч:

Ядро Arduino: 444 байт (1%) Flash / 9 байт (0%) SRAM
Ядро GyverCore: 202 байт (0%) Flash / 0 байт (0%) SRAM

Все библиотеки, работа которых зависит от стандартных функций (время, I/O), работают быстрее:

SPI: отправка байта данных по адресу (опустить latch, отправить адрес, отправить байт, поднять latch) занимает:
Стандартное ядро: 14 мкс (71 кГц)
GyverCore: 6 мкс (164 кГц)

uart является практически полным аналогом Serial, но весит в разы меньше и работает быстрее. Список функций смотри ниже в Добавлено.
Добавлено

Расширена подсветка синтаксиса (вплоть до названий регистров и битов)
Макрос bitToggle(value, bit), инвертирует состояние бита bit в байте value
Быстрая функция digitalToggle(pin), инвертирует состояние пина
Расширенная работа с АЦП
analogStartConvert(byte pin) – начать преобразование с выбранного пина
analogGet() – получить преобразованное значение (между analogStartConvert и analogGet можно выполнять действия, в отличие от ожидания в analogRead())
analogPrescaler(uint8_t prescl) – установить предделитель для АЦП (2, 4, 8, 16, 32, 64, 128) – управляет скоростью работы АЦП (скоростью оцифровки). Prescaler:
2: 3.04 мкс (частота оцифровки 329 000 кГц)
4: 4.72 мкс (частота оцифровки 210 000 кГц)
8: 8.04 мкс (частота оцифровки 125 000 кГц)
16: 15.12 мкс (частота оцифровки 66 100 кГц)
32: 28.04 мкс (частота оцифровки 35 600 кГц)
64: 56.04 мкс (частота оцифровки 17 800 кГц)
128: 112 мкс (частота оцифровки 8 900 Гц)
В функции analogRead(pin) вместо пина можно указать INTERNAL (получить значение внутреннего опорного напряжения) или THERMOMETR (получить приблизительную температуру МК). Примечание: нужно установить предделитель 128
Добавлен очень быстрый и лёгкий uart (аналог классу Serial)
uart.begin() – запустить соединение по последовательному порту со скоростью 9600
uart.begin(baudrate) – запустить соединение по последовательному порту со скоростью baudrate
uart.end() – выключить сериал
uart.peek() – вернуть крайний байт из буфера, не убирая его оттуда
uart.clear() – очистить буфер
uart.read() – вернуть крайний байт из буфера, убрав его оттуда
uart.write(val) – запись в порт
uart.print(val) – печать в порт (числа, строки, char array)
uart.println(val) – печать в порт с переводом строки
uart.available() – возвразает true, если в буфере что-то есть
uart.setTimeout(val) – установить таймаут для функций парсинга (по умолчанию 100 мс)
uart.parseInt() – принять целочисленное число
uart.readString() – принять строку
uart.readStringUntil() – принять строку по терминатору
uart.parseFloat() – принять число float
uart.parsePacket(dataArray) – принять пакет вида $50 60 70; в массив dataArray (смотри пример)
Добавлены расширенные настройки платы из меню платы
Выбор загрузчика
Выбор источника тактирования (внешний, внутренний)
Сохранять или очищать EEPROM
Вывод тактирования на ногу МК
Возможность отключить системный таймер 0 и освободить для себя вектор прерывания ovf
Замена Serial быстрым uart
Настройка или отключение B.O.D.
Возможность отключить стандартную инициализацию периферии
Выбор версии компилятора

Убрано

Убраны всякие сервисные файлы и прочий хлам, не относящийся к ATmega328 (wifi, USB), почищен код. Ядро полностью совместимо с остальными библиотеками, ничего из стандартных функций не вырезано."

*Форматирование таблиц съехало при копировании.
Вопрос вот в чём - имеет ли смысл использовать это ядро в ФЛПроге?

pan
Полковник
Сообщения: 2860
Зарегистрирован: 13.04.2017{, 11:57}
Репутация: 204
Имя: noname

Новое ядро для ардуино IDE

#2

Сообщение pan » 17.10.2019{, 13:20}

starshoy81 писал(а):
17.10.2019{, 12:42}
убрано всё лишнее и не относящееся к микроконтроллеру ATmega328p
значит все остальное работать не будет

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новое ядро для ардуино IDE

#3

Сообщение aidar_i » 17.10.2019{, 13:28}

Я же уже давал ссылку на него. Можно было и не выкладывать все сюда.

starshoy81
Лейтенант
Сообщения: 530
Зарегистрирован: 05.04.2016{, 23:30}
Репутация: 29
Откуда: Санкт-Петербург
Имя: Илья

Новое ядро для ардуино IDE

#4

Сообщение starshoy81 » 17.10.2019{, 14:11}

aidar_i, поиском по форуму не нашлось ничего, поэтому и запостил. Модераторы могут сносить тему тогда.

aidar_i
Полковник
Сообщения: 3125
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 676
Откуда: Уфа
Имя: Айдар
Контактная информация:

Новое ядро для ардуино IDE

#5

Сообщение aidar_i » 20.10.2019{, 06:53}

Вот ещё выпустили новое Иде для Ардуино
https://m.habr.com/ru/news/t/472194/

Anydy

Новое ядро для ардуино IDE

#6

Сообщение Anydy » 20.10.2019{, 09:52}

Что давно уже сделано в Platformio ... и зачем изобретать велосипед?

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Новое ядро для ардуино IDE

#7

Сообщение Sancho » 20.10.2019{, 10:32}

Тестил https://programino.com/ - очень даже ничего
Ключи есть.

Отправлено спустя 52 минуты 52 секунды:
Anydy, Ты им пользуешься, Platformio? по чеснаку. мне не удобно. особенно с бибками. а эта, programino, нормально, всё видно, откуда и чего.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Anydy

Новое ядро для ардуино IDE

#8

Сообщение Anydy » 20.10.2019{, 13:47}

Sancho писал(а):
20.10.2019{, 11:25}
Anydy, Ты им пользуешься, Platformio? по чеснаку. мне не удобно. особенно с бибками. а эта, programino, нормально, всё видно, откуда и чего.
Конечно....особенно нравится когда все видно в подсказках...какие у функции атрибуты например...да много чего приятного...
щас гляну твою ссылку....

Отправлено спустя 2 часа 29 минут 35 секунд:
Опа ...платная среда разработки для бесплатного контроллера....круто! зачем платить деньги когда есть намного круче бесплатная среда? или я что то не понял?

Отправлено спустя 2 минуты 51 секунду:
от 30 до 90 евро за аналог ардуино IDE ---перебор......

SSSergeich
Капитан
Сообщения: 708
Зарегистрирован: 06.02.2016{, 11:01}
Репутация: 37
Откуда: Ярославль
Имя: Сергей

Новое ядро для ардуино IDE

#9

Сообщение SSSergeich » 20.10.2019{, 16:56}

Sancho писал(а):
20.10.2019{, 11:25}
Тестил https://programino.com/ - очень даже ничего
Сань, а FlowCode не пробовал? Весьма визуальная среда, особенно по информации занятых портов и их состояние в дебаг режиме.
Знаю одного мужика, так он только в AlgoritmBuilder кодит, системы зажигания и системы впрыска для разных авто.

Anydy

Новое ядро для ардуино IDE

#10

Сообщение Anydy » 20.10.2019{, 19:19}

Sancho писал(а):
20.10.2019{, 11:25}
Ключи есть.
Саша...ну давай ключики...а то без них не интересно)))

Отправлено спустя 3 минуты 16 секунд:
SSSergeich писал(а):
20.10.2019{, 16:56}
FlowCode не пробовал?
Это все не то...наш FLProg круче!

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

Новое ядро для ардуино IDE

#11

Сообщение Ingwar » 20.10.2019{, 20:06}

Sancho писал(а):
20.10.2019{, 11:25}
очень даже ничего
Нашел версию 1.6.0
Только после запуска появляется окно и ... закрывается( Есть какие то тонкости установки? Пробовал в папку с IDE ставить - та же картина.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Anydy

Новое ядро для ардуино IDE

#12

Сообщение Anydy » 20.10.2019{, 20:15}

Я с официального сайта скачал - работает ....в общем нужно посмотреть....только без ключика даже не интересно изучать....
И еще -- бегло посмотрев не понял как добавить другие платы? тот же ЕСП8266 или ЕСП32?

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

Новое ядро для ардуино IDE

#13

Сообщение Ingwar » 20.10.2019{, 21:37}

Anydy писал(а):
20.10.2019{, 20:15}
Я с официального сайта скачал - работает
Проверил с официального. Прогресс чуть больше) Вылет после выбора расположения arduino.exe.

Стоит 10.0.18362.239 (Win10 RS6 [1903] May 2019 Update)
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

SSSergeich
Капитан
Сообщения: 708
Зарегистрирован: 06.02.2016{, 11:01}
Репутация: 37
Откуда: Ярославль
Имя: Сергей

Новое ядро для ардуино IDE

#14

Сообщение SSSergeich » 20.10.2019{, 22:32}

Anydy писал(а):
20.10.2019{, 19:22}
Это все не то...наш FLProg круче!
Для начинающих, ага, согласен! А вот для кончающих, хз, хз...))

Anydy

Новое ядро для ардуино IDE

#15

Сообщение Anydy » 20.10.2019{, 22:33}

Винда разная бывает....у меня тоже вин 10...натравил прогу на IDE 1.8.10 ....в триаале работает...кроме как не рабирался пока что ...некогда -- как подтянуть платы ЕСП..

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Новое ядро для ардуино IDE

#16

Сообщение Sancho » 21.10.2019{, 09:03}

Чего-то тут есть. :)
И тут 1.6.4

Отправлено спустя 1 час 24 минуты 56 секунд:
Anydy писал(а):
20.10.2019{, 22:33}
-- как подтянуть платы ЕСП..
Так
СпойлерПоказать
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Ingwar
Полковник
Сообщения: 1929
Зарегистрирован: 28.10.2015{, 22:47}
Репутация: 223
Откуда: Ленобласть
Имя: Игорь

Новое ядро для ардуино IDE

#17

Сообщение Ingwar » 21.10.2019{, 12:42}

Sancho писал(а):
21.10.2019{, 10:28}
Чего-то тут есть.
Как раз эта и не пошла...
Anydy писал(а):
20.10.2019{, 22:33}
Винда разная бывает....
У мну корпоративная... версия 1903 (с поддержкой Ryzen 3). Вечером попробую виртуалку на обычную 10ку накатить.
Люди в своем большинстве живо интересуются всем на свете, за исключением того, что действительно стоит знать.

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Новое ядро для ардуино IDE

#18

Сообщение Sancho » 21.10.2019{, 12:44}

Ingwar, У меня из этого комплекта, но на семёрке. Полёт нормальный.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Anydy

Новое ядро для ардуино IDE

#19

Сообщение Anydy » 21.10.2019{, 13:21}

Саша спасибо, ключик подошел к версии скачанной с оф сайта.....но давайте все же варезом обмениваться в личке....пусть повисят сутки эти сообщения а потом удалю...

Аватара пользователя
Sancho
Полковник
Сообщения: 4066
Зарегистрирован: 25.12.2015{, 17:32}
Репутация: 590
Откуда: Ярославль.
Имя: Александр
Контактная информация:

Новое ядро для ардуино IDE

#20

Сообщение Sancho » 21.10.2019{, 14:26}

Anydy писал(а):
21.10.2019{, 13:21}
пусть повисят сутки эти сообщения а потом удалю...
Ок.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.

Ответить

Вернуться в «Новые»