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


Ответить в тред Ответить в тред

<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
273 20 85

ARM ТРЕД #2 Аноним 09/03/18 Птн 20:38:02 3149761
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 3149792
Мне похуй на тебя, я DIY бомж.
>SAM3 и ATSAM91
Зачем мне твое говно? В чем смысл треда для самого себя? Радач - твой личный бложик? Иди выебывайся в другом месте, петух.
Аноним 09/03/18 Птн 21:05:57 3149813
>>314979
>Иди выебывайся в другом месте, петух.
Это копипаста первого АРМ-треда, довн. Он утонул и не бампается.
Аноним 09/03/18 Птн 22:11:18 3149874
>>314979
>Выёбывается на АРМ-тред
>Иди выебывайся в другом месте, петух.
/0
Аноним 10/03/18 Суб 03:43:58 3149965
>>314976 (OP)
Почему не создать простой тред про STM32?
Аноним 10/03/18 Суб 05:25:46 3150016
>>314996
Потому, что иди нахуй https://2ch.hk/ra/res/298779.html вот почему.
Помимо ST есть ещё овер 9000 фирм со своими чипами. Здесь даже в утонувшем ардуинотреде томился тайный любитель nRF51822. Куда ему податься с такими-то фетишами, кроме как в АРМ-тред?
Аноним 10/03/18 Суб 09:36:44 3150077
>>314976 (OP)
Сук, сел с блокнотом и старым тредом дабы сделать из него выжымку сакральных знаний и достижений для будующих тредов и.... нихуя там полезного нет. Ни ссылок, ни вдумчивых разборов кода, одна петушня понтуется своими макетками.
Аноним 10/03/18 Суб 10:49:37 3150118
>>315007
Неправда.
Для вдумчивого ньюфага там дохуищща полезной инфы.
Кстати, как скачать тред целиком, со всей хуйнёй?
Скрипт писать лень, может что готовое есть?
Аноним 10/03/18 Суб 12:45:32 3150169
>>315011
>>315011
>как скачать тред целиком, со всей хуйнёй?
Открыть и сохранить страницу уже запретили?
Аноним 10/03/18 Суб 15:14:19 31503210
1003302920.jpg (68Кб, 512x600)
512x600
>>315007
Подвачну. Чистый бред. Нет чтобы узкоспециализированный тред STM32 запилить, а так всё и ни о чём.
Аноним 10/03/18 Суб 15:16:59 31503311
>>315032
>узкоспециализированный тред STM32 запилить
Ну давай думать шапку, да и пилить. Тред сам себя не запилит.
Аноним 10/03/18 Суб 17:00:40 31504512
DSC7163.jpg (334Кб, 1122x1066)
1122x1066
ris1.png (90Кб, 772x601)
772x601
>>315032
>узкоспециализированный тред STM32
Внимательно рассмотри контроллер на прилагающейся фотографии. Можешь ли ты представить себе, как он не справляется с расчетами в long double и невнятно виснет? Можешь представить, что он пропускает в очереди таски из-за нехватки оперативной памяти? А то, что он работает через раз из-за помехи при включении света в комнате? Ты видишь в нем контроллер, которому не хватает пинов под управление LCD с параллельным интерфейсом?
Теперь посмотри на него еще раз. Видишь ли ты на нем дорогой металлокерамический корпус? Может IDE для разработки под него стоит безумных денег и требует жутко производительного ПеКа? Он требует сверхмощного интеллекта для работы с ним? Или для покупки его необходимо продать автомобиль?
Посмотри снова на этот контроллер и спроси самого себя, почему ты еще не программируешь под него?
Почему ты до сих пор пишешь на wiring и боишься сделать шаг в сторону?


