STM32 новичку в ARM что к чему

Кто любит RISC в жизни, заходим, не стесняемся.
Ответить
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

ARV, хватит уже бесполезные "советы" раздавать!
Абдуринщики пусть ногами дрыгают, а мне работать надо! Передавать по SPI три байта с паузами в 10мс можно и без DMA. Но вот если этих байт штук 30, а скорость передачи всего лишь 100кГц, то все, что МК сможет делать — это передавать данные!
Мужики знакомые пытались на абдурине ногодрыгом сделать. Получилось ужасно.

[offtop], кстати, а вы-то сами сколько убили на 1-wire, с нуля приступая к написанию кода? И как решили: на таймере с DMA или на UART с DMA?[/offtop]
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Реклама
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18791
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Eddy_Em писал(а):И как решили: на таймере с DMA или на UART с DMA?
мне ни DMA не требуется, ни UART...
[offtop]Eddy_Em, а в ваших проектах лунный календарь есть?[/offtop]
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

ARV, опять флуд? Я все-таки жду чего-нибудь по теме, а не советов в стиле "ножками подрыгай, чо ты не как пацан?".
[offtop]Что такое "лунный календарь"? И при чем здесь астрофизика?[/offtop]
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

Eddy_Em, а погуглить?
Реклама
Эиком - электронные компоненты и радиодетали
Мучитель микросхем
Аватара пользователя
Сообщения: 450
Зарегистрирован: Вс янв 09, 2011 23:05:37
Откуда: СССР

Сообщение Myp3ik »

Eddy_Em, https://www.youtube.com/watch?v=CxNbqvJVOtQ может чем поможет
Иван Сусанин - первый полупроводник :solder:
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

Гуглил. Долго гуглил. Только подобное дерьмо — то на SPL, то на калокубе — и находилось...
Народ реально не хочет думать. А хочет решать проблемы не эффективным способом, а экстенсивным! По ссылке неудобная навигация по коду, поэтому я даже не нашел, где автор запрятал исходники!..
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Реклама
Друг Кота
Аватара пользователя
Сообщения: 3386
Зарегистрирован: Пн окт 11, 2010 19:00:08

Сообщение Мурик »

ARV писал(а):мне ни DMA не требуется, ни UART...
Прерывания отключаете во время обмена по 1-Wire. Или задействовали Timer1 для отсчета временных интервалов?
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18791
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Мурик писал(а):Прерывания отключаете во время обмена по 1-Wire. Или
это к теме топика не относится
Eddy_Em писал(а):А хочет решать проблемы не эффективным способом, а экстенсивным!
ну так на то и прогресс!
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

Eddy_Em, а чем SPL/SPI/DMA не устроило?
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

ARV писал(а):на то и прогресс!
ЧОрД! Опять я эти два слова перепутал. Надо усиленно лечить мозг ☺
В данном случае, естественно, интенсификация имелась в виду. Потому как вместо нормального адекватного подхода используется подход "[censored]-[censored] — и в продакшн!" — так любимый абдуринщиками и недотепами.
ПростоНуб писал(а):Eddy_Em, а чем SPL/SPI/DMA не устроило?
Во-первых, SPL == кал. Во-вторых, оно еще и deprecated!
Нет уж, если писать правильно, то только на голых CMSIS.

Ну, а вообще, понятно, что можно было бы даже из SPL выдрать нужный алгоритм. Был бы он. Когда я вижу код, разбросанный по 2-3 файла в туче директорий, я воспринимаю это как издевательство! И даже makefile отсутствует, чтобы посмотреть, что да как — это уж совсем ни в какие ворота не лезет...
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

Eddy_Em, оригинально. SPL предоставляет все необходимые определения во включаемых файлах и рабочие примеры, позволяя а любой момент работать с железом напрямую, чего не скажешь о CMSIS, предлагающий существенно более высокий уровень абстракции. Тогда понятно, почему 100КГц на STM32 вам кажется много, а до четырех мегагерц на Ардуине для анимации на LCD вполне нормален )))
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

ПростоНуб, жуть в полоску! Вам SPL кажется нормальным? Ну-ну...
Там ужасный оверхед. Одно дело - использовать эти функции на стадии инициализации (но ведь работа двойная: и даташит читать, и исходники SPL!), и совсем другое — во время работы. Я уже выше упоминал, как мучился с opencm3, не понимая, почему оно мне лишние импульсы на 1-wire дает. А все оказалось просто: библиотека "не успевала" вопремя сделать нужные присваивания. Напрямую все заработало прекрасно.
Посмотрите в код у меня на гитхабе: без SPL/калокуба/прочей дряни все получается намного эффективней + читать (а значит и поддерживать) это проще. Разве что USB не было — на основе набросков кода, которым поделился товарищ на mcu.goodboard.ru, я сделал USB-HID (эмуляция клавиатуры и мыши) и эмуляцию PL2303. Начал было делать классический USB ACM, но как-то все некогда добить его. Да и не нужен мне он: мне эмуляция pl2303 больше нравится, т.к. в системе появляется /dev/ttyUSBx, а не поганый /dev/ttyACMx (во втором случае в некоторых недоработанных дистрибутивах на появление этого устройства откликается modemd и "захватывает" его, не позволяя открыть порт напрямую).
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

