Главная Юзердоски Каталог Трекер NSFW Настройки

Радиотехника

Ответить в тред Ответить в тред
Check this out!
<<
Назад | Вниз | Каталог | Обновить | Автообновление | 839 98 368
ARM ТРЕД #2 Аноним 09/03/18 Птн 20:38:02 314976 1
641px-ARMpowere[...].png 17Кб, 641x580
641x580
pastedimage1486[...].png 45Кб, 1150x450
1150x450
Ибо прошлый >>187056 (OP) не всплывает. Здесь мы будем обсуждать микроконтроллеры с этой потрясающей новой современной архитектурой. Только C/C++, IAR/GCC, никаких майкрософтских потуг.

Сам я столкнулся с ней на работе, всё пишу под SAM3 и ATSAM91. Все нравки, внезапно стало доставлять. Планирую накатить линукс и сам собрать ядро.
Аноним 09/03/18 Птн 20:47:25 314979 2
Мне похуй на тебя, я DIY бомж.
>SAM3 и ATSAM91
Зачем мне твое говно? В чем смысл треда для самого себя? Радач - твой личный бложик? Иди выебывайся в другом месте, петух.
Аноним 09/03/18 Птн 21:05:57 314981 3
>>314979
>Иди выебывайся в другом месте, петух.
Это копипаста первого АРМ-треда, довн. Он утонул и не бампается.
Аноним 09/03/18 Птн 22:11:18 314987 4
>>314979
>Выёбывается на АРМ-тред
>Иди выебывайся в другом месте, петух.
/0
Аноним 10/03/18 Суб 03:43:58 314996 5
>>314976 (OP)
Почему не создать простой тред про STM32?
Аноним 10/03/18 Суб 05:25:46 315001 6
>>314996
Потому, что иди нахуй https://2ch.hk/ra/res/298779.html вот почему.
Помимо ST есть ещё овер 9000 фирм со своими чипами. Здесь даже в утонувшем ардуинотреде томился тайный любитель nRF51822. Куда ему податься с такими-то фетишами, кроме как в АРМ-тред?
Аноним 10/03/18 Суб 09:36:44 315007 7
>>314976 (OP)
Сук, сел с блокнотом и старым тредом дабы сделать из него выжымку сакральных знаний и достижений для будующих тредов и.... нихуя там полезного нет. Ни ссылок, ни вдумчивых разборов кода, одна петушня понтуется своими макетками.
Аноним 10/03/18 Суб 10:49:37 315011 8
>>315007
Неправда.
Для вдумчивого ньюфага там дохуищща полезной инфы.
Кстати, как скачать тред целиком, со всей хуйнёй?
Скрипт писать лень, может что готовое есть?
Аноним 10/03/18 Суб 12:45:32 315016 9
>>315011
>>315011
>как скачать тред целиком, со всей хуйнёй?
Открыть и сохранить страницу уже запретили?
Аноним 10/03/18 Суб 15:14:19 315032 10
1003302920.jpg 68Кб, 512x600
512x600
>>315007
Подвачну. Чистый бред. Нет чтобы узкоспециализированный тред STM32 запилить, а так всё и ни о чём.
Аноним 10/03/18 Суб 15:16:59 315033 11
>>315032
>узкоспециализированный тред STM32 запилить
Ну давай думать шапку, да и пилить. Тред сам себя не запилит.
Аноним 10/03/18 Суб 17:00:40 315045 12
DSC7163.jpg 334Кб, 1122x1066
1122x1066
ris1.png 90Кб, 772x601
772x601
>>315032
>узкоспециализированный тред STM32
Внимательно рассмотри контроллер на прилагающейся фотографии. Можешь ли ты представить себе, как он не справляется с расчетами в long double и невнятно виснет? Можешь представить, что он пропускает в очереди таски из-за нехватки оперативной памяти? А то, что он работает через раз из-за помехи при включении света в комнате? Ты видишь в нем контроллер, которому не хватает пинов под управление LCD с параллельным интерфейсом?
Теперь посмотри на него еще раз. Видишь ли ты на нем дорогой металлокерамический корпус? Может IDE для разработки под него стоит безумных денег и требует жутко производительного ПеКа? Он требует сверхмощного интеллекта для работы с ним? Или для покупки его необходимо продать автомобиль?
Посмотри снова на этот контроллер и спроси самого себя, почему ты еще не программируешь под него?
Почему ты до сих пор пишешь на wiring и боишься сделать шаг в сторону?


Аноним 11/03/18 Вск 11:34:32 315138 13
>>315045
Для РФ график не особо актуален. Тут PIC+MSP430/MSP432+AtMega отъедают 60% бизнеса по микроконтроллерам.
Аноним 11/03/18 Вск 17:02:27 315149 14
Почему в STM32F4 такие мозголомные примеры в Кубе? Почему интернет заполонен какими-то ебанутыми, несовместимыми со здравым рассудком примерами? В одних HAL, в других SPL, третьи вообще говняют свои конструкции и хуярят байты налево и направо? Почему нет нормальных файлов справки и хоть какого-то единства? Как же мне печот-то, передать не могу.
Аноним 11/03/18 Вск 18:20:27 315162 15
32.JPG 48Кб, 564x734
564x734
>>315045
Книжка по STM32. Пока не читал.
Аноним 11/03/18 Вск 18:23:58 315165 16
Аноним 11/03/18 Вск 19:49:38 315184 17
>>315162
Годная книжка.
Автор охуенен.
Какого года у тебя? У меня есть 2016.
На leanpub у него последняя версия январь 2018.

Рекомендую его бложик:
https://www.carminenoviello.com/

Например, вот этот пост весьма доставил:
https://www.carminenoviello.com/2015/09/04/precisely-measure-microseconds-stm32/

Есть ещё книжка Discovering the STM32 Microcontroller (бесплатная):
https://www.cs.indiana.edu/~geobrown/book.pdf
Там про F100.
Аноним 11/03/18 Вск 20:08:26 315190 18
021.PNG 43Кб, 815x343
815x343
>>315184
>Какого года у тебя?
Аноним 11/03/18 Вск 20:53:20 315199 19
>>315190
Качнул, спасибо.

>>315149
Да, документация и информационная поддержка в целом - просто пиздец какой-то.
И HAL - лютое говно, даже на мой ньюфажеский взгляд. Собственно, буква A (abstraction) - отсутствует напрочь. Ну, или мы с ними по-разному понимаем слово "абстракция".

А самый прикол в том, что SPL и вообще всё, кроме HAL - теперь считается deprecated и не рекомендуется к использованию.

Короче, на программистах они явно экономят, судя по тому, что уже много лет так ничего путного и не могут родить.


Аноним 11/03/18 Вск 20:58:18 315202 20
>>315199
>вообще всё, кроме HAL - теперь считается deprecated и не рекомендуется к использованию.
С одной стороны заебись, хоть не будет этой кучи несовместимого кода.
Аноним 11/03/18 Вск 22:01:16 315214 21
>>315199
>всё, кроме HAL - теперь считается deprecated
CMSIS кто-то запретил? А как же Low-Layer (LL) API, который практически тот же SPL?
>Собственно, буква A (abstraction) - отсутствует напрочь.
Ты о чем? Взять, к примеру, обыкновенный таймер. У таймера есть предделители, которые везде разные, как ты их абстрагируешь?
>Короче, на программистах они явно экономят, судя по тому, что уже много лет так ничего путного и не могут родить.
Кортексы много кто делает, может стоит найти микроконтроллеры с нормальными библиотеками?

>>315202
Если не размазывать взаимодействие с периферией по всему коду, то эта куча кода значительно уменьшится.
11/03/18 Вск 23:31:35 315229 22
>>315214
>LL
Да, кстати, про него я и забыл.

>предделители
Вот именно.
Ты пишешь требуемый тебе период, а библиотека должна все эти делители сама задать. Типа, частота AHB такая-то, с таймера хочу такую-то, и всё. Плюс - дополнительные параметры для нестандартных случаев.

Если не экономить на программистах, можно дохуя чего наабстрагировать.
11/03/18 Вск 23:32:19 315230 23
>>315229
Блядь, да что ж такое, опять сажа сама подставилась.
Аноним 12/03/18 Пнд 02:00:07 315248 24
>>315229
Хочу добавить, что Куб, собственно, именно это и делает.
Т.е. вместо продвинутых либ они сделали генератор кода, что для контроллеров - более правильно.

Но, в этом случае HAL (или большая его часть) - просто не нужен. Лишняя промежуточная недо-абстракция.

Они это понимают, видимо, поэтому и сделали LL.
Сначала для микромощных моделей, а теперь и для всех.

Ещё бы они этот генератор как-то окультурили, чтобы он не срал в main.cpp, какие-то точки входа сделали бы, и т.п., было бы вообще охуенно.
Аноним 12/03/18 Пнд 07:56:55 315256 25
>>315229
>Типа, частота AHB такая-то, с таймера хочу такую-то, и всё.
Что-то я слабо представляю как это возможно. Например, стоит кварц на 8 МГц и нужно получить после предделителя на входе таймера 3 МГц. Такую частоту можно будет получить только при умножении (в PLL) частоты кварца на число кратное трем. А если нужно получить еще какую-нибудь частоту на другом таймере? По моему еще при разработке схемы придется все это учесть.
Аноним 12/03/18 Пнд 08:27:55 315257 26
>>315256
Но ведь у каждого таймера свои предделители?
Аноним 12/03/18 Пнд 10:54:17 315262 27
Аноним 12/03/18 Пнд 13:35:06 315272 28
Чуваки, делитесь знаниями по стм32. Я уже писал проекты, но думаю многого ещё не знаю .
Аноним 12/03/18 Пнд 14:17:19 315282 29
>>315272
> делитесь знаниями по стм32
>Я уже писал проекты
Ну так и начинай делиться. Я вот, пока только умудрился светодиодом помигать на стм32ф429
Аноним 12/03/18 Пнд 14:28:01 315285 30
>>315282
И чем делиться к примеру?
Аноним 12/03/18 Пнд 14:33:22 315287 31
>>315045
Посмотрел в его сторну, поговнокодил . Проверил на эмс его и другие . Теперь хочу от него отказаться на веки вечные . Он как бы хороший, но далеко не самый надёжный.
Аноним 12/03/18 Пнд 14:38:07 315289 32
>>315262
Ух, прям как обратно в нулевые вернулся.
Аноним 12/03/18 Пнд 15:56:39 315294 33
>>315287
Заинтриговал.
Теперь бы неплохо подробностей.
Аноним 12/03/18 Пнд 20:01:30 315315 34
>>315294
Мучал наносекндным генератором , без всяких защит , STM32 , STM8 , AVR8 , KINETIS KEAZ . Ну в общем у STM32 помер один пин , а stm8 и KINETIS KEAZ более мужественно выдержали испытание . Так что я лучше их юзать буду , ну ещё другие контроллеры помучаю , когда будет время.
Аноним 12/03/18 Пнд 20:44:20 315329 35
>>315315
На одной конференции представитель микрочипа говрил что армы от атмела хороши против помех. Попробуй их
Аноним 12/03/18 Пнд 21:32:23 315337 36
>>315272
Поделился тебе за щеку
Аноним 12/03/18 Пнд 21:33:12 315338 37
>>315337
Молодец, а теперь проследуй нахуй
Аноним 12/03/18 Пнд 21:40:24 315340 38
>>315338
Кокой ты.
Ну так вещай, что тебе конкретно надо, или даташит читай.

Аноним 12/03/18 Пнд 21:54:47 315345 39
>>315340
Книги, полезные ресурсы с примерами кодов. Выше книгу вроде советовали, говорят годное.
Аноним 12/03/18 Пнд 21:58:26 315346 40
>>315315
Допустим Kinetis KEAZ , на отладочной плате выдержал 4 группу наносекунд , безо всяких дросселей . Купил исчо плату с tms570 он вреде , позиционируется для ответственных применений и сертификат sil-3 имеет . Его попробую следующим .
Аноним 12/03/18 Пнд 22:02:21 315347 41
>>315329
>На одной конференции представитель микрочипа говорил что армы от атмела хороши против помех
Там ведь разные семейства . В одном журнале писали что SAM3 умер быстрее STM32 .
Аноним 12/03/18 Пнд 22:03:18 315348 42
>>315340
Я хоть и не просил делиться знаниями, но не мог бы ты разъяснить >>315257

Допустим нужно получить (как пример) на входе (т.е. после предделителя) одного таймера 3 МГц, а на входе другого 5 МГц. при тактировании микроконтроллера от кварца на 8 МГц.
Если брать наиболее распространенный (на алиэкспрессе) STM32F103, то это можно получить только поделив частоту кварца на 2 и умножив в PLL на 15. Как тогда можно адекватно сделать:
>Ты пишешь требуемый тебе период, а библиотека должна все эти делители сама задать.
Аноним 12/03/18 Пнд 22:09:11 315349 43
STM32F103C8T6-A[...].jpg 254Кб, 2256x2256
2256x2256
Купил два пикрелейтеда за $2 вместе с ардуиной.

Буду, значит, духовно расти, а иначе пиздец.

Какие ещё есть книги для ньюфагов кроме >>315184 и >>315162 ?

Книги по С всякие валяются, даже пытался в CS50 пока не засыпался на магии с поинтерами в рекурсивных алгоритмах.

Я также взял палёный STLink и просто serial адаптер на FT232RL. Всякая мелочь типа парочки регистров и резисторов пополам с транзисторами едет.


Аноним 12/03/18 Пнд 22:15:57 315350 44
>>315349
>Какие ещё есть книги для ньюфагов кроме
Вот тут самое интересное. Никаких. Русскоязычных вообще ноль. Я тоже нуб и это просто пиздос. Ничего вразумительного, по форумам примеры квадратно-гнездовым способом написаны. Перевод кусками RM&DS. Ничего похожего на сообщество пердуинщиков, где можно найти разжеванное как для даунов, тут не жди. Только сам, только хардкор.
Аноним 12/03/18 Пнд 22:17:12 315351 45
>>315348
Период же можно получать не только путем изменения тактирования таймера, но и срабатыванием по прерыванию. Или я суть вопроса не так понял?
Другой
Аноним 12/03/18 Пнд 22:30:38 315354 46
>>315351
Ещё и в самом таймере есть свои предделители
дополнение
Аноним 12/03/18 Пнд 22:36:00 315355 47
>>315348
>то это можно получить только
Ты открой даташит и посмотри, что таймеры (ВСЕ) тактируются с шин APB1&2 и особо частотами ты там не разгуляешься ибо похеришь все тактирование периферии. Чувак и пишет, что настоящая абстракция это когда ты написал какой период хочешь получить на выходе, а HAL сам распихивает делители/умножители.
Аноним 12/03/18 Пнд 22:47:39 315358 48
>>315348
Ты путаешь тёплое с мягким.
Я говорил, всего лишь, о программном интерфейсе, а не о том, что библиотека должна магически привести все таймеры к общему знаменателю.
Нельзя, не сходится - выдаёт ошибку, и всё.

Вот тут >>315248 я потом написал, что Куб (генератор кода) лучше, т.к. в библиотеке было бы много лишнего кода, нужного только один раз при старте системы.

Я вообще только знакомлюсь со всем этим.
Но, программирую я давно, просто не для контроллеров.
Поэтому, смотрю на это как программист. И вижу, что в эмбед новые прогрессивные технологии программирования приходят, мягко говоря, с опозданием.
Достаточно посмотреть на уровень работы с кодом в Кейле - пиздец вообще, и это топовая коммерческая ИДЕ за охулиард мегабаксов. Уровень - конец 90-х, в лучшем случае.

Смысл в том, что долгое время контроллеры были маленькими, и писать под них можно было абы-как. Но, постепенно они стали большими, и писать кое-как уже становится напряжно.
Аноним 12/03/18 Пнд 22:50:50 315359 49
>>315358
>и писать под них можно было абы-как
>>315358
>и писать кое-как уже становится напряжно.
Мне кажется наоборот. Пока были маленькие, код вылизывался до пиздеца, каждый байт был при деле. А сейчас, когда у меня 2Мб флеша, мне похуй и я хуярю как могу свое мигание светодиодом.
Аноним 12/03/18 Пнд 22:53:45 315360 50
>>315359
Я неудачно выразился.
Имелся в виду именно инструментарий.
Т.е. раньше можно было и лопатой выкопать, а теперь заебёшься ей копать, и нужен экскаватор.
Аноним 12/03/18 Пнд 23:10:55 315362 51
>>315358
А, ну теперь понятно. Да, по нормальному такое делается в кубе в полуавтоматическом режиме или каким-нибудь препроцессором в процессе компиляции. Пихать это внутрь микроконтроллера просто бессмысленно.

>Достаточно посмотреть на уровень работы с кодом в Кейле
Я думаю ты это и так знаешь, но на всякий случай скажу. Тот же компилятор, что и в кейле, используется в ARM Development Studio (это на эклипсе). Вообще никто не мешает использовать gcc совместно с практически любой современной IDE. Еще я пробовал использовать armcc вместе с clion, но ломалось почти все кроме компиляции.
Аноним 12/03/18 Пнд 23:14:48 315363 52
>>315359
Вот, посмотри, как моргают светодиодом на любой STM32 Nucleo в Mbed OS, с помощью таймера (тикера):
https://os.mbed.com/teams/ST/code/Nucleo_ticker/file/7773a5ce9853/main.cpp/

Тикер тикает каждые 0.1 сек.
Весь код - 17 строк, включая пробелы.
Никакой ёбалы, никаких делителей-хуителей и прочего.

Бинарник получается 27 Кб, примерно, для F446.
Естественно, это рантайм мбедовский столько занимает, а не сам код. Т.е., при добавлении функционала размер будет расти не так сильно.

Как ты понимаешь, Nucleo - это голый контроллер, со светодиодом и кнопкой. Точно так же можно программировать любую плату на STM32, надо просто подкрутить конфигурацию.
Аноним 12/03/18 Пнд 23:21:30 315364 53
Аноним 12/03/18 Пнд 23:22:08 315365 54
>>315363
>Никакой ёбалы, никаких делителей-хуителей и прочего.
Но ведь для этого есть Ардуино? Она специально придумана, чтобы оградить впечатлительный мозг от таких сложностей как предделители и прочая ебала.
Аноним 12/03/18 Пнд 23:23:28 315366 55
>>315364
А теперь сделай на этом ардуиноподобном поделии частотомер, не используя прямую запись в регистры, только функции mdbed.
Аноним 12/03/18 Пнд 23:26:43 315367 56
Аноним 12/03/18 Пнд 23:27:30 315368 57
>>315363
>Бинарник получается 27 Кб
Я тут в соседнем треде про стм8, рожал в муках датчик влажности на стм-овской HTS221. Даже с моим кривейшим говнокодом, мне хватило 5кб на тактирование,функцию задержек, само чтение с датчика и математические манипуляции с RAW-данными, пересчет в двоично десятичный код и отправку этой ебалы по UART. Вот сейчас подзавис с основной частью, которая будет на стм32ф4 с дисплеями и тачскринами все это принимать, думать над принятым и показывать в человекоудобном виде. Если только мои пропитые мозги не охуеют от такого.
Аноним 12/03/18 Пнд 23:30:25 315369 58
>>315366
На этом поделии никто не запрещает писать в регистры. Надо просто разобраться с работой ОС, чтобы не завалить ничего. Таймер там системой используется только один (2-й, по-моему). Остальное - доступно.

И речь шла о "моргании светодиодом".
Вообще, Mbed заточен под IOT, и для этих целей - просто охуенен.

>чтобы оградить впечатлительный мозг от таких сложностей
Я не впечатлительный.
Я ленивый.
Это разные вещи, лол.

Про Mbed vs Arduino есть кино:
https://www.youtube.com/watch?v=EJVTSSdZJoU

Аноним 12/03/18 Пнд 23:46:25 315370 59
>>315349
>>315350
Есть русскоязычные сайты, местами годные.
Гугол гуглит на раз.

Например:
http://narodstream.ru/stm-urok-15-hal-usart-dma/

http://we.easyelectronics.ru/STM32/rukovodstvo-k-bystromu-startu-po-rabote-s-periferiey-stm32f10x.html

У ардуинщика, скорее, проблемы будут из-за того, что тут надо иметь дело с голым контроллером.
Но, контроллеры все одинаковые, по большому счёту.
Поэтому, может быть полезно поупражняться с AVR без ардуино, чтобы было что-то знакомое, для начала. Инфы полно, гугол в помощь.
Аноним 12/03/18 Пнд 23:50:01 315371 60
>>315370
>Инфы полно, гугол в помощь.
Я с этим и не спорю. Но чтобы продвинуться на шаг, приходится выгугливать килотонны иногда абсолютно противоречивых примеров и инфы.
Аноним 13/03/18 Втр 00:02:47 315372 61
>>315364
Нет, в clion так не пробовал. Тем более что я STM не использую, а тот плагин вроде в основном для автоматической генерации скриптов cmake для STM. И регистры так смотреть неудобно.
Использую сейчас для отладки ozone, как (там же) написано в первой части. Для прошивки (без отладки) приделал аналогичным образом j-flash.

Вообще-то все действия, описанные во второй части, можно сделать без плагина. Достаточно лишь использовать "GDB remote debug", там нужно лишь задать команду запуска сервера (например openocd или j-link gdb) в окошке "before launch", указать порт сервера и elf-файл.
Аноним 13/03/18 Втр 01:56:08 315382 62
>>315368
> HTS221
И как оно?
В смысле - точность, надёжность, диапазон?
Температуру им же меряешь?
А давление чем?
Аноним 13/03/18 Втр 06:35:39 315388 63
>>315382
>В смысле - точность, надёжность, диапазон?
Сравнил показания с Si7021, расхождение в пределах погрешностей.
>А давление чем?
А мне оно не нужно. Это датчики в подвал, чтобы мерять влажность и включать вентиляцию. Температуру им же меряю.

Аноним 13/03/18 Втр 14:35:01 315435 64
Кто занимался байтоебством в fat32? Пытаюсь считать загрузочный сектор, а он мне все нулями отвечает. Че за хуйня?
Аноним 13/03/18 Втр 15:10:58 315437 65
>>315435
Отбой, нашел костыли для исправления
Аноним 13/03/18 Втр 19:32:14 315484 66
А кто может пояснить, почему в русском сегменте сети так ненавидят HAL? Для хобби охуительная штука, по крайней мере лучше чем CMSIS или SPL. Англоязычные юзеры кипятком ссут, только наши копротивляются.
Аноним 13/03/18 Втр 19:35:59 315487 67
>>315484
>так ненавидят HAL?
Почему ты так решил? Меня бесит полный кавардак в учебных примерах. Одни в HAL, другие в SPL, третьи вообще самопальное байтоебство проповедуют, четвертые орут ТОЛЬКОASM!!!
Аноним 13/03/18 Втр 19:41:33 315489 68
>>315487
Смотрел ютубы, читал изиэлектроникс, двач, и прочие ресурсы. Везде одинаковые лучи поноса в сторону HAL, и при этом те же люди топят за SPL, хотя за бугром это общепризнанный моветон уже больше года.
Аноним 13/03/18 Втр 19:46:31 315491 69
>>315489
>двач
Ну охуеть какой авторитетный сайт
Аноним 13/03/18 Втр 20:06:41 315493 70
>>315489
не парься
HAL очень гут для начинающих
Аноним 13/03/18 Втр 20:07:50 315494 71
>>315491
Изиэлектроникс не лучше будет. Тут хотя бы ПЛИС-тред есть. Был еще ЦОС, но умные аноны разбежались.

Вообще HAL сложнее в освоении. Если для использования более простых библиотек достаточно прочтения референс мануала на микроконтроллер, то для HAL придется читать еще и документацию к HAL. Вообще код с SPL можно перенести на современный LL API простым переименованием в большинстве случаев.
Хоть я сам не пишу для STM, но думаю что стоит использовать LL API и немного HAL (для таких вещей как USB).
Аноним 13/03/18 Втр 20:10:11 315496 72
>>315493
А чего то прихуел гляда в hal и ни хуя не понял как он работает . Толи я тупой мудак , то ли блеять не надо пытаться понять и просто вызывать функции .
Аноним 13/03/18 Втр 20:22:59 315500 73
Аноним 13/03/18 Втр 20:34:29 315504 74
>>315500
Это урочки на уровне тыкаем туды-сюды и заебись .
Аноним 13/03/18 Втр 20:45:06 315505 75
Все это дело вкуса, кому то удобно использовать HAL, кому то нет.
Я использую SPL, раньше юзал прямое обращение к регистрам, мне норм. Хорошо написано, нет геморроя по подключению в проект. Всегда можно проследить что функции делают на низком уровне.
Аноним 13/03/18 Втр 20:59:38 315513 76
>>315505
>ямое обращение к регистрам, мне норм. Хорошо написано, нет геморроя по подключению в проект. Всегда можно проследить что функции делают на низком уровне.
А как в HAL это же самое проследить ?
Аноним 13/03/18 Втр 21:04:55 315514 77
>>315494
LL не умеет в переферию, как пишут стмовцы, это библиотека для работы с регистрами.

The HAL offers high-level and feature-oriented APIs, with a high-portability level. They hide the MCU and peripheral complexity to end-user.   The LL offers low-level APIs at registers level, with better optimization but less portability. They require deep knowledge of the MCU and peripherals specifications

За себя могу сказать, что когда писал функцию микросекундных задержек, не нашел как HAL'ом установить время работы таймера в one-pulse mode. Поэтому проще было вписать значение в регистр напрямую. И до сих пор все прекрасно работает.
Аноним 13/03/18 Втр 21:07:55 315515 78
халк.PNG 58Кб, 583x411
583x411
Аноним 13/03/18 Втр 21:12:40 315516 79
>>315515
От жеж блядь. Проглядел.
Аноним 13/03/18 Втр 21:22:34 315518 80
>>315516
Хотя не. Вместо того, чтобы каждый раз запускать Init проще было записать такое:
TIM4->ARR = us - 1;
HAL_TIM_Base_Start(&htim4);
while ((TIM4->CR1 & TIM_CR1_CEN) != 0);
Аноним 13/03/18 Втр 21:26:50 315519 81
Аноним 13/03/18 Втр 21:32:53 315524 82
>>315513
Спуститься на самое дно)
А если серьезно, я хз. К HAL вообще не притрагивался.
Аноним 13/03/18 Втр 21:42:47 315528 83
>>315513
>А как в HAL это же самое проследить ?

Читай исходники.
Выброси Кейл и начни пользоваться Eclipse, а лучше - TrueSTUDIO - она сейчас стала бесплатной для STM32, и это та же эклипса, только допиленная до состояния коммерческого продукта - отладка, просмотр регистров etc. С кубом работает на ура, сразу, без костылей.

Так вот - создаёшь в кубе проект, экспортируешь в TrueSTUDIO, открываешь main.c и Ctrl+click-аешь мышкой в функции HAL_ololo_xxx() и во всё остальное. Читаешь, прёшься, умнеешь.

Например, можно быстро понять, что многие функции HAL - просто обёртка над простой записью в регистры, в тот же BSRR, не более того. В некоторых - добавлены проверки корректности параметров и конфигурации. И т.д.

Очень удобно быстро смотреть структуры - короче, совершенно другой уровень работы с кодом.
Аноним 13/03/18 Втр 21:44:23 315530 84
>>315528
извините, а чем кеил плох? (помимо внешнего вида из 90ых)
Аноним 13/03/18 Втр 21:47:57 315533 85
>>315528
>Ctrl+click-аешь мышкой в функции HAL_ololo_xxx()
Дык в Кейле тыкаешь в функцию правой кнопкой и в Go To Reference To 'HAL_YOBA_Function(xxx)'
Аноним 13/03/18 Втр 21:52:22 315535 86
>>315530
>>315533
Дело не во внешнем виде.
Это вообще разные вещи по уровню работы с кодом. Потом можно обратно на Кейл вернуться, когда освоишься с темой.

Эклипса тоже хуйня, на самом деле, по сравнению с тем, что делает JetBrains (CLion). Но, с лайоном будет гораздо больше возни - он под эмбед пока не заточен.
Аноним 13/03/18 Втр 21:58:49 315537 87
Перешёл в этом году на VisualGDB, брал на рто. Полет нормальный, брат жив. О кейле забыл как о позорном прошлом. С кубом работает через импорт проекта, изменения подхватывает, есть свой дебаг с графиками и регистрами.
Аноним 13/03/18 Втр 23:26:54 315550 88
>>315535
>Эклипса тоже хуйня
>>315528
>ачни пользоваться Eclipse, а лучше - TrueSTUDIO
Лучше я начну с купленного на торрентах Кейла. А вот когда я буду спокойно ориентироваться в коде, разберусь в тонкостях использования всяких -хуй -пизда -джигурда в настройках компилирования, я перестану фалломорфировать при виде непонятных ошибок линковщика, и т.п. Вот тогда я полезу в дебри Эклипя и прочего Линукса. Извините.
Аноним 14/03/18 Срд 00:27:43 315563 89
>>315550
Ну, это дело хозяйское.

Алсо, на торрентах достаточно купить только кейген.
А кейл потом свежий купить прямо на сайте, лол.

Уточню, однако, что TrueSTUDIO - это _коммерческая_ IDE для ARM, которая с этого года стала бесплатной (только для STM32).
Скачал - поставил - всё работает.

Там нет непонятных ошибок линкера. Сохраняешь проект из куба, открываешь - компилируешь - запускаешь прямо на чипе сразу отладку. Одной кнопкой, как и в кейле.

Минус - в кейле несколько лучше компилирует компилятор.

Линукс же тут вообще не при делах.

Есть ещё Segger, кстати, он тоже официально бесплатный для некоммерческих проектов.
А IAR покупается примерно так же, как и кейл.
Аноним 14/03/18 Срд 00:36:55 315564 90
>>315162
Есть такое же для stm8?
Аноним 14/03/18 Срд 01:31:33 315573 91
>>315564
ОПЯТЬ ТЫ? ИЗЫДИ, ГОВНОЕДИНА!
Аноним 14/03/18 Срд 07:20:16 315579 92
>>315563
Или ставится Visual Studio 2017, потом на торренте покупается VisualGDB. Устанавливается тоже далее, далее, ок. После запускаешь плагин в ВС, один раз проходишь процедуру настройки качая OpenOCD, тулчейн и пак с мк для работы с стм32. И у тебя в качестве иде для мк появляется вижуал студио с интеллисенсом и прочими ништяками.
Аноним 14/03/18 Срд 07:51:33 315582 93
Кстати кто нибудь пользуется системой контроля версий? Интересует что нибудь удобное с минимальной еблей в настройке
Аноним 14/03/18 Срд 09:28:56 315603 94
>>315582
>кто нибудь пользуется системой контроля версий?
Пока нет, но уже читаю книжку "Git в помощь молодому колхознику" ибо уже такой пиздец в папках проектов мигающих светодиодов, что ебануться можно.
Аноним 14/03/18 Срд 09:44:11 315604 95
>>315603
Гит же онлайн. Есть что то офлайновое?
Аноним 14/03/18 Срд 09:47:20 315605 96
>>315604
>Гит же онлайн
Здрастия. Он и в оффлайне себя нихуево чувствует.
Аноним 14/03/18 Срд 09:48:52 315607 97
>>315605
Виноват, я совсем нихуя в этом не разбираюсь.
Аноним 14/03/18 Срд 09:52:44 315609 98
>>315607
Почитай Pro Git, она на русском есть, реально нужная вещь ибо пиздец в файлах настает молниеносно.
Аноним 14/03/18 Срд 09:57:39 315612 99
>>315609
Спасибо.
А то сейчас у меня просто копипаст папки проекта с указанием в имени что я там делаю. Вот такой вот колхоз
Аноним 14/03/18 Срд 10:01:07 315613 100
>>315612
Да у меня такой же. Плюс наработки которые вроде не пригодились, отдельными файлами сохраняю, чтобы когда понадобятся скопипастить их. В общем пиздос.
Аноним 14/03/18 Срд 10:12:11 315614 101
>>315604
В онлайн - ГитХаб.
И BitBucket.

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

Если работаешь один и на одном компьютере - онлайн нужен только для бекапа. И то, никто тебе не мешает просто бекапить папку .git (где вся история и лежит).

В онлайн для начала лезть вообще не надо.
Всё абсолютно (кроме групповой работы) доступно в оффлайне.
Если надо будет, можно залить потом.
В качестве gui (если в иде нет поддержки, типа кейла) можно использовать SourceTree.
Аноним 14/03/18 Срд 10:22:30 315616 102
>>315612
>просто копипаст папки проекта с указанием в имени что я там делаю

Ты не поверишь, но "коммит" в гите - это и есть снимок текущей версии папки проекта (всех отслеживаемых файлов), с комментарием - что ты наделал с прошлой версии.

Можно отслеживать не все файлы, а только нужные. Также, есть файл .gitignore, где перечислено то, что отслеживать вообще никогда не надо - бинарники и т.п.

Можно вернуться к прошлой версии всего проекта и обратно. Можно в гуи просто посмотреть старую версию одного файла и т.д.
Аноним 14/03/18 Срд 12:20:01 315622 103
>>315614
В качестве гуя ещё хорош GitKraken.
Аноним 16/03/18 Птн 07:34:46 315859 104
>>315504
там даётся необходимый базис для начала.
а уж куда дальше сам разовьёшься - зависит только от тебя.
и даже некоторые ошибки в том курсе тоже присутствуют. скажем, неточности.
Аноним 16/03/18 Птн 07:50:25 315861 105
>>315859
Вообще кстати да, лучше начальные вещи типо моргания сделать на основе таких уроков. А после уже выходить плавно на самостоятельное программирование.
Сам начинал с видеокурса по stm32f4 на Ютубе (кеил + spl)
Аноним 16/03/18 Птн 08:01:35 315865 106
>>315861
>видеокурса
Как же мне печот от этой новомодной хуерги.
Аноним 16/03/18 Птн 08:16:55 315867 107
>>315865
Тебе что, слово не нравится? Как тогда это называть, видосиками?
Аноним 16/03/18 Птн 08:23:02 315868 108
>>315867
От изучения программирования контроллеров по видосикам. Я еще понимаю гончарному мастерству или вышивке арматурой можно поучиться по видиво, но, блядь, все эти "видеоуроки автокадного мастерства", "программируем на крестах через два видеоурока" и т.п. Неужели человечество настолько отупело, что текста уже не в силах понять? Надо как мартышка повторять движения мышей как на видиво?
Аноним 16/03/18 Птн 08:36:00 315869 109
>>315868
Слова можно понимать по разному, к тому же у писателей учебников стоит задача минимизировать описания и по возможности уменьшать количество страниц текста. В итоге книги получаются для тех, кто уже в теме.