Аноним 11/03/18 Вск 11:34:32 31513813
>>315045
Для РФ график не особо актуален. Тут PIC+MSP430/MSP432+AtMega отъедают 60% бизнеса по микроконтроллерам.
Аноним 11/03/18 Вск 17:02:27 31514914
Почему в STM32F4 такие мозголомные примеры в Кубе? Почему интернет заполонен какими-то ебанутыми, несовместимыми со здравым рассудком примерами? В одних HAL, в других SPL, третьи вообще говняют свои конструкции и хуярят байты налево и направо? Почему нет нормальных файлов справки и хоть какого-то единства? Как же мне печот-то, передать не могу.
Аноним 11/03/18 Вск 18:20:27 31516215
32.JPG (48Кб, 564x734)
564x734
>>315045
Книжка по STM32. Пока не читал.
Аноним 11/03/18 Вск 18:23:58 31516516
Аноним 11/03/18 Вск 19:49:38 31518417
>>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 31519018
021.PNG (43Кб, 815x343)
815x343
>>315184
>Какого года у тебя?
Аноним 11/03/18 Вск 20:53:20 31519919
>>315190
Качнул, спасибо.

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

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

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


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

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

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

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

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

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

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

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

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

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

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

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

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


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

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

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

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

>Достаточно посмотреть на уровень работы с кодом в Кейле
Я думаю ты это и так знаешь, но на всякий случай скажу. Тот же компилятор, что и в кейле, используется в ARM Development Studio (это на эклипсе). Вообще никто не мешает использовать gcc совместно с практически любой современной IDE. Еще я пробовал использовать armcc вместе с clion, но ломалось почти все кроме компиляции.
Аноним 12/03/18 Пнд 23:14:48 31536352
>>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 31536453
Аноним 12/03/18 Пнд 23:22:08 31536554
>>315363
>Никакой ёбалы, никаких делителей-хуителей и прочего.
Но ведь для этого есть Ардуино? Она специально придумана, чтобы оградить впечатлительный мозг от таких сложностей как предделители и прочая ебала.
Аноним 12/03/18 Пнд 23:23:28 31536655
>>315364
А теперь сделай на этом ардуиноподобном поделии частотомер, не используя прямую запись в регистры, только функции mdbed.
Аноним 12/03/18 Пнд 23:26:43 31536756
Аноним 12/03/18 Пнд 23:27:30 31536857
>>315363
>Бинарник получается 27 Кб
Я тут в соседнем треде про стм8, рожал в муках датчик влажности на стм-овской HTS221. Даже с моим кривейшим говнокодом, мне хватило 5кб на тактирование,функцию задержек, само чтение с датчика и математические манипуляции с RAW-данными, пересчет в двоично десятичный код и отправку этой ебалы по UART. Вот сейчас подзавис с основной частью, которая будет на стм32ф4 с дисплеями и тачскринами все это принимать, думать над принятым и показывать в человекоудобном виде. Если только мои пропитые мозги не охуеют от такого.
Аноним 12/03/18 Пнд 23:30:25 31536958
>>315366
На этом поделии никто не запрещает писать в регистры. Надо просто разобраться с работой ОС, чтобы не завалить ничего. Таймер там системой используется только один (2-й, по-моему). Остальное - доступно.

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

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

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

Аноним 12/03/18 Пнд 23:46:25 31537059
>>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 31537160
>>315370
>Инфы полно, гугол в помощь.
Я с этим и не спорю. Но чтобы продвинуться на шаг, приходится выгугливать килотонны иногда абсолютно противоречивых примеров и инфы.
Аноним 13/03/18 Втр 00:02:47 31537261
>>315364
Нет, в clion так не пробовал. Тем более что я STM не использую, а тот плагин вроде в основном для автоматической генерации скриптов cmake для STM. И регистры так смотреть неудобно.
Использую сейчас для отладки ozone, как (там же) написано в первой части. Для прошивки (без отладки) приделал аналогичным образом j-flash.

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

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

