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


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

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

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

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

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

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:58 am (UTC)
From: [identity profile] aterentiev.livejournal.com
Да. Но это одновременно и "ардуино-проект", т.к. "просто *.с файл" ардуина залить в контроллер не сможет.

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

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)
А кривые библиотеки - это что?

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

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

первое - это кривизна рук в плане ошибок в библиотеках, написанных непрофессионалами, тут no comments, да, есть такое (но становится все лучше и лучше, надо отметить)

второе - это четко работающий HAL, не дающий начинающему сделать глупости, типа прочитать выход, попытаться записать bool в аналоговый выход или попытаться записать что-нибудь во вход, не понимая, что происходит и почему не работает, причем все это можно делать на двух десятках разных плат, не задумываясь об особенностях каждого чипа в отдельности

если при этом ты начинаешь сравнивать по эффективности PORTх = ххх и digitalWrite(), и считаешь эту получившуюся разницу "кривизной библиотек", то ты не понял смысла их существования

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

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

Date: 2019-02-22 11:23 am (UTC)
From: [identity profile] aterentiev.livejournal.com
будем считать минутку сарказма оконченной :)

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: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
Давать пользователям ардуины возможность отстрелить одним выстрелом оба колена, наверное, было бы плохой идеей, поэтому в данном конкретном случае это хорошо :) А кто решит все же заняться этим, тот уже дорос до более подробного понимания происходящего, он будет в состоянии сделать это без ардуины.

Date: 2019-02-22 01:08 pm (UTC)
From: [identity profile] nosferatum.livejournal.com
Да-да, я и не спорю. Просто говорить что бутлоадер ардуины = stk500 некорректно.

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:34 pm (UTC)
From: [identity profile] dlinyj.livejournal.com
А на счёт контроллеров, тут всё просто. Ардуины у меня бесплатные и я просто помогал. Так-то да, после stm32 и прочих 32-х битных армов, возвращатся к восьмибиткам не хочется.

Date: 2019-02-22 01:41 pm (UTC)
From: [identity profile] eddy-em.livejournal.com
Я себе прикупил штуки три абдурины на али "про запас". Вот, одна даже 1 раз пригодилась.
Похоже, лечиться надо: у меня уже какая-то нехорошая стадия шопоголизма! Покупаю всякое ненужное говно...

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

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. 23rd, 2026 12:28 am
Powered by Dreamwidth Studios