А в видео действия имеют единственный смысл, а именно то, что сделал автор.
Аноним 16/03/18 Птн 08:53:49 315871 110
>>315868
Считаю видео более наглядным чем десять страниц текста. Легче посмотреть куда чувак тыкает чтобы создать проект, чем читать это. И мы говорим не о сложным проектах, а только о начальном уровне. Никто не говорит о видео "создаём терминатора за 10 минут".
Аноним 16/03/18 Птн 08:57:22 315872 111
>>315871
>Легче посмотреть куда чувак тыкает чтобы создать проект,
Это папка тыкал твоей мамке, чтоб создать тебя, а мышкой - КЛИКАЮТ!
Аноним 16/03/18 Птн 09:07:54 315873 112
>>315872
Ебать ты придирчивый, чувак. Ты ещё скажи не дырка, а отверстие. Корабли не плавают, а ходят.
Аноним 16/03/18 Птн 09:21:06 315877 113
Сам у narod stream смотрел видосы и считаю это охуенным подспорьем. Олсо посмотрел работу с 769 дискавери и 767 нуклео, и решил что мне дискавери не нужен, буду брать нуклео.
Аноним 16/03/18 Птн 09:36:46 315879 114
>>315877
А в чем разница между Дискавери и нуклео? Поясни, если не сложно. Сам начинал с дискавери, недавно надыбал себе набор с всякими доп.платами и платой нуклео, но не трогал ещё.
Аноним 16/03/18 Птн 10:43:11 315881 115
STM32F769I-DISC[...].jpg 54Кб, 640x640
640x640
nucleof767zi.jpg 204Кб, 600x600
600x600
>>315879
На дискавери уже напаяно всякой хуйни типа MEMS, экрана, тюльпанов для I2S, разъема для камеры. Нуклео, это как китайский стм32ф103 - камень + программатор + пара диодов + разводка ножек. Первый пик диско, второй нуклео.
Аноним 16/03/18 Птн 10:48:18 315882 116
>>315881
>Первый пик диско
Первый пик - eval
Аноним 16/03/18 Птн 11:01:30 315884 117
STM32F769I-DISC[...].png 767Кб, 1240x1754
1240x1754
>>315882
Ст говорит диско.
Аноним 16/03/18 Птн 11:10:10 315886 118
en.stm32f746g-d[...].jpg 371Кб, 1000x714
1000x714
Есть еще такой вариант Discovery, на другой серии F7.
Аноним 16/03/18 Птн 11:20:57 315889 119
>>315884
>>315886
Значит я отстал от жызни. Хуя они наворотили-то.
Аноним 16/03/18 Птн 11:23:09 315891 120
769-eval.jpg 390Кб, 678x683
678x683
Аноним 16/03/18 Птн 11:55:38 315898 121
А самое главное - готовится к выходу нуклео на чипе H743ZIT, и стоить будет как вся серия ~35$. И это за кристалл с мегабайтом оперативы, 400 МГц тактовой, двумя встроенными оу с полосой в 8 МГц, хайрез таймером (2.5ns), и отдельно вынесенным двумя компараторами.
Аноним 16/03/18 Птн 12:28:17 315900 122
>>315898
>И это за кристалл
У него у самого цена не отличается от 429 серии. Хотел купить, но потом передумал, шибко быстрый.
Аноним 16/03/18 Птн 13:16:06 315903 123
>>315868
>>315871
Правда - она посередине.

Некоторые вещи проще рассказать и показать, чем написать понятно и непротиворечиво.
Плюс - для начинающего важно присутствие живого учителя, или, хотя-бы, его имитация.
Аноним 17/03/18 Суб 00:08:59 315989 124
>>315873
Но почему тогда капитан дальнего ПЛАВАНИЯ? :-)
Аноним 17/03/18 Суб 08:22:48 316008 125
>>315989
Хороший троллинг, если бы мне было не похуй)
Аноним 17/03/18 Суб 08:44:06 316009 126
>>316008
>если бы мне было не похуй)
Тебе настолько ПОХУЙ, что ты решил ответить?
Аноним 17/03/18 Суб 08:50:22 316010 127
>>316009
Конечно. Хули еще делать в 8 утра в субботу.
Аноним 17/03/18 Суб 08:59:04 316011 128
>>316010
вот бездельники!
Аноним 17/03/18 Суб 09:05:53 316012 129
>>316011
ниче, щас чай попью, жопу почешу и продолжу SAM E70 изучать
Аноним 17/03/18 Суб 09:18:36 316013 130
Лучше скажите, кто фат систему прикручивал а свои проекты? Интересует как форматировать с помощью контроллера флешку, потому что в моей либе эта функция отсутствует
Аноним 17/03/18 Суб 09:43:21 316015 131
>>316012
почем брал?
а я хату прибираю - завтра жену с дочкой буду забирать :-)
Аноним 17/03/18 Суб 09:43:43 316016 132
Аноним 17/03/18 Суб 09:44:54 316017 133
>>316015
бесплатно. На работе выписали, а я домой пока утащил в свободное время изучать, поскольку в будущем это может пригодится.
Аноним 17/03/18 Суб 09:45:14 316018 134
>>316015
поздравляю с пополнением)
Аноним 17/03/18 Суб 09:53:18 316020 135
>>316017
В Atmel Studio прогаешь?
Аноним 17/03/18 Суб 09:53:39 316021 136
Аноним 17/03/18 Суб 10:02:18 316023 137
>>31020
Ну да. Красиво, удобненько. Мне хватает с головой. К тому же в конце концов официальное ПО от производителей
Аноним 20/03/18 Втр 18:41:16 316505 138
>>314976 (OP)
Анон, какова хуя HAL_Delay не работает? Надо что-то инициализировать?
Аноним 20/03/18 Втр 18:57:24 316508 139
>>316505
>Надо что-то инициализировать?
Да. Мозг.
Аноним 20/03/18 Втр 19:25:05 316514 140
>>316508
Лол. Короче выяснил в чем дело. Какого-то хуя в hal из кейла нет обработчика sysTick и потому программа виснет.
Аноним 20/03/18 Втр 19:31:03 316516 141
>>316514
И почему у меня всё работает?
Наверное, потому что ты пиздоглазое мудило.
Аноним 20/03/18 Втр 21:26:58 316532 142
Единственный косяк с systick у меня - 1602 с i2c экстендером не заводится выше чем на 16 МГц тактовой ф103-его.
Аноним 20/03/18 Втр 22:13:35 316536 143
>>316516
Завалите ка свой ебальничек, сударь малолетний.
Аноним 21/03/18 Срд 13:12:49 316622 144
Аноним 21/03/18 Срд 13:34:00 316625 145
Аноним 21/03/18 Срд 15:51:36 316652 146
fa17c635681842d[...].jpg 319Кб, 1920x1080
1920x1080
>>316622
Эту хуйню через любой юсб-уарт адаптер можно прошить.
Аноним 21/03/18 Срд 16:08:37 316656 147
>>316652
Вот только отладить не получится.
Аноним 21/03/18 Срд 20:17:06 316681 148
настроил сигма-дельта АЦП и сохранение через ДМА в переменную. Но если просто запускаешь прошивку, в переменную запись не идет. А если запускаешь дебаг в кейле то все збс. Что за фигня вообще ?
Аноним 21/03/18 Срд 20:47:05 316684 149
>>316681
Не знаю что такое "просто запустить прошивку", но это выглядит похожим на проебанный volatile.
Аноним 21/03/18 Срд 20:50:16 316686 150
>>316684
ну, если просто залить прошивку на контроллер и запустить его, то в таком случае контроллер не видит в переменной результат преобразования АЦП.
Если запустить в режиме дебага, в переменную пишется результат и все работает как надо.
Аноним 21/03/18 Срд 21:36:06 316695 151
>>316686
А ты область видимости переменной какую сделал? Может она у тебя дальше функции и не видна?
Аноним 21/03/18 Срд 22:22:53 316702 152
>>316695
Видимость нормальная, должно видеть. Иначе мне скорее всего ошибку бы выдало что такой переменной не существует при компиляции
Аноним 21/03/18 Срд 22:30:05 316703 153
1.png 78Кб, 792x1023
792x1023
2.jpg 61Кб, 350x500
350x500
Аноним 21/03/18 Срд 22:33:16 316704 154
>>316703
Бля, я практически уверен что переменную видит.
Аноним 21/03/18 Срд 22:41:19 316706 155
>>316681
>сохранение через ДМА в переменную
А это как? Я думал, что DMA это прямой доступ к памяти и ты сохраняешь не в переменную, а передаешь указатель на эти данные.
Аноним 22/03/18 Чтв 06:18:31 316761 156
>>316706
При настройке дма ты указываешь два адреса памяти. Откуда считать данные и по какому адресу их записать. После запуска программы дма молотит без твоей помощи информацию, т.е. Считывает быйты по адресу (к примеру)по которому находится регистр АЦП и записывает эти байты в память по второму адресу, который принадлежит переменной.
Аноним 22/03/18 Чтв 09:08:00 316781 157
Короче разобрался, пидорское sdadc не хотело работать с дма, потому что я сначала настраивал и запускал АЦП, а потом уже делал дела с дма. А надо было настроить ацп, включить его, настроить дма и только потом запускать преобразования
Аноним 26/03/18 Пнд 20:46:39 317523 158
Поясните за аппаратное умножение и все такое. Оно автоматически используется при вычислениях или надо что то намутить для этого?
Аноним 26/03/18 Пнд 21:22:46 317527 159
>>317523
Если правильно задано (флагами) ядро для которого компилировать, то все будет использоваться.

На всякий случай добавлю:
1) В Cortex-M0 имеется умножение только 32х32 разряда с 32-разрядным результатом. В M3 уже есть умножение с 64-разрядным результатом, причем есть вариант с накоплением.
2) В Cortex-M3 есть команда деления, которой нет в М0.
3) В Cortex-M4F есть FPU, причем оно бывает в двух вариантах с одинарной точностью (может только float) и с двойной (может float и double). Но в STM32 вроде бы FPU имеется только с одинарной точностью, соответственно вычисления с double будут медленные. Также GCC без дополнительных флагов не использует инструкции FPU, наверное в кейле/иаре также имеется отдельная галочка.
Аноним 26/03/18 Пнд 21:45:34 317530 160
>>317527
Не подскажешь как и где правильно такое искать в Гугле (флаги эти) ?
Аноним 27/03/18 Втр 00:05:05 317545 161
Аноним 27/03/18 Втр 08:14:16 317563 162
>>317545
Не уверен, но похоже на линукмовые команды
Аноним 27/03/18 Втр 09:45:36 317567 163
линкер.PNG 5Кб, 581x137
581x137
>>317563
>но похоже на линукмовые команды
Ваще-то линкеру такие же флаги передаются.
Аноним 27/03/18 Втр 10:43:45 317571 164
>>317563
Это не линуксовые команды.
Это _опции_ - дополнительные параметры при вызове компилятора.
Я же ссылку дал.
Какие именно туда подставлять "name" для STM32Fx - надо гуглить отдельно (о чём и был вопрос).

Аноним 28/03/18 Срд 21:29:11 317786 165
Есть большой массив в оперативке, в который постоянно записывается новые преобразования АЦП. Как при необходимости этот массив максимально быстро сохранить в памяти контроллера?
Пока накидал придумал только:
1) выделение в оперативке еще одно массива для хранения ( может не хватить места)
2) запись во флеш-память (записывает долго )
может есть какие-то нюансы или еще что?
Аноним 28/03/18 Срд 23:48:32 317810 166
>>317786
Т.к. массив только дописывается, то хранить его весь в RAM нет смысла.
Надо иметь буфер, и в фоновом потоке сливать его куда ты там хотел - на флешку или в EPROM.

Можно держать два буфера (указателя).
Пока текущий пишется, другой сливается, потом меняются.
И т.д. и т.п.
Аноним 02/04/18 Пнд 20:18:59 318630 167
дисплей.PNG 98Кб, 1384x646
1384x646
>>314976 (OP)
Есть владельцы STM32F429-Discovery в этом ИТТ треде?
Возник вопрос после вдумчивого раскуривания схемы данного устройства. У него, что, можно встроенный дисплей переключить в последовательный режим и освободить немного портов?
Аноним 12/08/18 Вск 18:46:08 333903 168
Аноним 12/08/18 Вск 20:05:08 333916 169
>>333903
>Нужен ли к ней программатор?
Нужен
Аноним 12/08/18 Вск 20:11:54 333920 170
>>333916
Я ещё в ньфаг-треде написал что нужен. Щас он в программаторов тред зайдёт и там спросит какой программатор нужен.
Аноним 12/08/18 Вск 20:30:59 333930 171
>>333903
Не нужен. Там есть загрузчик по uart
Аноним 12/08/18 Вск 22:12:35 333934 172
>>333930
Конвертер USB-UART всё-равно нужен будет.

Кортексач, хочу плотно подсесть на RTOS и смотрю в сторону ChibiOS. Отговори или посоветуй FreeRTOS другую ОС.
Аноним 13/08/18 Пнд 01:21:22 333947 173
>>333934

ChibiOS охуенна чуть менее чем полностью

а нахуя тебе нужна RTOS?
Аноним 13/08/18 Пнд 11:58:41 333982 174
Аноним 13/08/18 Пнд 12:21:28 333986 175
Аноним 13/08/18 Пнд 12:35:04 333989 176
>>333947
Долго думал чем оправдать её применение, но по факту получается только чтоб иметь её в качестве инструмента на будущее.
Аноним 13/08/18 Пнд 18:22:57 334020 177
>>333930
>Там есть загрузчик по uart
Нахуя этот гемор если клон ст-линка стоит столько же сколько и конвертер юсб-уарт? Я себе его вообще спаял за пол часа и не парюсь.
Аноним 15/08/18 Срд 20:36:50 334167 178
>>333986
Беру, спасибо большое!
Аноним 09/09/18 Вск 16:23:25 336941 179
Как же хочется покакоть в туалете офисе ST, но я покакну тут.
Сайт ST требует регистрации чтоб что-то скачать. Целые сутки я ждал письма с подтверждением мыла. Пока ждал - запросил ссылку на скачивание без регистрации. Ссылка пришла, но скачивания не произошло. Вообще никак. А ещё краткие описания семейств и в даташитах - путаница пиздец. Документация - ебанько.
SW4STM32 по сути сраный эклипс на яве, что на моём нетбуке с хубунтой превращается в слайдшоу с квестом. После всех установок, обновлений и правок - проект всё-равно не собирался и вылетал с какой-то неведомой мне ошибкой о том, что проект не существует.
ST MCU finder приложение на ведре не понимает, что доступна вафлесеть, и не работает. Все приложения работают, кроме этого.
Сайт с Mbed работает, но онлайн компилятор не раскрывает список "Select platform:". Вводишь имя-хуимя, кликаешь туда, список вываливается, но он пустой.
На винде есть Кеил, но как же я не хочу в винду...
Аноним 09/09/18 Вск 16:40:35 336943 180
>>336941
>Сайт ST
Красноглазый смог собрать ядро и выйти в интернет, спешите видеть. Сайт ST всегда отличался калечностью и уебищностью. Дахе логин у меня происходит секунд 40. Хотя за последние пару лет они довольно хорошо рассортировали материалы по контроллерам и я даже уже и не припомню когда бугуртил в поисках нужного.
А так, заради работы с контроллером можно и винду поставить с кейлом, ты уж целку из себя не строй.
Аноним 09/09/18 Вск 16:53:44 336944 181
>>336943
>можно и винду поставить с кейлом
Дык поставлено, но
>как же я не хочу в винду...
И вообще мой высер никак не отменяет уёбищности описанного. У меня впечатление, что всем вообще похуй, и эти фантики сделали под лозунгами "и так сойдёт" и "хуяк-хуяк и в продакшен".
Аноним 09/09/18 Вск 17:32:41 336951 182
>>336944
>и так сойдёт
Я, скажем так, совсем немного прикоснулся к программированию стм-ок да и вообще контроллеров, прямо на осьмушку шишечки, но на винде не было проблем ни с купленным на торрентах кейлом, ни с STVD для стм8. Про линукс говорить ничего не буду, даже не пытался попробовать.
Аноним 09/09/18 Вск 19:30:49 336955 183
>>336951
Осталось проверить TrueSTUDIO которая решит исход событий вселенского масштаба. Господи, спаси человечество меня, я не хочу в шиндоус.
Аноним 09/09/18 Вск 19:36:59 336956 184
>>336941
>SW4STM32 по сути сраный эклипс на яве
В чем проблема написать мейкфайл? Можно даже готовый взять. Не хочешь мейк - есть CMake и прочие.
>ST MCU finder
>приложение на ведре
Чо? Зачем это тебе?
>онлайн компилятор
Ну это вообще. У тебя в репозитории убунты по любому есть gcc-arm-none-eabi, которым все должно компилироваться.

>Сайт ST требует регистрации чтоб что-то скачать.
Это да, у них все не лучшим образом. А еще микроконтроллерные кортексы не заканчиваются на ST, есть минимум полтора десятка производителей.

>На винде есть Кеил, но как же я не хочу в винду...
У меня почему-то gcc одинаково работает под виндой и линуксом.
>как же я не хочу в винду...
Представь себе, для 8051 ничего кроме SDCC (который по качеству не очень) под линукс нет. А для многих микроконтроллеров и сигнальных процессоров так вообще ничего линуксового нет.
Аноним 09/09/18 Вск 20:02:02 336960 185
>>336956
>мейкфайл
А почему бы IDE просто не заработать как положено?

>Чо? Зачем это тебе?
Случайно наткнулся. Оказалось, что она тоже от ST, и тоже не работает.

>Ну это вообще.
Просто решил попробовать подСТшную ардуину, но оно отказалось работать.

>кортексы не заканчиваются на ST
Вопрос в цене и кол-ве говна с Али, которым так сильно хочется обмазаться...

>gcc одинаково работает
Так проблема не в компиляторе.

>вообще ничего линуксового нет
Допустим. Вот только под СТМ32 какбе должно быть, судя по статьям в интернетах, чтоб с ИДЕ, отладкой и без мозготраха. У меня не получилось, например. И, если что, я не ОП треда.
Аноним 09/09/18 Вск 20:08:43 336962 186
Аноним 09/09/18 Вск 20:09:43 336963 187
>>336960
Ну тогда тебе придется взять ардуину или установить винду и все равно взять ардуину.
Аноним 09/09/18 Вск 20:16:26 336965 188
>>336963
На винде Кеил у меня отлично работает. Ардуина в убунте тоже работает, в т.ч. с СТМ (Только в качестве эксперимента. Даже не у ардуинохейтера может взорваться пердак от такого сетапа). Проверю ещё TrueSTUDIO искаропки, который тоже эклипс, и если откажется, то да, придётся винду только для СТМ держать.
Аноним 14/09/18 Птн 10:41:50 337292 189
Аноны, я тут нубас полный, игрался с пердуиной, но чет понял, что зашквар, решил по хардкору вкатиться в стм. Для себя решил для начала сделать простенькую хуйню которая TCP пакет шлет. Я так понял мне надо stm32 discovery купить и некий ethernet модуль. Подскажите, что конкретно брать.
Аноним 15/09/18 Суб 07:20:07 337348 190
Screenshot2018-[...].png 296Кб, 931x1181
931x1181
>>337292
>stm32 discovery купить
>и некий ethernet модуль
Бери сразу
Аноним 15/09/18 Суб 09:36:27 337349 191
>>337348
да я уже вчера купил самую простенькую дискавери, теперь все одно Ethernet модуль нужен
Аноним 15/09/18 Суб 10:33:23 337350 192
>>337349
Ну и неправильно. Нужно было брать микроконтроллер с Ethernet MAC, а к нему уже приделывать PHY. Иначе ты бы мог делать то же самое на ардуине с каким-нибудь ENC28J60, даже код отличался бы только в части SPI. Или можно было взять микроконтроллер со встроенным PHY, только таких у ST вроде нет.

>>337292
>понял, что зашквар
Вот это спорно. Безусловно пердуино иде можно назвать зашкваром, но саму плату - не особо. Конечно атмеги устарели, но с чего бы от этого им стать зашкваром?
Для вкатывания атмеги неплохи - в небольшом количестве регистров трудно запутаться. И у них простой ассемблер, который несложно освоить для общего развития.
Аноним 15/09/18 Суб 14:15:14 337356 193
>>337350
>микроконтроллер с Ethernet MAC
Китайцы делают борды с такими?
Аноним 15/09/18 Суб 14:34:53 337357 194
>>337356
Да та же серия от WaveShare, с STM32F2/F4 на борту.
Аноним 15/09/18 Суб 14:38:09 337358 195
Аноним 15/09/18 Суб 17:09:38 337363 196
>>337356
Некитайцы, кстати, их тоже делают. На стартерките куча плат с STM32/LPC и эзернетом.
Аноним 15/09/18 Суб 17:57:31 337366 197
>>337358
>>337357
Не только, в F107 тоже есть. И вообще армы не заканчиваются на STM32, например со встроенным PHY:
https://www.digikey.com/products/en/development-boards-kits-programmers/evaluation-boards-embedded-mcu-dsp/786?k=MSP432E401Y
https://www.chipdip.ru/search?searchtext=+%09MSP-EXP432E401Y+
Если от игры с отладками перейти к созданию своих плат, микроконтроллер со встроенным PHY может оказаться получше STM32 из-за упрощения платы и экономии места.
Аноним 17/09/18 Пнд 18:04:23 337506 198
я вообще заподозрил неладное, когда читал статьи по stm32, кто-то на хабре писал как пару месяцев готовился к stm32. Еще в другой статье прочитал, что за вечер тут не въехать. Скачал MASTERING stm32, но там 700 страниц. Сам я погроммист на си++ со стажем, а чет зубы то пообломал на микроконтроллере, делители, хуители, что это за параша ебаная. Есть видео где его ебутлитература на русском? Что бы я хотя бы прочитал страниц 100 и всю архитектуру понимал и как там мигать светодиодом и как еще что-нибудь делать?
Аноним 17/09/18 Пнд 20:37:49 337513 199
>>314976 (OP)
Господа, есть один STM32F103ZET6. Какой самый минимальный вариант обвязки, чтоб он опознался китайским st-link'ом? Нужно ли запитывать все пины VSS и VDD для этого? Посылать нахуй в гугл смысла нет, буду ставить эксперимент и постепенно подключать, а затем отключать пины, чтоб выяснить, если никто ИТТ не проверял сам.
Аноним 17/09/18 Пнд 20:49:22 337516 200
>>337513
Резонатор, питание/земля (можно даже на неправильные ноги) и boot0 если надо
Аноним 17/09/18 Пнд 21:02:41 337518 201
>>337516
А ты точно уверен, что ему нужен внешний кварц? Разве SWD не тактирует его сам? Более того, у него же есть внутренняя RC-цепь на 8МГц.
Аноним 17/09/18 Пнд 21:21:36 337522 202
>>337518
>SWD не тактирует его сам?
Нет
>есть внутренняя RC-цепь на 8МГц.
Есть, можно даже на горячую ломать кварц и он перейдет обратно на встроенный осциллятор, но 8мгц это все же не 72
Аноним 17/09/18 Пнд 21:24:29 337523 203
>>337522
>минимальный вариант обвязки, чтоб он опознался
Я так понимаю, что внешний кварц таки не нужон. Как насчёт соединения всех ног питания? Хватит ли одной пары?
Аноним 17/09/18 Пнд 21:28:24 337524 204
raspberry-pi-ci[...].png 3Кб, 359x300
359x300
>>337523 Хватит, они же все равно объединены защитными диодами как и любые другие выводы.
Аноним 17/09/18 Пнд 22:02:20 337525 205
187521947128652[...].jpg 122Кб, 900x700
900x700
>>337524
Так у диодов же обратное включение навроде защиты от ESD. Почитал интернеты и Getting started with STM32F10xxx hardware development. Похоже, что там подразумевается внешняя шина и без соединения всех VDD/VSS работать не будет. Энивей, спасибо, завтра буду проверять экспериментально. Обидно если сожгу камень, но, вроде, не должен.
Аноним 17/09/18 Пнд 22:04:30 337527 206
>>337525 Погугли и дейва видосик что-то вроде mcu pin power
Аноним 17/09/18 Пнд 22:04:51 337528 207
Аноним 17/09/18 Пнд 22:24:54 337529 208
>>337527
Ну, это другое. Вопрос не в том, чтоб запитать ядро через диод. Нужно наверняка знать, соединены ли внутрисхемно все пины питания. В видео использован МК с одной парой выводов питания. Если использовать МК с двумя парами, но внутрисхемно расцепленными, то такой МК не заведётся подобным образом.
Аноним 17/09/18 Пнд 22:57:12 337531 209
>>337527
Не, похоже таки шина внешняя. В даташите ноги питания обозначены и пронумерованы от Vdd_1/Vss_1 до Vdd_11/Vss_11. придётся все пины соединять блять.
Аноним 19/09/18 Срд 17:06:19 337737 210
Сунулся на рутрекер.орг за Кейлом АРМ и не нашёл ничего!
Что хня творится?
Аноним 19/09/18 Срд 17:17:22 337740 211
>>337737
Ром нужно меньше пить, и с попугаем разговаривать. Всё там есть.
Аноним 19/09/18 Срд 18:25:26 337745 212
>>337737
1) Зачем брать взломанную и, возможно, затрояненную версию, когда есть бесплатная версия с ограничением 32 кБ. Твои программы занимают больше 32 кБ флешки?
2) Почему бы не взять GCC?
Аноним 20/09/18 Чтв 07:33:57 337794 213
>>337745
У меня второй проект уже занимает больше 32кб
Другой
Аноним 20/09/18 Чтв 08:08:50 337796 214
>>337794
Ну, по разному бывает. Но, например: http://fandy.ucoz.org/publ/metalloiskatel_quot_kvazar_quot_quot_quasar_quot/metalloiskatel_quot_quasar_arm_quot/2-1-0-5 занимает около 40 кБ флешки, более старые версии немного меньше.
Хотя, какой-нибудь lwIP даже побольше 32 кБ занимает, или это HAL у STM-щиков такой жирный.
И ты точно о том пишешь? Это ограничение не на размер исходного кода, а на суммарный размер секций данных и кода.
Аноним 20/09/18 Чтв 08:23:28 337799 215
>>337740
Нашел только для С51, для АРМ - хер
Аноним 20/09/18 Чтв 09:19:16 337800 216
>>337799
Это что такое https://rutracker.org/forum/viewtopic.php?t=5113043 ?
Но для начала ты должен ответить (хотя бы самому себе) чем тебя не устраивает >>337745 Даже если перестанет хватать версии с ограничениями, ты всегда можешь использовать "таблетку" из раздачи с рутрекера. А GCC чем не устраивает?
Аноним 20/09/18 Чтв 12:10:02 337805 217
>>337800
>А GCC чем не устраивает?

Под него линкер-скрипты, меморимапы и фьюзы-хуюзы руками на башоперле же писать?
Аноним 21/09/18 Птн 16:22:38 337934 218
>>337805
>на башоперле
На барбершопе
Аноним 22/09/18 Суб 13:19:20 338036 219
>>337800
>А GCC чем не устраивает?
В чем смысл уговаривания низкоквалифицированных специалистов перейти на более сложный софт?
Аноним 23/09/18 Вск 06:31:23 338143 220
>>337800
>А GCC чем не устраивает?
Зачем GCC при наличии божественного Keil?
Аноним 23/09/18 Вск 06:44:14 338144 221
>>338143
Я вообще не понимаю, нахуя тут постоянно свидетели Эклипса и ГЦЦ лезут? 99% посетителей /ра/ даже Ардуинский blink не могут воспроизвести, а им тут начинают затирать про make и прочие линкеры/канпиляторы
Аноним 23/09/18 Вск 08:41:29 338149 222
>>338144
Ну как бы это ARM тред. Это подразумевает, что посетители этого треда осилили хотя бы Си. Осилить после этого остальное уже несложно.
Но писал я не об этом, а о том, что для мигалок кейл воровать не нужно, а для чего-то более сложного можно и GCC же освоить.

>>338143
Ничего, что кейл это IDE вместе с компилятором, а GCC компилятор? Компилятор, не обязательно GCC можно и armcc, можно использовать из самых разных IDE.
>божественного
Тебе хоть есть с чем сравнивать? Как IDE, кейл остался в прошлом веке.
Аноним 23/09/18 Вск 19:36:47 338202 223
>>338149
> Как IDE, кейл остался в прошлом веке.
Опять за эклипс топишь, мудило?
Аноним 23/09/18 Вск 22:32:25 338215 224
Аноним 24/09/18 Пнд 04:00:20 338234 225
Чем не устраивает связка Geany OpenOCD DDD везде графический интерфейс
Аноним 24/09/18 Пнд 04:42:44 338236 226
>>338215
>clion
И можно без напильника взять готовую сборку и начать кодить для stm32?
Аноним 24/09/18 Пнд 07:32:35 338242 227
>>338202
Откуда такая агрессивность? Это реакция на замечание о том, что даже кейл воровать не обязательно?
Если так хочешь эклипс, можешь попробовать TrueSTUDIO или DS-5 Development Studio. Проект создается так же просто как в кейле, но лучше навигация по коду, есть рефакторинг, можно поставить плагины для интеграции с гитом, doxygen и прочим.

>>338215
Нашел что советовать. Оно тормозит на 16 ГБ оперативной памяти, с двумя гигабайтами уже работать совсем невозможно. А под XP вообще не запускается. Лучше бы visual studio советовал.

>>338236
Не знаю что ты называешь напильником, но там необходимо вручную писать CMakeLists.txt, причем не только для микроконтроллеров, а вообще для всего. Так что, наверное, для тебя без напильника никак. Хотя если освоить CMake, то будет все просто.
Аноним 24/09/18 Пнд 08:08:56 338247 228
>>338242
>Хотя если освоить CMake, то будет все просто.
Зачем плодить сущности?
Есть же Keil (IAR, TrueSTUDIO), который из коробки/торрентов всё умеет.
На лицензионность я хер клал.
Тот же TrueSTUDIO сейчас для STM32 вообще бесплатный (хотя после Keil он мне не зашёл)
Аноним 24/09/18 Пнд 08:21:01 338248 229
Аноним 24/09/18 Пнд 08:37:32 338249 230
>>338149
>Как IDE, кейл остался в прошлом веке.
Keil как среда разработки для ARM, а конкретно, для STM32.
Keil не ok, по твоему мнению.
Что взять БЕЗ ГРЁБАНОГО ДОПИЛИВАНИЯ, что бы начать кодить/отлаживать для STM32? Поддержка CubeMX приветствуется. Хотелось бы обоснование выбора.
Аноним 24/09/18 Пнд 10:08:11 338258 231
Антуаны, не встречались ли вам на алике готовые модули с stm32f100? Как blue-pill с stm32f103, только с stm32f100.
Аноним 24/09/18 Пнд 12:00:25 338266 232
>>338249
Keil. Поменьше опирайся на мнение общественное, и побольше на своё. Какой вообще смысл выбирать что-то, если есть возможность поставить Keil и ниибаца?
Аноним 24/09/18 Пнд 12:13:45 338268 233
>>338266
Выбор сейчас огромный, не мудрено реально хороший вариант проебать из-за лени и инерционности мышления. Поэтому и интересуюсь.
Аноним 24/09/18 Пнд 12:33:53 338273 234
>>338249
>Зачем плодить сущности?
Ты наверное еще и гит или меркуриал лишними сущностями считаешь.
>Что взять БЕЗ ГРЁБАНОГО ДОПИЛИВАНИЯ
С таким подходом к программированию - только кейл.

>>338268
Если ты в эклипсе (TrueSTUDIO) не заметил никаких преимуществ, то продолжай использовать кейл. А так, в более-менее современных IDE, в том числе и в эклипсе, есть много полезных средств для работы с кодом, выше я называл некоторые. В предыдущем треде тоже кое-что можно почитать.
Аноним 24/09/18 Пнд 13:03:11 338278 235
>>338273
что-то конкретики нет.
Аноним 24/09/18 Пнд 17:07:49 338318 236
>>338249
>Поддержка CubeMX
CubeMX генерирует Makefile,
так что vi и arm-none-eabi- и openocd достаточно.
Сам понимаешь что выигрывает в выборе из vi и eclipse параши.
Аноним 24/09/18 Пнд 18:46:47 338356 237
>>338318
>так что vi и arm-none-eabi- и openocd достаточно.
>Сам понимаешь что выигрывает в выборе из vi и eclipse параши.
что?
Аноним 24/09/18 Пнд 18:54:33 338359 238
Аноним 24/09/18 Пнд 19:04:42 338366 239
Аноним 24/09/18 Пнд 19:14:14 338374 240
>>338318
>vi
Это же текстовый редактор, а не IDE. Вот как в этом вашем vim переименовать переменную или функцию везде, где она использовалась?

>>338359
А это уже для любителей грызть мозоли, про это все знают.
Аноним 24/09/18 Пнд 19:21:17 338378 241
Аноним 24/09/18 Пнд 19:23:21 338379 242
В емахе ассемблер из каропки, например для 8-бит пиков
Аноним 24/09/18 Пнд 19:40:38 338385 243
>>338378
Не, это не серьезно. Это заменит все вхождения без разбору, функция это или переменная или вообще часть имени. Еще и в одном файле только.