Вообще HAL сложнее в освоении. Если для использования более простых библиотек достаточно прочтения референс мануала на микроконтроллер, то для HAL придется читать еще и документацию к HAL. Вообще код с SPL можно перенести на современный LL API простым переименованием в большинстве случаев.
Хоть я сам не пишу для STM, но думаю что стоит использовать LL API и немного HAL (для таких вещей как USB).
Аноним 13/03/18 Втр 20:10:11 31549672
>>315493
А чего то прихуел гляда в hal и ни хуя не понял как он работает . Толи я тупой мудак , то ли блеять не надо пытаться понять и просто вызывать функции .
Аноним 13/03/18 Втр 20:22:59 31550073
Аноним 13/03/18 Втр 20:34:29 31550474
>>315500
Это урочки на уровне тыкаем туды-сюды и заебись .
Аноним 13/03/18 Втр 20:45:06 31550575
Все это дело вкуса, кому то удобно использовать HAL, кому то нет.
Я использую SPL, раньше юзал прямое обращение к регистрам, мне норм. Хорошо написано, нет геморроя по подключению в проект. Всегда можно проследить что функции делают на низком уровне.
Аноним 13/03/18 Втр 20:59:38 31551376
>>315505
>ямое обращение к регистрам, мне норм. Хорошо написано, нет геморроя по подключению в проект. Всегда можно проследить что функции делают на низком уровне.
А как в HAL это же самое проследить ?
Аноним 13/03/18 Втр 21:04:55 31551477
>>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 31551578
халк.PNG (58Кб, 583x411)
583x411
Аноним 13/03/18 Втр 21:12:40 31551679
>>315515
От жеж блядь. Проглядел.
Аноним 13/03/18 Втр 21:22:34 31551880
>>315516
Хотя не. Вместо того, чтобы каждый раз запускать Init проще было записать такое:
TIM4->ARR = us - 1;
HAL_TIM_Base_Start(&htim4);
while ((TIM4->CR1 & TIM_CR1_CEN) != 0);
Аноним 13/03/18 Втр 21:26:50 31551981
Аноним 13/03/18 Втр 21:32:53 31552482
>>315513
Спуститься на самое дно)
А если серьезно, я хз. К HAL вообще не притрагивался.
Аноним 13/03/18 Втр 21:42:47 31552883
>>315513
>А как в HAL это же самое проследить ?

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

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

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

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

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

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

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

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

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

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

Есть ещё Segger, кстати, он тоже официально бесплатный для некоммерческих проектов.
А IAR покупается примерно так же, как и кейл.
Аноним 14/03/18 Срд 00:36:55 31556490
>>315162
Есть такое же для stm8?
Аноним 14/03/18 Срд 01:31:33 31557391
>>315564
ОПЯТЬ ТЫ? ИЗЫДИ, ГОВНОЕДИНА!
Аноним 14/03/18 Срд 07:20:16 31557992
>>315563
Или ставится Visual Studio 2017, потом на торренте покупается VisualGDB. Устанавливается тоже далее, далее, ок. После запускаешь плагин в ВС, один раз проходишь процедуру настройки качая OpenOCD, тулчейн и пак с мк для работы с стм32. И у тебя в качестве иде для мк появляется вижуал студио с интеллисенсом и прочими ништяками.
Аноним 14/03/18 Срд 07:51:33 31558293
Кстати кто нибудь пользуется системой контроля версий? Интересует что нибудь удобное с минимальной еблей в настройке
Аноним 14/03/18 Срд 09:28:56 31560394
>>315582
>кто нибудь пользуется системой контроля версий?
Пока нет, но уже читаю книжку "Git в помощь молодому колхознику" ибо уже такой пиздец в папках проектов мигающих светодиодов, что ебануться можно.
Аноним 14/03/18 Срд 09:44:11 31560495
>>315603
Гит же онлайн. Есть что то офлайновое?
Аноним 14/03/18 Срд 09:47:20 31560596
>>315604
>Гит же онлайн
Здрастия. Он и в оффлайне себя нихуево чувствует.
Аноним 14/03/18 Срд 09:48:52 31560797
>>315605
Виноват, я совсем нихуя в этом не разбираюсь.
Аноним 14/03/18 Срд 09:52:44 31560998
>>315607
Почитай Pro Git, она на русском есть, реально нужная вещь ибо пиздец в файлах настает молниеносно.
Аноним 14/03/18 Срд 09:57:39 31561299
>>315609
Спасибо.
А то сейчас у меня просто копипаст папки проекта с указанием в имени что я там делаю. Вот такой вот колхоз
Аноним 14/03/18 Срд 10:01:07 315613100
>>315612
Да у меня такой же. Плюс наработки которые вроде не пригодились, отдельными файлами сохраняю, чтобы когда понадобятся скопипастить их. В общем пиздос.
Аноним 14/03/18 Срд 10:12:11 315614101
>>315604
В онлайн - ГитХаб.
И BitBucket.

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

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

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

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

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

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

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