Eddy_Em, я почти не пользуюсь функциями SPL, я пользуюсь ее включаемыми файлами и смотрю исходники функций, для лучшего понимания даташит. И очень часто это мне экономит уйму времени, так как какой-то ERRATA могу и пропустить. А вот с CMSIS есть смысл общаться только если важна кроссплатформенность (возможность переноса кода на другой МК, обычно, более производителный). Хотя исходники CMSIS изучаю так же с удовольствием )
Поставщик валерьянки для Кота
Сообщения: 2089
Зарегистрирован: Вс июн 19, 2016 09:32:03

Сообщение Reflector »

[uquote="ПростоНуб",url="/forum/viewtopic.php?p=3704006#p3704006"]я почти не пользуюсь функциями SPL, я пользуюсь ее включаемыми файлами и смотрю исходники функций, для лучшего понимания даташит.[/uquote]
Те кто совсем не пользуются SPL подключают один CMSIS хедер и все, что, кстати, не мешает им просматривать исходники функций чего угодно.
Друг Кота
Аватара пользователя
Сообщения: 3386
Зарегистрирован: Пн окт 11, 2010 19:00:08

Сообщение Мурик »

ARV писал(а):это к теме топика не относится
А ваши сообщения как к теме относятся? :facepalm: Вы пишите для STM32 или других ARM контроллеров? Вы лишь засоряете флудом эту тему, для и вообще раздел ARM. :facepalm:
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

Reflector, а смысл? CMSIS более высокоуровневый, чем SPL. Поэтому в качестве примера работы непосредственно с аппаратными средствами МК он менее удобен, чем SPL. Дольше продираться до нужного кода. А включаемые файлы SPL меня вполне устраивают, занимая существенно меньший объем, чем включаемые файлы CMSIS, что только положительно влияет на время сборки.
Понятно, что зависит от проекта. На младших STM32 толку от CMSIS мало. На старших он вполне востребован. Но необходимость в старших STM32 возникает очень редко, а в младших - часто. А чаще всего необходимость возникает вообще в STM8/AVR )
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

ПростоНуб писал(а):А вот с CMSIS есть смысл общаться только если важна кроссплатформенность
Чегооо???
ПростоНуб писал(а):CMSIS более высокоуровневый, чем SPL.
Чегооо???
ПростоНуб писал(а):включаемые файлы SPL меня вполне устраивают, занимая существенно меньший объем, чем включаемые файлы CMSIS
Блин, ну просто перманентное деление на нуль! А ничего, что заголовки SPL включают (автоматом) еще и заголовки CMSIS?
ПростоНуб писал(а):На младших STM32 толку от CMSIS мало
Опять деление на нуль.
ПростоНуб писал(а):А чаще всего необходимость возникает вообще в STM8/AVR
Сейчас между STM32F030 и STM8S105 разница в цене столь несущественная, что для мелких серий проще ARM взять, чем восьмибитник. А аврки в наше время только уж совсем динозавры используют (т.к. у аврок слишком скудный набор периферии + они намного дороже тех же STM8).
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Собутыльник Кота
Аватара пользователя
Сообщения: 2723
Зарегистрирован: Пт сен 07, 2018 20:20:02
Откуда: деревня в Тульской губернии

Сообщение ПростоНуб »

Eddy_Em, Сравните потребление STM8L152 с потреблением любого STM32 и расслабьтесь )))
Собутыльник Кота
Аватара пользователя
Сообщения: 2516
Зарегистрирован: Пт июл 12, 2019 22:52:01

Сообщение Eddy_Em »

ПростоНуб, у меня нет потребности в изготовлении питающихся от батарейки устройств! Рядом всегда есть розетка, большой аккумулятор или генератор.
Но и STM32 бывают L-серии. Правда, дорогущие жутко. Здесь — да, выгодней может быть STM8 взять.

Ну а вам, дорогой, я советую-таки погуглить, что такое CMSIS. А то такое невежество показываете...
Linux rules! Windows must die. Здравомыслящий человек добровольно будет пользоваться мастдаем лишь в двух случаях: под дулом автомата или под влиянием анального зонда.
Я на гитхабе, в ЖЖ
Контактная информация:
Поставщик валерьянки для Кота
Сообщения: 2089
Зарегистрирован: Вс июн 19, 2016 09:32:03

Сообщение Reflector »

[uquote="Eddy_Em",url="/forum/viewtopic.php?p=3704130#p3704130"]Но и STM32 бывают L-серии. Правда, дорогущие жутко.[/uquote]
Где они дорогущие? STM32L151C8T6 - $1.17 поштучно на али, 5 шт. STM32L011D3P6 - $4.81.
Ответить

Вернуться в «ARM»