>>338379
Ассемблер я и на симейке смогу сделать, только без макросов наверное.
Аноним 25/09/18 Втр 04:27:28 338434 244
Антуаны, ничего личного.
Открываю в AtollicSTUDIO проект из CubeMX - пишу HAL_GPIO_WritePin(
Ну и где тут посмотреть какие параметры у функции?
Почему в процессе написания не предлагалось вариантов названия вызываемой функцию?
В Keil это работает из коробки.
Аноним 25/09/18 Втр 09:30:23 338444 245
1.png 107Кб, 1920x1040
1920x1040
2.png 117Кб, 1920x1040
1920x1040
>>338434
В обыкновенном эклипсе все работает. По умолчанию подсказки появляются по нажатию ctrl + пробел (в кейле точно такое же сочетание клавиш), но можно в настройках включить автоматическое появление. Возможно в AtollicSTUDIO автодополнение по умолчанию отключено, для уменьшения занимаемой памяти, чтобы на древних компах не тормозило.
Хотя, по сравнению с visual studio и даже qt creator, автодополнение в эклипсе работает плоховато.
Аноним 25/09/18 Втр 11:48:10 338452 246
>>338444
>По умолчанию подсказки появляются по нажатию ctrl + пробел
О, прикольно!
>в кейле точно такое же сочетание клавиш
В Кейле это сразу включено
>автодополнение в эклипсе работает плоховато
А что работает хорошо?
Аноним 25/09/18 Втр 12:44:25 338455 247
>>338452
Для хорошего познания необходимо программировать на чистом железе и без всякого автодополнения и в редакторах по типу vi emacs joe
Аноним 25/09/18 Втр 13:19:37 338459 248
>>338452
>В Кейле это сразу включено
Что-то не похоже. По крайней мере в версии 5.11 этого нет. Возможно у тебя репак от Васи с торрентов, в котором настройки по умолчанию изменены.
>А что работает хорошо?
Выше по треду перечислили некоторые навороченные современные IDE:
>visual studio и даже qt creator
>clion

>>338455
Это ты вообще о чем? Про редакторы так вообще бред. Заучивание горячих клавиш этих уродцев никак не поможет изучит язык Си. А еще, судя по тебе, использование этих текстовых редакторов плохо сказывается на способности понимать русский язык.
Аноним 25/09/18 Втр 13:41:49 338460 249
>>338459
>Это ты вообще о чем
Не используй кубик, программируй baremetal

>изучит язык Си
только ассемблер
Аноним 25/09/18 Втр 13:42:57 338461 250
>>338460
>>изучит язык Си
>изучит язык
>изучит
Аноним 25/09/18 Втр 13:47:09 338462 251
>>338459
>По крайней мере в версии 5.11 этого нет.
В 5.23 и 5.24а это из коробки.
Аноним 25/09/18 Втр 15:13:19 338466 252
А как в Atollic TrueSTUDIO прошивку загрузить в МК?
Долблюсь в глаза и не могу понять.
Аноним 26/09/18 Срд 02:04:32 338509 253
Аноны, а есть ли какой-нибудь статический профайлер под серию Cortex-M? Очень нравится вылизывать критические места в прошивках, но смотреть время выполнения на логическом анализаторе путем дерганья ног немного задалбывает и не совсем точное, потому что мой умеет всего 24 Мс/с. Нашел oprofile, но он нифига не статический, хочется скормить функцию и получить количество тактов в зависимости от значений переменных и ветвлений и лучший/худший вариант. Если ничего подобного нет и кому-то еще он кажется нужным, то можно попробовать пойти на магистра с такой темой диплома, но анализ языка меня немного пугает.
Аноним 26/09/18 Срд 07:59:08 338516 254
mem.png 59Кб, 598x442
598x442
>>338509
Я конечно допускаю то что могу что-то не понимать, но по моему ты делаешь ерунду.
>путем дерганья ног
Чем это будет отличаться от использования таймера? У тебя наверняка не все таймеры заняты. Запуск и остановка таймера это точно такая же запись в регистры, как и дрыганье ногой.

>потому что мой умеет всего 24 Мс/с.
Столь малые задержки это всего лишь несколько инструкций. В таком случае, по моему, целесообразнее смотреть ассемблер.

>в зависимости от значений переменных и ветвлений и лучший/худший вариант.
Возможно ты это и так знаешь, но на всякий случай скажу. Видишь как организована память? Так вот для разных микроконтроллеров с одним ядром это может немного отличаться. По крайней мере быстродействие и разрядность флеша может отличаться. В тех же STM32 (и почти во всех других кортексах) есть буфер предварительной выборки из флеша, который необходимо включать при большой тактовой частоте, да еще и настраивать количество тактов задержки при доступе к флешке. Размер этого буфера и возможно логика его работы отличается в разных микроконтроллерах, даже если у них одинаковое ядро. А еще программу можно запихнуть в ОЗУ. А еще ОЗУ может быть однопортовое и двухпортовое.

>анализ языка меня немного пугает.
Не пойму где тут анализ языка. Тут скорее работа с ELF и эмулятор микроконтроллера. Вроде как тайминги ядра все описаны в Technical Reference Manual на arm.com. Вот только мне кажется что там не полностью все описано. Например, мне не понятно как изменятся тайминги при выполнении кода из ОЗУ, когда все взаимодействие с памятью будет осуществляться через одну шину. Хотя, возможно, я просто невнимательно читал документацию.
Аноним 26/09/18 Срд 19:31:28 338573 255
>>338516
Да, а я думал, что уже что-то понимаю в микроконтроллерах. Даже книжку по M0 прочитал наполовину и все равно есть области, в которых не шарю совсем.

>Чем это будет отличаться от использования таймера?
Таймер даже лучше. Спасибо, с ардуино осталась привычка ногодрыгом все мерить. Но все равно остается заливка программы, хотя тут можно написать вывод значений по UART или SWO и получить обычный анализатор, который будет показывать, сколько раз какое число тактов исполнялось, сейчас имеется один для анализа дампов с логического анализатора.

>В таком случае, по моему, целесообразнее смотреть ассемблер.
Да, я так и делаю иногда или пишу сразу на нем, но подсчет тактов надо делать вручную или смотреть, что меняется в разных версиях, хочется это как-то автоматизировать.

Видишь как организована память?
Да, ее работу я еще не разбирал. Хочешь сказать, что в некоторых случаях могут быть задержки на получение инструкций? Это можно настроить, думаю, они ж фиксированные. Я с STM32F0 и F4 работал, там все без ожидания работает, из ОЗУ запускать программу не пробовал.

>Не пойму где тут анализ языка.
Ну так я же для си делаю анализатор,а не для ассемблера. Как минимум циклы и ветвления надо распознавать. Кажется, что все просто, а на самом деле все совсем не так будет. Ветвление еще ок, а циклы хочется решать хитрее, чем простой симуляцией, чтобы не городить эмулятор. Я хочу вообще без него обойтись, просто считать количество тактов на инструкцию. Keil генерирует листинги с комметариями, какой кусок кода скомпилировался в инструкцию, так что с этим проблем нету.

>Например, мне не понятно как изменятся тайминги при выполнении кода из ОЗУ
Особый случай, его отдельно разбирать надо будет. Зачем это делать, кстати, кроме экономии ресурса памяти или случая, когда она медленная?
Аноним 26/09/18 Срд 20:15:42 338575 256
>>338573
>Я с STM32F0 и F4 работал, там все без ожидания работает
>STM32F0
RM0360 страница 58
>Bit 4 PRFTBE: Prefetch buffer enable
> и т.д.
>Bits 2:0 LATENCY[2:0]: Latency
>hese bits represent the ratio of the SYSCLK (system clock) period to the Flash access time.
>000: Zero wait state, if SYSCLK ≤ 24 MHz
>001: One wait state, if 24 MHz < SYSCLK ≤ 48 MHz
Все там есть. И задержка есть и буфер. За тебя это наверное HAL с кубом настраивали.
Для STM32F4 сам сможешь найти.

Мой прогноз - с таким подходом ничего адекватного у тебя не получится.

>просто считать количество тактов на инструкцию.
Ты хотя бы про конвейер в процессорах слышал? Так в кортексах он тоже есть.
Аноним 27/09/18 Чтв 01:54:01 338597 257
>>338575
>RM0360 страница 58
Я только про периферию читал. Нет, частота 48МГц, а память без задержек ебашит и все работает, странно как-то. Может потому что напряжение питания 3.3 вольта, лол.
А с задержкой совсем грустно, без нее прерывание 12.7мкс занимает, с ней и PRFTBE — 14.2, без PRFTBE — 19.2.

>HAL с кубом
Фу-фу, только CMSIS и работа с регистрами, только хардкор. Думаешь,если бы я использовал HAL, мне бы было дело до пары процентов во времени исполнения?

>с таким подходом ничего адекватного у тебя не получится.
Может быть, пойду собирать инфу. Даже с допущением, что все инструкции выполняются за время, которое на сайте армовском написано, можно получить результат, близкий к реальному. Мне не абсолютное значение длительности важно, а относительное. Задержки же постоянны, изменяя их, невозможно сделать один фрагмент кода быстрее другого.

>Ты хотя бы про конвейер в процессорах слышал?
Да, и про архитектуру слышал, и микрокод писал. Из-за него осуществленное ветвление 3 такта занимает вместо одного, судя по всему.
Аноним 27/09/18 Чтв 07:15:12 338606 258
Посоны, я как-то заблокировал свою STM32VLDiscovery - не видится программатором, но при включении лампочками моргает как положено по программе.
Пытаюсь её перепрошить через ST-Link v2 c зажатым reset'ом - не прокатывает. Программатор чип не видит.
Помогите, а?
Аноним 27/09/18 Чтв 07:55:50 338613 259
>>338597
>Может потому что напряжение питания 3.3 вольта
А также комнатная температура и просто повезло.

>Фу-фу, только CMSIS и работа с регистрами, только хардкор.
Ну и зря. Хотя бы настройку периферии можно было через HAL или LL делать. Какая разница сколько времени после включения питания будет настраиваться периферия? Ну займет оно у тебя чуть больше памяти, какая разница, все равно памяти обычно много. Ты вот не пользовался и как минимум одну ошибку сделал.

>мне бы было дело до пары процентов во времени исполнения?
Вот это странно, что тебе есть дело до этого. На практике, за редкими исключениями, оптимизация имеет смысл только для снижения потребляемой мощности. Либо подобную оптимизацию используют для экономии пары копеек на микроконтроллере, но это уже обычно не про кортексы.
Да хоть ты в три раза по быстродействию соптимизируешь, все равно приличный DSP/ПЛИС не заменишь кортексом.

>>338606
Тебе нужно включить бутлоадер.
Аноним 27/09/18 Чтв 08:40:08 338617 260
>>338613
>Тебе нужно включить бутлоадер.
Я на boot0 кидал 3.3в - ничего не изменилось.
Ну или можешь подробнее разжевать?
Аноним 27/09/18 Чтв 09:42:04 338621 261
Как сделать чтобы кеил начинал загружать прошивку не с начального адреса, а с другого сектора? Т.е. у меня на f4 первый сектор всего 16кб и я его хочу использовать для сохранения переменных как в eeprom. А вместо этого я пишу в последний сектор размером 128кб, что как бы довольно большой объем и мне столько не нужно
Аноним 27/09/18 Чтв 19:26:24 338681 262
>>338617
Там кроме BOOT0 есть BOOT1. Нужно убедиться что на BOOT1 подается 0, например резистором к земле притянут.

>>338621
>f4
Так там в начале лежит таблица векторов прерываний. Тебе тогда придется после каждого стирания сектора их восстанавливать.
А так все возможно. Потребуется изменить скрипт линкера и startup.
Аноним 27/09/18 Чтв 22:21:20 338704 263
>>338606
А в ST-link utility определяется? Может, в логах будет проблему видно. У меня на прошивке выше 27 не подключается плата, если подать на нее 5 вольт со встроенного источника, с внешним или 3.3 все работает. На 27 версии работает, но с 28 откатиться на более старые не получается.

>>338613
>А также комнатная температура и просто повезло.
Ну значит так и оставлю. Надо тест написать, может, ошибки проскакивают, но крайне редко.

>Хотя бы настройку периферии можно было через HAL или LL делать.
Про LL не слышал, только про stdperiph, но он у меня не захотел компилироваться. Я, когда начинал, скачал куб, настроил там все, посмотрел, какую он простыню накатал и решил, что он мне не нужен. Тащить его ради инициализации, которая по мануалу за полчаса делается? И как раз записал себе в то время встраиваемые системы в универе, а там все на регистрах было, для лучшего понимания, наверно, так что решил, что только регистры и никаких библиотек. Все равно мануал для понимания почитывать надо. Плюс с ним я бы и не узнал, что память без задержек может работать, надо еще частоту попробовать выше максимальной поднять для эксперимента.

>Ты вот не пользовался и как минимум одну ошибку сделал.
Не одну, я в прошлом треде синтезатор для баса делал, можешь почитать. И макрос для значения одного регистра в другом использовал, и выключенную периферию конфигурировал. Вкатился с нуля, надо было хоть что-нибудь почитать для начала, а не пытаться сразу писать совсем без понимания, как все работает.

>Вот это странно, что тебе есть дело до этого. На практике, за редкими исключениями, оптимизация имеет смысл только для снижения потребляемой мощности.
А для увеличения производительности? У меня сейчас в прерывании по таймеру ШИМ 32-канальный считается, и чем оно меньше времени занимает, тем выше можно сделать частоту. Я только в случаях, когда производительность затрагивается, это и делаю.

>Либо подобную оптимизацию используют для экономии пары копеек на микроконтроллере, но это уже обычно не про кортексы.
Кто-то еще делает чипы с объемом памяти, не кратным двум?

>все равно приличный DSP/ПЛИС не заменишь кортексом.
Эх, хотелось бы мне получить задачу, где их не заменишь. Пока пилю свои идеи, в синтезаторе надо было определять частоту главной гармоники сигнала, посоветовали автокорреляцию. Было там 4к сэмплов, сначала делал ее через БПФ, но особой точности не было. Потом помаленьку пришел к нахождению максимума на графике по количеству логарифма от размера выборки точек с увеличивающейся точностью, в начале из сигнала берется каждый 100 сэмпл, потом 64, потом 32 и до одного. Стало возможно использовать вычисление обычным методом за 1мс, быстрее, чем БПФ, и точнее. А хотел сделать на ПЛИС параллельное умножение сначала, но коммуникация между ней и процессором все плюсы съедала, потому что АЦП встроенный. Можно, конечно, сдетлать внешний АЦП и все расчеты в ПЛИС засунуть, но зачем, задержка и так не ощущается. Хотя я SIMD-инструкцию для умножения и сложения использовал, ARM их к DSP относит.
Аноним 28/09/18 Птн 07:16:53 338725 264
>>338704
>Ну значит так и оставлю. Надо тест написать, может, ошибки проскакивают, но крайне редко.
То что производитель не гарантирует работу в этом режиме, тебя не беспокоит? Оно из-за этого в любой момент может перестать работать.

>У меня сейчас в прерывании по таймеру ШИМ 32-канальный считается, и чем оно меньше времени занимает, тем выше можно сделать частоту.
Не убедительно. Можно использовать пересылку ПДП в GPIO, это даст минимум на порядок большую частоту. Можно взять микросхему вроде TLC5947. Можно взять CPLD.
Аноним 28/09/18 Птн 08:02:36 338728 265
>>338725
>Можно взять CPLD.
Тут я немного ошибся. CPLD такого объема дороже FPGA. 10M02 в самый раз будет.
Аноним 28/09/18 Птн 11:23:37 338739 266
Аноним 28/09/18 Птн 14:53:46 338748 267
Поясните за arm cordio ble stack - его можно использовать только на определенных девайсах, или это обертка, которую хоть на cc2640, хоть на nrf5x можно ставить поверх их родных softdevice или какеготам?
Аноним 28/09/18 Птн 22:49:50 338784 268
>>338725
>Оно из-за этого в любой момент может перестать работать.
Пока проблем не было, надо тестировать. Может, работа на такой частоте в узком диапазоне условий доступна и про нее не написали. Я контроллер для игры делаю, он будет работать в помещениях с температурой от +15 до +30 градусов.

>Не убедительно.
Забыл сказать, что использую STM32F030 и делаю упор на цену. Готовое устройство будет около 400 баксов стоить(но 220 из них приходится на фейдеры с мотором), в нем 9 модулей, текущая комбинация с четырьмя 595 регистрами стоит $1.5 на LSCS, если они от ST, и $1.3, если взять подешевле.

>Можно использовать пересылку ПДП в GPIO, это даст минимум на порядок большую частоту.
Это время расчетов, регистры по SPI управляются. Есть массив из 32 байт со значениями скважности, из него считаются состояния выводов. Написано на ассемблере, одна итерация цикла 13 тактов занимает, быстрее пока не придумал.

>TLC5947
Нелохо, но цена великовата. Плюс таких 2 понадобится, можно взять TC62D723FNG, но она $1.8 стоит, уже $4.2 получается на модуль.

>10M02
$6, мне на ней всю логику надо будет писать. Слишком незначительная задача, чтобы тащить FPGA, светодиодами управлять да мотором, но для него ШИМ трехбитная и частота в 32 раза выше. Конечно, если бы это всего одна плата была, то можно делать, что хочешь, но цена и так слишком большая, поэтому надо экономить. Неограниченный по бюджету у меня экран на 0402 светодиодах на AS1130B, там и WL-CSP будет, и куча сенсоров.

>>338739
Мне Кейл своей простотой нравится и тем, что 150 мегабайт оперативки занимает, в 2 раза меньше дискорда и остальных поделий на электроне. После него эклипс слишком навороченный и тяжелый в плане интерфейса. Форматирования только не хватает.
Аноним 29/09/18 Суб 04:10:11 338791 269
Kek
Аноним 29/09/18 Суб 15:36:13 338808 270
>>338681
>Там кроме BOOT0 есть BOOT1. Нужно убедиться что на BOOT1 подается 0, например резистором к земле притянут.
Спасибо, бро!
Всё получилось.
Аноним 03/01/19 Чтв 15:24:16 351599 271
Здравствуйте , радачилы, есть cypress psoc 5lp. хочу на блоках UDB (аналог плисы) сделать частотомер. два раза создавал тред, но упрямый бот закрывает его и отправляет сюда. Но может тут помогут, хотя не знаю как ARM и ПЛИСовые блоки могут быть связаны. Короче есть проблема, за первую секунду счётчик считает странное число, которое меняется примерно на 2млн. В крейторе завожу частоту в 12 МГц и секунду делаю тоже с 12 МГц.
Аноним 04/01/19 Птн 18:43:09 351730 272
>>338704
>инициализация за полчаса
Пойди-ка F7/H7 проинициализируй за полчаса.
Аноним 04/01/19 Птн 20:11:56 351736 273
>>351730
>F7/H7
Там и с F4 не все просто.
Аноним 04/01/19 Птн 21:55:27 351743 274
>>351736
Согласен. Стартанул 103 на голом цмсис и почувствовал себя отцом, думаю ща и для 407 бойлерплэйт сварганю. Запутался в этой куче плл, зашёл в куб и за 3 минуты сделал инициализацию с помощью лл. Ебал я такой пердолинг за идею.
Аноним 17/02/19 Вск 18:30:39 357348 275
Реквистирую Литературу по микроконтроллерам сам ньюфаг и мои знания ограничаваются знанием электроники на уровне триггеров регистров на стандартной 155 серии ТТЛ
Аноним 17/02/19 Вск 22:25:34 357377 276
Аноним 17/02/19 Вск 23:02:06 357380 277
Аноним 13/03/19 Срд 01:22:01 359573 278
Аноним 30/03/19 Суб 15:55:04 360958 279
image.png 149Кб, 638x451
638x451
Перепощу сюда.
Котаны, подскажите, что делаю не так.
Пытаюсь сделать задержку в "наносекундах" через DWT, но вместо результата получаю какую-то хуиту. На малых числах получаю неадекватно большие задержки, на больших получаю разницу раза в 2 (при том наоборот в меньшую сторону).
https://godbolt.org/z/AXRGxD
Видимо, я проебался где-то в своей функции, но что я сделал не так - понять не могу.
Со стандартного вида DWT-ms таймером всё работает нормально.
Аноним 30/03/19 Суб 16:44:59 360962 280
>>360958
>Zalupa999(120010001000*5);
У тебя тут переполнение uint32_t. Дальше лень смотреть, может позже попробую.
Аноним 30/03/19 Суб 23:16:25 360990 281
>>360962
Хмм, насчет переполнения справедливо, посчитал - оказывается тормознул.
Но оно и до переполнения работает мальца через жопу. Странно.
Аноним 01/07/19 Пнд 19:42:11 371803 282
>>314976 (OP)
АНОНЫ Я когда то давно вкатывался в STM32, у меня даже был модуль, там вроде была F100 какая-то, но у нее уже EOL тогда наступал.
Мне тогда ARM не очень под задачи и умения был, и я остался на AVR сидеть, ща понял что сильно отстал от моды и надо наверстывать.

Какой ARM камень себе под макетку взять (не обязательно STM), что бы вот прям самый современенный и максимально несущий все новомодные фичи?

Я понимаю, что - мудак берешь параметрический поиск и выбираешь).
Но мб кто че конкретное посоветует.
Планирую с ним изучать из списка: CAN, Ethernet, встроенный USB, базовый радиопередатчик, RFID, WiFi, мб че еще предложите.
Задрался я сидеть на компорта и всяких ебучих RS-xxx.
Аноним 01/07/19 Пнд 19:55:33 371804 283
Аноним 01/07/19 Пнд 20:48:02 371808 284
>>371804
А к нему житаг за приемлемую для рядовой пидорахи цену есть?
Аноним 01/07/19 Пнд 20:53:00 371809 285
>>371808
>>371804
>>371803

Я вот смотрю в сторону STM32F107 и ATSAME70.
На первый житаг на помойке можно найти, на 2ой - один хуй хотел себе атмель-айс купить.


Аноним 01/07/19 Пнд 21:02:19 371811 286
>>371809
уебки, как jtag-адаптер может быть разным для разного говна?
Аноним 01/07/19 Пнд 21:07:18 371812 287
>>371811
Лол, наизейше, по взмаху руки менеджера.
На AVR вон взяли и ебанули пачку своих жтагов с выходом новой IDE.
Какую еще проприетарщину натворили мудаки один хуй знает, сейчас бы гнать месяц топовый камень, разхуярить плату и узнать, что для покупки жтага надо продать автомобиль которого нет.

У меня есть ST-Link и G-Link Segger(клон), если один из них берет ESP32 то возьму ее скорее всего.
Аноним 18/07/19 Чтв 10:19:31 372993 288
изображение.png 1067Кб, 1300x951
1300x951
Антон, какие книги можешь посоветовать по семейству ядер ARM cortex?
Аноним 18/07/19 Чтв 14:54:12 373013 289
>>372993
Официальные доки и книжки Джозефа Ю.
Аноним 18/07/19 Чтв 17:41:45 373026 290
>>371812
А в чем отличие ESP32 и STM32? Так понимаю ESP32 китайское дерьмо в отличие от германского STM32.
Аноним 19/07/19 Птн 23:27:21 373093 291
>>373026
Да всего лишь наличие в дерьме вайфая, блютуса и второго ядра проца.
Аноним 04/09/19 Срд 09:27:47 377217 292
Онанимасы, спасайте! Малинка унижает анона в собственной сычевальне! Читаю мануал по Пи Зеро W....
Захуярьте загрузочную флешку из образа и Етчера
Положите в корень два файла: ssh и бла-бла
Тут я охуеваю и не могу зайти в файловую систему флешки!! Винда требует ее отформатировать!! Неужели придется ставить красноглазый Линух?!
Аноним 04/09/19 Срд 09:59:52 377218 293
>>377217
Спермопроблемы спермораба.
Аноним 04/09/19 Срд 12:41:28 377228 294
14366238784900.jpg 41Кб, 314x604
314x604
>>377218
>Спермопроблемы спермораба.
Ебанные красноглазые пидорасы!! Как же я вас ненавижу!! Всё не как у людей!!
Аноним 04/09/19 Срд 14:17:54 377236 295
gbpljc.JPG 132Кб, 1319x796
1319x796
>>377228
Простейший коннект к малине превращается в хитровыебанные пасы с созданием файлов и бросанием их в корень через виртуалку с Убунтой. Нахуй! Просто нахуй эту ебучую поделку!!1
Аноним 04/09/19 Срд 16:22:28 377246 296
>>377236
Во-первых, в DIY есть тред чисто по Малинам.
Во-вторых, я нихуя не понимаю, в чем твоя проблема, сириусли. У меня из под винды нормально всё запустилось без особых плясок. Win 8.1. Не помню, чтобы бегал к кому-то за линуксами хоть раз. Ну а после первоначальной установки у меня вообще всё прекрасно работает и коннектится. Ни разу с того момента не подключал к ней USB клаву.
В-третьих, я так и не понял, что означает твой пикрил. Это какой-то юмор?
Аноним 04/09/19 Срд 17:23:24 377261 297
>>377228
Зачем он сжал лягушку? Мне грустно от этой картинки.
Аноним 04/09/19 Срд 20:31:37 377277 298
>>377246
>в DIY есть тред чисто по Малинам.
Ну охуеть! Зато страшно далекий от радачества тред про 3д-принторы висит на глагне
Аноним 04/09/19 Срд 22:27:29 377286 299
>>377261
Жизнь - боль. Deal with it.
Аноним 05/09/19 Чтв 02:48:21 377325 300
>>377277
Каким образом малинка относится к АРМ? Чисто софт-проблемы, в /s или в /b
Аноним 05/09/19 Чтв 02:53:59 377326 301
Поделитесь куском кода для горизонтального меню на экране с тремя и более пунктами подменю.
Аноним 05/09/19 Чтв 16:18:57 377375 302
>>377325
>Каким образом малинка относится к АРМ?
Прямым. Или ты думаешь, что у нее х86 камень?
Аноним 05/09/19 Чтв 16:19:33 377376 303
>>377325
>или в /b
Видимо самый адекватный раздел остался на борде.
Аноним 07/09/19 Суб 10:07:27 377514 304
>>314976 (OP)
На каких языках пишут 3000кк/сек-погроммисты для Малинки?
Аноним 07/09/19 Суб 10:11:21 377515 305
>>377514
На малинке на питоне ебашут
Аноним 07/09/19 Суб 10:50:06 377516 306
>>377228
Ты не забыл что там на твоей малинке крутится? Извинись.
Аноним 07/09/19 Суб 10:50:39 377517 307
>>377515
>на питоне ебашут
А на Си можно? А то неохота еще одним ЯП свою тупую башку забивать.
Аноним 07/09/19 Суб 17:02:12 377540 308
пердолинг.JPG 89Кб, 723x433
723x433
>>314976 (OP)
4+ часа компилинга и ХУЯК!! Почему нельзя сделать установочный пакет откомпиленного этого говна, а не пердолить судками эту ардуину на стероидах?
Аноним 07/09/19 Суб 18:26:55 377557 309
>>377540
в логи конфига не судьба было глянуть
Аноним 09/09/19 Пнд 21:30:42 377713 310
1
Аноним 14/09/19 Суб 04:46:57 378058 311
Что можешь сказать о RISK V
Аноним 20/09/19 Птн 16:13:40 378460 312
>>315349
Вкатываюсь по тихому в cmsis, потому что хал и прочие библиотеки для пидоров или хуже того, ардуинщиков, а так с авр много общего в принципе, ну разве что надо помнить про тактирование всего
Аноним 20/09/19 Птн 18:24:06 380604 313
>>314976 (OP)
Как реализовать это на примере асмр?
Аноним 21/09/19 Суб 20:32:03 380699 314
>>314976 (OP)
Ну короче, вопрос такой. На чем программировать stm32? Можно туда вхуярить жаву? Или есть менее больные методы?
stm32f103c8t6 blue pill
Аноним 21/09/19 Суб 20:42:40 380700 315
>>380699
C/C++/Rust. 20kb RAM же. Было бы 40kb+, можно было бы запустить micropython или javascript через espruino, но это блажь и ересь.
Аноним 21/09/19 Суб 20:46:49 380701 316
Аноним 21/09/19 Суб 21:28:40 380704 317
>>380701
Но зачем это делать? Допустим поставишь, а дальше что? Как будешь взаимодействовать с периферией?
Аноним 21/09/19 Суб 21:31:56 380705 318
>>380704
> Как будешь взаимодействовать с периферией?
Но ведь джаву делали для того, чтобы программировать чайники и холодильники. Должен быть по идее способ
Аноним 21/09/19 Суб 22:04:53 380707 319
>>380705
Разумеется способ есть, вопрос только в том, сколько тебе для этого придется писать кода.
В качестве примера можно взять мигалку светодиодом. Для того чтобы включить или выключить светодиод, нужно записать в память определенное число по определенному адресу. Естественно что тебе придется этот адрес взять из документации, забить в константу, которую потом использовать в коде. Но до включения и выключения светодиода порт нужно настроить, для чего опять придется брать и вбивать из документации адреса, битовые маски и прочее. Но для Си это уже сделано. Сделаны в том числе несколько более высокоуровневые библиотеки. А для джавы тебе придется почти все это писать самостоятельно. Конечно, для какого-то микроконтроллера кто-то все это мог частично сделать, но что ты будешь делать, если потребуется использовать другой микроконтроллер?
Помимо этого код на джаве без JIT будет очень медленно работать. Ну и зачем джава нужна на микроконтроллерах?
Аноним 22/09/19 Вск 11:13:22 380743 320
>>378460
Да это так, но зачем
Аноним 22/09/19 Вск 14:54:29 380761 321
изображение.png 7Кб, 703x113
703x113
изображение.png 5Кб, 702x84
702x84
Моргание диодом на STM32F103C8T6 aka Blue Pill
Один вариант на CMSIS другой с использование HAL.
Херли такая большая разница?
Аноним 22/09/19 Вск 15:19:54 380762 322
>>380761
Все просто.
CMSIS - меня ничего не ебет, я сказал туда (явный адрес регистра) запихнуть это дерьмо и оно будет запихнуто, даже если недопустимая комбинация или адрес.
HAL - вот тебе говно - название модуля и его настройки. Меня не ебет где и куда оно попадет - это ты сам решай, проверяй на корректность и недопустимость.
С ходу разница только в наличии проверок и соответственно куче говнокода проверки имени периферии и допустимости значений.
Аноним 22/09/19 Вск 15:27:06 380763 323
>>380762
Что использую ровные пацаны при разработке устройств?
Получается недаром HAL называют калом.
Стоит ли вообще с ним связываться?
Аноним 22/09/19 Вск 15:36:45 380767 324
>>380763
Мой ответ тут >>352800 . На пикрил обрати внимание.
Ждем независимые мнения. И да - мне похуй. Тяжелая периферия - кубик+HAL, все остальное - CMSIS и ебись ты HAL/LL конем.
PS Тебя скорее всего пнут под сральник в соседнюю нить >>339005 (OP)
Аноним 22/09/19 Вск 15:42:53 380768 325
>>380763
В начале можно и на нем. Кому-то хватает, кто-то потом переходить на другое, а кто-то сам биты ставит в регистры.
Аноним 22/09/19 Вск 15:49:50 380769 326
>>352800
Это не страшные заклинания, новичку они просто неведомы. Старое PORTC |= или PORTC &= из АВРок оче на это похоже, но пока всё разберешь...
Аноним 22/09/19 Вск 17:00:15 380774 327
>>380761
Не знаю как сделано в этом вашем HAL, но в подобных библиотеках как правило используются ассерты. Ассерты это такие макросы, которые при несовпадении условия вызывают некую функцию, в кототрую передают номер строки с ошибкой, имя файла и прочее. Проверь, включены ли у тебя ассерты и если включены, то попробуй выключить.
Аноним 22/09/19 Вск 21:04:24 380819 328
>>380774
Из коробки

/ ########################## Assert Selection ############################## /
/
@brief Uncomment the line below to expanse the "assert_param" macro in the
HAL drivers code
/
/
#define USE_FULL_ASSERT 1U*/


Если определить USE_FULL_ASSERT памяти отожрет на пол шишечки больше.
Аноним 24/09/19 Втр 06:41:33 380967 329
Вечный спор: CMSIS супротив SPL | HAL
Аноним 24/09/19 Втр 07:19:36 380968 330
Зато в Кубе очень удобно сейчас сделано тактирование периферии. Можно задать нужную частоту на шине и Куб сам настроит все делители
Аноним 25/09/19 Срд 02:43:15 381037 331
>>380968
Отрицать, что кубик великолепен могут только спецы в рунете, мол индусы говно написали не эффективно. Только кому кроме их самих их мнение интересно.
Аноним 25/09/19 Срд 09:00:57 381050 332
Аноним 25/09/19 Срд 09:56:02 381053 333
>>381050
Что это вообще значит?
Аноним 25/09/19 Срд 12:56:13 381064 334
>>381053
Что ты не умеешь в регистры
Аноним 25/09/19 Срд 13:45:13 381069 335
>>381064
Я этого говна на AVR наелся, больше не хочу.
Аноним 25/09/19 Срд 14:03:26 381073 336
Для STM32 куб избавляет от чтения документации?
Аноним 25/09/19 Срд 15:50:12 381078 337
>>381069
>>381073
Ардуинщики, плес. Как вы плату собрались проектировать без чтения документации? Любой hal упрощает работу с железом, а не отменяет ее
Аноним 26/09/19 Чтв 05:01:48 381116 338
>>381078
с другой стороны, работа с железом не предполагает обязательного использования регистров.
на уровне HAL я могу использовать, допустим, I2C на уровне функционального блока МК без записи и чтения регистров. HAL это сделает за меня.
Аноним 26/09/19 Чтв 09:19:19 381124 339
>>381116
Как можно осилить документацию на микроконтроллер (в требуемом объеме) и не смочь после этого запрограммировать что-то простое вроде таймера или I2C, с одним только CMSIS? Если все-таки нельзя, то какой может быть спор >>380967 ?
Аноним 26/09/19 Чтв 09:55:40 381125 340
>>381124
вопрос не в могу/не могу сделать, а в том, что спускаться до битов и регистров для выполнения задачи вообще нахер не надо.
Аноним 26/09/19 Чтв 09:57:49 381126 341
Я могу и руками передачи в авто переключать, и трамблер повернуть под октановое число бензина, и ногой прерывисто нажимать на тормоз типа АБС, но, блядь, нахуя такие заморочки в 21 веке???
Аноним 26/09/19 Чтв 10:53:20 381132 342
>>381125
Так значит, если есть куб, то документацию читать не нужно? Ну, разве что на HAL документацию почитать, а на микроконтроллер нет смысла.
Аноним 26/09/19 Чтв 11:12:04 381134 343
>>381132
А про какую именно документацию вы сейчас говорите?
У ST её много даже для 1 МК.
Аноним 26/09/19 Чтв 14:45:04 381151 344
>>381134
Какая разница? Ты бы еще спросил какой параграф, а то их там еще больше. Ну если про ST, то наверное datasheet, reference manual, errata. Без чего тут можно обойтись? Разве что только добавить ко всему этому "Description of STM32Fx HAL and LL drivers".
Аноним 26/09/19 Чтв 20:10:09 381175 345
>>381151
Я хз с чего ты взял, что документацию читать не надо.
Аноним 26/09/19 Чтв 20:57:42 381183 346
>>381073
Ты по ходу вообще не понимаешь как устроена индустрия embedded development.

Будучи разработчиком встраиваемых систем ты постоянно будешь сталкиваться с документацией, на МК, на кодеки, на ОУ, да на все, блин, привыкай читать ее, привыкай читать ее очень внимательно, привыкай читать ее внимательнее всех остальных.