Некоторые вещи проще рассказать и показать, чем написать понятно и непротиворечиво.
Плюс - для начинающего важно присутствие живого учителя, или, хотя-бы, его имитация.
Аноним 17/03/18 Суб 00:08:59 315989124
>>315873
Но почему тогда капитан дальнего ПЛАВАНИЯ? :-)
Аноним 17/03/18 Суб 08:22:48 316008125
>>315989
Хороший троллинг, если бы мне было не похуй)
Аноним 17/03/18 Суб 08:44:06 316009126
>>316008
>если бы мне было не похуй)
Тебе настолько ПОХУЙ, что ты решил ответить?
Аноним 17/03/18 Суб 08:50:22 316010127
>>316009
Конечно. Хули еще делать в 8 утра в субботу.
Аноним 17/03/18 Суб 08:59:04 316011128
>>316010
вот бездельники!
Аноним 17/03/18 Суб 09:05:53 316012129
>>316011
ниче, щас чай попью, жопу почешу и продолжу SAM E70 изучать
Аноним 17/03/18 Суб 09:18:36 316013130
Лучше скажите, кто фат систему прикручивал а свои проекты? Интересует как форматировать с помощью контроллера флешку, потому что в моей либе эта функция отсутствует
Аноним 17/03/18 Суб 09:43:21 316015131
>>316012
почем брал?
а я хату прибираю - завтра жену с дочкой буду забирать :-)
Аноним 17/03/18 Суб 09:43:43 316016132
Аноним 17/03/18 Суб 09:44:54 316017133
>>316015
бесплатно. На работе выписали, а я домой пока утащил в свободное время изучать, поскольку в будущем это может пригодится.
Аноним 17/03/18 Суб 09:45:14 316018134
>>316015
поздравляю с пополнением)
Аноним 17/03/18 Суб 09:53:18 316020135
>>316017
В Atmel Studio прогаешь?
Аноним 17/03/18 Суб 09:53:39 316021136
Аноним 17/03/18 Суб 10:02:18 316023137
>>31020
Ну да. Красиво, удобненько. Мне хватает с головой. К тому же в конце концов официальное ПО от производителей
Аноним 20/03/18 Втр 18:41:16 316505138
>>314976 (OP)
Анон, какова хуя HAL_Delay не работает? Надо что-то инициализировать?
Аноним 20/03/18 Втр 18:57:24 316508139
>>316505
>Надо что-то инициализировать?
Да. Мозг.
Аноним 20/03/18 Втр 19:25:05 316514140
>>316508
Лол. Короче выяснил в чем дело. Какого-то хуя в hal из кейла нет обработчика sysTick и потому программа виснет.
Аноним 20/03/18 Втр 19:31:03 316516141
>>316514
И почему у меня всё работает?
Наверное, потому что ты пиздоглазое мудило.
Аноним 20/03/18 Втр 21:26:58 316532142
Единственный косяк с systick у меня - 1602 с i2c экстендером не заводится выше чем на 16 МГц тактовой ф103-его.
Аноним 20/03/18 Втр 22:13:35 316536143
>>316516
Завалите ка свой ебальничек, сударь малолетний.
Аноним 21/03/18 Срд 13:12:49 316622144
Аноним 21/03/18 Срд 13:34:00 316625145
Аноним 21/03/18 Срд 15:51:36 316652146
fa17c635681842d[...].jpg (319Кб, 1920x1080)
1920x1080
>>316622
Эту хуйню через любой юсб-уарт адаптер можно прошить.
Аноним 21/03/18 Срд 16:08:37 316656147
>>316652
Вот только отладить не получится.
Аноним 21/03/18 Срд 20:17:06 316681148
настроил сигма-дельта АЦП и сохранение через ДМА в переменную. Но если просто запускаешь прошивку, в переменную запись не идет. А если запускаешь дебаг в кейле то все збс. Что за фигня вообще ?
Аноним 21/03/18 Срд 20:47:05 316684149
>>316681
Не знаю что такое "просто запустить прошивку", но это выглядит похожим на проебанный volatile.
Аноним 21/03/18 Срд 20:50:16 316686150
>>316684
ну, если просто залить прошивку на контроллер и запустить его, то в таком случае контроллер не видит в переменной результат преобразования АЦП.
Если запустить в режиме дебага, в переменную пишется результат и все работает как надо.
Аноним 21/03/18 Срд 21:36:06 316695151
>>316686
А ты область видимости переменной какую сделал? Может она у тебя дальше функции и не видна?
Аноним 21/03/18 Срд 22:22:53 316702152
>>316695
Видимость нормальная, должно видеть. Иначе мне скорее всего ошибку бы выдало что такой переменной не существует при компиляции
Аноним 21/03/18 Срд 22:30:05 316703153
1.png (78Кб, 792x1023)
792x1023
2.jpg (61Кб, 350x500)
350x500
Аноним 21/03/18 Срд 22:33:16 316704154
>>316703
Бля, я практически уверен что переменную видит.
Аноним 21/03/18 Срд 22:41:19 316706155
>>316681
>сохранение через ДМА в переменную
А это как? Я думал, что DMA это прямой доступ к памяти и ты сохраняешь не в переменную, а передаешь указатель на эти данные.
Аноним 22/03/18 Чтв 06:18:31 316761156
>>316706
При настройке дма ты указываешь два адреса памяти. Откуда считать данные и по какому адресу их записать. После запуска программы дма молотит без твоей помощи информацию, т.е. Считывает быйты по адресу (к примеру)по которому находится регистр АЦП и записывает эти байты в память по второму адресу, который принадлежит переменной.
Аноним 22/03/18 Чтв 09:08:00 316781157
Короче разобрался, пидорское sdadc не хотело работать с дма, потому что я сначала настраивал и запускал АЦП, а потом уже делал дела с дма. А надо было настроить ацп, включить его, настроить дма и только потом запускать преобразования
Аноним 26/03/18 Пнд 20:46:39 317523158
Поясните за аппаратное умножение и все такое. Оно автоматически используется при вычислениях или надо что то намутить для этого?
Аноним 26/03/18 Пнд 21:22:46 317527159
>>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 317530160
>>317527
Не подскажешь как и где правильно такое искать в Гугле (флаги эти) ?
Аноним 27/03/18 Втр 00:05:05 317545161
Аноним 27/03/18 Втр 08:14:16 317563162
>>317545
Не уверен, но похоже на линукмовые команды
Аноним 27/03/18 Втр 09:45:36 317567163
линкер.PNG (5Кб, 581x137)
581x137
>>317563
>но похоже на линукмовые команды
Ваще-то линкеру такие же флаги передаются.
Аноним 27/03/18 Втр 10:43:45 317571164
>>317563
Это не линуксовые команды.
Это _опции_ - дополнительные параметры при вызове компилятора.
Я же ссылку дал.
Какие именно туда подставлять "name" для STM32Fx - надо гуглить отдельно (о чём и был вопрос).

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

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

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

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

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

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

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

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

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

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

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

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

