dlinyj: (Default)
[personal profile] dlinyj
Попросили меня знакомые помочь им с кодом для Ардуино. Я к ардуино отношусь ровно, не плохо и не хорошо. Хорошо, что она есть, плохо что люди на неё и останавливаются. Но народ пилит на ней свои железки, вот и я решил помочь.


Честно говоря я давно не брал в руки шашек, и давным давно ничего не писал для контроллеров. Ну на ардуинке на позапрошлой работе делал водосчётчики. Это было нужно как временное дешёвое решение, и оно себя вполне оправдало.Но там код писал от силы часа два, вместе с отладкой (до этого практически ничего не писал).
С контроллерами вообще редко сталкиваюсь. Нет, в код лазать приходиться - перенести что-то с контроллера, либо посмотреть прокол работы. Но писать - давно не писал.

Ну в общем, помогаю я с кодом. Типа по скайпу онлайн переписываю их код с пояснениями. И тут понимаю, что для опроса датчиков и кнопок в коде не хватает таймера. Ибо можно пропустить нажатие. Ну и начинаю смотреть что сделано для ардуины в области таймеров. И волосы шевелятся... Си++ на 8-ми битах, всякие кривые скетчи... Ужас. В общем, я плюнул и начал смотреть, как это всё сделать по взрослому, и вернулся к истокам easyelectronics ну и хороший пример именно для ардуино. Без всяких скетчей.
Желание вообще весь это ардуно говнокод переписать на ламповом си, а лучше на ассемблере. Ещё у ардуинки убогий редактор. Интересно, можно ли компилировать и прошивать из консоли? Так же, каким образом можно писать на gcc и использовать арудино-загрузчик?

Date: 2019-02-22 10:35 am (UTC)
From: [identity profile] aterentiev.livejournal.com
Бутлоадер ардуины - это stk500, с ним AVRDUDE справляется "на ура". Это что касается прошивки.
Для остального читай сюда: https://github.com/arduino/Arduino/blob/master/build/shared/manpage.adoc

Упд. Оказывается, и прошивать можно, читай по линку
Edited Date: 2019-02-22 11:11 am (UTC)

Date: 2019-02-22 01:01 pm (UTC)
From: [identity profile] nosferatum.livejournal.com
Это эмуляция stk500v2, если точнее. С неполным списком команд — например, без прошивки бутлоадера и fuse.

Date: 2019-02-22 01:07 pm (UTC)
From: [identity profile] aterentiev.livejournal.com
Давать пользователям ардуины возможность отстрелить одним выстрелом оба колена, наверное, было бы плохой идеей, поэтому в данном конкретном случае это хорошо :) А кто решит все же заняться этим, тот уже дорос до более подробного понимания происходящего, он будет в состоянии сделать это без ардуины.

(no subject)

From: [identity profile] nosferatum.livejournal.com - Date: 2019-02-22 01:08 pm (UTC) - Expand

Date: 2019-02-22 10:42 am (UTC)
From: [identity profile] aterentiev.livejournal.com
Ну и еще. "Скетч" - принесенное извне слово для обозначения проект-файла. Более оно ничего не означает. Поэтому твое эмоциональное "Без всяких скетчей" означает примерно "Без всяких проектов". Ну, типа "без главного файла проекта", ага.

Date: 2019-02-22 10:51 am (UTC)
From: [identity profile] Шура Люберецкий (from livejournal.com)
Скетч - это не "проект", это просто придуманное слово для обозначения файла с расширением ino, внутри которого обычный сишный код.

Date: 2019-02-22 10:58 am (UTC)
From: [identity profile] aterentiev.livejournal.com
Да. Но это одновременно и "ардуино-проект", т.к. "просто *.с файл" ардуина залить в контроллер не сможет.

Date: 2019-02-22 10:50 am (UTC)
From: [identity profile] Шура Люберецкий (from livejournal.com)
Компилировать и прошивать из консоли, разумеется, можно, вся ардуиновская среда - это обычный avr-gcc с обычным же avrdude, к которым прикручены кривые библиотеки и убогий редактор.

Date: 2019-02-22 11:00 am (UTC)
From: [identity profile] aterentiev.livejournal.com
еще ардуиновский HAL забыл в список поставить :)

Date: 2019-02-22 11:01 am (UTC)
From: [identity profile] Шура Люберецкий (from livejournal.com)
А кривые библиотеки - это что?

(no subject)

From: [identity profile] aterentiev.livejournal.com - Date: 2019-02-22 11:09 am (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:10 pm (UTC) - Expand

(no subject)

From: [identity profile] aterentiev.livejournal.com - Date: 2019-02-22 03:39 pm (UTC) - Expand

Date: 2019-02-22 10:52 am (UTC)
From: [identity profile] lumixograf.livejournal.com

Eclipse можно настроить для работв с ардуиной.
По крайней мере, в 2011 прокатывало)

Date: 2019-02-22 11:02 am (UTC)
From: [identity profile] dlinyj.livejournal.com
Эклипс ещё хуже

Date: 2019-02-22 11:16 am (UTC)
From: [identity profile] dlinyj.livejournal.com
В 2019 году эклипс следует похоронить.

Date: 2019-02-22 07:06 pm (UTC)
From: [identity profile] lumixograf.livejournal.com
года три не запускал) Но предполагаю, что так может быть лучше, чем в ардуинской среде)