Это далеко не прогерство десктопного ПО. Тут недостаточно уметь тыкать пальцами по клавиатуре.
Аноним 26/09/19 Чтв 21:02:30 381186 347
>>380763
Если хочешь стать реальным инженером, то надо быть любознательным, очень. Это одно из самых главных качеств инженера и исследователя, ему все хочется понять, докопаться до сути.
Любознательный инженер все разбирает до винтика, так что он выберет CMSIS.
А если не хочется лезть под капот, то останешься обычным кустарем, который клепает всякое говно, используя чужие наработки, и не понимая как они работают.
Аноним 26/09/19 Чтв 21:38:29 381193 348
>>381175
Так это не я взял, это следует из утверждения о том, что касаться CMSIS и LL (SPL) не нужно.
Аноним 26/09/19 Чтв 21:48:55 381199 349
>>381183
А ты по ходу не понимаешь намеков.
Аноним 26/09/19 Чтв 21:51:46 381200 350
Аноним 27/09/19 Птн 06:45:19 381236 351
>>381186
А водителю автомобиля обязательно быть квалифицированным автослесарем?
Аноним 27/09/19 Птн 07:39:24 381239 352
>>381236
А тут, сравнение не корректное.
Тут как раз ты автослесарь, а не водитель, но каждый свой путь выбирает)
Аноним 27/09/19 Птн 07:49:04 381240 353
>>381239
Ты водитель, если используешь HAL и автослесарь, если использует CMSIS
Но нет ничего страшного в комбинации этих умений.
С другой стороны, если нужно просто доехать из п. А в п. Б достаточно быть просто водителем.
Аноним 27/09/19 Птн 08:43:39 381242 354
>>381236
Неправильные аналогии. Еще раз повторю: HAL отменяет чтение документации?
Допустим возьмем тупой код мигалки. Естественно, что для начала нужно настроить порты. Как ты будешь настраивать порт? Наверное заполнишь структуру GPIO_InitTypeDef и вызовешь HAL_GPIO_Init. Но что ты будешь писать в структуру? Абсолютно то же самое что и в регистр. А какие значения будешь туда писать? Вот тут придется открыть документацию. Так какая разница, в данном примере, что использовать? Поэтому невозможно нормально уметь в HAL и совсем не уметь при этом в CMSIS или LL.
Аноним 27/09/19 Птн 09:24:35 381248 355
>>381242
Больно сложно.
Настрою периферию Кубом и буду HAL_Write_Pin менять состояние пина.
Зачем мне в этой задаче про регистры думать?
Аноним 27/09/19 Птн 09:31:01 381249 356
>>381248
>HAL_Write_Pin
HAL_GPIO_WritePin
быстрофикс
Аноним 27/09/19 Птн 09:33:20 381250 357
Можно сосредоточиться на задачах более высокого уровня, не спускаясь до регистров и битов.
В 99% случаев это возможно, ну и есть конечно, особо изъёбистые случае, когда приходится спускаться до битов и регистров.
Аноним 27/09/19 Птн 09:54:18 381253 358
>>381248
>Больно сложно.
Сложно настраивать GPIO через HAL? Всего то разницы между этим и кубом, что не натыкиваешь то же самое мышкой, а пишешь текст. Если это сложно, то как ты "задачи более высокого уровня" собрался решать?
>Настрою периферию Кубом
Ну возьмешь ты куб, что поменяется то? Не нужно будет читать документацию в части GPIO? Ты в кубе те же самые биты натыкиваешь, только мышкой. Разве только что куб тебе на явные ошибки укажет. А если документацию прочтешь, то какая разница как натыкивать эти биты?
Аноним 27/09/19 Птн 10:03:02 381254 359
>>381253
>Сложно настраивать GPIO через HAL?
Не сложно, а не нужно.
Понимаешь разницу*
Аноним 27/09/19 Птн 10:04:02 381255 360
>>381253
Принципиально нет, но да
Аноним 27/09/19 Птн 10:08:48 381257 361
>>381255
Можно купить готовый модуль, например, MPU6050 в Китае за 40 руб и работать с ним спокойно. А можно ПП проектировать, микруху с обвязкой закупать, всё это собирать.
И тоже будет работать. Но зачем?
Вот всё тоже самое.
Аноним 27/09/19 Птн 11:05:27 381259 362
>>381254
Нет, не понимаю. Какая разница, мышкой натыкаешь или с клавиатуры наберешь то же самое? Сэкономишь этим время, натыкивая в кубе? Явно нет. Меньше всего нужно будет изучать? Тоже нет.
Аноним 27/09/19 Птн 11:46:32 381264 363
>>381259
>Какая разница
А если нет разницы, то почему бы и не мышкой тыкать?
Аноним 27/09/19 Птн 11:52:10 381266 364
>>381259
В Кубе МК сконфигурируется уодбней, быстрей и безошибочней, чем руками.
Аноним 27/09/19 Птн 11:55:58 381269 365
Аноним 27/09/19 Птн 11:57:37 381270 366
>>381266
Гуру должен всё ручками и желательно на ассемблере. Иначе это не гуру, а банальный ардуиншик.
Аноним 27/09/19 Птн 12:00:02 381272 367
>>381270
а тексты набирать используя vi
Аноним 27/09/19 Птн 13:04:40 381281 368
Короче, кому нравится ХАЛ и прочий кал можете дальше продолжать его есть, для поделок он сойдёт. А тем, кто серьезно занимается проектированием электроники ничего не надо объяснять.
Аноним 27/09/19 Птн 13:23:14 381285 369
>>381281
> А тем, кто серьезно занимается проектированием электроники ничего не надо объяснять.
Аргументов "за" у вас нет, вот и объяснить не можете. Остаётся только щёки надувать :-)
Аноним 27/09/19 Птн 13:38:43 381287 370
>>381285
Какие аргументы за чтение документации, ты хотел написать? Ведь прочитав документацию, сразу поймешь как настраивать то же GPIO хоть через HAL_GPIO_Init, хоть через CMSIS. А не прочитав документацию, и в кубе неправильно натыкаешь.
Аноним 27/09/19 Птн 17:11:17 381309 371
>>381287
Речь вовсе не про чтение документации идёт, а про использование CMSIS и HAL
27/09/19 Птн 18:14:48 381312 372
Может кто-то пояснить чем этот тред отличается от треда по СТМ?
Аноним 27/09/19 Птн 18:21:18 381315 373
>>381312
этого никто не знаю. наслаждайся.
Аноним 28/09/19 Суб 09:42:17 381390 374
Приведите пример необходимости опускаться до регистров и битов.
Аноним 28/09/19 Суб 10:06:22 381392 375
>>381390
>Приведите пример необходимости
Ну, например на stm8s003, мне пришлось опуститься до регистров, дабы запихнуть прошивку в имеющийся объем флеша. С stdperiphlib-ой не удавалось
Аноним 28/09/19 Суб 10:13:36 381393 376
>>381392
Нужен пример из мира 32 бит
Аноним 28/09/19 Суб 10:26:27 381395 377
>>381390
Но выше речь была не о необходимости непосредственного использования регистров. И даже пример был с GPIO. Допустим откроешь в документации блок-схему какой-то части периферии микроконтроллера, а там указаны названия битовых полей, разрядности каких-нибудь предделителей и прочее. И вот тебе уже биты и регистры. А если брать LL или SPL, то это почти те же самые биты, только не раскиданы по регистрам, а собраны в сишные структуры, плюс чуточку логики и ассертов. Если скажешь про куб (а тред, кстати, не только про STM32 по идее), то в нем будут те же самые названия битов, т.е. даже используя куб, от этих битов ты все равно не до конца абстрагируешься.
Твой вопрос можно даже переформулировать иначе: зачем на STM32 опускаться до LL, если есть HAL.
Аноним 28/09/19 Суб 16:00:46 381452 378
Вопрос о компиляции/сборке. Я понимаю, что делаю я как-то немного не то, но, думаю, полезно будет знать, даже если не использую в итоге.

Предположим, есть два диапазона памяти: 0x0-0xff и 0xff00-0xffff, т.е. два 256-байтных участка, расположенных на расстоянии почти 65кб друг от друга.

Если я хочу поместить исполняемый код в обе секции, то на выходе получится 65кб бинарник с кучей нулей от 0x100 до 0xff00. Разумеется, такое мне не надо.

Я могу руками удалить все эти нули и получить 512б бинарник, который при запуске копирует верхние 256 в нужный участок памяти копирует, до того, как код оттуда начнёт исполнятся.

Но это вообще нормально так делать? Есть ли какой-то способ сказать objcopy, чтобы он нули эти не делал, лишь выровнял данные по какому-то размеру (чтобы не друг за ругом на хрен знает каком байте меняясь секции шли)? Ну или как-то скомпилировать так, чтобы ко всем инструкциями в добавился некий отступ, о котором линкер не будет знать? Т.е. в линкере у меня будет .uppertext{upper.o(.text)} > 0x0100, но сами инструкции/джампы идут с другим адресом, +0xff00 типа.

Конкретно юзкейс у меня с xilinx zynq7010б в нём по-дефолту 256кБ on-chip memory раскиданы на 0x0-0x3fff и 0xffff000-0xffffffff, если не поставить флаг в регистре, что можно сделать, естественно, уже лишь после запуска. Цель использовать только OCM, бутлоадер который имеет важные вещи в верхних 64кБ, затем копирует нужное приложение из флеша в нижние 192кБ памяти и передаёт управление ему, а верхние 64кБ приложение как стек/кучу использует и остатки бутлоадера уже само затрёт / проигнорит. Просто всё в 64кБ запихнуть проблематично, да и их ROM загрузчик не хочет стартовать fsbl, если .text не в 0x0 в линкере почему-то.
Аноним 28/09/19 Суб 18:19:35 381480 379
>>381452
То есть ты хочешь создать один бинарник, который загрузчик потом считает из флешки в две отдельные области памяти? И секции, само собой, у тебя раздельные? А как помещаешь код в uppertext? Указываешь для функций через __attribute__ по отдельности?
Если так, то этим делом по идее должен заниматься линкер, objcopy тут не при чем. В принципе что-то подобное делается во всех микроконтроллерах, в них копируется секция data из флешки. Если я ничего не путаю, то в ld это (дублирование содержимого сегментов) делается ключевым словом "AT>".
Аноним 28/09/19 Суб 20:24:05 381494 380
>>381480
>То есть ты хочешь создать один бинарник, который загрузчик потом считает из флешки в две отдельные области памяти?
Ну типа того, да, только это получается, что он как бы часть самого себя перенесёт в другую область.

>И секции, само собой, у тебя раздельные? А как помещаешь код в uppertext?
Не, в линкер скрипте:
>.sect {
>    myobject.o (.text .data ...)
>} > RAM_HIGH
>.text {
>    ✴︎(.text)
>} > RAM_LOW
И весь код (data, bss и прочее, если указать) из myobject.c попадёт в эту секцию. Ну, планируется так сделать, может некоторые отдельные функции всё же через атрибуты будут, если удобнее код организовать.

>делается ключевым словом "AT>".
А, блин, точно! Прям то, что надо, спасибо!

>линкер, objcopy тут не при чем
Ну я не совсем уверен был, кто именно распределяет, как данные в .bin лежат, вносит ли objcopy свой вклад (.elf-то не увеличивается в размерах)
Аноним 03/10/19 Чтв 16:50:28 382109 381
>>377517
Нельзя. Я запрещаю.
Аноним 03/10/19 Чтв 18:17:44 382114 382
>>381257
>зачем
Если ты делаешь устройство, по габаритам должное влезть в условный подрозеточник, при этом, кроме МК и его питания нужно ещё что-то релюхи там, блютуз-модуль и т.д., голый контроллер и фуллкастом плата единственное решение.
Аноним 04/10/19 Птн 11:40:52 382165 383
>>382114
а если нет ограничений по габаритам, массе и нет в конечном итоге разницы - сам ли разведёшь плату под микруху с обвязкой или используешь готовый модуль?
Аноним 05/10/19 Суб 09:00:37 382273 384
>>382165
Помимо этого "а если", есть еще достаточно причин.
1) Как будешь соединять эти модули? Хорошо, если все эти отладочные платы рассчитаны одна под другую, но часто это не так.
2) Требуемый модуль не существует вообще.
3) Электромагнитная совместимость.
Короче такой же тупняк как и про регистры, только еще глупее. Я еще не спрашиваю, что там можно "работать" с акселерометром.
Аноним 09/10/19 Срд 13:01:13 384850 385
Сап, аноны. Где можно найти годных туториалов для введения в микроконтроллеры. На работе выдали Atmel Sam e70, а до этого я только с ардуино имел дело. Подскажите с чего лучше всего начать изучение
Аноним 10/10/19 Чтв 20:11:03 385148 386
14937485363800.jpg 94Кб, 503x711
503x711
>>314976 (OP)
Сап, на связи 32 лвл инженер-эмбеддер с мухосранска-миллионика(пишу прошивки + иногда развожу печатные платы в нии). Пару месяцев назад создавал тред в воркаче, где рассуждал, какое это блять дно быть в россии инженегром в 32 за зарплату 40к. И блеать, сегодня на работе одна тян из отдела увольняется, 26 лет, отработала год, до этого еще 3 года на каком-то уралбыдломаше. Сказала, что это все дно и пиздец и она будет учить кодинг. Кун ее тоже инженер(конструктор), тоже сидит после работы зубрит питон. Начала приводить примеры своих знакомых, отучившихся на инженеров, бросивших через две недели, и работающих в ДС программистами за 180к. У меня опять весь день параноидальные мысли о том, что я занимаюсь какой-то хуйней за гроши.
Как блять жить сука если ты инженер и не поехать от осознания своей донности и того что уже поздно и ты застрял в этом дерьме навсегда? Как думаете, возможно ли перекатиться из байтоёбства эмбеддед в айти?
10/10/19 Чтв 20:42:28 385154 387
>>385148
Думаю что такое нужно писать в каком-то более подходящем треде. Или вообще создавать новый.
>сидит после работы
Это странно, что после работы. Неужели не дают прямо на работе? Мне начальство такое вполне позволяет, когда ничего особо срочного нет.
Аноним 10/10/19 Чтв 21:08:12 385161 388
>>384850
>Где можно найти годных туториалов для введения в микроконтроллеры
Если в ангельский можешь, то все курсы Джона Валвано Embedded Systems - Shape The World на edX. Там, правда, не только и не столько микроконтроллеры, сколько разработка встроенных систем. Перед тем, как записываться, Си рекомендую как следует задрочить. На том же edX есть чумовая серия курсов по классическому Си.
Аноним 10/10/19 Чтв 22:46:57 385181 389
>>385148
> Как думаете, возможно ли перекатиться из байтоёбства эмбеддед в айти?
Да.
Кодить уже умеешь, выбери область разработки и хуярь туториалы, читай книги и смотри видосы. Часов 8-12 практики в неделю (пара вечеров и пол выходного), и через полгода-год можно ходить по собоседованиям.

Друг 37лвл пару месяцев назад вышел на первую ойти работу стажером, на прошлой неделе стал джуном, веб-фронтенд зп $400 в укродс2. Я его полтора года наставлял (успел отговорить учить плюсы и подсунул джыэс), раз в месяц-два он рассказывал об успехах, я давал советы. Ходил на бесплатные курсы от какого-то аутсорсера. Через год мидлом станет, будет $1500+ получать. Из образования - бухгалтерская шарага и технический вуз на неайтишной специальности. И 17 лет опыта работы официантом/барменом/мясником лол.

Мимотимлид не могу найти толкового джанго-питониста в Москве за 150-180тр, все хотят от 200
Аноним 11/10/19 Птн 04:44:47 385227 390
Аноним 11/10/19 Птн 13:20:57 385279 391
>>385227
Анон, ты бы рассказал, с каких позиций стартуешь и чего в конечном итоге достичь хочешь? Я тебе Валвано посоветовал, но он довольно продвинутый - если ты нуб, то тебе может не подойти.
Аноним 12/10/19 Суб 01:58:44 385347 392
>>385279
Знание языка: околонулевой С/С++. Сейчас стараюсь нагонять пропущенное. Считаю себя полнейшим нубом.
Опыт работы с микроконтроллерами: копипаст кода в ардуино. Но понять и исправить необходимые вещи способен.
Чего хочет мой начальник хочу достичь я: понимание принципов работы микроконтроллеров, знание различных интерфейсов передачи данных(UART, SPI, I2C и прочие), таймеры, обработчики прерываний, memory mapping.
Предприятие разрабатывает системы навигации, поэтому эти микроконтроллеры будут считывать входящее положение, а потом в дело вступает "сложная" математика, необходимая для вычислений.

inb4: специально попросился в программерский отдел, чтобы меня хоть чему-нибудь научили, но сам тяготею к железу. Поэтому буду рад абсолютной любой помощи, потому что даже репетитора хуй найдёшь в ДС

Аноним 12/10/19 Суб 08:07:53 385355 393
>>385347
Не знаю что за курсы советовал анон выше, но мне кажется они про то как "правильно писать код", а не про то что такое микроконтроллеры.
>UART, SPI, I2C
Ну даже не знаю. Для понимания таких простых интерфейсов достаточно временной диаграммы с небольшим описанием того что происходит.
>memory mapping
Применительно к микроконтроллерам это же просто табличка, в которой указано по каким адресам что располагается. Такое можно не понять, только если не понимаешь что такое адрес.

Я бы посоветовал почитать что-нибудь общеобразовательное для студентов о том что такое процессор вообще, какие они бывают и зачем нужны.
Аноним 12/10/19 Суб 20:24:20 385464 394
>>385347
>Знание языка: околонулевой С/С++. Сейчас стараюсь нагонять пропущенное. Считаю себя полнейшим нубом.
>Опыт работы с микроконтроллерами: копипаст кода в ардуино
А, ну тогда тебе лучше поардуинить немношк. Книжка Джереми Блума в помощь. Если можешь в ангельский, то поищи в ютубе канал Paul McWhorter - там дядька неторопливо рассказывает про ардуину и не только.
Наиграешься - запишись на edx на курсы по классическому Си нужно будет как Отче наш задрочить указатели и структуры, а после - на курсы к Джону Валвано, которые я тебе выше посоветовал. Там уже будут и интерфейсы, и таймеры с прерываниями, и всё остальное. Только там ARM, а не AVR.

>>385355
>Не знаю что за курсы советовал анон выше, но мне кажется они про то как "правильно писать код"
Нет, анон, ты не угадал.
>а не про то что такое микроконтроллеры.
Таки про них. Проект/задача курса - разработать портативную игровую приставку на Cortex-M4 без нихуя: без библиотек, шаблонов... А дальше начинается хардкор: чтение мануалов, таймеры, прерывания, конечные автоматы, интерфейсы и т.д. и т.п.
Аноним 12/10/19 Суб 21:23:02 385470 395
>>385464
А что там задрачивать? Я понимаю задрачивать ++ их можно всю жизнь задрачивать.
А в СИ то чего?
СИ на 33% состоит из знания синтаксиса
На 33% из понимания работы железа
На 33% из понимания или хотя бы предположений, что тебе высрет компилятор.
1% это всякие изъебства, которые не очень обязательны.

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

Ты можешь идеально выдрочить все эти книжки, а потом споткнуться и разбить ебало об нарушение атомарности, там где ты не ожидал. И от этого тебя книжки не спасут, опыт, опыт и опыт.
В то же время незнания некой фишки синтаксиса лечится за 5-10 минут гуглением.
Все базовые алгоритмы давно сделаны за тебя.

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

Так что нечего там учить. Садишься и бьешься бошкой об клавиатуру пока не заработает.
Я в общем полностью не понимаю, смысл изучения основ языка по книжкам, один хуй основа выучивается сама по себе из пары статей, а все хитрые штуки ты позабудешь нахер без практики.
Другое дело читать про архитектуру и организацию процесса, но для правильного понимания, нужен опыт и не малый.



Аноним 12/10/19 Суб 21:49:36 385478 396
>>385470
>А что там задрачивать?
Указатели и динамическое выделение памяти - не самые простые для начинающих темы, не все сходу въезжают. Что до структур, то сами по себе они несложные. Но когда дело доходит до приложения этой ботвы к реальным задачам типа описания состояния конечного автомата, то у ардуино-анона тоже могут возникнуть затруднения.
>а все хитрые штуки ты позабудешь нахер без практики
Именно поэтому анону и предлагается записаться на курс по разработке встроенных систем, а не по тупо программированию. Попытается создать железку, закрепит навык.
Аноним 13/10/19 Вск 03:04:38 385511 397
>>385355
>>385464
Спасибо за адекватные советы. Буду развиваться в нужном направлении. Вопрос: стоит ли ставить линукс, чтобы писать код там без всяких вижуал студий и прочих готовых приблуд для понятия особенностей компиляции или можно забить и прогать в VS/Keil?
Аноним 13/10/19 Вск 13:39:39 385550 398
>>385511
>Буду развиваться в нужном направлении.
Поменьше серьёзности! ;) Придумывай себе какие-нибудь придурочно-дикие задачки типа "сделать умный светильник, который будет реагировать на мяуканье кошки" или "допилить стиралку так, чтобы по окончании стирки она включала чайник" и пытайся их реализовать. При всей несерьёзности, науки придётся поесть по полной программе - там и аналоговые фронтенды, и основы обработки сигналов в случае с кошко-светильником и т.д. Hardware hacking ещё хорошая вещь для нуба - берёшь что-то готовое, разбираешь, анализируешь, допиливаешь/модифицируешь.
>Вопрос: стоит ли ставить линукс, чтобы писать код там без всяких вижуал студий и прочих готовых приблуд для понятия особенностей компиляции или можно забить и прогать в VS/Keil?
А что тебе мешает под виндой тем же gcc из командной строки компилировать, если так уж хочется хардкора?
vffgh 13/10/19 Вск 21:09:20 385614 399
fdfccv fhbffc
Аноним 13/10/19 Вск 21:17:37 385615 400
>>314976 (OP)
С ужасом обнаружыл, что CMSIS вычисляет косинусо-тангенсы по таблицам.
13/10/19 Вск 22:39:22 385619 401
Аноним 13/10/19 Вск 23:48:55 385629 402
>>385619
Он, наверное, думал, что там вычисляется сумма ряда.
Аноним 14/10/19 Пнд 00:06:39 385634 403
>>385550
Воу, даже не думал, что дурацкие задачи настолько полезны!
Аноним 14/10/19 Пнд 08:22:18 385652 404
>>385619
>В чем проблема?
А вдруг мне захочется больше знаков после запятой? Свою функцию писать?
Аноним 14/10/19 Пнд 08:54:42 385654 405
>>385652
Возьмешь и подключишь либу.
Аноним 20/10/19 Вск 11:27:26 386450 406
>>314976 (OP)
>IAR/GCC
В чём разница, кроме того, что IAR - платный?
IAR это для надёжных систем в промышленности и медицине, заточеный под MISRA C, а GCC - это для бытовой и не требовательной автоматизации?
Аноним 20/10/19 Вск 20:53:30 386537 407
>>386450
У IAR более компактный и быстрый код, в МНОГИХ случаях, по сравнению с другими компиляторами.

Все.
Аноним 21/10/19 Пнд 04:20:02 386591 408
>>386537
Для АРМ-а? Ты бредишь
Аноним 22/10/19 Втр 14:23:00 386832 409
>>386537
здесь такая же ситуация как с виндой и опен соурсами
все опен соурс продукты поставляются с лицензией "without any warranty", а винда с гарантией, но на деле никто до сих пор не отсудил у майкрософта норм деньги за их проебы
я хз как в иаре, но я часто работаю с асм кодом от gcc -S, да там есть немного мусора в коде, не всегда логичное использование регистров, но в целом не к чему доебаться
Аноним 22/10/19 Втр 14:27:59 386833 410
>>385511
писал в треде про stm32, что после долгого поиска норм иде, решил использовать текстовый эдитор, а компилить и заливать из под консоли, оч удобно
ну и да, сижу под линой
Аноним 22/10/19 Втр 17:53:37 386861 411
>>385550
>"сделать умный светильник, который будет реагировать на мяуканье кошки"
Це дуже сложно. Нужен мощный процессор, не слабее малинки, для распознавания голоса.
>допилить стиралку так, чтобы по окончании стирки она включала чайник
ATiny10 или PIC10 + реле.
Аноним 22/10/19 Втр 18:44:06 386869 412
>>386861
>"сделать умный светильник, который будет реагировать на мяуканье кошки"
>Це дуже сложно. Нужен мощный процессор, не слабее малинки, для распознавания голоса.
А зачем тебе интеллектуалочку заведомо слабым микроконтроллером делать? Собрал аналоговый фронтенд, чтобы можно было минимально причесать сигнал/данные, причесал, оцифровал, запихал в канплюхтер, а уже дальше канплюхтером и сложный ЦОС, и ИИ, и что хочешь делай.
Аноним 24/10/19 Чтв 09:23:18 387114 413
>>386537
В IAR легче следовать MISRA C, так как стандарт писался именно под IAR и компилятор IAR его поддерживает.
Аноним 07/11/19 Чтв 00:13:05 388981 414
>>314976 (OP)
Анон, поясни за teensy 4.0 .
Я шо, смогу на 600мгц ногами дрыгать?

Алсо, как ее купить баксов хотяб за 30 с доставкой? На али 3к, на амазоне pjrc в рашу не отправляет.
Аноним 07/11/19 Чтв 13:15:55 389025 415
>>388981
Открыл ради тебя документацию. И если я правильно понял, то GPIO тактируется от IPG_CLK_ROOT, максимальная частота которого 150 МГц.
Так что в полной мере не сможешь дрыгать GPIO на 600 МГц.
Аноним 18/01/20 Суб 03:31:40 399231 416
Собрал жирный бинарник для дебага через st-link v2 с помощью gdb и semihosting.

Но выглядит так будто команда gdb load прошивает только код, не закидывая во флеш контроллера дебажные символы. Это так или мне показалось?

Даже не знаю как нагуглить это.
Аноним 19/01/20 Вск 01:45:46 399376 417
Есть ли способы использовать какие-либо условно-бесплатные дисплеи из планшетов и смартфонов с дешёвыми stm32 MCU?

Хочу дисплей дюйма 4, но не хочу отдавать 1000 на алиэкспрессе за него.
Аноним 19/01/20 Вск 15:18:09 399436 418
70g9vb2eea921.jpg 86Кб, 1125x1103
1125x1103
>>399231
>не закидывая во флеш контроллера дебажные символы.
Аноним 19/01/20 Вск 15:43:06 399444 419
>>399376
>условно-бесплатные дисплеи из планшетов и смартфонов с дешёвыми stm32 MCU?
Используй, кто тебе запретит? Ищи даташиты, пиши либы для драйвига этой хуяты. Только у дохуя телефонов и планшетов интерфейс MIPI, который дешевые стм-ки хуй вытянут
Аноним 20/01/20 Пнд 05:17:50 399525 420
>>399436
Ну что не так-то?

дебажные символы - имена функций и это вот всё.
Аноним 20/01/20 Пнд 06:44:01 399531 421
>>399525
Дебажные символы использует дебаггер, для какой цели оно на МК?

В какой секции и каком сегменте в эльфе они находтся, какие у них аттрибуты смотрел?
Аноним 20/01/20 Пнд 07:36:59 399533 422
>>399531
>В какой секции и каком сегменте в эльфе они находтся, какие у них аттрибуты смотрел?

Слишком сложно для вкатыша.
Компилирую в elf, это да, а вот куда внутри него смотреть я ещё не запомнил.

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

> Дебажные символы использует дебаггер

я как раз через openocd на него хожу пошагово дебажу, с ними удобнее. Но волнуюсь что оно прямо во флешку контроллера пишется.
Аноним 20/01/20 Пнд 08:21:03 399534 423
>>399533
Дебажные символы нужны дебаггеру для того, чтоб можно было сопоставить адрес переменной и её название в коде и аналогично с функциями. Контроллеру названия переменных до балды. Оно не заливается туда.
Аноним 20/01/20 Пнд 08:46:48 399537 424
>>399534
>Оно не заливается туда.
Спасибо!

Я просто про этот swd и как оно работает с железом мало знаю
Аноним 22/01/20 Срд 10:58:24 399885 425
>>399537
swd это спецификация на интерфейс для отладки. Он не имеет отношения к эльфу и дебаг-символам. Так же как USB не имеет отношения к данным, которые за копируешь на флешку или жёсткий диск или ещё что.
Аноним 22/01/20 Срд 14:04:41 399925 426
А если дебажные символы не льются во флеш?
Аноним 22/01/20 Срд 14:08:37 399926 427
А если читать, что пишут и думать головой?
Аноним 22/01/20 Срд 14:11:08 399927 428
>>399926
програма заливается и светодиод мигает, а что с дебажными структурами?
Аноним 22/01/20 Срд 14:20:48 399929 429
>>399927
А ничего, дебажные данные для дебаггера
Аноним 22/01/20 Срд 14:26:08 399930 430
>>399929
Естественно это знаю, что они для дебаггера. Но как их посмотреть на флеше
Аноним 22/01/20 Срд 14:28:07 399932 431
>>399930
Если они для дебаггера, то ЗОЧЕМ они на флеше?
Аноним 22/01/20 Срд 14:35:53 399933 432
>>399932
Спасибо вроде что-то начал понимать
Аноним 22/01/20 Срд 15:39:08 399942 433
>>399933
Сильно упрощённо, дебажная информация - это вот что-то вроде такого:

адрес 124 - переменная i, 126 - j, по адресу 5122 функция main, 5230 - led_on.

у процессора есть регистры, регистры где лежат данные и регистр, который указывает на текущую инструкцию. И есть спец. регистры, которые говорят "стоять, блять".

вот дебаггер командает "стоять, блять", шарится по регистрам, смотрит, что в регистре инструкций лежит адрес функции мэйн, а в регистре данных адреса переменных ай и джей.

твоя идея получает эту инфу, выделяет нужную строчку и ты видишь значения переменных, котрые читаются через адреса в коде.
Аноним 19/02/20 Срд 13:18:39 403179 434
Сап, аноны, автор >>384850.
Я капитально сосу в изучении микроконтроллеров, поэтому подскажите, где можно найти репетитора по микроконтроллерам в ДС. inb4 искал на профи.ру, 5 челиков всего.

Памагите, пожалуйста.
Аноним 19/02/20 Срд 15:49:37 403198 435
>>403179
>Я капитально сосу в изучении микроконтроллеров
Ничего, весна близко уже. Надо годичный перерыв в изучении сделать. Не надо себя так насиловать
Аноним 20/02/20 Чтв 09:30:50 403284 436
>>403179
Проблема в том, что ты лезешь в СЭМы которые конечно крутые и простые, но предположу, что по ним очень мало инфы для новичка.

Изучи сначала AVR, потом STM32 и после этого уже в СЭМ.
Причем начни с ассемблеров.
Аноним 20/02/20 Чтв 11:18:18 403294 437
>>403284
>СЭМ
На сколько он сложнее stm32. Есть гайд для ассемблера stm32, а лучше для ESP32. Может кто знает.
Аноним 20/02/20 Чтв 11:49:18 403296 438
>>403294
Я думаю что он лучше и понятнее STM32, потому что лучше и понятнее STM вообще все.
Плюс сэм имеет охуевшую IDE. Я сам не работал, но вот все хочу попробовать.
Сужу по тому, что у атмеля не плоха документация и примеры.

Но гайдов по STM невообразимо больше. А когда ты только вкатываешься - гайды важнее всего, после того как изучишь 2-3 ядра по гайдам, сможешь сам любые с ходу изучать.

ESP32 закрытая платформа.
Аноним 20/02/20 Чтв 22:31:58 403354 439
arduino-grande.jpg 49Кб, 600x450
600x450
Пользователи STM32CubeIDE не проходите мимо! Просьба!

Принципиально юзаю командную строку и опенсорсные тулзы. (Не поехавший, удобно для CI и воспроизводимости.) Но судьба заставила обратиться к вам, люди добрые!

Нигде не могу найти Linker Script для Blue Pill (который на STM32F103C8T6). Собственно, это не была бы большая проблема, если бы мне не нужны были новомодные секции для MPU (которые содержат .privileged_functions и __syscalls_flash_start__) чтобы прикрутить это к FreeRTOS. Можно написать руками но ошибиться и потом потратить кучу времени впустую боюсь.

Если кому-то не трудно сгенерируйте пожалуйста .ld файл с ними?

С меня как обычно
Аноним 20/02/20 Чтв 22:32:29 403355 440
>>403296
>ESP32 закрытая платформа.

Ну как, относительно. Примерно как и stm32
Аноним 21/02/20 Птн 10:56:48 403411 441
>>403355
Даташит на всю хуйню-периферию дали?
Исходники библиотек?

Я просто хз, может уже и дали.
Аноним 21/02/20 Птн 15:56:46 403434 442
14582099954480.jpg 430Кб, 2048x1536
2048x1536
Хочу применить RTOS.

Правильно ли я понимаю, что сначала надо отладить функции, допустим, для ногодрыга, а уже потом прикручивать rtos?

Или надо сначала завести rtos, а уже потом ебаться с периферией?

Раньше дел не имел с ней, а тут понадобилось.
Аноним 21/02/20 Птн 17:11:53 403451 443
>>403434
Когда писал мигалку - поступал проще.
Писал говнокод перед запуском планировщика и смотрел как он работает, потом запихивал в задачу и смотрел как поменяется работа. Так грубо писал, внимательно следя что бы не было пересечений с тем что уже используется в созданных задачах.
Аноним 22/02/20 Суб 22:50:39 403665 444
>>314976 (OP)
Какого хуя Малинка первой/второй версии нихуя не распродается по бросовой цене? Почему не работает рыночек?
Аноним 23/02/20 Вск 15:35:26 403774 445
>>403665
А почему он должен работать?
Аноним 23/02/20 Вск 18:00:13 403787 446
>>403665
Рыночек работает, но не так, как ты понимаешь-хочешь.
Аноним 23/02/20 Вск 18:24:34 403790 447
>>403434
Сука, под ёбаный камень нет поддержки i2c у Micrium OS.

Блядь, похуй. Попробую обойтись как-нибудь.
Аноним 23/02/20 Вск 22:10:26 403824 448
>>403665
На авито платки A/B (не путай с A+/B+/Zero) в моём мухосранске по пятсот рублей вместе с корпусом отдают. Работает рыночек.
Аноним 23/02/20 Вск 22:30:33 403825 449
>>403824
>На авито
Бля. Чот даже не подумал про него.
Аноним 28/02/20 Птн 21:22:06 404331 450
15473436113010.jpg 81Кб, 655x509
655x509
>>314976 (OP)
Подмывает купить Jetson Nano и заебенить из нее дверной звонок с ИИ и нескучными мелодиями. Отговорите меня штоле
Аноним 28/02/20 Птн 21:38:48 404332 451
Аноним 29/02/20 Суб 09:05:33 404366 452
>>404331
Твоему ИИ подсунут фотографию и он обосрётся.
Аноним 28/03/20 Суб 16:32:05 407995 453
7554651135554.jpeg 97Кб, 552x800
552x800
Мне надо получить прерывание каждые 100 миллисекунд по переполнению таймера.

Апноут на таймер: https://www.silabs.com/documents/public/application-notes/AN0014.pdf
Правда, не увидел там ничего по делу.

Формула для расчёта: The overflow rate is fHFPERCLK / (TIMER_TOP x 2^TIMER_CTRL_PRESC).

Таймер 16-ти битный. Тактируется от HFPERCLK, равного 72 МГц. Делитель таймера пока выставлен равным 8.

Надо высчитать TIMER_TOP.