>>337292
>понял, что зашквар
Вот это спорно. Безусловно пердуино иде можно назвать зашкваром, но саму плату - не особо. Конечно атмеги устарели, но с чего бы от этого им стать зашкваром?
Для вкатывания атмеги неплохи - в небольшом количестве регистров трудно запутаться. И у них простой ассемблер, который несложно освоить для общего развития.
Аноним 15/09/18 Суб 14:15:14 337356193
>>337350
>микроконтроллер с Ethernet MAC
Китайцы делают борды с такими?
Аноним 15/09/18 Суб 14:34:53 337357194
>>337356
Да та же серия от WaveShare, с STM32F2/F4 на борту.
Аноним 15/09/18 Суб 14:38:09 337358195
Аноним 15/09/18 Суб 17:09:38 337363196
>>337356
Некитайцы, кстати, их тоже делают. На стартерките куча плат с STM32/LPC и эзернетом.
Аноним 15/09/18 Суб 17:57:31 337366197
>>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 337506198
я вообще заподозрил неладное, когда читал статьи по stm32, кто-то на хабре писал как пару месяцев готовился к stm32. Еще в другой статье прочитал, что за вечер тут не въехать. Скачал MASTERING stm32, но там 700 страниц. Сам я погроммист на си++ со стажем, а чет зубы то пообломал на микроконтроллере, делители, хуители, что это за параша ебаная. Есть видео где его ебутлитература на русском? Что бы я хотя бы прочитал страниц 100 и всю архитектуру понимал и как там мигать светодиодом и как еще что-нибудь делать?
Аноним 17/09/18 Пнд 20:37:49 337513199
>>314976 (OP)
Господа, есть один STM32F103ZET6. Какой самый минимальный вариант обвязки, чтоб он опознался китайским st-link'ом? Нужно ли запитывать все пины VSS и VDD для этого? Посылать нахуй в гугл смысла нет, буду ставить эксперимент и постепенно подключать, а затем отключать пины, чтоб выяснить, если никто ИТТ не проверял сам.
Аноним 17/09/18 Пнд 20:49:22 337516200
>>337513
Резонатор, питание/земля (можно даже на неправильные ноги) и boot0 если надо
Аноним 17/09/18 Пнд 21:02:41 337518201
>>337516
А ты точно уверен, что ему нужен внешний кварц? Разве SWD не тактирует его сам? Более того, у него же есть внутренняя RC-цепь на 8МГц.
Аноним 17/09/18 Пнд 21:21:36 337522202
>>337518
>SWD не тактирует его сам?
Нет
>есть внутренняя RC-цепь на 8МГц.
Есть, можно даже на горячую ломать кварц и он перейдет обратно на встроенный осциллятор, но 8мгц это все же не 72
Аноним 17/09/18 Пнд 21:24:29 337523203
>>337522
>минимальный вариант обвязки, чтоб он опознался
Я так понимаю, что внешний кварц таки не нужон. Как насчёт соединения всех ног питания? Хватит ли одной пары?
Аноним 17/09/18 Пнд 21:28:24 337524204
raspberry-pi-ci[...].png (3Кб, 359x300)
359x300
>>337523 Хватит, они же все равно объединены защитными диодами как и любые другие выводы.
Аноним 17/09/18 Пнд 22:02:20 337525205
187521947128652[...].jpg (122Кб, 900x700)
900x700
>>337524
Так у диодов же обратное включение навроде защиты от ESD. Почитал интернеты и Getting started with STM32F10xxx hardware development. Похоже, что там подразумевается внешняя шина и без соединения всех VDD/VSS работать не будет. Энивей, спасибо, завтра буду проверять экспериментально. Обидно если сожгу камень, но, вроде, не должен.
Аноним 17/09/18 Пнд 22:04:30 337527206
>>337525 Погугли и дейва видосик что-то вроде mcu pin power
Аноним 17/09/18 Пнд 22:04:51 337528207
Аноним 17/09/18 Пнд 22:24:54 337529208
>>337527
Ну, это другое. Вопрос не в том, чтоб запитать ядро через диод. Нужно наверняка знать, соединены ли внутрисхемно все пины питания. В видео использован МК с одной парой выводов питания. Если использовать МК с двумя парами, но внутрисхемно расцепленными, то такой МК не заведётся подобным образом.
Аноним 17/09/18 Пнд 22:57:12 337531209
>>337527
Не, похоже таки шина внешняя. В даташите ноги питания обозначены и пронумерованы от Vdd_1/Vss_1 до Vdd_11/Vss_11. придётся все пины соединять блять.
Аноним 19/09/18 Срд 17:06:19 337737210
Сунулся на рутрекер.орг за Кейлом АРМ и не нашёл ничего!
Что хня творится?
Аноним 19/09/18 Срд 17:17:22 337740211
>>337737
Ром нужно меньше пить, и с попугаем разговаривать. Всё там есть.
Аноним 19/09/18 Срд 18:25:26 337745212
>>337737
1) Зачем брать взломанную и, возможно, затрояненную версию, когда есть бесплатная версия с ограничением 32 кБ. Твои программы занимают больше 32 кБ флешки?
2) Почему бы не взять GCC?
Аноним 20/09/18 Чтв 07:33:57 337794213
>>337745
У меня второй проект уже занимает больше 32кб
Другой
Аноним 20/09/18 Чтв 08:08:50 337796214
>>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 337799215
>>337740
Нашел только для С51, для АРМ - хер
Аноним 20/09/18 Чтв 09:19:16 337800216
>>337799
Это что такое https://rutracker.org/forum/viewtopic.php?t=5113043 ?
Но для начала ты должен ответить (хотя бы самому себе) чем тебя не устраивает >>337745 Даже если перестанет хватать версии с ограничениями, ты всегда можешь использовать "таблетку" из раздачи с рутрекера. А GCC чем не устраивает?
Аноним 20/09/18 Чтв 12:10:02 337805217
>>337800
>А GCC чем не устраивает?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