Date: 2019-02-22 10:57 am (UTC)
From: [identity profile] paracloud.livejournal.com
Можно же по-взрослому, взять какой-нибудь FreeRTOS для Arduino, и получить там software timers (https://www.freertos.org/RTOS-software-timer.html) и всё что душе угодно.

Date: 2019-02-22 10:59 am (UTC)
From: [identity profile] aterentiev.livejournal.com
можно вообще все выкинуть и переписать
так каждый делает
благо, все это - хобби и баловство, можно время разбрасывать как душе угодно

Date: 2019-02-22 11:13 am (UTC)
From: [identity profile] paracloud.livejournal.com
если не мелочиться, то можно начать и со своего hardware design на fpga.
а что, тоже хобби

(no subject)

From: [identity profile] aterentiev.livejournal.com - Date: 2019-02-22 11:23 am (UTC) - Expand

(no subject)

From: [identity profile] balmerdx.livejournal.com - Date: 2019-02-22 05:43 pm (UTC) - Expand

Date: 2019-02-22 12:42 pm (UTC)
From: [identity profile] 5kopejek.livejournal.com
>>Желание вообще весь это ардуно говнокод переписать на ламповом си, а лучше на ассемблере. Ещё у ардуинки убогий редактор.

Это очень опасное желание которое может перейти в хроническое заболевание. Его надо глушить медикаментозно на начальной стадии. Рекомендую таблетки "Похуин". По две штуки в день после еды.
А редактировать можно и в другом редакторе.

Date: 2019-02-22 12:50 pm (UTC)
From: [identity profile] dlinyj.livejournal.com
Ой, я на работе столько говнокода вижу, что если бы я бросался его переписывать, то только бы этим и занимался. В общем-то я этим и занят.

Date: 2019-02-22 12:54 pm (UTC)
From: [identity profile] eddy-em.livejournal.com
Попробуй qt-creator.
Я с geany на него перешёл. Намного удобней работать. Можно настроить цели сборки и клавосочетанием прошивать.

Но аврки зело убоги! Даже STM8 рвут их!!я писал как-то про свои приключения с авр. В одном случае получилось на стм8 сделать,, в другом использовал абдурину для отладки (удалил бутлоадер и работал как с обычной авркой; потом пересобрал под конкретную аврку).

Date: 2019-02-22 01:33 pm (UTC)
From: [identity profile] dlinyj.livejournal.com
Не, qtcreator - это говно. Есть нормальная продукция от Майкрософта Visual Studio Code кроссплатформенная, с кучей плагинов, можно свои писать на js. Короче мякотка. Очень удобная. Всякие эклипсы, qtcreator и прочая лажня - ф топку. Для мелочей geany, для серьёзного Визуал Студио.

Date: 2019-02-22 01:43 pm (UTC)
From: [identity profile] eddy-em.livejournal.com
Да будь оно хоть супер-пупер, да ещё и с полностью свободным кодом, то, что сделано оно мелкомягкими, автоматом нивелирует любые плюсы!!
Мелкософт априори ничего хорошего сделать не может!!!

(no subject)

From: [identity profile] aterentiev.livejournal.com - Date: 2019-02-22 01:57 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:08 pm (UTC) - Expand

(no subject)

From: [identity profile] aterentiev.livejournal.com - Date: 2019-02-22 02:31 pm (UTC) - Expand

(no subject)

From: [identity profile] eddy-em.livejournal.com - Date: 2019-02-22 02:16 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:18 pm (UTC) - Expand

(no subject)

From: [identity profile] eddy-em.livejournal.com - Date: 2019-02-22 02:19 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:20 pm (UTC) - Expand

(no subject)

From: [identity profile] eddy-em.livejournal.com - Date: 2019-02-22 02:21 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:21 pm (UTC) - Expand

(no subject)

From: [identity profile] eddy-em.livejournal.com - Date: 2019-02-22 02:27 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:34 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:07 pm (UTC) - Expand

(no subject)

From: [identity profile] eddy-em.livejournal.com - Date: 2019-02-22 02:18 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:20 pm (UTC) - Expand

(no subject)

From: [identity profile] aterentiev.livejournal.com - Date: 2019-02-22 01:56 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:08 pm (UTC) - Expand

(no subject)

From: [identity profile] mbr.livejournal.com - Date: 2019-02-22 09:55 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-23 07:24 pm (UTC) - Expand

(no subject)

From: [identity profile] Николай Замотаев - Date: 2019-02-25 04:43 pm (UTC) - Expand

(no subject)

From: [identity profile] ioserg.livejournal.com - Date: 2019-02-24 01:51 pm (UTC) - Expand

Date: 2019-02-22 01:34 pm (UTC)
From: [identity profile] dlinyj.livejournal.com
А на счёт контроллеров, тут всё просто. Ардуины у меня бесплатные и я просто помогал. Так-то да, после stm32 и прочих 32-х битных армов, возвращатся к восьмибиткам не хочется.

(no subject)

From: [identity profile] eddy-em.livejournal.com - Date: 2019-02-22 01:41 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:06 pm (UTC) - Expand

(no subject)

From: [identity profile] eddy-em.livejournal.com - Date: 2019-02-22 02:17 pm (UTC) - Expand

(no subject)

From: [identity profile] dlinyj.livejournal.com - Date: 2019-02-22 02:19 pm (UTC) - Expand

Date: 2019-02-22 09:53 pm (UTC)
From: [identity profile] mbr.livejournal.com
Ты таки пересел на qt-creator. Да охренеть новость :)

(no subject)

From: [identity profile] eddy-em.livejournal.com - Date: 2019-02-23 06:20 am (UTC) - Expand

Date: 2019-02-22 07:51 pm (UTC)
ext_926173: (RB Astro 6)
From: [identity profile] dimka-rs.livejournal.com
Из странных/необычных вариантов - взять vscode и поставить плагин platform.io

January 2026

S M T W T F S
    123
456 78910
11121314151617
18192021222324
25262728293031

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jan. 22nd, 2026 07:00 pm
Powered by Dreamwidth Studios