Overflow rate это частота переполнений?
Т.е. будет равняться 1000 / 100 -> 10.
Тогда формула примет вид: 10 = fHFPERCLK / (TIMER_TOP x 2^TIMER_CTRL_PRESC)?
Аноним 28/03/20 Суб 19:33:56 408012 454
>>407995
Безнадёжно бамп. :-(
Аноним 28/03/20 Суб 22:00:48 408018 455
>>407995
Давай я тебя запутаю.
1. Каждые 100мс, т.е. с частотой 10 Гц
2. Переполняться должен 10 раз в сек., то есть:
10 = 72000000/TIMER_TOP x 2^8 ->
TIMER_TOP = 72000000/2^8 x 10 = 28125
НО! Если рассуждать логически, то это бред какой-то.
Частота на счетчике = 72/8 = 9Мгц
До 28125 он досчитает за 0,003125с, т.е. чуть дольше 3мс
Аноним 28/03/20 Суб 22:33:45 408023 456
>>407995
Сдается мне, что ты не ту формулу употребляешь. Полез я в реф-мануал по этому диковинному контроллеру и не нашел там ничего подобного. Как и в остальных, генерируется прерывание при достижении счетчиком числа равного TIMER_TOP и сброс его в 0 при обычном счете вверх.
Т.е ставь делитель 144, TIMER_TOP на 50000 и каждые 0,1с у тебя будет прерывание
Аноним 29/03/20 Вск 03:53:16 408044 457
>>408023
>Т.е ставь делитель 144, TIMER_TOP на 50000 и каждые 0,1с у тебя будет прерывание
Нет возможности поставить свободный делитель, как у таймера, так и у источника. Минимум 2^1, а максимум 2^10: 1-2-4-8-16-32-64-128-256-512-1024.

>>408018
Ок, тогда как правильно?
Аноним 29/03/20 Вск 04:32:01 408046 458
Аноним 29/03/20 Вск 14:58:23 408084 459
>>408044
Делишь на 2^8=256, TIMER_TOP = 28125
WAIT! OH, SHEEEEEEEE....
Аноним 29/03/20 Вск 15:14:15 408086 460
1445789046356.jpg 26Кб, 640x600
640x600
>>408084
Да, смешно.

Я не вкурил как работает таймер, надо объяснить. Знал бы - не спрашивал.

Как это считается?
Аноним 29/03/20 Вск 16:39:58 408095 461
>>408086
>Как это считается?
Делишь 72МГц на 256 и получаешь частоту на счетчике - 281250Гц. Тебе нужно чтобы прерывалось с частотой 10Гц, значит ставишь TIMER_TOP (т.е. до какой цифры будет досчитывать счетчик и сбрасываться в 0) равным 28125. Итак счетчик будет досчитывать до 28125 и сбрасываться в ноль десять раз за секунду. И генерировать нужное тебе прерывание если включил в настройках
Аноним 29/03/20 Вск 16:42:39 408096 462
>>408095
ПыСы. Таймер 16-битный, значит считает до 65535. Делителем выбираешь на сколько поделись системную частоту, чтобы потом уложиться в эту цифру.
Аноним 29/03/20 Вск 17:53:11 408107 463
149400593016101[...].jpg 38Кб, 317x372
317x372
>>408095
>>408096
Таа-а-к, паджжи, ёбана.

>Делишь 72МГц на 256
Откуда ты взял 256?
Ведь частота таймера будет равна fHFPER / Timer_Prescaler -> (72 МГц) / 8, разве нет?

И не ты ли говорил, что вот эта >>408018 фигня не работает?
Аноним 29/03/20 Вск 18:17:03 408110 464
>>408107
>разве нет?
Я делю на 2^8 степени, т.е. на 256. Я просто не вдуплил в ебанутость твоего контроллера. Типа прескаллер = 8, а по факту делит на 2^8, т.е. на 256. В общем тогда все правильно получается. >>408018
Аноним 29/03/20 Вск 20:16:09 408118 465
554524213554522[...].jpg 64Кб, 690x574
690x574
>>408110
Нет, что-то не вяжется.

Посмотрел примеры кода в сети: допустим, частота от которой тактируется таймер равна 1 МГц, собственный делитель таймера равняется 1, в TIMER_TOP занесено 1000 и говорится, что прерывание по переполнению будет происходить каждые 1 миллисекунду, т.е. тысячу раз в секунду.

По конченой формуле мы получаем (1x10^6)/(1000x(2^1)) = 500 переполнений.

Хрень какая-то.

Ещё пример: допустим, частота от которой тактируется таймер равна 14 МГц, собственный делитель таймера равняется 1024, в TIMER_TOP занесено 27342 и говорится, что прерывание по переполнению будет происходить каждые 2 секунды.

// 13671 Hz -> 14Mhz (clock frequency) / 1024 (prescaler). Setting TOP to 27342 results in an overflow each 2 seconds

Ваши мылси, господа? Заебался я в край.
Аноним 29/03/20 Вск 20:42:47 408121 466
Аноним 29/03/20 Вск 20:45:09 408122 467
>>408118
>Ваши мылси
С частотой 13671Гц до 27342 счетчик досчитает за 2 секунды, что не так?
Аноним 29/03/20 Вск 21:12:33 408123 468
>>408121
>2^1=1!!!!!
Чота я гоню
Покажи ентот пример кода.
Аноним 30/03/20 Пнд 04:22:56 408136 469
Аноним 30/03/20 Пнд 06:17:03 408138 470
>>408136
>https
Не нашел там где делитель задан
Аноним 30/03/20 Пнд 06:25:28 408139 471
>>408138
https://pastebin.com/vEHenjaD

Извиняюсь, там версия для регистрового доступа. По ссылке выше - через обёртку.

.prescale = timerPrescale1,
Аноним 30/03/20 Пнд 07:09:59 408140 472
>>408139
>// Use /1 prescaler...timer clock = HF clock = 1 MHz
Слушай, я уже нихуя не пойму в твоем таймере. Тут пытаются сказать, что timerPrescale1 = 2^0
Аноним 30/03/20 Пнд 10:14:28 408146 473
>>408136
>Не пойму, как подогнать таймер под мои нужды.
Ну ты хоть как-то пробовал или пока только радач заебываешь?
Аноним 30/03/20 Пнд 12:07:01 408151 474
>>408146
>сижу в тематическом треде
>7 постов
Ух, как я всех заебал уже.

Конечно пробую. Чую, что придётся пиздовать на форум силабса, а там чсв-пидорасы кругом.
Аноним 30/03/20 Пнд 12:31:00 408153 475
>>315149
> Почему в STM32F4 такие мозголомные примеры в Кубе? Почему интернет заполонен какими-то ебанутыми, несовместимыми со здравым рассудком примерами? В одних HAL, в других SPL, третьи вообще говняют свои конструкции и хуярят байты налево и направо? Почему нет нормальных файлов справки и хоть какого-то единства? Как же мне печот-то, передать не могу.
Так надо брать нормальную RTOS где все это говно скрыто нахуй за драйверами HAL.
Аноним 30/03/20 Пнд 15:27:46 408160 476
meandr.gif 5Кб, 305x229
305x229
proga.png 21Кб, 732x444
732x444
14658120433760.jpg 38Кб, 604x588
604x588
IMG202003301659[...].jpg 1237Кб, 3500x2061
3500x2061
Анон со 100 мс таймером репортинг-ин.

Нагуглил вот такую прогу: https://libstock.mikroe.com/projects/view/398/timer-calculator

И начал перебирать похожие МК.

Результат на пикчах.
Как проверял: по прерыванию таймера происходит ногодрыг пина.

Оказывается, силабс основали бывшие огрызки из микрочипа со своими пиками. Вот тебе и сходство.

Всем спасибо. Кота вам за помощь.
Аноним 30/03/20 Пнд 18:02:44 408174 477
>>408160
>Результат на пикчах.
Дык у тебя 200мс период, т.е. 28125 дало бы 100мс и 10гц
Аноним 30/03/20 Пнд 18:34:45 408186 478
>>408174
28125 тогда дало бы прерывание каждые 50мс по идее.
По осциллографу видно, что логические уровни меняются каждые 100мс по прерыванию.
Аноним 30/03/20 Пнд 20:34:56 408200 479
>>408186
У тебя прерывание по фронту/спаду или по обеим граням импульса ебашит?
Аноним 31/03/20 Втр 02:15:26 408231 480
>>408200
>граням импульса
Аноним 31/03/20 Втр 07:20:51 408232 481
Аноним 31/03/20 Втр 07:43:13 408234 482
>>408232
Значит условие нужно было ставить - как настроить таймер, чтобы переполнялся за 200мс
Аноним 01/04/20 Срд 06:02:09 408310 483
Аноним 01/04/20 Срд 06:26:05 408312 484
>>408310
>и выучите базовые термины в конце-то концов нахуй.
NYET! Специально не выучу, чтобы такие как ты воспламенялись в треде
Аноним 01/04/20 Срд 09:44:32 408320 485
>>408310
фронт-хуёнт ненужная совковая аббревиатура
rising и fallling edge модно стильно молодёжно
Аноним 01/04/20 Срд 11:21:00 408324 486
546588456135154[...].jpg 17Кб, 750x397
750x397
>>408310
>>408320
Нечего сказать по делу
@
Придерусь к терминологии
Аноним 15/04/20 Срд 01:04:48 411530 487
>>408153
Ты же шутишь, да?)
Аноним 23/05/20 Суб 14:37:01 418728 488
Аноним 23/05/20 Суб 18:56:44 418826 489
>>411530
А нахуя тебя F4 без RTOS?
Аноним 09/06/20 Втр 09:10:41 422001 490
unnamed.png 101Кб, 512x317
512x317
Подсобите немношк.

Есть 32-ух битный WTIMER, который тактируется от 72 МГц и имеет делитель 1024.
Надо настроить на задержку от 5 мс до нескольких секунд.
Делитель задан жёстко и может быть от 2^0 (1) до 2^10 (1024).

Таймер тикает 72000000 / 1024 = 70312.5 раз в секунду.
И способен считать: 2^32 / (72000000 / 1024) => примерно до 61 секунды.

"Up-count — counts up until it reaches the value in TIMERn_TOP, then it is reset to 0 before counting up again (if in continuous
counting). When the counter goes from TIMERn_TOP to 0, an overflow event occurs."

До 900+ мс таймер работает как надо.
TIMER_TOP = ((fHFPERCLK / TIMER_CTRL_PRESC) x (N / 1000.0)) - 1

А вот формула для секунд уже даёт сбои и таймер начинает гнать.
TIMER_TOP = ((fHFPERCLK / TIMER_CTRL_PRESC) x N) - 1

Неправильная формула?

П.С. fHFPERCLK - частота, от которой тактируется таймер; TIMER_CTRL_PRESC - делитель таймера; N - задержка, в мс.
Аноним 09/06/20 Втр 09:14:18 422003 491
s
Аноним 11/06/20 Чтв 11:07:36 422353 492
>>422001
>TIMER_TOP = ((fHFPERCLK / TIMER_CTRL_PRESC) x N) - 1
Возможно, тут задержка в целых секундах, не милли.
Аноним 11/06/20 Чтв 12:18:50 422359 493
>>422001
>TIMER_TOP = ((fHFPERCLK / TIMER_CTRL_PRESC) x (N / 1000.0)) - 1

Здесь ты написал 1000.0, поэтому компилятор все будет считать во float, а потом округлит до целого

>TIMER_TOP = ((fHFPERCLK / TIMER_CTRL_PRESC) x N) - 1

Здесь ты считаешь в целых числах, причем, навскидку, максимально неточным образом. Делить в целых нужно всегда в последнюю очередь, тогда будет максимум точности.

TIMER_TOP = (fHFPERCLK x N / TIMER_CTRL_PRESC) - 1
Либо
TIMER_TOP = (fHFPERCLK x N / (float)TIMER_CTRL_PRESC) - 1
Либо
TIMER_TOP = ((fHFPERCLK / TIMER_CTRL_PRESC) x (N / 1.0)) - 1
Аноним 11/06/20 Чтв 19:23:40 422470 494
=
Аноним 12/06/20 Птн 05:09:22 422505 495
>>422359
>>422353
Ситуация такая: мне нужна частота ядра 72МГц. Максимальный делитель 1024 и он не меняется в большую сторону.
Какого-то хера даже 32-ух битный таймер записывает в регистр TIMER_TOP 0xFFFF (65535).

По формуле для секунд, даже для одной секунды выходит TIMER_TOP равным 70311.5.
Поэтому таймер фейлится.

Возможно, надо дополнительно поделить на число. Но тогда явно получается какая-то херня, не связанная ни с миллиснеундами, ни с секундами.

Сейчас смотрю в сторону RTC. Пробую запустить.

Поддержка шлёт на хуй: мол изучайте сами, у нас всё норм.
Аноним 12/06/20 Птн 18:49:07 422593 496
IMG202006121949[...].jpg 3056Кб, 3796x2215
3796x2215
IMG202006121955[...].jpg 2694Кб, 4000x3000
4000x3000
IMG202006121956[...].jpg 3198Кб, 4000x2432
4000x2432
IMG202006121957[...].jpg 4082Кб, 4000x2485
4000x2485
>>422359
В общем, получилось, похоже.

Осталось связать таймеры и идти дальше.
Аноним 13/06/20 Суб 07:01:50 422646 497
Подскажите по LDMA.

Есть массив static uint32_t test_arr[] = {X1, Y1, X2, Y2, X3, Y3,...,Xn, Yn}; , содержащий всегда чётное кол-во элементов.

Если произошло Событие1, то надо передать X1; по Событию2 надо передать Y1.
И так далее: Х2, У2,..., Хn, Yn

Какой из режимов позволяет это провернуть из одного массива?
Аноним 14/06/20 Вск 03:34:51 422804 498
>>422646
Забил, короче, сделал на указателях.
Аноним 17/10/20 Суб 12:58:42 436149 499
image.png 201Кб, 726x443
726x443
>>315579
>Или ставится Visual Studio 2017, потом на торренте покупается VisualGDB. Устанавливается тоже далее, далее, ок. После запускаешь плагин в ВС, один раз проходишь процедуру настройки качая OpenOCD, тулчейн и пак с мк для работы с стм32.
Аноним 17/10/20 Суб 13:00:16 436150 500
>>338466
Включить debug - выключить debug.
Аноним 17/10/20 Суб 13:06:23 436151 501
>>338273
>>Что взять БЕЗ ГРЁБАНОГО ДОПИЛИВАНИЯ
TrueStudio. Он ничем не отличается в этом плане от кейл, установил exe-шник и сразу работает искаробки.
Аноним 21/10/20 Срд 22:13:08 436642 502
Явлюсь счастливым обладателем Raspberry Pi B+, хочу использовать как контроллер для работы с датчиками, двигателями, лампочками. Вроде бы на с++ есть нужные библиотеки для работы с gpio и различными датчиками. Правильно ли я выбрал ветку?
Аноним 21/10/20 Срд 23:01:10 436650 503
>>436642
Нафиг тебе с++? На малинке можно и на питоне писать.
Аноним 26/10/20 Пнд 20:31:02 437255 504
пизда скоро вашему /arm/
Аноним 28/10/20 Срд 07:20:41 437437 505
>>437255
Ваше мнение очень важно для нас. Оставайтесь на линии.
Аноним 28/10/20 Срд 09:09:25 437449 506
>>437437
Гомоэрегированные геи из яблока уже купили арм
Аноним 28/10/20 Срд 19:37:29 437534 507
>>437449
>из яблока
Энвидия же покупать собралась, причем тут производители гомофона?
Аноним 29/10/20 Чтв 16:37:30 437613 508
>>437534
Тогда точно накрылся медным тазом ваш кортех
Аноним 29/10/20 Чтв 18:13:50 437623 509
>>437613
>Тогда точно н
Хуй там! Даже stm32f030хх будет иметь 100500 ядер CUDA и нервосетки можно будет обучать
Аноним 21/12/20 Пнд 05:53:39 443618 510
14489889778243.jpg 12Кб, 321x325
321x325
Первый раз сталкнулся с зависанием при выполнении программного цикла и не знаю как найти причину.

Кто-нибудь может объяснить, как разобраться с поиском проблем в eclipse-подобных IDE?

Сука, при дебаге код просто виснет и не пишется, что именно отвалилось.
Ничего криминального в код я не добавлял.
Аноним 21/12/20 Пнд 07:29:41 443619 511
>>443618
Не лучше ли в такой ситуации посмотреть что выдает gcc -S ?
Аноним 23/12/20 Срд 20:28:27 443870 512
image.png 787Кб, 527x720
527x720
Аноним 23/12/20 Срд 21:47:14 443885 513
>>443870
Ваши предложения?
Аноним 23/12/20 Срд 22:36:36 443889 514
>>443885
Очевидно же - пользоваться инструментами разработки (Keil) непосредственно от компании разработчика микроконтроллера (ARM), а не жрать кривое опенсорснутое говно.
Аноним 23/12/20 Срд 22:48:32 443892 515
>>443889
Компилятор кейла радостно сжирал у меня неправильный код логика правильная, но написано мимо стандартов C и выдавал бинарь, оный код выполняющий. GCC такое говно не сожрал и намекнул, что стандарты языка надо уважать. Вот теперь сижу и думаю, если кейл забивает на стандарты языка в одном случае, то он вполне может забивать на что-то ещё. Вкупе с закрытостью кода доверие это не вызывает
Аноним 23/12/20 Срд 22:51:11 443893 516
Аноны, поясните за mbed. Стоит оно внимания и изучения? Насколько хорошо работает в проектах, выходящих за рамки демо-плат и демо-сценариев?
Аноним 23/12/20 Срд 23:36:06 443898 517
>>443892
Настройки компилятора бывают разные, в кейле или в iar'е вроде есть проверка на соответствие misra c, толькот надо её включить.
Аноним 23/12/20 Срд 23:46:27 443899 518
>>443898
А вот нахуй оно всё надо, если есть GCC, с которым можно работать хоть через eclipse, хоть через vs code, да хоть через code blocks, все из которых как IDE явно лучше кейла
ну и не надо целую винду ради этого говна держать
Аноним 24/12/20 Чтв 00:25:49 443903 519
>>443899
>ну и не надо целую винду ради этого говна держать
На самом деле armclang есть и под линукс, только хейтер опенсурса об этом наверняка не знает. Он наверняка даже не подозревает что некоторое время назад в кейле перешли с armcc (который на gcc) на armclang (который на ллвм со шлангом).
Аноним 24/12/20 Чтв 02:01:39 443907 520
>>443903
>На самом деле armclang есть и под линукс

Юзаю шланг который из коробке в дебиане, в нём тупо встроены все платформы сразу, надо только правильный target указать
Аноним 24/12/20 Чтв 08:05:25 443919 521
>>443907
Только armclang это не clang. Это шланг из которого выкинули шлангово-гцц-шные расширения, переделали вывод сообщений об ошибках к виду который был в armcc и так далее. И вроде как добавили каких-то своих оптимизаций, может быть даже ллвм-ный бэкэнд полностью свой сделали, а может и нет.
Аноним 24/12/20 Чтв 23:16:39 444008 522
>>443892
>мимо стандартов C
Да кому нужны эти стандарты.
Главное результат.
Кейл, после IARа, генерирует самый оптимизированный код по скорости/по количеству кода(на выбор).
В то время, как полностью соответствующий стандартам Eclipse GCC генерирует тормозное лагающее говно, отжирающее память.
> Вот теперь сижу и думаю, если кейл забивает на стандарты языка в одном случае, то он вполне может забивать на что-то ещё.
Опять таки, главное не код, а результат его работы. Если ты проверил, протестировал, что твое устройство выполняет нужные функции надежно - какая разница, написан он на С полностью соответсвующем стандартом, или слега отходящем от стандарта. Хотя насколько я понимаю keil соответсвует стандарту С89.
Аноним 25/12/20 Птн 07:10:42 444038 523
>>444008
>Eclipse GCC
Зачем приплетаешь эклипс? GCC самодостаточен и текстовый редактор, в котором написан код, не влияет на выхлоп компилятора. Зато может быть стоит указать с какой стандартной библиотекой Си оно используется, glibc там или newlib или еще что.
>Кейл
То же самое. В кейле используются компиляторы armcc и armclang, которые раньше может быть и не давали без кейла, но теперь дают. Также эти же компиляторы есть в среде ARM DS-5, которая тоже вся "от производителя", как ты любишь.

>генерирует тормозное лагающее говно, отжирающее память.
Можешь подтвердить свои слова? И желательно не на абстрактном примере, в котором допустим сравнивается какая-нибудь векторизированая хрень, а на куске твоего собственного кода.
Аноним 26/12/20 Суб 15:51:23 444172 524
>>444038
>Можешь подтвердить свои слова?
Сравнение компиляторов для разработки на микроконтроллерах с ядром ARM Cortex-M
https://habr.com/ru/post/368779/
Аноним 26/12/20 Суб 15:54:51 444173 525
2.png 15Кб, 483x503
483x503
>>444008
>генерирует тормозное лагающее говно
А вот на таком простеньком примере, кейл (причем и armcc и armclang) слил старенькому gcc из стабильного дебьяна. При -O3 разница по времени выполнения была около 20%. Причем gcc даже при -O2 немного опережал кейл с -O3 и -Ofast.
Аноним 26/12/20 Суб 16:18:27 444175 526
>>444173
Проверял для Cortex-M3, если что.

>>444172
>Полный архив проекта (97.7 MB) доступен по ссылке "гуглодиск"
>Владелец переместил файл в корзину.
Аноним 26/12/20 Суб 17:32:22 444187 527
>>444008
>проверил, протестировал
Вот как раз в ходе этого процесса хочется, чтобы компилятор идеально соблюдал все стандарты. Тулчейн должен быть таким, на который можно однозначно положиться, иначе могут возникнуть практически неуловимые баги. Вот за примером далеко ходить не буду, пусть он не про компилятор, но про тулчейн практически. Есть у меня один проект, там есть ESP32, код к которому пишется в Arduino IDE(не мой выбор, но мне лень оттуда слезать) с использованием тулчейна/библиотек от ESP. Так вот, возник у меня баг, при котором прочитанный из EEPROM SSID никак не находился, вывожу в консоль - всё вроде должно быть ок, да и рядом лежащий телефон спокойно подключён к нужному роутеру. И после долгих мучений я выяснил, что функция чтения строки из фирменной, мать её, библиотеки просто добавляла пробел в конец прочитанной строки. Круто, да? И в терминале этот пробел хрен увидишь. Вот потому тулчейн должен быть таким, чтобы единственными потенциально проблемными местами были твой код и железяка. И GCC в этом плане меня никогда не подводил
Аноним 26/12/20 Суб 18:33:18 444198 528
>>444172
>Светлая тема в IDE
Фубля, аж глаза резануло, как жить-то так можно?
кейл ваш, кстати, туда же
Аноним 27/12/20 Вск 18:20:04 444317 529
>>444198
>аж глаза резануло, как жить-то так можно?
Ну ладно, ладно, мамкин кулхацкер. Сиди с темной темой, кто же тебе запретит? А я охуеваю когда светлую в Автогаде вижу. Хочется сидящего за монитором еблетом об стол побить.
Аноним 27/12/20 Вск 19:02:13 444327 530
>>444317
У меня светлая тема в автокаде.
Аноним 27/12/20 Вск 19:28:39 444337 531
Аноним 27/12/20 Вск 19:32:47 444339 532
>>444337
че пичот?
Но ведь светлая тема как будто по бумаге чертишь. Где ты видел темную бумагу?
Аноним 28/12/20 Пнд 05:19:21 444408 533
>>444172
устарело давно, компиляторы сейчас очень быстро развиваются. По крайней мере, те что LLVM-based
Аноним 28/12/20 Пнд 23:37:38 444567 534
>>444317
А причём тут кулхацкер-то? На тёмной банально лучше синтаксис видно. Да и, будем честны, светлые темы везде как говно выглядят. В том числе и в пресловутом автокаде
Аноним 29/12/20 Втр 19:39:34 444610 535
dope3iatlut41.png 469Кб, 960x717
960x717
STM32 тред утонул, потому что мочух - ленивое хуйло.
Спрошу тут.

Никто не натыкался на реализацию авто-настройщика ПИД регулятора для ARM микроконтроллеров?

Алсо, может кто-нибудь поделиться методой настройки коэффициентов ПИД регулятора?
Нашёл пару статей, но ебли будет огого.
Аноним 29/12/20 Втр 19:42:49 444611 536
>>444610
>но ебли будет огого
А ПИД без ебли не настроишь

мимо бывший КИП
Аноним 29/12/20 Втр 20:21:42 444616 537
>>444610
метод циглера-никольса
Аноним 03/01/21 Вск 17:41:35 445128 538
>>314976 (OP)
Какие есть нормальные книги (на русском!) по STM32 и ARM в целом?
Аноним 04/01/21 Пнд 07:16:36 445219 539
>>445128
>нормальные книги (на русском!) по STM32
Нет таких. Учи ангельский
Аноним 04/01/21 Пнд 09:43:20 445226 540
>>445128
Есть перевод "Ядро Cortex-M3 компании ARM. Полное руководство". Однако "ARM в целом" это очень много разных ядер, а STM32 это тоже много разных серий микроконтроллеров с отличающейся периферией. Может стоит определиться конкретнее?
Но что ты вообще хочешь получить от книги? Такие книги не могут заменить документацию, они будут лишь дополнением, в котором разжевывают некоторые нюансы.
А также, чем существенным отличаются ARM микроконтроллеры от любых других с точки зрения практического применения? Если не писать самостоятельно операционные системы и не лезть в ассемблер, то какая разница?
Аноним 04/01/21 Пнд 12:41:32 445242 541
>>445219
>Учи ангельский
Не хочу учить из принципа.
Я патриот.
Аноним 04/01/21 Пнд 12:45:21 445243 542
>>445226
>Есть перевод "Ядро Cortex-M3 компании ARM. Полное руководство".
Спасибо, уже скачал.
>Такие книги не могут заменить документацию, они будут лишь дополнением, в котором разжевывают некоторые нюансы.
Да, именно это мне и нужно.
>А также, чем существенным отличаются ARM микроконтроллеры от любых других с точки зрения практического применения?
Конечно я согласен, что если писать на Си/С++ то разницы нет никакой. Но дело в том, что в вакансиях в графе "требования" пишут что-то вроде "опыт работы, знание устройства и особенностей архитектур 8051, AVR, ARM ...".
Аноним 04/01/21 Пнд 12:57:37 445244 543
>>445243
>в графе "требования"
>знание устройства и особенностей архитектур 8051, AVR, ARM
Перескажи хрюше первую страницу даташита любого контроллера из серии, ей хватит.
Аноним 04/01/21 Пнд 13:14:50 445247 544
Аноним 04/01/21 Пнд 13:28:17 445249 545
>>445243
>пишут что-то вроде "опыт работы, знание устройства и особенностей архитектур 8051, AVR, ARM ...".
По моему не стоит понимать такое буквально, мало ли какую чушь напишут.

>>445242
Тогда читай спецификацию 1986ВЕ1Т.
Аноним 07/01/21 Чтв 20:40:34 445704 546
>>314976 (OP)
Для вычислений протеинов ищу мк с битовой адресацией данных.
Так вот, их только мк архитектуры 8051 поддерживает или еще какие мк есть с такой функцией?
Аноним 07/01/21 Чтв 21:07:12 445709 547
>>445704
Что-то подобное есть в ARM Cortex-M3 и M4, называется bit banding.
>Для вычислений
Зачем? Это бессмысленно. Допустим понадобится для доступа к биту не одна инструкция, а две, то какая разница для вычислений? Ну возьмешь микроконтроллер с тактовой частотой повыше, если потребуется, подумаешь проблема. По моему оно нужно для атомарного доступа к битам, да и то не факт что такое вообще нужно.
Аноним 08/01/21 Птн 08:51:33 445746 548
Подскажите готовый опенсорсный загрузчик с SD карты? Чтобы заходил на флешку, скачивал и загружал себя во флеш. А если сбой то чтобы мог откатить всё назад.

Надо решить задачу удалённого обновления устройств без связи, наверняка решено уже 300 раз.
15/01/21 Птн 06:20:39 446807 549
>>314976 (OP)
короче есть идея написать че то типа сервисной программки, которая будет позволять читать/записывать/бекапить флеш/еепром/rtc, при этом не загружаясь в память работая из оперативы. Для коммуникации надо олед на SSD1306 и кнопки через PCF8574 по i2c, и сд карточка по SPI, вопрос, есть ли перспективы у такой херни и могут ли набутылить если какой то хуй считает прошивку у коммерческого устройства с помощью этой хуевины если ее вообще возможно считать
15/01/21 Птн 06:49:45 446810 550
>>446807
Что за бред я читаю?
>не загружаясь в память работая из оперативы.
Если ты о том, чтобы загрузить программу в RAM через JTAG/SWD/бутлоадер, а потом эта программка что-то будет делать, то у тебя бред. Вообще-то именно так часто делают при штатной прошивке через JTAG/SWD/бутлоадер. Если JTAG/SWD/бутлоадер не отключены, то читай прошивку как угодно, все уже готово, ничего делать не нужно.
Иначе, если все это отключено аппаратно, запрещено чтение и т.д., то для некоторых микроконтроллеров путем каких-то ухищрений (обычно с питанием) эту защиту можно обойти, но это уже совсем другое дело.

>Для коммуникации надо олед на SSD1306 и кнопки через PCF8574 по i2c
Шиза какая-то.
Аноним 16/01/21 Суб 01:14:49 446949 551
Народ, а как сделать в LPC1768 Input Float как на STM32 - GPIO_Mode_IN_FLOATING?
Ничего подобного найти не могу.
Аноним 16/01/21 Суб 08:18:52 446971 552
>>446949
Может быть стоит начать поиски с изучения user manual? А то с чего ты вообще взял что LPC так могут?
Аноним 16/01/21 Суб 11:26:20 446986 553
>>446971
Ой, не надо искать глупее себя. Смотрел, и слово float там только есть для i2c.
Аноним 16/01/21 Суб 11:26:59 446987 554
>>446971
Задача такая стоит, нужно для периферии
Аноним 16/01/21 Суб 12:15:26 446996 555
1.png 100Кб, 914x851
914x851
>>446986
Значит ты не там смотрел. А то что тебе нужно называется PINSEL_PINMODE_TRISTATE, если я не ошибаюсь.
Аноним 16/01/21 Суб 18:17:26 447041 556
>>446996
Спасибо! Похоже на то, просто особого внимания на TRISTATE не обращал.
Аноним 20/01/21 Срд 09:48:46 447630 557
насколько сложно реализовать на STM32 приблуду которая будет подключатся к облаку, а с облака можно будет как конфигурить саму стмку, тоесть например через 15 секунд подать передний фронт на дискрет 1, и всякие такие несложные функции
Аноним 20/01/21 Срд 13:18:44 447643 558
>>447630
в ардуино иде как два пальца об асфальт через pubsubclient. Только вот если поддержка stm32 в ардуино иде
Аноним 20/01/21 Срд 20:02:06 447685 559
>>447630
>будет подключатся к облаку,

Зумер?

Дай определение, тогда скажу подробнее.
Аноним 21/01/21 Чтв 09:49:25 447733 560
>>447630
Тебе нужна будет либо стмка с эзернетом на борту и схема для физического уровня, либо прослойка в виде какой-нибудь esp. Потом продумать систему команд и написать прошивку, выполняющую эти команды, и проверяющую твоё "облако" вангую, это самая жопошная часть, возможно, проблема не решаемая в общем случае. Если взял есп, прошивка по работе с вебом на ней будет.
Если что-то из этого не вызывает у тебя мысли: "А, я уже делал нечто подобное, и знаю примерно как и что", то не лезь. Начни с чего попроще.
Аноним 22/01/21 Птн 08:31:13 447845 561
изображение.png 742Кб, 1200x800
1200x800
изображение.png 355Кб, 2500x1500
2500x1500
Здарова бандиты

The new flexible $4 microcontroller board from Raspberry Pi

Raspberry Pi Pico is a tiny, fast, and versatile board built using RP2040, a brand new microcontroller chip designed by Raspberry Pi in the UK.

RP2040

Designed by Raspberry Pi, RP2040 features a dual-core Arm Cortex-M0+ processor with 264KB internal RAM and support for up to 16MB of off-chip Flash. A wide range of flexible I/O options includes I2C, SPI, and — uniquely — Programmable I/O (PIO). These support endless possible applications for this small and affordable package.

For beginners, for experts

From controlling appliances to operating a light display, Raspberry Pi Pico puts the technology that underpins countless everyday operations into your hands.

Programmable in C and MicroPython, Pico is adaptable to a vast range of applications and skill levels, and getting started is as easy as dragging and dropping a file.

More experienced users can take advantage of Raspberry Pi Pico’s rich peripheral set, including SPI, I2C, and eight Programmable I/O (PIO) state machines for custom peripheral support.

https://www.raspberrypi.org/products/raspberry-pi-pico/
Аноним 22/01/21 Птн 11:48:06 447877 562
>>447845
Больше проприетарных чипов богу проприетарных чипов
Аноним 22/01/21 Птн 14:57:36 447896 563
>>447877
и чё в ней такого проприетарного?
Аноним 22/01/21 Птн 15:47:50 447902 564
>>447896
даташиты где? сишные хеадеры где? описание jtag где?
Аноним 22/01/21 Птн 15:51:32 447903 565
изображение.png 45Кб, 1051x390
1051x390
Аноним 22/01/21 Птн 17:35:00 447914 566
Можно ли на каком-нибудь STM32 запустить дисплей от смартфона по типу такого?:
https://pine64.com/product/pinephone-5-99-lcd-panel-with-touch-screen/?v=0446c16e2e66
И как это сделать, чтобы работал и сам дисплей, и тачскрин?

Хочу сделать смартфон на микроконтроллерах.
Распберри пи не предлагать, там напаяно куча металлоконструкций, который мешают, придают громоздкости. Когда-то сделал автономный планшет на распберри пи, но всё-равно было не очень юзабельно.
И пайнфон этот не хочу покупать, мутный он какой-то. И всё-равно придётся писать часть софта самостоятельно.
Аноним 22/01/21 Птн 19:15:12 447928 567
>>447914
Судя по всему можно с микроконтроллерами у которых есть LTDC, только естественно нужна документация на сам дисплей. Возможно есть смысл потренироваться для начала на STM32F746G-DISCO.
>и тачскрин?
Там вообще обычно I2C, если я не ошибаюсь.

Только идея у тебя бестолковая и ты скорее всего ничего вменяемого не сделаешь. Нахрена вообще телефону тачскрин и такой дисплей, если на нем нельзя будет запустить браузер или видеоплеер? Или ты о STM32MP1? Но даже если так, то это тоже ерунда.
Аноним 23/01/21 Суб 04:07:42 447940 568
>>447914
>Хочу сделать смартфон на микроконтроллерах.