>Например, мне не понятно как изменятся тайминги при выполнении кода из ОЗУ
Особый случай, его отдельно разбирать надо будет. Зачем это делать, кстати, кроме экономии ресурса памяти или случая, когда она медленная?
Аноним 26/09/18 Срд 20:15:42 338575256
>>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 338597257
>>338575
>RM0360 страница 58
Я только про периферию читал. Нет, частота 48МГц, а память без задержек ебашит и все работает, странно как-то. Может потому что напряжение питания 3.3 вольта, лол.
А с задержкой совсем грустно, без нее прерывание 12.7мкс занимает, с ней и PRFTBE — 14.2, без PRFTBE — 19.2.

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

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

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

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

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

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

>>338621
>f4
Так там в начале лежит таблица векторов прерываний. Тебе тогда придется после каждого стирания сектора их восстанавливать.
А так все возможно. Потребуется изменить скрипт линкера и startup.
Аноним 27/09/18 Чтв 22:21:20 338704263
>>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 338725264
>>338704
>Ну значит так и оставлю. Надо тест написать, может, ошибки проскакивают, но крайне редко.
То что производитель не гарантирует работу в этом режиме, тебя не беспокоит? Оно из-за этого в любой момент может перестать работать.

>У меня сейчас в прерывании по таймеру ШИМ 32-канальный считается, и чем оно меньше времени занимает, тем выше можно сделать частоту.
Не убедительно. Можно использовать пересылку ПДП в GPIO, это даст минимум на порядок большую частоту. Можно взять микросхему вроде TLC5947. Можно взять CPLD.
Аноним 28/09/18 Птн 08:02:36 338728265
>>338725
>Можно взять CPLD.
Тут я немного ошибся. CPLD такого объема дороже FPGA. 10M02 в самый раз будет.
Аноним 28/09/18 Птн 11:23:37 338739266
Аноним 28/09/18 Птн 14:53:46 338748267
Поясните за arm cordio ble stack - его можно использовать только на определенных девайсах, или это обертка, которую хоть на cc2640, хоть на nrf5x можно ставить поверх их родных softdevice или какеготам?
Аноним 28/09/18 Птн 22:49:50 338784268
>>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 338791269
Kek
Аноним 29/09/18 Суб 15:36:13 338808270
>>338681
>Там кроме BOOT0 есть BOOT1. Нужно убедиться что на BOOT1 подается 0, например резистором к земле притянут.
Спасибо, бро!
Всё получилось.
Аноним 03/01/19 Чтв 15:24:16 351599271
Здравствуйте , радачилы, есть cypress psoc 5lp. хочу на блоках UDB (аналог плисы) сделать частотомер. два раза создавал тред, но упрямый бот закрывает его и отправляет сюда. Но может тут помогут, хотя не знаю как ARM и ПЛИСовые блоки могут быть связаны. Короче есть проблема, за первую секунду счётчик считает странное число, которое меняется примерно на 2млн. В крейторе завожу частоту в 12 МГц и секунду делаю тоже с 12 МГц.
Аноним 04/01/19 Птн 18:43:09 351730272
>>338704
>инициализация за полчаса
Пойди-ка F7/H7 проинициализируй за полчаса.
Аноним 04/01/19 Птн 20:11:56 351736273
>>351730
>F7/H7
Там и с F4 не все просто.
Аноним 04/01/19 Птн 21:55:27 351743274
>>351736
Согласен. Стартанул 103 на голом цмсис и почувствовал себя отцом, думаю ща и для 407 бойлерплэйт сварганю. Запутался в этой куче плл, зашёл в куб и за 3 минуты сделал инициализацию с помощью лл. Ебал я такой пердолинг за идею.
Настройки X
Ответить в тред X
15000 [S]
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Топ тредов
Избранное