Если купить у хачей/цыган в переходе "ифон" китайский то это оно и будет. Если их ещё продают, давно не видел.
Аноним 23/01/21 Суб 10:09:52 447951 569
>>447928
>если на нем нельзя будет запустить браузер или видеоплеер?
А карты? Загрузить OSM на сд-карту и двигать, скейлить ёмкостным тачскрином. А когда надо вписать текст, то открывать экранную клавиатуру, а не пытаться перебирать что-то несколькими физическими кнопками.
Аноним 23/01/21 Суб 22:45:12 448080 570
>>447951
>А карты? Загрузить OSM на сд-карту и двигать, скейлить ёмкостным тачскрином.

А у тебя есть такой софт, не заточенный под OS? Я писал навигацию - задача не так проста как кажется, нахрапом не решишь.
Аноним 24/01/21 Вск 19:54:41 448167 571
>>448080
>такой софт, не заточенный под OS
Нет. Когда-то пытался отрисовывать OSM-карты вручную, но в интернете всё время натыкался на шизофрению типа отправить XML-данные на какой-то третьесторонний сервер, чтобы он отрендерил или что там было.
В любом случае, у OSM есть вся карта (где-то 50 ГБ) в т.н PBF формате: https://wiki.openstreetmap.org/wiki/PBF_Format
К сожалению, вроде нет нормальных библиотек по взаимодействию с ним и надо читать документацию и вручную писать библиотеку. На SD-карту в 256 ГБ можно будет поместить и всю планету в виде OSM, и английскую википедию с медиафайлами в OpenZIM формате (для которого тоже библиотек почти нет или написаны на жсе).

Но это я делал давно и с тех пор мой опыт возрос, надо будет ещё попробовать.
В общем-то в ГУИ и рендеринге ничего сложного нет. У меня уже есть самодельные графические и ГУИ движки (с поддержкой разных бекендов отрисовки, опенгл, софтверный рейтрейсинг и для МК надо будет сделать софтверную растеризацию).

Так что всё упирается в скорость, размер флеша и ОЗУ микроконтроллера и надёжность+скорость хранилища данных.
Аноним 25/01/21 Пнд 13:51:01 448234 572
>>448167
>В любом случае, у OSM есть вся карта (где-то 50 ГБ) в т.н PBF формате

Это формат для компактного хранения а не для быстрого отображения. Для отображения надо как минимум поверх 2D-индексацию прикрутить.
Аноним 25/01/21 Пнд 15:27:00 448249 573
>>448167
>Когда-то пытался отрисовывать OSM-карты вручную
Вот же дурачки сидят в автодеске и прочих, да? выдумывают всякие MapServer-ы и другую хуету для рендеринга векторных карт. Но тут Анон возьмется и на ардуине захуярит. Осталось чутка напрячься, написать библиотеку и всё. А ничего, что там float-вычислений до жопы? Контроллер просто крякнет это обсчитывать, не говоря уже о выоде на экран.
Аноним 25/01/21 Пнд 19:51:58 448298 574
>>448249
>А ничего, что там float-вычислений до жопы? Контроллер просто крякнет это обсчитывать

В Cortex-M4 уже завезли. Стоит 350 рублей на алике.
Аноним 25/01/21 Пнд 20:56:01 448302 575
>>448298
>В Cortex-M4 уже завезли. Стоит 350 рублей на алике.
И сколько он будет пересчитывать карту на миллион полигонов при переходе на другую СК?
Аноним 25/01/21 Пнд 21:10:40 448303 576
Что за ерунду вы тут развели?
Стоило всего лишь ответить что в старших стмках есть LTDC, но сама идея хрень полнейшая, как начался бред. То анону не нравится то что на малинке куча лишних для его задачи деталей, а то вдруг берется запросто угробить кучу времени на какую-то хрень, которую не факт что сделает, а даже если сделает то ей толком невозможно будет пользоваться. Да за то же время можно сотню раз малинку переразвести.
Аноним 26/01/21 Втр 13:51:22 448379 577
>>448302
>>В Cortex-M4 уже завезли. Стоит 350 рублей на алике.
>И сколько он будет пересчитывать карту на миллион полигонов при переходе на другую СК?

Миллиона не должно быть - пересчитывается только то что на экране надо отобразить. Это сотни-тысячи.
Аноним 25/02/21 Чтв 22:52:52 452878 578
Аноны, а куда STM32 пропали из магазинов? Даже на али f103 - одна паль
Аноним 25/02/21 Чтв 23:03:42 452879 579
>>452878
Не выдержали конкуренции с али
Аноним 25/02/21 Чтв 23:13:08 452881 580
>>452879
Да ну! На али только 103 подделывают, и то хреново, а пропали все серии
Аноним 25/02/21 Чтв 23:47:42 452883 581
Аноним 26/02/21 Птн 11:06:40 452908 582
>>452883
И даже тут не все модели есть, нет в том числе "народной" STM32F103C8T6, многие модели со сроками поставки в недели и месяцы
Аноним 26/02/21 Птн 11:15:32 452909 583
народная.JPG 76Кб, 1084x663
1084x663
>>452908
>нет в том числе "народной"
Есть, но с ебанутой ценой
Аноним 26/02/21 Птн 11:22:08 452910 584
народная 2.JPG 64Кб, 1128x588
1128x588
>>452908
Бля. Даже у самих ST их нет. Наверное майнеры клятые раскупили на стадии литографии.
Аноним 26/02/21 Птн 11:45:22 452912 585
DSC7278.jpg 99Кб, 1920x1285
1920x1285
>>452908
>"народной" STM32F103C8T6
Впсовнил что года полтора назад прикупил 103CBU6 десяток по 50р/шт. Они правда оказались б/у, выпаянные откуда-то заботливым китайцем. Настало время проверить их работоспособность. что-то хуевые времена настают.
Аноним 26/02/21 Птн 13:13:58 452940 586
>>452910
Тут сразу 2 фактора, ка мне кажется, пандемия приостановила заводы + майнеры, мать их, заводы своими видеокартами перегрузили

В итоге я вообще не понимаю, на какие МК теперь кидаться в плане изучения, учитывая то, что уже они могут также рандомно пропасть
Аноним 07/03/21 Вск 15:50:47 454623 587
image.png 68Кб, 462x517
462x517
>>314976 (OP)
Допустим, работая в гос.учереждении или фирме ты разработал ряд микропроцессорных устройств(прошивки и/или схемы).
Как потом добавить их в свое портфолио?
ПРОСТО приложить фоточку устройства и черкануть пару строк о нем, как здесь
<<
Или еще от РАБотодателя нужно затребовать документальное подтверждение того, что именно ты сделал это устройство и оно успешно продается и эксплуатируется? И как тогда такой документ будет называться - справкой, рекомендация с предыдущего места работы, етц?
Собственно, увольняться не планирую, но на всякий случай решил соствить портфолио, чтобы на случай, если выкинут на мороз, можно было легче устроиться на новую работу.
Аноним 07/03/21 Вск 15:58:02 454626 588
>>454623
Портфолио надо, если ты будешь фрилансером, тогда
>> ПРОСТО приложить фоточку устройства и черкануть пару строк о нем, как здесь
достаточно.
Если устраиваешься в фирму, просто покажи свои платы, у тебя же есть бракованные и тестовые? Ни один работодатель в здравом уме справку тебе не даст, вдруг ты хочешь оспорить его право на эту разработку?
Аноним 07/03/21 Вск 17:45:54 454636 589
>>454626
>Портфолио надо, если ты будешь фрилансером
Так портфолио в любом случае надо, чтобы указать в резюме, ведь работодатели думают следующим образом:
>опыт - это не столько года которые ты пропердел в стул на позиции [...], а законченные проекты, задачи, технологии, с которыми ты работал
Я так понял, тогда надо просто указать в портфолио список законченных устройств и все, а если будут вопросы просто кратко объяснить в чем их суть. А документальных подтверждений выполнения этих устройств мной фактически нет выходит.
>просто покажи свои платы, у тебя же есть бракованные и тестовые?
Лично у меня есть только макетки с кучей проводов, на которых тестировал прошивки, полноценные платы только у фирмы. Но они работоспособны.
А с ПО как быть? Снять видео, демонстрирующее работу устройства?
>Ни один работодатель в здравом уме справку тебе не даст, вдруг ты хочешь оспорить его право на эту разработку?
Хм, я об этом не думал.
По этой же причине, полагаю, нельзя показывать схемы и код с предыдущего места работы, ведь это интеллектуальная собственность работодателя.
Аноним 07/03/21 Вск 18:45:13 454640 590
>>454636
>Снять видео, демонстрирующее работу устройства?
>и присесть за шпионаж в особо крупных размерах
Надо смотреть, что за госконтора в которой сейчас работаешь. А то сума и турьма заждались тебя.
Аноним 07/03/21 Вск 19:41:13 454652 591
>>454640
Да не, в частной фирме, но это тоже не варик выходит.
Чтож, получается, надо в портфолио просто написать список проектов. Без каких-либо пруфов.
Аноним 08/03/21 Пнд 00:14:40 454713 592
>>454652
достаточный пруф, что ты можешь внятно рассказать, что делал и почему так. Электроника не айти, где толпа нубов после курсов строит из себя сеньоров
Аноним 17/03/21 Срд 22:52:08 456471 593
>>314976 (OP)
>https://ru.wikipedia.org/wiki/Mbed
>Отличительной чертой mbed является вариант работы, при котором программист не нуждается в инсталляции специального инструментария для программирования контроллеров. В этом варианте для написания кода используется онлайн IDE, работающая через браузер. Компиляция также производится онлайн.
Проиграл с жидков.
Это дно хуже, чем компляторы, работающие через юсб-ключ.
Т.е. в любой момент(по желанию левой пятки), владелец этого онлайн-компилятора отключит его, или сделает доступ к нему только за тысячи долларов, и всем твоим разработкам, написанных на mbed пизда.
Аноним 17/03/21 Срд 23:32:33 456477 594
>>456471
>и всем твоим разработкам, написанных на mbed пизда.
Они же не запре
Аноним 19/03/21 Птн 20:42:23 456718 595
Аноним 22/04/21 Чтв 19:45:07 460286 596
>>314976 (OP)
В связи с тотальным пропаданием с рынка бюджетных STM32, полез смотреть аналоги у конкурентов и понял, что Cortex-M4/7 микроконтроллеры сопоставимые с STM стоят в полтора, два раза дороже и потребуют дохуя сил на курение их мануалов, покупку программаторов, и т.д. Пиздец какой-то. Чо делать-то?
Аноним 23/04/21 Птн 01:15:23 460316 597
>>460286
Че за говно... Реально, STM32F103C8T6 за 10 штук хотят около 53 usd. Раньше, по-моему, дешевле было... Хотя, STM32F030 по-прежнему дешевенькие.
Аноним 23/04/21 Птн 01:17:38 460317 598
>>460316
Фикс. Писал про алик.
Хотяяя... Я, вероятно, и подгоняюю насчет цены.

Но, кстати, в местном украинском радиодетальном магазе реально нет контроллеров серии f1.
Аноним 23/04/21 Птн 09:41:12 460329 599
>>460286
Переходить на нижние stm32
01/05/21 Суб 00:53:26 461099 600
>>314976 (OP)
кто-нибудь может привести пример личного проекта который не вытащил бы avr?
01/05/21 Суб 00:56:13 461100 601
Аноним 01/05/21 Суб 00:56:34 461101 602
Аноним 01/05/21 Суб 01:46:09 461103 603
>>461099
Какой авр? Атмега8/168/328? Элементарно - вывод информации на цветной 320х240 жк дисплей с более-менее высокой частотой обновления, а не 0.5-2 гц. Банально низкая производительность, даже не глядя на унылую встроенную периферию.
Аноним 01/05/21 Суб 02:32:59 461105 604
1600426333353.png 67Кб, 200x200
200x200
>>461103
Ты делол? Я и сам могу придумать хуллиард теоретических применений, дай реальные проекты
01/05/21 Суб 23:59:57 461188 605
Аноним 07/05/21 Птн 23:14:58 461996 606
>>460317
По Украине синих таблеток на STM32F103C8T6 можно еще купит ьпо 3 доллара, причем сами чипы похожи на оригиналы, читается ID и ревизия в прошивке совпадает с маркировкой на корпусе.
Если что scylots
Аноним 13/05/21 Чтв 04:04:05 462429 607
>>315358
Ну суть в том что программируя железо абстракция и не нужна, она делает работу кода только хуже. Хороший программист мк это не программист по образованию, а электроник.
Аноним 13/05/21 Чтв 09:52:32 462440 608
>>461996
Загони в бутлоадер и замерь напряжение на jtag пинах. Если нет подтяжки вверх, значит левак
Аноним 18/05/21 Втр 13:05:48 462895 609
>>462440
Хуй знает.
PA15(JTDI) - 3.3V
PA14(JTMS) - 3.3V
PA14(JTCK) - 0V
PB3(JTDO) - 1.5V
PB4 (JTRST) - 3.3V
Аноним 18/05/21 Втр 13:06:44 462896 610
>>462895
И кстати, нигде не залит блинк, вроде китайцы заливают блинк не?
Аноним 23/05/21 Вск 21:46:59 463464 611
Хули вы развели? Юзаю атмеги пол года
Аноним 24/05/21 Пнд 14:00:50 463521 612
>>463464
спасибо за информацию, продолжайте наблюдение
Аноним 26/05/21 Срд 20:42:57 463752 613
АРМ проектирует одна контора. Другие конторы штампуют микросхемы, интел, микрочип, ренесас и т.д. Но почему у всех свои библиотеки и IDE если одна и та же архитектура?
26/05/21 Срд 21:08:58 463753 614
>>463752
Бля, торможу, это библиотеки периферии и др. что не АРМ арх.
Аноним 26/05/21 Срд 21:09:29 463754 615
>>463752
>почему у всех свои библиотеки
Это не совсем так, CMSIS-Core один на всех. А поскольку хоть ядро одно, но периферия у всех разная, соответственно требуются разные библиотеки. В том что касается остальной периферии, которая не входит в состав ядра, CMSIS требует от производителей описать все регистры единообразно и в соответствии с рядом требований. Но CMSIS низкоуровневый и поэтому производители делают высокоуровневые библиотеки, однако часто даже у одного производителя они разные для разных серий микроконтроллеров, в качестве примера STM32 - HAL и LL для каждой серии свои.
>и IDE
Это тоже не так. Ну да, зачастую лепят какую-то хрень на эклипсе, бывает при этом приделывают какие-то специфичные штуки, вроде куба или замеров энергопотребления у силабс. Только никто не заставляет пользоваться этим.
Аноним 27/05/21 Чтв 01:21:06 463771 616
>>463754
>Это тоже не так. Ну да, зачастую лепят какую-то хрень на эклипсе, бывает при этом приделывают какие-то специфичные штуки, вроде куба или замеров энергопотребления у силабс. Только никто не заставляет пользоваться этим.
Ну, у микрочип библиотека AFS открыта, но просто огромна, выбрать из нее только то, что нужно, без IDE, не тривиальная задача. В IDE можно указать что нужно, usb-cdc бла бла, и оно копирует это в твою директорию.
Не знаю почему они не используют стандартные механизмы. Нужен USB: git clone usb-cdc && make DEVICE=x. Но нет, нужно их IDE юзать.
Аноним 06/06/21 Вск 13:37:03 464877 617
16168600913701.png 77Кб, 699x463
699x463
Аноним 11/07/21 Вск 13:47:52 468288 618
деф.png 8Кб, 721x174
721x174
сисинит.png 21Кб, 617x440
617x440
Наврядли помогут, но спрошу тут. Бо поддержке, похоже, глубоко похуй на мои потуги.

Хочу задействовать FPU на МК ARM Cortex-M4.

Всё упирается в строчку макроса
#if defined (__VFP_FP__) && !defined(__SOFTFP__)
__VFP_FP__ и __SOFTFP__ - неопределены, нужные значения макроса неактивны.

Как это исправить?
Аноним 21/07/21 Срд 14:07:27 469092 619
>>468288
в настройках линкера посмотри может там переопределено.
Аноним 21/07/21 Срд 16:27:22 469099 620
Аноним 26/08/21 Чтв 23:24:26 472270 621
image.png 486Кб, 691x502
691x502
Есть типа такой поебени, я могу в теории её к orange pi pc припаять и шобы оно ещё и работало? Как загуглить такое? Олко, есть на двоще тред конкретно по одноплатникам?
Аноним 26/08/21 Чтв 23:32:44 472271 622
>>472270
смотря к какому одноплатнику, некоторые могут в pcie.

прям так и гугли, "название_борды pcie"
Аноним 26/08/21 Чтв 23:38:32 472272 623
>>472271
Так, ну судя по этому - https://raspberry3.ru/orange-pi-3-obzor-i-sravnenie/, писиай появлися только в третьей версии, а значит в первой его нет, я прав? Вообще совсем никаких способов без дополнительных плат его туда не присобачить?
Аноним 26/08/21 Чтв 23:55:11 472274 624
>>472272
там не в платах дело, можешь подпаяться к разьему, где о н есть. Засада в том, что PCIE интерфейс шустрый, на ARM-ном GPIO не сэмулируешь.
Аноним 27/08/21 Птн 13:28:36 472294 625
>>472272
Оранжи на allwinner в основном. H3 без pci-e, h5 без, в h6 есть но там он забагован и линуксом не поддерживается.

Хороший pci-e у rk3399 но он дорогой, платы с ним около 100$ были до кризиса ещё.
Аноним 29/08/21 Вск 14:58:00 472434 626
>>472270
Кстати о прикручивании необычных деталей к одноплатникам, никто не видел статью об установке на Raspberry Pi Zero GBAшного экрана?
Аноним 29/08/21 Вск 17:34:52 472459 627
Аноним 29/08/21 Вск 18:51:13 472468 628
>>472459
Экран от игровой приставки Game Boy Advance. Последнюю неделю у меня вертится в голове этот вопрос, то ответ я пока не нашёл.
Аноним 27/09/21 Пнд 03:23:56 475237 629
Объясните, можно ли к пи подключить свич и тем самым раздавать интернеты по проводам на несколько девайсов?
Аноним 27/09/21 Пнд 03:28:32 475238 630
>>475237
можно, но из малинки такой себе роутер выйдет, дороговатенький.
Аноним 27/09/21 Пнд 03:30:40 475239 631
>>314976 (OP)
есть два stlinkv2 кетайских, могу один перешить во что-нибудь другое. Что анон посоветует - jlink или black magic probe?
Аноним 04/10/21 Пнд 04:17:33 475957 632
bengunnmbengunn.jpg 6Кб, 170x200
170x200
>>475239
Go with the black magic probe.
Аноним 04/10/21 Пнд 04:27:53 475958 633
Дефицит в этом году дошёл только до производителей, в следующем и до потребителей дойдёт. Сейчас лид тайм на китайские полупроводники около полугода. Это пиздец для производства.

Порты перегружены, людей почему-то не хотят нанимать; стоимость переправки контейнера выросла в два раза.
Аноним 04/10/21 Пнд 07:56:56 475964 634
>>475958
>стоимость переправки контейнера выросла в два раза.
Там вроде зависит от направления. Из Китая в США вроде даже в 20 раз.
Ну я смотрел mygap на эту тему вроде, он так поясняет.
https://youtu.be/7iF-xM30rXk
Аноним 12/11/21 Птн 09:32:42 479896 635
>>314976 (OP)
Кто-то пробовал Mbed?
Он проще, чем Cube MX?
Правда ли, что на нем писать также просто как в ардуино иде?
Сам я ардуинщик и возможность легкого переката из ардуино иде в стм-ки через Mbed кажется заманчивой.
Аноним 15/11/21 Пнд 01:55:36 480315 636
>>377514
На AnalSkript. Только анальная пробка нужна, анимешная. Для мужественных олдскульных пидарасов не подойдет.
Аноним 15/11/21 Пнд 02:32:22 480317 637
>>447914
Смотри сразу в сторону F7. Вон, один человек пилил семплер на STM32, он брал седьмую серию (если знаком с оборудованием Pioneer DJ средины 2010х, то это что-то очень похожее по фичам).
Аноним 21/11/21 Вск 20:57:14 480982 638
>>479896
Да, как ардуинка. Также много контроллеров, такой же говёный код, подойдёт для ди-ай-вай.
Аноним 21/11/21 Вск 20:59:49 480984 639
>>479896
Лучше уж HAL + FreeRTOS
Аноним 21/11/21 Вск 21:00:15 480985 640
>>479896
Лучше уж HAL + FreeRTOS
Аноним 21/11/21 Вск 21:00:37 480986 641
>>479896
Лучше уж HAL + FreeRTOS
Аноним 22/11/21 Пнд 04:28:32 481016 642
Какие аналоги есть у STM32? Интересуют линейки F1 и F4. Под аналогами я подразумеваю не просто "шоб було", а такие, которые как STM32 тоже очень активно используються в промышленности.
Аноним 22/11/21 Пнд 10:40:58 481019 643
Аноним 24/11/21 Срд 19:48:21 481345 644
Нет тут кунов около-безопасников, которые в хардварь секьюрити роются? Как вам вообще реверсится и эксплойтится данная архитектура?
Аноним 24/11/21 Срд 19:56:03 481346 645
>>481345
>безопасников
Эти хуже пидорасов. Все чем они занимаются на практике - правильное оформление бумажек, чтобы не прикопались аудиторы и прочие внешние проверяльщики. Разумеется по мере возможности при этом перекладывают ответственность и прикрывают свою жопу, причем только бумажками разумеется.

>хардварь секьюрити роются
Что это ты имеешь в виду?
Аноним 24/11/21 Срд 20:46:35 481348 646
>>481346
> Что это ты имеешь в виду?
Проверка оборудования на "закладки".
Аноним 24/11/21 Срд 20:58:36 481349 647
>>481346
>Эти хуже пидорасов
Да я понимаю, хотя я сам не безопасник, но роюсь и в ней.

>Что это ты имеешь в виду?
Направление "Hardware Security". Проектирование безопасной аппаратной архитектуры, если быть кратким.
Аноним 25/11/21 Чтв 07:26:50 481391 648
>>481348
С этим еще проще, хотя в чем-то может и сложнее. Наиболее заметный пример, пусть не про железо а софт, но это не столь важно - все эти сертифицированные отечественные линуксы. Сколько дыр находили и продолжают находить в одном только ядре линукса? Таким образом очевидно что все эти сертификации и прочее это не про безопасность, а про бабло. Ну может быть что-то прям уж совсем явно палящееся они не пропустят, но это я оптимист наверное.

>>481349
Все равно не понимаю. Например в микроконтроллерах есть аппаратная защита прошивки от считывания и копирования и в некоторых микроконтроллерах эту защиту можно обойти снижением напряжения питания и/или подачей импульсов по питанию или как-то еще аналогично. Это относится к твоему "Hardware Security"? Но тут проблема в том что одна часть микросхемы продолжает работать при пониженном питании, а другая нет, то есть исследовать такое нужно на уровне транзисторов.
Или относительно недавно нашумевшие meltdown и spectre - это проблемы на уровне rtl, от которого до транзисторов весьма далеко.
Это две совершенно разные проблемы, для выявления и устранения которых требуются познания в разных областях, пересекающихся лишь частично. А потом в почти любой железке есть и софтовая часть - это еще одна область. И все это ты хочешь намешать в одну кучу?
Аноним 25/11/21 Чтв 09:21:14 481395 649
>>481391
Есть такая легенда среди военов, что в каждый чип, купленный за границей, встроен радиопередатчик, который каждый день отчитывается куратору о том, как воен подрочил и где находится его ржавый советский металлолом.

Именно поэтому они дпочат на отечественные чипы, ведь там точно нет шпионских закладок. Страну опять спасли, ой как здорово, ой не могу!
Аноним 25/11/21 Чтв 13:25:10 481408 650
>>481391
>Это относится к твоему "Hardware Security"?
Мои действия закончатся на анализе прошивки.

>относительно недавно нашумевшие meltdown и spectre
Уязвимостям уже несколько лет, не знаю где они "недавние". Из недавних аппаратных CVE я знаю только VoltPillager. Но и там задействован SGX, он косвенно пересекается с софтом.
https://zt-chen.github.io/voltpillager/

>И все это ты хочешь намешать в одну кучу?
Ох, я разбираюсь в частности с прошивками и их работой, все, так теперь понятнее?
Аноним 25/11/21 Чтв 13:33:58 481410 651
>>481391
>Сколько дыр находили и продолжают находить в одном только ядре линукса?
Ну, прикинь сколько это фаззить определенные модули ядра? Тоже не мало времени занимает. Ядро линукса - жутчайший легаси, в котором рыться и искать что-то ой как не хочется.

>уж совсем явно палящееся они не пропустят
Критичные уязвимости переходят на первый план обычно. Фиксят, их, собственно быстро, из-за чего вместо одной иногда появляется две и более уязвимостей.
Уязвимости, которые не вызывают аппаратных сбоев или сбоев в ядре, обычно фиксят медленее. Даже которые самые неприятные
Аноним 25/11/21 Чтв 20:06:39 481445 652
Подскажите. Есть устройство в котором стоит МК один из контактов которого закоротило внутри на минус питания. На форумах прочитал, что как вариант можно попробовать прожечь кз( типо МК в утиль и хуже ему уже не будет,а после прожега есть мизерная возможность, что он заработает).
Как это сделать "по правильному" ? Need help, как говориться..
Аноним 26/11/21 Птн 09:30:33 481507 653
>>481445
Контроллер выпаять и делай что хочешь. Я думаю нужно подать заведомо большое напряжение и ток, как при сварке или пайке, чтобы эффект был точечным. Иначе будет печка, которая постепенно перегреет весь кристал.
Что-то вроде 12 В/10A от компьютерного БП. И подавать такое напряжение одиночными импульсами, сначала короткими, потом длиннее, до тех пор пока не получится нужный эффект или не сгорит все.

Чисто теоретические советы, никогда таким не занимался.
Аноним 26/11/21 Птн 15:30:49 481550 654
>>481345

>Как вам вообще реверсится и эксплойтится данная архитектура?

Сниферы + безумные дедуктивные умения уровня камбебетча

https://www.youtube.com/watch?v=Vq1lxeg_gNs
Аноним 26/11/21 Птн 20:59:04 481579 655
>>481550
Спасибо! Посмотрю подробнее в эту сторону
Аноним 27/11/21 Суб 11:00:02 481643 656
>>481345
MCU разных фирм могут быть защищены по-разному, в зависимости от назначения тоже по разному. Есть аппаратные средства защиты, но они в основном не от атаки защищают, а повышают надежность. У микроконтроллера чаще всего закрыта на пароль отладка JTAG, BDM, BSL и т.д. Атаки в основном деляться на глитч атаку и сайд-ченнл. Микроконтроллер можно замедлять тактируя на килогерцах, мешать работе его ядра и т.д. Отслеживаются токи потребления, температура. Воздействуют электромагнитным полем, температурой. Успешно атакованный закрытый микроконтроллер в свою очередь дает возможность задокументировать атаку и создать относительно простой программатор который будет буднично подламывать. Renesas строит защиту на модуле FCU, секвенсер доступа к памяти. У файрчалд/моторола использует похожие, но не такие методы, часто подламываются глитч атакой на ножку Xtail. Обширная тема очень и чтобы понимать нужно неплохо знать микроконтроллеры. Есть еще момент что прошивка криптованная, ее реверс сложен и долог, но выливается это все в утилиту весом в 5 мегабайт которая все может поправить в ней. Есть дорогостоящие программы для реверса бинарника вытащенного из контроллера, которые декомпилируют примерный код, из-за разнообразия ядер и реализаций все очень громоздко, но при известном упорстве эти программы справляются, можно примкнуть к разработке и помочь в отладке декомпилятора для конкретного микроконтроллера. Длинно и путанно я наверное объяснил и очень сумбурно, но как есть теперь.
Аноним 27/11/21 Суб 13:03:14 481656 657
>>481643
Это всего лишь защита от копирования прошивки, которая вовсе может быть открытой. Но "хардварь секьюрити" это наверняка более обширная тема, впрочем фиг поймешь что имел в виду тот анон.

>>481410
>Критичные уязвимости переходят на первый план обычно.
Ага https://news.ycombinator.com/item?id=26887670
Аноним 27/11/21 Суб 16:34:33 481686 658
>>481643
>Обширная тема очень и чтобы понимать нужно неплохо знать микроконтроллеры
Я тут и чтоб учиться тоже. До этого я работал с виндой на уровне ring 0, но хочу абстрагироваться и уйти куда-нибудь в более интересное дело.
>Есть дорогостоящие программы для реверса бинарника вытащенного из контроллера
Насколько знаю, IDA умеет в ARM, но никогда не смотрел, какой у нее выхлоп декомпилятора конкретно для ARM. Надо признаться, что на пример с MIPS она не очень хорошо управляется. Однако для x86_64 их декомпилятор остается лучшим из лучших.
Я привык пользоваться каким-нибудь r2/Cutter или Ghidra.
>Есть еще момент что прошивка криптованная
Вероятно, оно так и будет: вытаскивать из себя закриптованный бинарник в рантайме. Однако я не совсем представляю как это должно выглядить для ARM.
>Длинно и путанно я наверное объяснил и очень сумбурно, но как есть теперь
Все хорошо, анонче, спасибо!

>>481656
>Но "хардварь секьюрити" это наверняка более обширная тема, впрочем фиг поймешь что имел в виду тот анон.
Я вкатываюсь только в данную тему, я извиняюсь, если как-то говорю что-то не так или не объясняю.
>Ага
На Patchwork время от времени захожу, иногда бывает так, как я и сказал.
Аноним 28/11/21 Вск 16:23:30 481787 659
>>481686
Я опять сумбурно буду. Например возьмем систему санкционирования доступа BMW, третьего поколения. CAS3 старый, добрый. Его давно весь изломали до основания. Применен мотороловский( фрискейл) MC9S12DG512, например с маской 0Y15. Секьюрный MCU, микропрограмма состоит из криптованного флэш, епром. Прочитать его можно многими программаторами, например R270. На него осуществляется комплексная атака, я тыкал осциллографом во время подлома, картина интересная. Полученные файлы были расковырены и появилась возможность скорректировать VIN, пробег, записать ISN (ключи моторного и GWS) после любой корректировки утилита пересчитывает крипту, вывешивает флаги что все "ОК" Сравниваешь бинарники и видишь характерные лесенки. Большую роль в успешном реверсе этой серии микроконтроллеров сыграло то, что криптованных там три модели и 15 масок примерно, а открытых куда больше. Плюс нервное напряжение, когда я первый раз "усыпил" BMW снеся флэшку CAS3 у меня голова заработала интенсивно. При этом не криптованные (без буквы S) после 9 могут быть тоже закрываться на чтение, въебываются glitch атакой. Программатор подает питание, через определенное время на ногу кварца 16 мгц дают 8, он замедляется, потом генерацию вообще срывают, происходит странный танец с питанием и ресетом процессора, в итоге он переходит на темную сторону и читают на 16 мГц. Я не знаю точно, выдергивают с него пароль или просто вдалбливают что PassOK. Кстати реверс прошивки порой и не нужен, например при попытке клонирования, т.н. "Отлома" устройства максимально дешево и с возможностью официального обновления ПО. Но это старая сказка, большинство серьезных чипов имеют номера и в базе разраба все есть и они онлайн команды kill засылают. Кирпичил так один прибор на NXP)))
Аноним 04/12/21 Суб 17:44:52 482482 660
stm32 тред как-то умер, поэтому спрошу тут.

Есть FreeRTOS и нотификация таска из интеррапта, примерно вот так — https://ideone.com/sTwLFW

Проблемма в том, что интеррапт и условие иногда срабатывают и после того, как я всё сделал, потому перед началом ожидания мне нужно просто сбросить все уже пришедшие до этого момента нотификации, чтобы я точно не получил никакого старья.

Проблема в том, что xTaskNotifyStateClear почему-то не работает. Он возвращает pdTRUE, что заклирил какие-то нотификации, но следующий за ним вызов ulTaskNotifyTake всё равно возвращается мгновенно из-за ранее пришедшего оповещения.
В итоге мне приходится делать while (ulTaskNotifyTake(pdTRUE, 0)){} вместое StateClear, что немного некрасиво.

Других АПИ для сброса я чего-то не нашёл. Я что-то не так понимаю, наверное, но как мне добиться нужного мне поведения человеческим методом, а не так топорно?
Аноним 04/12/21 Суб 23:45:51 482527 661
>>482482
Наверное, вопрос отменяется, есть ulTaskNotifyValueClear, просто у меня слишком старая версия ОС в проекте, где такой функции ещё не завезли, а StateClear вообще другое делает. (Cраный куб, мог бы и новое качать, а не из 2017 года версию, сам проект создавался буквально пару месяцев назад).
Аноним 14/12/21 Втр 14:42:13 483358 662
>>314976 (OP)
Парни, не сочтите за наглость.
Киньте за щеку кейгеном для IAR.
Для STM8 надобно. Там лимит сейчас 4k кода всего.
Аноним 14/12/21 Втр 16:35:20 483367 663
>>483358
>Для STM8 надобно
Там же халявный Cosmic без ограничений есть жы!
Аноним 14/12/21 Втр 17:32:37 483370 664
>>483367
Спасибо, но Cosmic он же не дружит с IAR? Надо юзать STVD получается? Я только вкатываюсь. Пытаюсь. Я поставил Cosmic.
Аноним 14/12/21 Втр 17:45:00 483371 665
>>483370
>Надо юзать STVD получается?
Да. Он тоже халявный.
Аноним 14/12/21 Втр 19:54:07 483377 666
>>481345
>>481391
Миландр делал несколько фич аппаратной защиты:
https://habr.com/ru/company/milandr/blog/518138/
зарубежные аналоги тоже упоминаются.
>>481445
Можно попробовать, но скорее всего в утиль.
Была такая хуйня с ПЛИС, которую пиздануло повышенным напряжением питания - жрала 5 Вт вместо 0,5, грелась как печка, один или несколько выводов закоротило.
Поставил радиатор, работал так несколько дней - мощность постепенно упала в 2 раза (в первые минуты и часы больше, потом меньше), но КЗ осталось.
Аноним 20/02/22 Вск 15:49:18 489549 667
554754257445477r.jpg 63Кб, 728x579
728x579
Как во FreeRTOS проверить: запущена задача или нет?
https://www.freertos.org/vTaskGetInfo.html

Эта залупа поможет? Или есть что-то типа ПроверитьЗапущенаЛиЗадача()?
Аноним 21/05/22 Суб 00:42:32 495325 668
1528146844247.png 439Кб, 550x359
550x359
Сап, хочу вкатиться после авр. Имеется такая стартовая плата (STM32-405STK) и программатор STlink V2 mini.
Всё что я нашёл - это спецификации самого контроллера к этой плате, больше ничего. Как шить это говно? В какой среде писать (на сайте есть демка для IAR, но она не запускается) и где брать SPL ко всему этому добру?
Чет разочаровывает пока пиздец, везде видел шизу по поводу всех этих армов, а как сам начал пытаться вкатиться - так даже не могу понять как демопроект на платку закинуть. ЧЗХ они там у себя в Олимексе делают, что к ней даже нихрена доков нету.
Аноним 21/05/22 Суб 05:54:56 495333 669
>>495325
>и где брать SPL
Чел, уже много веков как все перешли на HAL&LL
Аноним 21/05/22 Суб 07:44:54 495337 670
>>495325
Для avr ты должен был ставить атмел студию, в которой в комплекте должен идти гцц для армов. Вот им и компилируй. А шить можно хоть через st link utility, особенно если IDE не настроена. Через встроенный бутлоадер тоже можно шить, даже без программаторов.
Аноним 21/05/22 Суб 11:10:48 495341 671
>>495337
Забыл упомянуть, что уже работал с ARM (но только отечественными) и юзал всегда кейл. Поэтому надеялся, что уже есть что-то привычное.
> А шить можно хоть через st link utility, особенно если IDE не настроена.
Эту утилитку уже скачал, непонятно как шить, если на плате вывод JTAG для их нативных программаторов от OLIMEX. Надо перепрошивать ST-link в J-link и смотреть распиновку житага?
> Через встроенный бутлоадер тоже можно шить
Его вроде нету.
>>495333
Можешь на пальцах объяснить, в чём отличие? Да и эта макетная плата тоже не из нашего времени, а из 2014 года.
Аноним 21/05/22 Суб 11:38:08 495342 672
>>495341
Swclk к tck, swdio к tms, землю к земле.
Для миландров тоже работало.
Самое простое - скачать stm32 CubeIDE, там все идет из коробки. Даже если пересядешь на более адекватную ide, куб удобен для раскидывания пинов.
LL - это современный SPL.
HAL - это высокоуровневая надстройка над LL типа ардуины на минималках со всеми вытекающими плюсами и минусами, автоматически генерируется кубом. В критичных к быстродействию местах лучше не использовать.
Бутлоадер позволяет шить стм через uart1, замкнув соответствующий boot на землю или питание, в мануалах все есть. Прошивальщик - flash loader demonstrator.
Аноним 21/05/22 Суб 12:53:40 495347 673
1646241170161.png 196Кб, 1497x537
1497x537
1636501233993.png 46Кб, 584x243
584x243
1513477156976.png 229Кб, 1124x616
1124x616
1640776524457.jpg 249Кб, 960x1280
960x1280
>>495342
Понял, благодарю.
А +3.3В обязательно подключать? Или если контроллер уже запитан то не надо (пик 1)?
> Бутлоадер позволяет шить стм через uart1
И для этого надо переставить перемычки boot0 и boot1 в единицу, а сам загрузчик уже зашит с завода получается?
Но обычно эти перемычки режима загрузки выглядят как переключатели, а у меня тут кнопки (пик 3 и 4), причем я только 1 нашёл (B0), похоже что B1 и WakeUp совмещены просто. Но как тогда переключать режимы загрузки, каждый раз зажимать кнопки чтоли?

Аноним 21/05/22 Суб 12:57:37 495348 674
>>495347
быстрофикс
Перепутал местами B1 и B0.
Аноним 21/05/22 Суб 13:42:32 495354 675
>>495341
>Забыл упомянуть, что уже работал с ARM (но только отечественными) и юзал всегда кейл. Поэтому надеялся, что уже есть что-то привычное.
Конечно всё есть. Вполне можно пользоваться одной средой и для миландра и стм и авр, я так и делаю и все хорошо. Пишешь мейкфайлы, можно симейк и все везде более-менее одинаково работает. Можно и кейл использовать, если так больше нравится.

>Надо перепрошивать ST-link в J-link и смотреть распиновку житага?
Антон выше правильно написал. Достаточно подключить только SWD, не обязательно задействовать JTAG. Смотри мануалы.
Если хочешь использовать программку от ст, то очевидно перепрошивать не нужно, даже нельзя. Перепрошивают только чтобы использовать ПО от сеггера. На счёт подсоединения питания - зависит от программатора, некоторые по этому напряжению берут свои лог. уровни. А загрузчик, если что, находится в масочном ПЗУ, т.е. не перепрошиваемый даже. Все как и у миландра.

>>495342
У этого бутлоадер и через USB может работать.
Аноним 04/06/22 Суб 19:47:17 496452 676
DF.JPG 82Кб, 633x786
633x786
RK3566 и RK3568 это сильно разные чипы? Будет ли прошивка (убунту гну/линупс ядро) с 68 работать на 66? Есть китайский ТВ бокс с охуевшими характеристиками (8/128) и ценой миска риса и прошка от уебичного (2/8) девбоарда с ценой в анус и почку. Какой шанс что аппартаное ускорение, HDMI и ethernet с Usb 3.0 заработают?

Аноним 16/06/22 Чтв 16:59:49 497635 677
Аноны, начал вкатываться в FreeRTOS, пока просто начитываю инфу и ± все понятно. Но как в ртосе работают прерывания от других устройств, помимо таймера с менеджером задач? Там все как обычно, я полагаю?
Аноним 16/06/22 Чтв 20:41:50 497651 678
>>497635
А необычно это как? В прерывании можно разбудить нужную задачу, например.
Аноним 16/06/22 Чтв 20:47:25 497653 679
>>497651
Мне почему-то кажется что прерывание может нарушить целостность хода выполнения и мб данные какие повредить.
А что если Hard Fault вылетит во время работы? Система продолжит работу? Из-за чего вообще обычно Hard Fault происходит?
соре за тупые вопросы
Аноним 16/06/22 Чтв 20:50:15 497654 680
>>497653
Но ведь прерывание именно для того и предназначено, чтобы прервать выполнение и сделать какое-то срочное действие. Никакие данные оно само по себе не повреждает, ни с ОСРВ, ни без неё, всё зависит от прокладки между микроконтроллером и клавиатурой. freertos имеет специальные функции для вызова из обработчика, просто делай как написано в доках и примерах.
Аноним 16/06/22 Чтв 20:54:09 497655 681
>>497653
Можешь в hardfault ресетнуться, например, почему бы нет, но по мне это нездоровая хуйня. Происходит от нарушения правил работы с данными, доступа к неправильным адресам, попытки затереть код программ во время выполнения, вызвать математические функции с выключенным float-сопроцессором. Over 9000 причин.
Аноним 16/06/22 Чтв 21:03:01 497657 682
>>497654
Понял, пойду дальше изучать, на выхах попробую что-нибудь простенькое сделать типа моргалки.
>>497655
Вот в отсутствии этой конкретики вся проблема, пока что я понимаю только что если программа сваливается в Hard Fault - значит я скорее всего что-то не так сделал с памятью или как-то не так обратился к ней.
Хорошо бы ещё как-то уметь обрабатывать этот случай, но я хз как. Есть какой-то универсальный способ вызвать ресет программно? Или нужна конкретика в виде модели контроллера?
Аноним 16/06/22 Чтв 21:07:32 497658 683
>>497657
>Вот в отсутствии этой конкретики вся проблема
В документации все есть. Или посмотри в книге у Джозефа Ю.
Аноним 16/06/22 Чтв 21:08:47 497659 684
>>497657
NVIC_SystemReset(), не?

Можно перед этим теоретически где-нибудь сохранить данные о сбое какие-нибудь. Я сам не делал, стараюсь избавляться от любых Хардов.

В отладчике CubeIDE например всю последовательность вызовов до попадания в Хард показывает. Ну некоторые еще printf'ом содержимое регистров и указателя стека выводят, чтобы потом узнать, что за данные и на каком адресе вальнулось. В книжках есть такие примеры, у Джозефа Ю, например.
Аноним 17/06/22 Птн 11:50:46 497708 685
Аноны, работал кто с Fatfs?
Проблема такая. Сделал для начала тестовый проект, там просто настраивается контроллер SPI, монтируется моя флешка и по uart выводится инфа о количнстве папок в корневой директории и свободное место на флешке. Все работает отлично при каждом включении устройства.
Создал другой проект, где сделал все тоже самое что и в прошлом, но только обрабатываю определенные файлы с флешки, и все работает пока не отключить питание устройства. После включения-выключения диск не монтируется и выдает FR_NOT_READY, при этом при ресете все норм.
И самое странное, что для того чтобы диск опять начал читаться, мне надо прошить в контроллер мой первый проект, а потом зашить второй проект. И тогда второй проект будет работать стабильно, пока не отключить питание.
Сначала думал, что перед выключением питания надо закрывать все открытые файлы и размонтировать диск, но это не помогло. Как я понял, ошибка появляется на моменте вызова disc_initialize().
В чем может быть проблема?
Аноним 21/06/22 Втр 10:59:50 498167 686
>>497658
>>497659
А в Cortex-M1 сильно отличается от Cortex-M3?
Могу я брать инфу из книги Джозефа Ю если использую Cortex-M1?
Аноним 23/06/22 Чтв 18:44:46 498381 687
>>498167
> Могу я брать инфу из книги Джозефа Ю если использую Cortex-M1
Можешь. Даже если что-то сразу не пойдёт, это будет для тебя стимулом залезть в RTFM, напрячь мозг и разобраться в проблеме самостоятельно.

Но я бы лучше нашёл книжку по Кортекс-М0, они с М1 почти одинаковые.
Аноним 25/06/22 Суб 08:54:41 498511 688
>>314976 (OP)
Кто нибудь паял атмегу проводами? Хочу сделать собственную отладочную плату на дощечке, только х.з. как аккуратнее подпаяться к тонким smd выводам и заодно исключить их замыкание.

Может быть как нибудь гребенкой попробовать, четные выводы загнуть чуть вверх, нечетные вниз, и просунуть какой нибудь изолирующий лист между ними как можно ближе к корпусу микросхемы, чтобы толстая пайка проводов не дотягивалась до соседних?
Аноним 25/06/22 Суб 21:28:55 498562 689
IMG202206252126[...].jpg 106Кб, 1080x511
1080x511
IMG202206252127[...].JPG 732Кб, 3305x1484
3305x1484
>>498511
Ты адово заебешься паять это говно, а потом оно отвалится от первого пука или не будет работать на высоких частотах из-за паразитной индуктивности проводов.
Сделай отладочную плату ЛУТом аля пикрил, или купи китайскую макетку для LQFP.
На самом деле проще купить или с али заказать.
Аноним 26/06/22 Вск 05:11:22 498590 690
Аноним 26/06/22 Вск 19:52:53 498666 691
atm22222.JPG 21Кб, 824x435
824x435
>>498562
Дорого готовую плату покупать. И плату для самостоятельной пайки тоже нет смысла, у меня только ЭПСН под рукой.
Хотя вот это >>498590 (вторая ссылка) интересно конечно, по цене ещё куда ни шло.

По сабжу - сегодня отпаял атмегу128 с ненужного устройства. Первый час или два пытался разными способами - сначала пытался по одной ножке паяльником и иголкой, потом лезвием. Ничего не получалось. После этого попробовал соорудить квадратный каркас из проволоки чтобы прогреть им все ножки, но тоже не прокатило, он почему-то никак не хотел греться.
В итоге всё же нашел приемлемый способ - продел под загибами ножек эмалированный провод примерно 0.5, прогрел их паяльником и начал потихоньку тянуть проволоку на себя. За несколько секунд все ножки одной стороны ровно отошли. Тянул не со всей дури а аккуратно, чуть наискосок, чтобы ножки отходили по одной.
После этого случайно одну оторвал пинцетом пытаясь выровнять, но она не критичная судя по даташиту.

После отпайки отогнул на одной стороне ножки гребенкой - 8 вверх, 8 вниз. Таким образом между ними получилось где-то по одному миллиметру свободного места. В принципе должно хватить чтобы подпаяться. Но понимаю, что будет геморно.
Аноним 26/06/22 Вск 23:35:33 498685 692
>>498666
> час или два
> паяльником и иголкой
>отогнул на одной стороне ножки гребенкой - 8 вверх, 8 вниз
>подпаяться. Но понимаю, что будет геморно
Еб твою мать, блядь, еб твою мать.
Атмеги по-нищебродски отпаиваются так: электроплита включается на единицу или двойку, на ней прогревается плата градусов до 100, и прямо на микросхему светишь прикуривателем. Электроплиту можно заменить утюгом, зажатым в тиски вверх ногами, у него даже термоконтроль есть.
https://www.youtube.com/watch?v=JKDZRzR1eU0
"Сборка устройства производится в обратном порядке".
Аноним 04/07/22 Пнд 20:47:36 499555 693
Что можно собрать на базе Арм-а? Насколько это затратно по деньгам? Есть необходимость в автоматизации процессов. Только вот ПЛК стоят очень дорого, на мой взгляд. А что если использовать промышленную электронику, датчики и прочее, но управлять ими не с помощью ПЛК, а используя что-то другое? Тем более, что у меня нет никакого желания использовать языки, которыми программируют ПЛК. Мне кажется, что с помощью языка общего назначения у меня будет больше свободы. Куда вообще копать? Не знаю за что браться, что читать. Контроллеров всяких куча.
Аноним 04/07/22 Пнд 21:13:28 499557 694
>>499555
>Что можно собрать на базе Арм-а?
Если без уточнений, то всякое, в зависимости от Арм-а. Молоток, микроскоп, мигалку светодиодом, обработку сигнала для радиолокатора и прочее.

>А что если использовать промышленную электронику, датчики и прочее, но управлять ими не с помощью ПЛК, а используя что-то другое?
Ну делай. Только с чего ты взял что будет быстрее сделать свой вариант ПЛК, чем взять готовый, пусть и ущербный? Схему там нарисовать, детальки заказать, платы развести и заказать, вот это вот все такое. Или ты собрался кое-как все на висящих проводках делать?

>Куда вообще копать? Не знаю за что браться, что читать. Контроллеров всяких куча.
Вряд ли с задачами ПЛК ты упрешься в быстродействие и даже объем памяти. Поэтому единственный критерий выбора это наличие необходимых интерфейсов. И вовсе необязательно использовать ARM, даже атмеги тоже может оказаться более чем достаточно.
Аноним 04/07/22 Пнд 21:22:14 499560 695
>>499557
>Только с чего ты взял что будет быстрее сделать свой вариант ПЛК, чем взять готовый, пусть и ущербный?
Не быстрее, но дешевле. ПЛК очень дорогие и не являются универсальными контроллерами. Они решают только свою специфическую задачу.

>И вовсе необязательно использовать ARM
Согласен. Тогда такой вопрос. С чего вообще начать? Есть опыт программирования на языках общего назначения. Может с ардуино? Цель набраться опыта и попутно автоматизировать свои задачи.
Аноним 04/07/22 Пнд 23:17:41 499571 696
>>499560
Какую же специфическую задачу решает cosesys например?
Аноним 05/07/22 Втр 01:43:25 499581 697
>>499560
>Не быстрее, но дешевле.
Если ограничиться микро-ПЛК в виде программируемых реле, то не факт что дешевле будет.

>ПЛК очень дорогие и не являются универсальными контроллерами. Они решают только свою специфическую задачу.
Релюшками щелкать могут, какие задачи тебе еще нужны? Тем более любой "контроллер" не будет универсальным, у какого-то один набор интерфейсов, у какого-то другой, объем памяти различается и прочее.

>Может с ардуино?
Станешь ардуинщиком.
Аноним 05/07/22 Втр 18:45:18 499691 698
>>499581
>Станешь ардуинщиком.
Что это значит? Советуют начинать с AVR. Ардуино же на AVR.
Аноним 06/07/22 Срд 12:21:38 499746 699
>>499691
Там может и стоять авр, но ты в нем толком и не разберешься т.к. там куча абстракций.
Наверное, все от твоих целей зависит, если хочешь здесь и сейчас что-то написать под контроллер – то ардуино подойдёт.
Аноним 06/07/22 Срд 14:42:33 499763 700
>>499746
Что лучше для обучения? Для ардуино много обучающей информации, много всяких железок. Как мне кажется для обучения должно хорошо подходить. Я не боюсь сложности, просто не знаю с чего начать.
Аноним 06/07/22 Срд 15:28:47 499767 701
>>499763
Могу только за себя сказать, но я до сих пор учусь.
Начал вкат с авр атмеги 128 кажется т.к. она шла на макетной плате. Все что там было нужно - это немного базовых знаний по микропроцессорам, а остальное находилось в документации.
Норм варик взять какую-нибудь отладочную платку (evaluation board) с популярным контроллером и ковырять её. Сначала ставишь себе цель, что хочешь сделать в рамках возможностей платы, потом смотришь в документации что для этого нужно и как это сделать. Периодически гуглишь.
Аноним 06/07/22 Срд 17:52:47 499773 702
>>499767
Учиться нужно всегда. Нет таких кто все знает и умеет. У меня есть задачи, которые нужно автоматизировать, но я не знаю что для этого взять. Например, мне нужно измерять PH и получать эти данные на компьютер и смартфон. Еще нужно получать температуру и влажность, управлять электромагнитными клапанами и кнопками на разных реле. На работе есть всякие ПЛК и программируемые реле, но никто не даст мне обучаться на них, они в работе, а покупать для себя такое нереально из-за дороговизны. Да и не тянет меня к таким железкам, там какие-то дурацкие языки программирования. Не знаю какое железо подошло бы мне.
Аноним 06/07/22 Срд 20:18:28 499780 703
>>499773
>Например, мне нужно измерять PH и получать эти данные на компьютер и смартфон.
Если я не ошибаюсь, то PH это в первую очередь электроды, а во вторую какой-то усилитель и АЦП. Если у тебя нет для этого доступных
>промышленную электронику, датчики и прочее
то на алиэкспрессе продают все это где АЦП с I2C выходом. Не знаю насколько оно нормальное, но продают. Если все что нужно это получать данные, то по минимуму достаточно смастерить переходник USB-I2C. Можно вовсе в HDMI воткнуть, там DDC это I2C и есть. По этому пункту кое-что можно сделать без всяких микроконтроллеров.
Если брать промышленные, то там обычно RS-485, тем более микроконтроллеры не нужны, берешь готовый переходник USB в RS-485 и готово.

>Еще нужно получать температуру и влажность
Аналогично, можно подцепить через I2C, а промышленные также с RS-485 можно взять.

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

>нереально из-за дороговизны.
Я бы не сказал что программируемые реле особо дорогие. Если будешь сам такое делать, причем не тяп-ляп, то тот же порядок по стоимости получится. Но программное обеспечение там конечно бестолковое, впрочем, АСУ-шники нахваливают и говорят что только так и надо.
Аноним 07/07/22 Чтв 11:48:56 499825 704
>>499780
Ты мне предлагаешь подключать напрямую к компу и юзать Linux/Windows API чтобы обрабатывать сигналы в удобочитаемый вид? По любому нужна железка, которая будет интерфейсом между электроникой и компом. Потому что электроники много и потому что так удобнее.
Аноним 07/07/22 Чтв 13:11:38 499828 705
>>499825
Если "датчики" не промышленные, то из интерфейсов там скорее всего будут I2C, SPI, аналоговый выход, ШИМ может быть, 1-Wire бывает иногда, остальные варианты встречаются реже. Вполне вероятно что получится ограничится одним I2C или SPI. В таком случае достаточно сообразить один универсальный переходник. Как написано выше, такое можно сделать и без микроконтроллеров.

С промышленными железками может быть еще проще, переходников USB в RS485 полно разных на любой вкус.
Аноним 10/07/22 Вск 20:46:13 500207 706
Почему FreeRTOS нету на Cortex-M1? Есть на М0 и на М3, а на М1 ничего не могу найти. Мб я тупо не вижу этого?
Или есть какие-то архитектурные особенности, которые не позволяют реализовать ртос на М1 ядре? Если их нету, то можно ли как-то портировать ртос для работы на М1 ядрах? Что для этого нужно?
Аноним 10/07/22 Вск 21:21:02 500211 707
>>500207
https://developer.arm.com/documentation/ka001145/latest
Это одно и то же за исключением:
1) В m1 отсутствует энергосберегающая фигня в виде WFI, WFE, SEV;
2) Может отсутствовать SVC.
Первое просто учитываешь и не используешь, а второе в случае отсутствия действительно создает заметное препятствие использованию операционной системы.
Если тебе это применительно 1986ВЕ1Т, то SVC там есть, но есть еще и еррата применительно к SysTick. Оно просто не работает нормально на высоких тактовых частотах, причем это вроде как не исправили в новых ревизиях. В результате так просто оно не заработает, нужно менять SysTick на другой таймер. И вообще этих 1986 может больше не быть никогда.

Да и зачем тебе FreeRTOS? Мне как-то не требовалось, в том числе с TCP/IP без всего этого обошелся.
Аноним 10/07/22 Вск 21:23:18 500212 708
>>500211
>Это одно и то же за исключением:
То есть м0 и м1 это одно и то же за небольшими исключениями. м3 уже заметно отличается.
Аноним 11/07/22 Пнд 08:31:29 500238 709
>>500211
Удивлен, как точно ты определил контроллер. Да, работаю с 1986ВЕ1Т, про еррату знаю, для начала хотя бы потестить все и запустить на частотах до 25МГц, когда системный таймер нормально работает. Я вкатываюсь только, вот и интересно ртос пощупать, и возможно текущие проекты в будущем под нее переписать.
Если ты уже работал с этим контроллером, ты случайно не работал с SPI или контроллером DMA?
Сейчас осваиваю их и есть вопросы по этим блокам, хотя и по всему остальному тоже много чего не понятно, а местный локальный форум, где более-менее все объясняли, прикрыли после известных событий. Как раз когда я начал вкатываться.

Короче, я могу просто скачать ртос с оф сайта для СМ0, открыть Quick Start Guide и попытаться настроить это все под СМ1?
Аноним 11/07/22 Пнд 20:39:36 500286 710
>>500238
>Удивлен, как точно ты определил контроллер.
С этим не так много вариантов.
>SPI
Используется такое. Только скорее в прошедшем времени.
>DMA
Было дело. Но оно там тормозное, зато у кучи периферии есть FIFO довольно большого объема, поэтому обычно не особо оно там нужно.
>Короче, я могу просто скачать ртос с оф сайта для СМ0, открыть Quick Start Guide и попытаться настроить это все под СМ1?
Вероятно все так.

>Как раз когда я начал вкатываться.
Тут выкатываться пора уже. Только куда?
Аноним 12/07/22 Втр 07:33:58 500326 711
>>500286
Если имел дело с SPI, не знаешь как на этом контроллере рассчитать частоту SPI грамотно? Работаю с fatfs, там у SPI есть максимальная и минимальная частота, она рассчитывается в зависимости от частоты ядра. В документации вроде написано, но я так и не понял как её рассчитать, ибо там в формуле значения откуда-то с потолка взяты.
А по DMA сейчас больше всего беспокоят 2 вопроса:
- при вызове прерывания, как определить какой канал DMA это прерывание вызвал? (сейчас я проверяю ControlTable каждого используемого канала);
- как грамотно выйти из прерывания по окончанию работы канала DMA? Не понятен порядок действий, которые надо сделать после переинициализации канала, чтоб грамотно выйти из прерывания.
Ну а по поводу вката, тут я ничего поделать не могу, если на работе в основном только такое используется. Мне еще повезло с этим работать так как там есть намного хуже и древнее вещи. А по поводу нехватки или отсутствия микропроцессорной комплектухи пока тревогу вроде не бьют.
чел, если ты правда работал с этим и не против если тебя периодически будет заебывать вопросами студентота в моем лице, я бы перекатился в телегу, если конечно ты не против
Аноним 12/07/22 Втр 19:45:05 500391 712
>>500326
>Если имел дело с SPI, не знаешь как на этом контроллере рассчитать частоту SPI грамотно?
В документации разве в этом месте ошибочно написано? Прям формула есть, если ты про частоту тактового сигнала.
>А по DMA сейчас больше всего беспокоят 2 вопроса:
Не помню уже. На деле вся эта хрень с периферией не так много времени отнимает, по сравнению с остальным.

>А по поводу нехватки или отсутствия микропроцессорной комплектухи пока тревогу вроде не бьют.
А надо бы задуматься.
Аноним 12/07/22 Втр 21:47:16 500409 713
1514615507058.png 224Кб, 840x752
840x752
>>500391
> В документации разве в этом месте ошибочно написано?
Ну я нихрена не понял, что мне надо сделать, если у меня частота 80 МГц и SSP(SPI) в режиме мастера?
> по сравнению с остальным
Например?
> А надо бы задуматься
Так тревогу не бьют потому что уже есть запасные варики и сама компания пишет что пока все норм.
Аноним 13/07/22 Срд 07:40:58 500429 714
>>500409
>что мне надо сделать, если у меня частота 80 МГц и SSP(SPI) в режиме мастера?
Ничего. На этой странице написано что тактовая частота контроллера SSP должна быть в два и более раз больше чем частота клока на выходе SPI. Нижний предел тоже ограничивается. Тактовая частота (HCLK) на модуль SSP идет через делитель, который задается в регистре SSP_CLOCK, при особой необходимости можно поделить им.
По самому значению тактовой частоты смотри следующую страницу.

>Например?
Слежение за целью с обработкой изображений, сопутствующие задачи.

>Так тревогу не бьют потому что
Потому что всем пофигу может быть?
>уже есть запасные варики
Особенно когда уже проведены почти все испытания с 1986 и кучей остального отвалившегося, заказчик уже почти все принял, вот-вот серия...
>и сама компания пишет что пока все норм.
Ну это логично. Как в анекдоте.
Аноним 13/07/22 Срд 08:41:02 500431 715
>>500429
> тактовая частота контроллера SSP должна быть в два и более раз больше чем частота клока на выходе SPI
Я несколько раз уже прочитал эту строчку и не могу понять что тут написано. Контроллер SSP должен работать на частоте, в 2 раза превышающей его собственную? Это как?
Что есть что? Все что у меня есть – это тактовая частота HCLK и этот делитель SSPCLK, который в регистре CR0 находится, что описано на след странице.
А как вход и выход посчитать? Из чего формируется Fsspclkout и Fsspclkin?
И по каким критериям надо делитель SSPCLK подбирать?
На данный момент я подобрал частоту методом тыка для 16МГц и все работает. Но сейчас 16МГц не хватает, а при повышении частоты контроллера (и пропорционально частоты SSP офк) SD карта перестает отвечать на команды и не хочет инициализироваться, причем только после выключения питания. До этого момента она работает.
Аноним 13/07/22 Срд 09:25:43 500433 716
>>500431
>Контроллер SSP должен работать на частоте, в 2 раза превышающей его собственную?
Частота SSP_CLK это от которой тактируется модуль SSP.
А частота SSPCLK это то что идёт с ножки микроконтроллера, если он ведущий. Возможно тебя это запутало.

>делитель SSPCLK,
Лучше не делить.
Аноним 13/07/22 Срд 09:55:05 500434 717
>>500433
> Частота SSP_CLK это от которой тактируется модуль SSP.
Он может тактироваться от чего-то, кроме частоты CPU? По сути ведь в моем случае обе эти частоты равны? У них ведь одинаковый источник частоты? Просто в каких-то случаях я могу что-то из этого делителем менять.
А что за Fsspclkout и Fsspclkin? Откуда брать их значения?
В моем случае есть 2 варианта частоты SSP:
FCLK_FAST и FCLK_SLOW. На низкой частоте идет инициализация SD карты, на высокую частоту SSP пепеключается когда SD карта вышла в рабочий режим. Но какие они должны быть я так и не пойму.
Аноним 13/07/22 Срд 10:30:43 500436 718
>>500434
>Он может тактироваться от чего-то, кроме частоты CPU?
Оно тактируется от HCLK, деленной на делилку из регистра SSP_CLOCK. Но делить ни к чему и лучше не делить.
>А что за Fsspclkout и Fsspclkin?
Это частота SSPCLK, того что идёт с ножки микроконтроллера. Out это когда микроконтроллер ведущий и сам даёт сигнал на эту ножку. In - когда микроконтроллер ведомый. Там у этой формулы в скобках же все это написано.
Аноним 13/07/22 Срд 10:45:37 500437 719
>>500436
Вроде разобрался, по крайней мере с минимальной частотой, благодарю.
А ты когда под 1986 писал юзал SPL? Если да, то какой версии лучше пользоваться? Там просто есть какие-то паки от сообщества, а есть официальные.
Аноним 13/07/22 Срд 11:24:16 500438 720
>>500437
>писал юзал SPL?
Да, конечно. Нет никакого смысла не использовать.
>Там просто есть какие-то паки от сообщества, а есть официальные.
Официальные к сожалению не работают с gcc. Поэтому использовал https://github.com/eldarkg/emdr1986x-std-per-lib В качестве IDE со всякими микроконтроллерами использую Qt Creator вместе с симейком.
Аноним 13/07/22 Срд 14:54:13 500447 721
>>500438
Сейчас пользуюсь тем же самым, но поставил ещё это https://github.com/StartMilandr/MDR_Pack_v6
Что можешь сказать по этому паку? Мне после прошлого вообще неудобно этим пользоваться, да и документации нету к этому паку, одному автору понятно что там как.
Аноним 13/07/22 Срд 20:36:27 500490 722
>>500447
>Что можешь сказать по этому паку?
В первый раз вижу. Подозрительно выглядит. Действительно, хотя бы доксигеновскую пародию на документацию можно было изобразить.
Зато emdr1986x-std-per-lib это всего лишь адаптация официальной библиотеки под gcc.

А еще, паки это же про кейл? Этот момент в кейле как-то не здорово выглядит. Что мешает подрубить в свой репозиторий нужные библиотеки как субмодули? Ну или просто руками все скопировать.
Аноним 14/07/22 Чтв 07:17:03 500521 723
>>500490
Паки про кейл, да
> Что мешает подрубить в свой репозиторий нужные библиотеки как субмодули
Я пока вообще не разбираюсь в теории компиляции и просто в этом. Юзаю кейл так как там есть еще и пошаговая отладка, ну и до этого по учебе им пользовался.
> Что мешает подрубить в свой репозиторий нужные библиотеки как субмодули
Что можно почитать по этой теме, чтобы понимать как это сделать?


Аноним 14/07/22 Чтв 20:57:14 500586 724
>>500521
>пошаговая отладка
Оно очень редко нужно. Так-то оно во всем есть, что может в gdb, но всякое специфичное для микроконтроллеров есть не везде. Ну можно для отладки отдельно от IDE использовать Ozone от сеггера, там все есть.

>Что можно почитать по этой теме, чтобы понимать как это сделать?
Это я про субмодули git. Конечно не обязательно их использовать, но по моему оно тут было бы уместно. Также весьма желательно использовать хоть какую-нибудь систему контроля версий. И бэкапы всего этого делать, хотя бы на отдельный комп. Не знаю на счет тебя, но в конторах, занимающихся 1986ВЕ1Т, всем этим часто пренебрегают и не от большого ума.
Аноним 15/07/22 Птн 07:23:53 500622 725
>>500586
Моя контора не исключение, гит появляется уровнем повыше.
Я пока вообще не представляю как что-то писать под контроллеры без IDE. Пользовался компилятором и гдб только по учебе когда консольные приложения писал. Для меня даже мейк файл проблематично сделать. Самое главное – хз как искать инфу по этой теме.
Аноним 18/07/22 Пнд 16:45:41 500882 726
Вижу тут есть аноны, работающие с отечественными ARM, а какие у нас вообще есть поставщики или производители отечественной продукции?
Аноним 18/07/22 Пнд 20:05:40 500908 727
>>500882
>производители отечественной продукции
https://mniirip.ru/node/4188 Тут перечень всей продукции, ну почти всей. Кое-где можно скачать бесплатно.
А если ты про то что не для военного применения, то не нужно оно.
Аноним 20/07/22 Срд 08:58:07 501041 728
>>500908
Мда, не густо у нас, особенно с модулем ethernet вообще буквально несколько штук.
Аноним 25/07/22 Пнд 12:23:10 501472 729
Перекинул прерывания шедулера FreeRTOS с SysTick на аппаратный таймер. Вроде все работает но не пойму, какой приоритет должен быть у прерывания таймера?
В демках смотрю - там таймеру дается самый маленький приоритет, но почему? Если у SysTick'a по умолчанию приоритет - 1 (почти самый высокий в Cortex-M0, дальше только исключения Hardfault и NMI).
Аноним 25/07/22 Пнд 13:21:32 501475 730
>>500882
Миландр (1986) - самый крупный и адекватный производитель, фаблесс, производил чипы на X-Fab или TSMC, сейчас распродают остатки. Возможно, переедут на Микрон или в Китай, но на это нужна пара лет. Могут слиться, микросхем у них много, весной там какая-то нездоровая хуйня происходила, вроде как директор свалил. Если у кого есть инсайды, поделитесь.

Микрон - RISC-V МК32 Амур, бескорпусной чип на большой плате, свое производство, первые будут в октябре-ноябре, обещают небольшую стоимость. Инфы мало, обычно работают с крупными заказчиками.
У одного деда на сайте есть распиновка.

НИИЭТ - 1921ВК и 1946ВК, cortex-M4. Скорее всего фаблесс и тоже будут переезжать. Работали с ними из под iar, адекватные МК, есть репозиторий на bitbucket.
Еще есть куча 8031, 8051 и mcs-96 в металлокерамике, возможно, какие-то делают у нас.

Ангстрем - старый 8-битный 1867ВЕ1, свое производство.

НИИМА прогресс - аналоги stm32 в bga, даташитов нет, не знаю, где производятся.

Можно еще на ecworld.ru покопаться, там почти все есть.

Я бы рассчитывал на Микрон и НИИЭТ в следующем году, и закладывал китайские кортексы как запасной вариант. Там их хуева гора - chipsea, wch (говорят, что аналог stm по регистрам), artery (m4), cw32, mm32, linko, zetta, vango. Стоят в разы дешевле stm/nxp, многие прямо сейчас выкатывают свои ide.

>>500447
О, я тоже с ним работал, только для iar. Скачай прогу milandrPLL и посмотри примеры. Еще был сайт startmilandr, он закрылся, но на странице автора есть бэкап.
Аноним 25/07/22 Пнд 13:37:36 501476 731
>>501475
> весной там какая-то нездоровая хуйня происходила, вроде как директор свалил
Типа того, только не понятно, как это мешает дальше выпускать продукцию. Странная проблема какая-то, перекрытие поставок из Тайваня кажется куда более серьёзной проблемой.
Есть ещё НИИСИ – Комдив-МК, у них вроде тоже свое производство.
Тоже рассчитываю на НИИЭТ с их 1921ВК, на неделе наверное позвоню им и узнаю что к чему.
Нормальный ли у этого 1921ВК функциональный аналог? Там LM4F132 от TI, но инфы по нему маловато.
Аноним 29/07/22 Птн 22:58:29 501781 732
shuu-Illust-art[...].jpeg 610Кб, 1338x2048
1338x2048
Анонче, реально ли портировать проект из Keil v4 в CubeIDE на работе нет лицензии на кейл, но прошлый прогер додумался наклепать прошивку именно в нем? И еще: подскажи максимально легкую и бесплатную RTOS. В распоряжении STM32L100RCT6 с 16 Кб ОЗУ на борту - freeRTOS вряд ли подойдет, потому что сама по себе она отжирает около 10 Кб + проект подразумевает вафлю, логирование, измерения, лору, юсб, отображение данных на простом дисплее и хз че там еще в будущем. Думал поставить uc\os, но в какой то момент заметил что она не бесплатна для коммерческого использования если честно хз, не похуй ли, но судя по трепетному отношению к кейлу - не похуй.
Аноним 29/07/22 Птн 23:19:01 501783 733
>>501781
Си есть си, если там ничего не нахуеверчено
Protothreads не хватит?
Аноним 29/07/22 Птн 23:30:35 501784 734
>>501781
>CubeIDE
Это эклипс с довеском, а компилятор там обычный gcc, не путай. Мейкфайлы пиши лучше.

>RTOS
А смысл? Так ли оно нужно?
Аноним 30/07/22 Суб 07:54:55 501796 735
>>501781
bugurtos довольно легкая и понятная

The name BuguRTOS comes from Butthurt, Frugurt and RTOS.
Аноним 30/07/22 Суб 09:12:21 501798 736
>>501783
>Си есть си, если там ничего не нахуеверчено
Сколько себя помню, при портировании из кейла всегда какая-то задница да всплывет, так что спросил заранее в надежде что уже есть готовые решения.
>Protothreads не хватит?
Вполне возможно что и хватит. Спасибо анон. Хабр еще подсказывает Tasklet и Workqueue.
>А смысл? Так ли оно нужно?
Опыт говорит что если надо делать хотя бы три-четыре задачи параллельно, то лучше сразу ставить ртос и не ебать себе мозг в будущем с сопровождением и прикручиванием новых перделок.
Аноним 24/08/22 Срд 09:00:52 503187 737
Здарова
Кто-нибудь работал с китайскими mindmotion (mm32)?
Или с чем нибудь другим - geehy (apm32), wch (ch32), chipsea (cs32), vango, cw32, etc?
Аноним 24/08/22 Срд 16:31:51 503215 738
Аноним 08/09/22 Чтв 13:42:55 504110 739
Некогда вдаваться в подробности. Накидайте по скоряку гайд о молниеносном обучении погроммированию MCIMX257 от NXP. Внутре ARM9. Хочу шоб оно распознавало картинки с угрожающей скоростью и крутилось на линуксе. Гайды по быстрому обучению линуксу тоже подкиньте.
Аноним 10/09/22 Суб 17:36:26 504259 740
>>504110
Чо молчите как в рот говна набрали? В чом погроммировать ети камни? SDK какое есть? Примеры, ходы?
Аноним 12/09/22 Пнд 19:34:21 504468 741
>>504259
Ты дурак? Иди нахуй отсюда.
Аноним 24/09/22 Суб 09:11:52 505308 742
племена-дрон-бе[...].jpeg 149Кб, 500x600
500x600
Анонче, подскажи что изучить и что прочитать по архитектурам и паттернам embedded приложений? Относительно недавно окончил ВУЗ, устроился на первую работу и понял что мало понимаю, как грамотные программисты строят приложения, решают типовые задачи, делают код легко сопровождаемым и т.д.. Анон, как стать смешариком в мире встраиваемых систем?
Аноним 24/09/22 Суб 10:53:45 505309 743
>>505308
>по архитектурам и паттернам embedded приложений?

лапша во всю ивановскую. Железячники не особо часто на самом деле умеют нормальный код писать.

вкуривай обычный C. Из того, что повсеместно распространено в эмбедщине и не особо в обычном софте - volatile, weak функции, ассемблерные вставки.
Аноним 24/09/22 Суб 17:21:10 505312 744
>>505308
У эмбеддера два союзника - конечный автомат и очередь событий. Задрочишь эти два паттерна, научишься их применять в разных ситуациях и будешь великолепен.
Аноним 24/09/22 Суб 22:13:55 505320 745
изображение.png 136Кб, 347x276
347x276
>>505312
>конечный автомат
Аноним 25/09/22 Вск 10:22:01 505330 746
>>481345
>>481408
как успехи? мне тоже интересен реверс прошивок МК, особенно армовских.
Аноним 28/09/22 Срд 12:56:25 505431 747
>>314976 (OP)
СТМо-тред ушёл вообще хз куда, потому пишу тут.

Отправляю в USART по DMA и хочу получить прерывание от DMA по передаче всех байтов от DMA. Код тут https://pastebin.com/kaBQX3VH .

Байты уходят, в терминале "Transmitted_by_DMA\n", но прерывания нет. Приэтом бит в ISER0 стоит, в ISPR0 стоит, флаг события в ISR самого DMA стоит, но прерывания не происходит. ЧЯДНТ?
Аноним 24/10/22 Пнд 16:31:03 507023 748
>>314976 (OP)
Сап, радиолухи. Я снова с ADuC7061. Я правильно понял, что для погроммирования необходим J-Link\ULink\etc?
Почему STM-овцы не сделали свой программатор универсальным для всех армов?
Аноним 24/10/22 Пнд 20:31:21 507039 749
>>507023
>Почему STM-овцы не сделали свой программатор универсальным для всех армов?
вот делать им нехуй больше. Тебе ж может придти в голову мысль попробовать чото кроме stm тогда.

кетайский stlinkv2 спокойно перешивается в jlink, есличо.
Аноним 24/10/22 Пнд 21:47:04 507046 750
>>507039
>stlinkv2 спокойно перешивается в jlink, есличо
Где ты был раньше? Я уже заказал у китайцы jlink10 за 1300. Приедет к середине ноября. А я пока либы буду пытаться скочать с AD. А то они со штатным впн от огнелиса, пишут, шо - ХУЙ ВАМ ПО ВСЕЙ РОССИЙСКОЙ МОРДЕ, А НЕ ВОЗМОЖНОСТЬ СКАЧАТЬ!!! АЗАЗА!!
Я бы не связывался с ними, но уж больно охуевший ADC у них встроен в этот чип. А я разжился десятком нормирующих преобразователей от Овна, с ними внутре.
Аноним 28/10/22 Птн 16:23:12 507331 751
>>314976 (OP)
>SAM3 и ATSAM91
Нахуй вы идете в такие шараги?
Аноним 28/10/22 Птн 16:34:10 507333 752
>>378460
>что хал и прочие библиотеки
Расскажешь как будешь ебаться с битиками когда запилишь что-то сложнее SPI и I2C, хотяб ethernet или USB.
Знаю я таких, подельщиков. Начинают рассказывать про дыры в библиотеках и "что они всё пишут сами, если надо" или "если мне надо будет, могут написать функцию работы с портом, и передавать туда данные по указателю", или вообще "если надо будет работать работать с портом из нескольких функций, я реализую очередь, в котором будут данные складываться и отправляться когда порт будет свободен"

Потом такие ребята ВНЕЗАПНО для себя узнают что очереди уже реализованы в RTOS, драйверы уже есть тоже во многих HAL и LL и даже в тех же RTOS.
Но блядь, я из треда в тред вижу как каждый "собирается" сделать свой SPL/OS/RTOS/SDK/LL/HAL/CMSIS, только через некоторое время зайдешь в его git или спросишь, а на самом деле нихуя нет, наверное дошло.
Аноним 28/10/22 Птн 16:42:55 507334 753
>>507046
Лучше иметь 2 программатора. Я серъезно. У меня этих программаторов дохуяллион.
Аноним 30/10/22 Вск 10:05:14 507476 754
поясните по хардкору, почему Google для миллиардов своих устройств (смартфонов Pixel) перешёл с ARM на RISC-V?
RISC-V уже готов для продакшона? или в больших объёмах ARM НАСТОЛЬКО дороже, что выгоднее налабать SoC на коленке из опенсорцных IP и впихнуть консьюмерам (всё равно сожрут)?
Аноним 30/10/22 Вск 10:11:55 507477 755
>>507476
> SoC
речь, конечно же, не про "основной" SoC, а про секьюрити SoC "Titan"
Аноним 30/10/22 Вск 10:26:13 507480 756
>>507476
>про секьюрити SoC "Titan"
Это просто микроконтроллер, вполне вероятно что и 8051 для этого было бы вполне.
И так ли оно нужно конечному потребителю в телефоне? Мне как-то без надобности.

>из опенсорцных IP
Как бы RISC-V это не опенсурсные IP, а только общедоступная ISA. А сами IP RISC-V существуют какие угодно.
Аноним 30/10/22 Вск 10:39:37 507481 757
>>507480
> Это просто микроконтроллер
со своей оперативой, хранилищем, и скорее всего RTOS
Аноним 30/10/22 Вск 11:01:57 507483 758
>>507481
>со своей оперативой
Это у всех микроконтроллеров должно быть в том или ином объеме.

>хранилищем
Да, это не у всех бывает. Но не меньше чем у половины точно есть.

>и скорее всего RTOS
Будто что-то особое, требующее какого-то особого набора команд.
Аноним 30/10/22 Вск 11:45:35 507485 759
>>507333
Так ты макакен, хули с тебя взять. Когда ничего не делаешь и только готовое берешь, это конечно очень легко и всем можно говорить что ты проффессионал, ПОДНЯЛ usb, ethernet, potoki на hal.
Аноним 30/10/22 Вск 11:49:11 507486 760
>>507476
Полагаю risc v подходит для кастомных решений, потому что его легко настраивать. Arm все таки нужно лицензировать и согласовывать с барином каждый бит, а эту хуйню масштабируй, режь как хочешь.
Аноним 30/10/22 Вск 19:34:17 507515 761
>>507485
Так тебя тоже можно макакеном назвать, хуле ты на АРМы полез, возьми да свой процессор сделай тогда. Пиздец, с какими я долбаебами сижу.

А по факту, я уверень что тут usb, ethernet только полтора анона, и то ради прикола а не в прод. Когда работаешь с ETH протоколами которые уже работают на 1000Гбит, да именно Гбит, то ты полюбому ну не сможешь ты потянуть это в одно рыло, это коллективная работа, т.е. готовые драйверы и ОС, это и есть по сути HAL.
А поднять, так это хуйня на постном масле - так. Диодиком мигнуть чтоль, битик передать? Я такое говно даже в резюме не вписываю если я просто побаловался с каким-то протоколом или периферией.
Аноним 30/10/22 Вск 19:35:08 507516 762
>>507515
>А по факту, я уверень что тут usb,
я уверен

фикс
Аноним 29/11/22 Втр 19:42:59 510416 763
Интересный-косм[...].jpeg 548Кб, 1920x1080
1920x1080
Аноны, подскажите максимально легкую GUI либу. LVGL и TouchGFX избыточны для простеньких приборов с дисплеями 64x64 да и банально не факт, что они влезут в условные L100 или L151, а изобретать велосипед не хочется. Ну или на крайняк мб кто знает где почитать про то, как все-таки написать свою либу и не обосраться.
Аноним 29/11/22 Втр 20:04:15 510423 764
Аноним 29/11/22 Втр 20:22:09 510430 765
>>510423
Спасибо анон. Попробую повкуривать. Хотя скажу честно, препарировать микропитона идея неочевидная для меня.
Аноним 12/12/22 Пнд 23:35:13 511879 766
Макакен вынужденный писать на HAL врывается в тред.
В меня база это Python. Попросили сварганить платку управления на МК, в итоге как ардуинодебил сделал железку на модулях, а код написал по заветам DRY и SOLID, пришедшие на проект "аксакалы" говорят что не понимают псевдо ООП и ваще бля.
Вы серьезно ебашите все в main.c? Кукуха не едет?
Аноним 13/12/22 Втр 17:26:23 511931 767
>>511879
Интересную тему поднял. Но чувствую кончится срачем.
Писал бы на питоне, раз плата управления всего лишь.
Почему псевдо ООП?

>все в main.c
Это те кто пишет в структурной парадигме. У них в общем то и нет необходимости свои объекты и классы создавать, или их не больше трёх, поэтому можно реализовать все на функциях.
Аноним 13/12/22 Втр 18:03:28 511936 768
>>511879
Если ты пихаешь ооп там, где оно не требуется от слова совсем – то до тебя правильно доебались.
Ну а в мейне только мейн обычно, остальное раскидано по модулям. Ну если обработчики прерываний короткие, то их тоже в мейне оставляю.
Аноним 14/12/22 Срд 20:39:12 512110 769
>>511936
>Если ты пихаешь ооп там, где оно не требуется от слова совсем
Ты либо приводишь конкретный пример, либо идёшь нахуй школьник со своими общими фразами, которые ты не понимаешь.
Мимо
Аноним 15/12/22 Чтв 07:17:32 512140 770
>>512110
И много ты общих фраз видишь, чмонь?
Для поморгать светодиодом дохуя ооп надо?
Аноним 15/12/22 Чтв 13:16:08 512167 771
>>512140
не то чтобы "надо", но ничего этому не мешает так-то. Железячники обычно так себе программисты и не понимают, что во всем остальном ойти конструкции типа ledGPIO.toggle() - околостандарт индустрии, и не просто так.

чо б и нет-то? На плюсах если не хуярить абстрактных классов, оверхеда нет.
Аноним 15/12/22 Чтв 13:25:25 512168 772
>>512167
> ledGPIO.toggle()
Так это уже ооп чтоли, лол? Ну тогда я ниибаца ооп программист получается, а то я думал что ооп это всякие паттерны и прочая абстрактная залупа.
Вообще, где-то читал, что это не ооп, а написание в объектном стиле. Ну и так щас большинство и пишет вроде, только совсем деды с деменцией не могут привыкнуть
Аноним 15/12/22 Чтв 14:18:56 512172 773
>>512168
>Так это уже ооп чтоли, лол?
лолда.
>а то я думал что ооп это всякие паттерны и прочая абстрактная залупа.
можно долго разглагольствовать про полиморфизмы хуизмы, но собственно базовая база - объект со свойствами внутри и (изменяющими свойства) методами, торчащими наружу.
>так щас большинство и пишет вроде
среди железячников-то? не-а.
Аноним 15/12/22 Чтв 15:11:23 512176 774
>>512172
Ну хуй знает, мб от железячника к железячнику, но на моей госпараше примерно каждый молодой спец знает про понятие объекта. Хотя если открыть старые проекты 5-10 летней давности то там пиздец, да. Но там ещё и на чистых сях всё написано.
и вместо while(1) юзают goto
Аноним 15/12/22 Чтв 15:21:34 512177 775
>>512176
>на моей госпараше примерно каждый молодой спец знает про понятие объекта
если им не надо воевать с дидами по поводу использования сего знания - мое увожение такой параше.
Аноним 15/12/22 Чтв 15:24:33 512178 776
>>512172
Так-то вещь неплохая. Но зачем мне плодить объекты, если я все равно буду использовать их в единичном экземпляре?
Вот есть у меня объект uart модуля, например. Ну написал я к нему разных методов, но что толку, если у меня всего 1 уарт в контроллере и я буду работать с 1 единственным объектом? С таким же успехом я мог всё это просто в функции обернуть в отдельном файле.
Аноним 15/12/22 Чтв 15:40:49 512179 777
>>512178
>мог всё это просто в функции обернуть
А если будет два уарта, то объекты точно так же не нужны, можно (и нужно) в эти функции передавать адреса периферии всего лишь.
Аноним 15/12/22 Чтв 20:59:36 512219 778
Раз уж коснулись темы ООП в железках: поделитесь опытом сам вкатился только полгода назад - сильно ли всякие надстройки из структур режут производительность и много ли жрут оперативы и флеша? Не так давно написал свой логгер с нуля для внутреннего пользования что-бы промониторить как и сколько новые приборы потребляют энергии и заметил что памяти он жрет столько же, сколько и серийный логгер на том же кристалле, но вдовесок имеющий wifi и lora модули + полноценный usb для моего логгера достаточно usart'а. Это я кривожопый и неопытный или ООП насрало мне в штаны? Если проблема в моей криворукости, то где почитать про то как надо ООП внедрять в железки? HAL оставил только на fatfs и ацп, для всего остального выбрал LL, проект делал в кубе с нативным компилятором серийник на кейле писался.
Аноним 15/12/22 Чтв 21:47:14 512226 779
>>512178
>Но зачем мне плодить объекты, если я все равно буду использовать их в единичном экземпляре?
>С таким же успехом я мог всё это просто в функции обернуть в отдельном файле.

>Но зачем мне плодить функции в отдельном файле, если я все равно буду использовать их в единичном экземпляре?
>С таким же успехом я мог всё это просто нахуярить функциями в main.c.

>Но зачем мне хуярить функции в main.c, если я все равно буду использовать их только там?
>С таким же успехом я мог всё это просто копипастить по месту применения.

ну ты понел да? Читабельность, структурирование, повторное использование, все дела.

>>512219
> Это я кривожопый и неопытный или ООП насрало мне в штаны?
это. Если ты особо не загоняешься абстрактными классами, то конпелятору пахую на твои классы, объекты и методы, он не будет в рантайме делать ничего сверх необходимого.
для понимания, если ты совсем никак - утрировано, при компиляции вот тот самый ledGPIO.toggle() сначала станет чем-то вроде GPIOClass_T.toggle(ledGPIO), а потом вообще заинлайнится. Все компилируемые языки - синтаксический сахар над ассемблером(с)
Аноним 15/12/22 Чтв 21:55:16 512227 780
>>512179
>можно (и нужно) в эти функции передавать адреса периферии всего лишь.
>>512226
>при компиляции вот тот самый ledGPIO.toggle() сначала станет чем-то вроде GPIOClass_T.toggle(ledGPIO)
Аноним 16/12/22 Птн 07:42:31 512254 781
>>512204
>А состояние где хранить?
Ну сделай структуру со всем этим и передавай указатель.

>Допустим индекс строки передаваемой?
А если пока передается предыдущая строка захочешь ещё раз дёрнуть метод передачи строки? Получается нужно ещё внутрь пихать fifo, в который складывать указатели на передаваемые строки. Может лучше сразу все символы в fifo пихать? Тогда ещё и о времени жизни переменных можно не думать.
Необходимости в цпп с классами тут конечно нет и код от классов короче и читабельнее не станет.
Аноним 16/12/22 Птн 17:40:25 512283 782
>>512254
Зачем вручную строить объект если можно использовать встроенный?
Твои рассуждения носят субъективный характер.
St-link Аноним 16/12/22 Птн 22:21:20 512319 783
1671218480755.jpg 102Кб, 1000x750
1000x750
1671218480761.jpg 82Кб, 889x368
889x368
Возможно ли как-то обновить прошивку St-link с китайским клоном микроконтроллера? Без обновления не работает отладка в STM32 IDE
Аноним 18/12/22 Вск 07:47:25 512519 784
>>512319
На плате там есть контакты для программирования. Нужен второй стлинк.
Аноним 20/12/22 Втр 09:50:32 512773 785
>>512519
А где взять последнюю прошивку в виде hex или bin файла?
Аноним 28/12/22 Срд 21:25:14 513723 786
image.png 6Кб, 461x167
461x167
Сап двач, захотел поставить на stm32f401 защиту от чтения прошивки RDP 1 лвл.
Запилил такую последовательность при инициализации:
FLASH->OPTKEYR = 0x08192A3B;
FLASH->OPTKEYR = 0x4C5D6E7F;
while (FLASH->SR & FLASH_SR_BSY) __NOP();
FLASH->OPTCR |= 0x0000FF00;
FLASH->OPTCR |= FLASH_OPTCR_OPTSTRT;
while (FLASH->SR & FLASH_SR_BSY) __NOP();

Теперь не могу прошить контроллер, выдает ошибку пикрелейтед.
Че делать? Я запорол камень?
Аноним 30/12/22 Птн 13:48:23 513895 787
Проскролил тренд по диоганали.
Странно, но все сидят на чистой Сишечке, ну в крайнем случае с небольшой дозой крестиков, А как же Rust, он же "ржавый"?
Да, не спорю, порог вхождения высокий, компилятор наровит анально покарать за любую малую провинность, но зато такие няшные либы в репозитории, одна единая система сборки без плаясок вокруг make c ебанутым синтаксисом, C-совместивая отладка через GDB, Freertos - да позалуйста! Вообщем я плотно подсел на этот кукан.
Аноним 30/12/22 Птн 14:25:10 513897 788
>>513895
Слишком большой зоопарк разных микрух, тяжело наверное в каждую завести раст. На той же госпараше кресты только-только появляются.
Аноним 31/12/22 Суб 08:17:32 513947 789
>>513897
Я с ужасом предвкушаю, что одним прекрасным январские днём придет ко мне начальник и скажет примерно следующее:
СТМок l433 больше не будет, вообще, никак. Так что живо нашел нам новый скрепный камень и переделал все проекты на него или на мороз, причем вся контора. Выбирай.
Аноним 31/12/22 Суб 11:37:51 513952 790
>>513895
Тоже приглянулся раст, но когда попробовал сделать на нем что-то более-менее внятное на стмке, понял что реализовывать проекты хотя бы с обычным сенсорным дисплеем гораздо удобнее и быстрее на обычном C из-под кейла или куба.
Аноним 03/01/23 Втр 09:41:00 514184 791
Аноним 09/01/23 Пнд 08:12:35 514733 792
>>513723
Тык ты залочил, теперь оно не может стереть. Нужно анлокать контроллер.
Я делаю это примернго так:
1. запустить openocd с нужным конфигом, удостовериться, что оно подключилось.
2. arm-none-eabi-gdb
`(gdb) target remote :<port>`
`(gdb) monitor stm32f4x unlock 0`
Должно написать что-то вразумительное, типо ок, сделалось.
3. Передернуть питане СТМки и тогда она будет шиться как раньше.
Аноним 10/01/23 Втр 15:37:34 514883 793
>>514733
>Тык ты залочил, теперь оно не может стереть.
А почему залочивание ЧТЕНИЯ мешает стиранию (ЗАПИСИ)?
Аноним 12/01/23 Чтв 09:27:03 515072 794
Аноним 26/01/23 Чтв 14:07:14 516521 795
>>314976 (OP)
Стоит ли выпаивать попадающиеся на всяких платах частотников, контроллеры RISC/CISC? Или се наладится и снова в Россию хлынут поставки занедорго?
Аноним 01/02/23 Срд 17:28:31 517090 796
>>513947
https://mik32.ru/
ждем в этом году.
Писал им, сказали что испытания делают и в середине года будет ясно, тогда на потребительский рынок выбросят
Аноним 06/02/23 Пнд 13:54:16 517536 797
>>517090
Выглядит неплохо для начала, но больно мало инфы пока и периферии. Не хватает can, mil-std-1553, ethernet, adc/dac хоть каких-то.
Аноним 06/02/23 Пнд 16:27:16 517546 798
>>517536
Согласен, без CAN выглядит как МК для мелких поделок, во что-то больше, с несколькими платами такой ставить ну такое.
А еще странные пропорции ОЗУ и ПЗУ
Аноним 07/02/23 Втр 15:25:10 517646 799
Поясните по программаторам для arm. Вот есть st-link, им можно прошить только камни STM32? А есть J-link, им шьется любой arm камень? При этом читал, что ST-link можно прошить в J-link. Получается, если покупать, то лучше сразу взять ST-link? А если у меня уже есть STM32 контроллер с платкой, то как его прошивать стлинком, через Cube или ещё как-то?
Аноним 07/02/23 Втр 17:50:23 517664 800
>>517646
>им можно прошить только камни STM32
STM32 + STM8. Впрочем, зависит от прошивки, на китайском говне может быть и без поддержки STM8
>J-link, им шьется любой arm камень
J-link это переходник usb-jtag, не заточенный под конкретный камень, а дальше всё зависит от софта на компе
>если покупать, то лучше сразу взять ST-link
китайской подделки за 200р для начала хватит, а потом сам поймешь, что именно тебе надо
>как его прошивать стлинком, через Cube или ещё как-то
- cubeide, если кодишь сразу тут же и отлаживать, но может ругаться на поддельные камни
- STM32CubeProgrammer для прошивки hex
- flash loader demonstrator для прошивки через uart
если у тебя своя ide, гугли конкретно по ней
Аноним 11/02/23 Суб 17:34:25 518049 801
изображение.png 193Кб, 1898x915
1898x915
ЧЯДНТ ?????
Хочу просто отправить 1 по адресу LEDs
Аноним 11/02/23 Суб 23:22:50 518092 802
>>518049
Потому что у инструкции str второй операнд это регистр+смещение, причем смещение небольшой разрядности. А ты один только абсолютный адрес туда запихал.
Аноним 12/02/23 Вск 18:46:02 518171 803
>>518092
Спасибо за ответ. CPUlator пойдёт для начальной практики на ASM ?
Аноним 21/02/23 Втр 09:37:30 519160 804
nxp.PNG 14Кб, 647x324
647x324
>>314976 (OP)
Нажил контроллер i.MX283, хотел скачать футпринт на сайте NXP, а оно не пускает. Говорит, что россиянчикам низзя. Есть кто из дружественной Украины, кто сможет скачать и выложить куда-нибудь?
Аноним 21/02/23 Втр 10:18:24 519162 805
>>517546
А где вы хоть какую-то инфу нашли? Я только вики без ссылок нашёл.
Аноним 21/02/23 Втр 14:04:49 519184 806
>>519162
Возможно, они сотрудники госпараш. Нам вчера от Микрона рассылка пришла как раз про этот контроллер. Больно сырая разработка пока что.
Аноним 21/02/23 Втр 18:46:04 519236 807
Аноним 21/02/23 Втр 19:10:45 519249 808
Аноним 23/02/23 Чтв 10:32:56 519377 809
>>314976 (OP)
Это самое. Внезапно осознал, что в РФ пока можно незадорого (1-2к/шт), прикупить контроллеры ARM9/ARM11 с охуевшими частотами, кучей GPIO и прочими ништяками. Пара трудностей: BGA+многослойная печатка и нихуя не понятно в чем кодить. Пока докопал, что под них пишут на Линупсе или Вин СЕ. А если мне не нужно столь ресурсоемкое? Можно ли как для стм, просто типа FreeRTOS ебашить?
Аноним 24/02/23 Птн 18:45:37 519505 810
>>519377
Ау, наносеки? В чом погроммировать эти шикарные контроллеры?
Аноним 24/02/23 Птн 20:31:43 519524 811
image.png 82Кб, 625x562
625x562
Объясните, я могу переназначить пины PA13, PA14 под гпио-инпуты? Я смогу после этого програмировать камень? Он же через эти пины и пограмируется ST-link_ом.
Аноним 24/02/23 Птн 20:47:51 519525 812
>>519524
Там же навроде с зажатым ресетом коннектятся как выводы программирования. Хотя могу ошибаться. Кури RM на камень
Аноним 24/02/23 Птн 21:00:56 519527 813
>>519525
>Там же навроде с зажатым ресетом коннектятся как выводы программирования.
Я ниче не нажимаю. Ресет никак не соединен с программатором.
Аноним 24/02/23 Птн 21:16:42 519528 814
>>519527
>Я ниче не нажимаю.
А надо будет. В ST-LINK Utility выбираешь пункт Connect under reset и коннектишься с зажатым ресетом к своему камню
Аноним 24/02/23 Птн 22:07:33 519538 815
Пидерахи спок
Аноним 25/02/23 Суб 10:32:30 519578 816
>>314976 (OP)
Приконнектился к ADUC7601 с помощью китайского J-Link. В честно купленном на торрентах Keil µVision3 V3.90 RealView MDK-ARM Version 3.80a, скомпилировал прошивку из честно скачанных на сайте AD примеров и загрузил в микроконвертер.
Завидуете, неудачники?!
Аноним 25/02/23 Суб 10:54:16 519580 817
image.png 43Кб, 1631x423
1631x423
image.png 57Кб, 821x855
821x855
Что он от меня хочет?
Хотел поменять тип elf файла, чтобы в протеусе поиграться, а он ругается. Причем если поставить формат по умолчанию -dawrf-4 он один хер ругается.
Где в STM32CubeIDE 1.7.0 задать формат elf файла понятный протеусу?
Контроллер STM32F103C4Tx
Аноним 25/02/23 Суб 10:55:30 519581 818
image.png 15Кб, 613x303
613x303
>>519580
А этим обсерается протеус.
Аноним 25/02/23 Суб 14:41:51 519618 819
image.png 77Кб, 1844x855
1844x855
image.png 186Кб, 1909x939
1909x939
Аноним 03/03/23 Птн 09:38:56 520208 820
>>519618
>Заработало.
Держи нас в курсе!
Аноним 06/03/23 Пнд 14:17:04 520555 821
>>520208
А мне интересно.
Мимо проходил
Аноним 06/03/23 Пнд 15:23:21 520560 822
>>519184
НИИЭТ обещает выкатить 4 risc-v к 2024. У них уже были хорошие cortex-m4f 1921ВК с нормальной периферией.
Аноним 06/03/23 Пнд 15:42:42 520563 823
>>520560
У этого НИИЭТа только на бумагах все четко, а по факту даже на 1921 проблемы с поставками, наверное сказывается перегруденность, но это пиздец все равно.
Звонил им в Воронеж, у них минимальный срок поставки 180 дней, и это минимальный! Там по факту больше скорее всего будет.
Аноним 08/03/23 Срд 17:59:25 520771 824
>>314976 (OP)
Вы заебали! Скажите уже в чом компилить для ARM926EJ-S?
Аноним 10/03/23 Птн 15:14:26 520976 825
Аноним 10/03/23 Птн 22:24:35 521042 826
>>520976
>gcc написали!
Там же страшная, командная строка!!! Ты предлагаешь мне начать изучать "Make-файлы на селе"?
Аноним 18/02/24 Вск 11:07:09 548813 827
ide посоветуйте под stm32. До этого только esp-шки в arduino studio гонял.
Аноним 18/02/24 Вск 18:01:36 548859 828
>>548813
>ide посоветуйте под stm32.
Qt creator вместе с https://github.com/ObKo/stm32-cmake или можно крякнутый clion вместе с теми же симейеовсуими скриптами.

>До этого только esp-шки в arduino studio гонял.
Тогда можешь продолжать пользоваться той же ардуиной.
Аноним 18/02/24 Вск 21:19:26 548874 829
>>548859
О, отлично, просто идеально, я как раз с++ гоняю почти только в qtcreator.
Аноним 20/02/24 Втр 19:16:55 549056 830
Кто то знает как сделать загружать линукс сразу весь в оперативную память
Аноним 19/03/24 Втр 06:25:39 551654 831
>>548859
Доброго дня, подскажешь как это настроить?
Я попробовал раза три, выпадают ошибки, который по этой инструкции не подразумеваются, хотя отдельно все компоненты работают (кроме компилятора, который я не могу проверить), вчера на работе вот прям с восьми утра и до отбоя сидел над этим. То на файл ld жалуется, что его таргетом должен быть файл .._name.elf - и не ясно как к нему цель указывать, то (чаще всего) "not able to compile a simple test program"

Я бы сформулировал вопрос как "Какие минимальные действия я должен сделать, что скомпилировать hello world?"
Вот прям один файл из консоли без cmake/make превратить в бинарник. Cmake уже потом доделаю.
Аноним 19/03/24 Втр 19:26:18 551694 832
>>551654
Итого за сегодня:
- работает CubeIDE
- работает IAR
- работает Arduino IDE
- не работает всё что угодно с CMake или с этим "arm-none-eabi"

Если не получится, завтра буду разбирать как иде выше компилируют, наверняка там внутри тот же arm-none-eabi
Аноним 19/03/24 Втр 21:02:36 551707 833
>>551654
>Вот прям один файл из консоли без cmake/make превратить в бинарник.
Подожди, завтра тебе напишу. Только чем тебя не устраивает Arduino IDE? Тем более оно куда более популярно в /ra/ чем вот это все бессмысленное красноглазие.

>>551694
>наверняка там внутри тот же arm-none-eabi
Не везде, в iar их собственный компилятор.
Аноним 20/03/24 Срд 10:07:27 551744 834
>>551707
Буду очень признателен, если напишешь.

>Только чем тебя не устраивает Arduino IDE?
1. В ней без дополнительных действия я не смогу скомпилировать прошивку с работы где почти 40 отдельных файлов - переписать можно, но это я неделю буду делать пытаясь понять как обращения к регистрам переписываются в ардуине, а я во-первых вообще не должен этим заниматься по хорошему (хотя тут и говорят, что мол если надо - сиди делай хоть две недели), во-вторых есть другие задачи, интереснее.
2. Оно постоянно что-то загружает и индексирует в углу какую-то хуету, по 15 минут после любого действия и грузит процессор, ещё и ошибку сыпет. Открыть два проекта по нормальному нельзя. Не уверен что внешний вид настраивается, редактировать там программу больше чем из одного файла очень не хочется.
3. Хочу работать в привычной ide, это и эффективнее, и удобнее.
Аноним 20/03/24 Срд 10:16:37 551745 835
>>551744
попробуй конпелировать с помощью arduino-cli
Аноним 20/03/24 Срд 12:26:08 551752 836
a.png 119Кб, 1322x732
1322x732
>>551707
>Подожди, завтра тебе напишу.
Написал минимальный пример. https://pastebin.com/CFrgkvjA
Это для линуксов, для винды будет аналогично, только слэши в другую сторону.

Если нужно, то могу показать пример с симейком.
Аноним 20/03/24 Срд 12:27:31 551753 837
>>551752
-c http.sslVerify=false потому что на работе сетевой антивирус.
Аноним 20/03/24 Срд 15:26:12 551769 838
b.png 126Кб, 805x864
805x864
И теперь для CMake. https://pastebin.com/cx6nva3K
Для винды нужно дополнительно указать -G "Unix Makefiles" и возможно задать CMAKE_MAKE_PROGRAM
Аноним 24/03/24 Вск 16:48:17 552189 839
>>551769>>551752
Анон, спасибо огромное, прям от души. Даже захотелось завтра пораньше приехать на работу, настроить там.
Первое заработало сходу, второе через три минуты. Ну, по крайне мере на домашнем ноуте.
А я часами долбил примеры с гитхабов, и всюду возникали ошибки, которых не должно было быть - и решение которых не имело отношения к самой программе со светодиодом и выходило далеко за его рамки, будто там cmake и компилятор на 20 версий отличаются и не совместимы.

В четверг-пятницу тыкнули на другую задачу ездить в другое место (и обратно приезжал на два часа позже вообще без сил), вчера по дому делал что-то, а сегодня только собрался с силами и решил дома в нормальных условиях поразбираться.
Ответить в тред Ответить в тред

Check this out!

Настройки X
Ответить в тред X
15000
Добавить файл/ctrl-v
Стикеры X
Избранное / Топ тредов