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


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

<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
423 82 137

STM32 тред Аноним 02/10/18 Втр 12:20:39 3390051
image.png (322Кб, 600x438)
600x438
image.png (398Кб, 600x487)
600x487
Хочу вкатится в разработку на stm32. Сначала стоит вопрос выбора отладочной платы. Что лучше взять: NUCLEO-F401RE или NUCLEO-F303RE ? Или может вообще, что то другое.
Нужно максимальное количество АЦП для обработки звука.
Какую среду разработки лучше использовать?

Аноним 02/10/18 Втр 12:58:34 3390102
>>339005 (OP)
Тут есть ARM-тред, в котором ты вполне мог бы задать свой вопрос. Хотя действительно есть некоторый смысл в раздельных тредах.
>Или может вообще, что то другое.
Именно. Ты бы посмотрел какие АЦП используют для звука. У тебя в компьютере сколько разрядов в АЦП для звука? А сколько в STM32?
>Какую среду разработки лучше использовать?
Это не не оказывает существенного влияния на процесс вкатывания. Но если спрашиваешь, то это будет в самый раз: https://www.instructables.com/id/Quick-Start-to-STM-Nucleo-on-Arduino-IDE/
Аноним 02/10/18 Втр 13:08:35 3390113
>>339010
>А сколько в STM32?

Написано что 12 разрядов. Для моих задач, запись голоса с низким качеством, вполне должно подойти
Аноним 02/10/18 Втр 13:22:18 3390144
Аноним 02/10/18 Втр 13:32:37 3390155
>>339014

А они разве не все с DSP? Если я не путаю это просто набор инструкций процессора?
Аноним 02/10/18 Втр 13:55:33 3390166
>>339015
Нет. С тчк зрения программиста.
Аноним 09/10/18 Втр 00:47:44 3396897
2014-03-27 11.2[...].jpg (2879Кб, 2592x1952)
2592x1952
2015-09-18 17.4[...].jpg (2496Кб, 2592x1952)
2592x1952
2016-02-12 18.2[...].jpg (2958Кб, 1952x2592)
1952x2592
2017-05-20 02.0[...].jpg (1622Кб, 2592x1552)
2592x1552
>>339005 (OP)
Ждал этот тред больше 3 лет. Мимо начинал свой путь освоения контроллеров с AVR в AtmelStudio и теперь сижу на STM32 с STM32CubeMX как на герыче сука. Если совсем с нуля хочешь вкатиться, возьми на али пару простых отладочных плат и программатор:

https://ru.aliexpress.com/item/1PCS-ST-LINK-Stlink-ST-Link-V2-Mini-STM8-STM32-Simulator-Download-Programmer-Programming-With-Cover/32792513237.html
https://ru.aliexpress.com/item/48-STM32F030F4P6-s-CORTEX-M0-Core-32bit/32881417785.html
https://ru.aliexpress.com/item/Free-Shipping-STM32F103C8T6-ARM-STM32-Minimum-System-Development-Board-Module-Forarduino/32525208361.html

Эти платы пригодятся всегда, когда надо будет собрать что-то относительно простое и оставить работать на неопределенный срок, чтоб не дергать основную плату.

STM32F030F4P6 - самое ходове дерьмо для проверки датчиков, дисплеев и создания всяких тестовых простых девайсов, кароче аналог ардуины, только быстрее и лучше.
STM32F103C8T6 - второе ходовое дерьмо из-за своей дешивизны и предоставляемых возможностей, достаточно памяти, интерфейсов и всего остального, чтоб сделать йобу с кучей датчиков, цветным дисплеем и всякими передающими модулями или прицепить к пеке по USB.

У меня еще валяются такие же платы с STM32F103RET6 и STM32F103RFT6, когда нужно совсем много памяти для графики или больших массивов данных, да и в целом 103я серия очень нравится. Также есть STM32F429I-DISCO - это былая моя первая отладочная плата STM32, с которой я начал свое изучение и пилил тогда фо фан систему использующую DSP для распознавания цветов и простых форм с Omnivision камеры + наложение информации на кадры и трансляция через ESP8266 модуль по WiFi, чтоб через обычный браузер смотреть - было очень интересно.

Насчет Nucleo, так себе варчик, особенно если больше 1 покупаешь - неоправданная переплата за програматор на плате и кучу перефирии - она будет только мешать (не будешь же ты выпаивать каждый раз какую-то лабуду с нее, когда нужны будут ножки на которой она висит). Лучше взять у китайцев с голой разводкой (если имеются нужные тебе варианты) и навешивать все свое, единственную Nucleo которую я б купил это с контроллером STM32F334R8 из-за наличия в нем таймера разрешением 217 пикосекунд и отсутствия самого контроллера на али.

По звуку ничего определенного не могу посоветовать, но как писали выше - бери плату с DSP. А по среде разработки советую связку STM32CubeMX + Keil + STMStudio. Сгенерил проект в кубе и пишешь себе код в лучшей IDE для ARM, а потом тестишь всякие баги или проводишь наблюдения в STMStudio, которая будет строить график изменения значения наблюдаемых переменных хоть целый день.
Аноним 09/10/18 Втр 13:41:48 3397528
>>339689
А зачем тебе куб нужен, только ради схемки тактирования и пинов? Я просто сразу с регистров начал и Keil и не понимаю зачем вообще эти говнокубы и говнохалы. Единственное - приходится читать исходники хала и комментарии ибо бывает сложно понять что и в какой последовательности врубать для того чтобы врубить какую-нибудь периферию ибо в RM не всё так понятно расписано.
Аноним 09/10/18 Втр 15:29:58 3397579
>>339015
>А они разве не все с DSP? Если я не путаю это просто набор инструкций процессора?

Нет, только F4 и F7
Аноним 09/10/18 Втр 15:58:43 33976210
>>339752
stm32f7 вне кубика дюже сложно будет сконфигурировать
Аноним 10/10/18 Срд 00:02:16 33982111
>>339752
Ради инициализации периферии, меня это заебывало на AVR - постоянно лезть в мануал потому что на каждой атмеге свои регистры и комбинации флагов для одной и той же настройки частоты шима или параметров uart. Потом то я надрочился с ними и запомнил, но когда перекатился на stm, решил ну его нахуй пусть генерит - за 3 года никаких проблем не было, тем более HAL'овские функции довольно хорошо написаны, изи понимать что там происходит когда дебажишь. А в кубе все задал, оно сгенерило функцию с инициализацией двух десятков параметров и тебе не надо лезть каждый раз в мануал на 300 страниц если надо что-то изменить, особенно это касается всяких DCMI, FMC, встроенного LCD-TFT контроллера и прочего.
Аноним 10/10/18 Срд 00:59:39 33982912
photo2018-10-03[...].jpg (181Кб, 960x1280)
960x1280
video2018-10-03[...].mp4 (1203Кб, 360x640, 00:00:09)
360x640
Взял себе такую платку. Какие подводные?
Аноним 10/10/18 Срд 02:16:42 33983913
>>339829
Открыл шебм, изображение на экране посыпалось, все в полоску стало, пришлось ресет жать, теперь стремно снова открывать, что это за хуйня была.
Аноним 10/10/18 Срд 05:51:29 33984314
WP2018030522422[...].jpg (1036Кб, 3241x1827)
3241x1827
>>339829
>Какие подводные?
Поморгаешь диолдами и положишь на полку. Анус ставлю.
мимовладелец 429-discovery
Аноним 10/10/18 Срд 06:23:54 33984415
От треда у меня сложилось впечатление, что вы тут обсуждаете тысячекратно оверпрайснутые аналоги ардуины.
Лучше бы накидали литературы, желательно на русском. А также плюсы-минусы разных средств разработки.
И все это желательно с ориентиром на массовую дурино-подобную плату с STM32F103C8T6, дабы вкатиться мог любой бомж.
Аноним 10/10/18 Срд 08:09:53 33984716
>>339844
Тебе для чего? Как можно быстрее что-то сделать или основательно вкатиться? Если первое - бери ардуину.
>литературы, желательно на русском.
1) Без книг по Си по любому не обойтись. Конечно можно это заменить каким-то кратким курсом, но тогда знания останутся поверхностными. Для начала микроконтроллеры можно вообще не трогать, а примеры с упражнениями компилировать под винду (или что там у тебя).
Хороших книг тут две:
- Подбельский и Фомин http://publ.lib.ru/ARCHIVES/P/PODBEL%27SKIY_Vadim_Valerievich/_Podbel%27skiy_V.V..html
- Керниган и Ричи. http://publ.lib.ru/ARCHIVES/K/KERNIGAN_Brayan_Vil%27son/_Kernigan_B.V..html
Но в этих книгах есть существенная проблема - не рассматриваются нововведения C99, без которых (хотя и совсем малой части) для микроконтроллеров не обойтись. Об этих нововведениях нужно где-нибудь прочитать, хотя бы статейку нагуглить.
2) Нужно что-то для понимания того что такое процессор. Нужно понимание о том что такое система команд, гарвардская/фон-неймановская архитектура, CISC/RISC и прочее. В рамках этого пункта, для общего развития, неплохо было бы разобрать систему команд какого-нибудь простенького процессора и написать десяток строк на ассемблере. Тут я не знаю какую литературу советовать.
3) Ядро Cortex-МЗ компании ARM. Полное руководство. Джозеф Ю. Стоит прочитать, хотя бы по диагонали.
4) После того как осилишь предыдущие пункты, остается только открыть документацию на микроконтроллер, посмотреть примеры и понять куда тыкать в IDE.

>А также плюсы-минусы разных средств разработки.
Это по вкусу.

>И все это желательно с ориентиром на массовую дурино-подобную плату с STM32F103C8T6, дабы вкатиться мог любой бомж.
Вообще без разницы. Все отличие этих плат лишь в наличии/отсутствии встроенного отладчика и количестве светодиодов.
Аноним 10/10/18 Срд 08:47:04 33984917
>>339847
>Тебе для чего?
Для махараек.
>бери ардуину.
С нее и AVR заинтересован в перекате.
>Без книг по Си по любому не обойтись
В дроч регистров, ногодрыг и битовые операции могу, книг особо не читал. Думаешь, стоит? Для аврок вроде знаний хватало. Библиотеки с классами и ООП, конечно, не делал, но оно мне вроде и не нужно.
>Нужно что-то для понимания того что такое процессор. Нужно понимание о том что такое система команд, гарвардская/фон-неймановская архитектура, CISC/RISC и прочее
Зачем? Вещатели о CISC/RISC и прочих общих определениях в 99% случаев тоже нихуя не смогут объяснить внутреннее устройство процессора, глубже чем "вот этот квадратик - АЛУ, а вот эти стрелочки - шина данных".
>для общего развития, неплохо было бы разобрать систему команд какого-нибудь простенького процессора и написать десяток строк на ассемблере
Так открываем даташит на те же аврки и пишем, список команд с кратким описанием там дан. Чего тут разбирать-то? Ну и смысла в этом нет, только для общего развития.
>3) Ядро Cortex-МЗ компании ARM. Полное руководство. Джозеф Ю. Стоит прочитать, хотя бы по диагонали.
По диагонали определенно стоит изучить.
>После того как осилишь предыдущие пункты, остается только открыть документацию на микроконтроллер, посмотреть примеры и понять куда тыкать в IDE.
Т.е. я уже практически готов к секасу?
>Это по вкусу.
Ну, допустим. А какие самые популярные у махарайщиков, с большим коммьюнити?
>отличие этих плат лишь в наличии/отсутствии встроенного отладчика
Вот, кстати, важный момент. Где на компе тестить и симулировать код внутри МК? С аврками Протеус в этом деле все решает, а вот с стм32 полные непонятки.
Аноним 10/10/18 Срд 09:47:23 33985418
>>339849
>В дроч регистров, ногодрыг и битовые операции могу, книг особо не читал. Думаешь, стоит?
Ну если ты можешь сказать (не подглядывая) чем отличается i++ от ++i и знаешь, что в выражениях типы короче чем int, неявно приводятся к int, то наверное не нужно ничего читать. Даже если не знаешь, то для махараек и так сойдет.
>Зачем?
В основном для общего развития. Для махараек вобщем то не нужно. Но можно ли нормально программировать те же AVR, не зная что у них раздельные адресные пространства кода и данных? А это уже отличие фон-феймановской архитектуры от гарвардской и модифицированной гарвардской.
>Так открываем даташит на те же аврки и пишем, список команд с кратким описанием там дан. Чего тут разбирать-то? Ну и смысла в этом нет, только для общего развития.
Может и нет смысла. Но дает некоторое представление о том что может процессор. Например, явно не лишним будет знать, что в cortex-M0 и M1 нет команды деления, а в M3 остальных она есть. Те же DSP инструкции, которые выше обсуждали.

>Ну, допустим. А какие самые популярные у махарайщиков, с большим коммьюнити?
Бери кейл.
Остальные варианты те же что для AVR - это практически любые, не заточенные под микроконтроллеры IDE. Преимущество тут во множестве мелочей, которыми IDE отличается от блокнота. Недостатки и так должны быть понятны.

>Где на компе тестить и симулировать код внутри МК?
На компе - толком нигде. Пошаговая отладка и прочие штуки - прямо на микроконтроллере через ST-Link, J-Link и прочие. ST-Link, как видно из названия, только для ST. J-Link для всех ARM.
Аноним 10/10/18 Срд 10:12:28 33985919
Посоны, я правильно понял, что CMSIS это самый такой байтоебский способ погромирования, с прямым обращением к регистрам и прочее. HAL сродни ардуиновскому языку. А по SPL какой положняк?
Аноним 10/10/18 Срд 11:20:52 33986220
SPL.png (35Кб, 806x539)
806x539
>>339859
>Посоны, я правильно понял
Может правильно, а может и вовсе неправильно. Особенно подозрительно про "ардуиновский язык".
>А по SPL какой положняк?
В первом приближении это мало чем отличается от CMSIS. Вот например на картинке код одной из функций SPL. Как видно, берутся поля из структуры и практически напрямую запихиваются в регистры. Преимущество по сравнению с CMSIS в том что не нужно помнить какой бит в каком регистре и меньше шансов что-то пропустить и ошибиться.

ST постепенно отказываются от SPL, поэтому использовать SPL не стоит. Сейчас у них есть LL, которая мало чем отличается от SPL. Хотя может я в чем-то не прав, т.к. за STM наблюдаю издали, так сложилось что мне приходится использовать другие микроконтроллеры.
Аноним 10/10/18 Срд 11:35:32 33986421
>>339862
>Как видно, берутся поля из структуры
Дополню, а то вдруг не совсем понятно окажется. В эту структуру уже все вручную пихается. Получается что документацию в части регистров все равно, как правило, необходимо читать.
Аноним 10/10/18 Срд 13:31:14 33986922
>>339859
CMSIS - по сути просто набор определений регистров, чтоб тебе не пришлось в одном контроллере писать значения в TFIT1 и TFIT2, а в другом для той же настройки в TFIT3 и TFIT4, можно с помощью CMSIS в обоих случаях задавать через REGISTER_ZALYPI_1 и REGISTER_ZALYPI_2.

SPL - набор высокоуровневых либ, по сути надстройка над CMSIS, тебе уже не надо вписывать значения в регистры, а просто вызвать функцию с параметрами и она сама их впишет или прочитает. Это говно лишилось поддержки 4-5 лет назад и оставило после себя кучи говна примеров русскоязычного комьюнити, которые теперь бесполезны.

HAL - так как SPL было корявым поделием с кучей багов и проблем переноски кода с одного контроллера на другой, ST создали новый набор либ с учетом всех проебов и он оказался просто 10 из 10, если тебе надо написать что-то сложнее мигания лампочки по таймеру.

LL - низкоуровневый API, который ST выкатили относительно недавно, по сути является аналогом CMSIS, но лучше и полностью совместим с STM32Cube и HAL, тоесть можно использовать в проекте написанном на HAL в качестве оптимизированных вставок.

>>339849
>С аврками Протеус в этом деле все решает
Чет вообще вголос с этого, ведь есть AtmelStudio, купи только программатор нормальный и наслаждайся всеми плюшками бесплатной IDE от производителя микросхем.
Аноним 10/10/18 Срд 14:13:52 33987723
LL.png (81Кб, 818x1492)
818x1492
>>339869
>SPL - набор высокоуровневых либ, по сути надстройка над CMSIS
>LL - низкоуровневый API, который ST выкатили относительно недавно, по сути является аналогом CMSIS
Что-то ты странное пишешь. Вот на на картинке код функции из LL, выше код аналогичной функции из SPL. Как говорится, найди 10 отличий (кроме имен). Ну да, записываются чуть разные биты (назначение функций немного отличается). Еще вместо переменных tmpreg в LL используется макрос MODIFY_REG. Но существенных отличий нет.
>по сути является аналогом CMSIS
Вот только как видно из приведенного кода, LL это такая же надстройка над CMSIS как SPL. И LL ничуть не заменяет CMSIS, а наоборот его использует.
Аноним 10/10/18 Срд 14:32:23 33987824
>>339843
>Поморгаешь диолдами и положишь на полку. Анус ставлю.

Ну у меня есть конкретная, промышленная задача под STM. Нужно писать звук с АЦП и передавать в комп. Желательно минимум 8 каналов одновременно. Максимум 16 хотелось бы. Качество звука не волнует. Главное чтобы речь можно было разобрать.
Аноним 10/10/18 Срд 15:13:47 33988125
>>339829
>>339878
Сразу не понял что это именно ты, а то похоже тут пишут уже все вкатывальщики подряд.
Если не делать цифровую фильтрацию, то по вычислительным возможностям слишком жирно для твоих задач, впрочем это не плохо. Немного хуже то, что периферия там сложнее, будет сложнее освоить. Если цифровую фильтрацию не делать, то DSP инструкции тоже почти не пригодятся. Зато АЦП наоборот слабенький, но все равно должно хватить. Насколько я помню, у NXP были микроконтроллеры с более серьезными АЦП, но тебе это вроде не требуется.
Я правильно понял, ты писать на компе собираешься? Тогда суммарная скорость передачи на ПК будет небольшая - 16 бит на канал, частота дискретизации максимум 16 кГц и на 16 каналов - получается 4 МБит/с, это вообще ерунда.
Аноним 10/10/18 Срд 15:40:41 33988326
>Я правильно понял, ты писать на компе собираешься?

Да надо передавать звук из АЦП на комп и там писать

>получается 4 МБит/с, это вообще ерунда.

а COM порт на плате сможет пропустить столько? У него вроде максимальная скорость 128000 байт в секунду.
Аноним 10/10/18 Срд 16:13:11 33988927
>>339883
>а COM порт на плате сможет пропустить столько? У него вроде максимальная скорость 128000 байт в секунду.
На материнской плате компа? По разному, но я больше 921600 бод/с (это 737280 бит/с) я не встречал. А микроконтроллер вполне может несколько мегабит выдать.

У тебя два варианта - USB и Ethernet. На счет USB посоветовать ничего толком не могу, т.к. делал только HID и то давно. Знаю только что есть стандартный аудио класс, но не знаю можно ли в нем сделать столько каналов. Впрочем можно сделать составное USB устройство, т.е. чтобы компьютером виделось как несколько устройств.
Другой способ - это использовать FT232H или другие микросхемы от FTDI. Программно это намного проще, только для компа придется что-то придумывать. Сам я это не делал, но пользовался устройством где они применялись для передачи видео из ПЛИС.
С Ethernet все можно сделать совсем просто. Если воткнуть в сетевуху компа напрямую, то можно обойтись без TCP/IP и слать RAW пакеты. С TCP/IP тоже не сложнее, только требований к микроконтроллеру может быть чуть больше.
Аноним 10/10/18 Срд 23:01:55 33992428
>>339878
Есть же прекрасные мемс-микрофоны с полкой 20-20000 Гц, которые выдают уже цифровой выход правда, нужна обработка фильтром. Один такой даже стоит на stm32f4discovery
Аноним 10/10/18 Срд 23:04:36 33992529
>>339889
> С TCP/IP тоже не сложнее, только требований к микроконтроллеру может быть чуть больше.
Я поднимал lwip стек на m4, работал прекрасно с потоком примерно 10мбит/с. Главное, с буферами не мельчить
Аноним 11/10/18 Чтв 09:55:23 33997530
https://www.youtube.com/watch?v=VYhAGnsnO7w
Пссст, там Дейв создал хайп про китайские МК по 3 цента в розницу. На сайте производителя есть IDE и шиты на ангельском. Реально найти и купить программатор. Т.е. все есть, только разбирайся.
Фанатики STM8, по 40 центов за штуку, массово режут себе вены и вешаются.
STM32-господа тоже в легком недоумении от китайского чуда.
Но есть один подводный камень: все эти мк однократно программируемые.
Аноним 11/10/18 Чтв 10:20:24 33997831
>>339975
И это еще что, на том сайте есть китайские 16-битные ЦАПы по 30 центов и 16-битные АЦП по 50 центов... Вот это реально ШОК. Полагаю, ОП ёбнется под стол от охуения.
Аноним 11/10/18 Чтв 10:22:19 33997932
>>339975
Ну а смысл? Будто есть разница для единичных самоделок - 100 рублей или два рубля. Обычно в любом изделии, микроконтроллер это не самое дорогое, если это конечно не мигалка одним светодиодом. Или ты свои поделки делаешь сериями по тысяче штук?
Тематике треда тоже не соответствует. Это восьмибитный микроконтроллер, а тут тред про STM32.
Аноним 11/10/18 Чтв 10:29:28 33998133
>>339979
Ну, вообще в видео речь шла про массовое производство. Но народ все-равно набежал. Забавно, что вскоре после выхода видео все запас тех мк резко раскупили.
Тем не менее, магаз с китайскими брендами - это охуенная находка.
>>339978
>16-битные АЦП по 50 центов
24-битные, фикс
Есть даже дешевле.
Аноним 11/10/18 Чтв 10:48:25 33998234
>>339978
>Полагаю, ОП ёбнется под стол от охуения.
Полагаю ему будет без разницы. Тем более ты наверное про одноканальные или двухканальные пишешь. На диджикее PCM1681PWP с восемью каналами стоит 4 доллара поштучно.
А еще, внезапно, разрядность и частота дискретизации - это не единственные характеристики АЦП.

>>339981
>Тем не менее, магаз с китайскими брендами - это охуенная находка.
Ты свои самоделки делаешь сериями по несколько тысяч штук?
Аноним 12/10/18 Птн 09:52:22 34011735
Есть вопрос по теме. Предложили работу с программированием STM32 и обработке инфы с него на компе, построение графиков и прочее. Контора вроде занимается машиностроением. Глубокими знаниями по теме я не обладаю. До этого только занимался PIC-контроллерами на поверхностном уровне. И тут вопросы?
1)Тяжело ли новичку адаптироваться к сфере?
2)Актуально ли вообще в 2018 году вкатываться в встраивыемые системы?
3)Стоит ли заниматься этим, если вообще нет знаний по электронике дальше закона ОМА? Прогать под железо нравиться на отладочниках, но не нравиться разводка плат, расчёты электротехнические и прочее...
4)Насколько это творческая деятельность и насколько оплачиваемая? Куда может расти разработчик дальше?
Аноним 13/10/18 Суб 05:01:55 34025836
>>340117
Изучаю геймдев и параллельно веб-макакинг, ещё в параллель на онлайн-курсы ардуино записался. Там видно будет когда всё развалится.
Аноним 13/10/18 Суб 05:56:17 34025937
15363799073970.jpg (26Кб, 347x330)
347x330
>>340258
>онлайн-курсы ардуино записался
Аноним 13/10/18 Суб 12:47:02 34028738
>>339689
Ты крутой. А мои эстээмки повторили путь ардуины. Покупка - блинк - ящик.
Аноним 13/10/18 Суб 14:06:43 34029539
>>340117
>PIC-контроллерами
Изучал в институте ассемблер PIC18. Угадал?
Аноним 13/10/18 Суб 14:38:07 34029940
>>340287
У меня создалось впечатление, что он тоже особо плотно не занимается. Фотки одни и те же, готовых девайсов не показывал. Наверняка ошибаюсь, но впечатление создалось именно такое.
Аноним 13/10/18 Суб 15:54:37 34030341
>>339877
Ок ладно, согласен, LL не заменяет CMSIS, но нет особой разницы использовать чистый CMSIS или LL, который используется для инициализации периферии, а потом код пишется снова на CMSIS. Я например вообще HAL'о адепт, не понимаю почему его постоянно поливают грязью в ру комьюнити, при том что за рубежом все пользуются и довольны кроме небольшого количества заядлых байтодрочеров.
Аноним 13/10/18 Суб 16:04:23 34030442
>>340299
Та нечего показывать, разработал 2,5 девайса, собираю и продаю их (в течении пары дней паяю платы и подготавливаю корпуса, которые продаю за 1-2 недели, остальное время кинчики смотрю или играю - на жизнь и обновление пеки/смартфона каждые пару лет хватает), последний год ничего нового на STM32 не писал, кроме ковыряния всяких новых датчиков и дисплеев с али. Пару раз в месяц достаю с ящика ESP32 в ожидании того, что наконец-то запилили нормальные библиотеки для асинхронного веб сервера под ESP-IDF...
Аноним 13/10/18 Суб 17:13:30 34031143
27854781465368.jpg (59Кб, 900x616)
900x616
>>340304
Найс. Тоже, видимо, созрел до этого. Осталось только родить что-нибудь стоящее.
Аноним 14/10/18 Вск 20:47:03 34045344
>>340295
MPASM и поверх адаптированный под них СИ. Вроде во многих универах это распространённый набор. Правда умирающий.
Аноним 14/10/18 Вск 22:59:04 34048645
Аноним 16/10/18 Втр 02:56:07 34069346
>>340304
Что за девайсы? Может дашь каких советов, как найти свою нишу? Я хиккан-программист-фрилансер, имею средненькие знания электроники, паю махарайки для себя. Крутится идея создать стартап какой-то или типа того, в общем делать реальные вещи.
Аноним 16/10/18 Втр 08:03:04 34069947
>>340303
>Я например вообще HAL'о адепт, не понимаю почему его постоянно поливают грязью в ру комьюнити, при том что за рубежом все пользуются и довольны кроме небольшого количества заядлых байтодрочеров.

Потому что кроилово на себестоимости и вытекающая из него байтооптимизация головного мозга.
Аноним 16/10/18 Втр 17:02:57 34078348
>>340486
>>340693
Не хочу палить то что я делаю, потму что довольно востребованная херовина среди обычных людей и продается изи.

Двигайся в направлении бытовых систем автоматизации, которые будут дешевые по себестоимости и при этом не будет особо аналогов, кроме китайского говна с али. Например простой контроль температуры и влажности при помощи тэна/лампы и увлажнителя/осушителя - он лежит в основе инкубаторов, сушилок, хранилищ продуктов, климат контроля в доме. Добавляешь к этому свои фишки которые нужны пользователям или которых еще никто не делал и у тебя уже несколько устройств для разной целевой аудитории но с одинаковым принципом работы и элементной базой.
Аноним 20/10/18 Суб 17:06:16 34141249
image.png (84Кб, 563x513)
563x513
Раз уж такой тред, спрошу: пытаюсь вкатиться в STM32F407VG, хочу отправить пару байтиков по USART. Но проблема в том, что нихуя не работает.

https://ideone.com/tUfssc

Что делаю:

17-30: инициализирую периферию
32: подключаю USART6_TX к PC6
34-42: светодиодик для индикации
44-50: настройка PC6 (AF)
52-56: инициализация USART6
58-64: шлю байтик

Так вот, светодиод моргает, но PC6 как сидит в +3В, так и сидит, никаких данных не передает. В чем косяк может быть? Собираю arm-gcc-none-eabi в linux x64, шью через openocd.
Аноним 20/10/18 Суб 18:16:38 34141850
>>341412
>никаких данных не передает
Осциллографом или логическим анализатором смотрел? Может у тебя скорость неправильная?

Возможно у тебя проблема из-за неправильного определения тактовой частоты. Я давно ничего не делал с STM32, могу ошибаться. Если я правильно помню, то в дефолтном startup файле вызывается функция SystemInit (это не только у STM32, кажется это требование CMSIS), которая включает тактирование от кварца. Функция USART_Init, для того чтобы правильно посчитать делители, определяет тактовую частоту с помощью еще одной функции, которая использует дефайны с частотами генераторов, которые определяются (если не были определены) в stm32f4xx.h.

Наверное тебе следует глобально определить HSE_VALUE. Ну и еще ты зря используешь SPL.
Аноним 20/10/18 Суб 19:31:02 34142951
image.png (95Кб, 737x525)
737x525
image.png (20Кб, 721x595)
721x595
>>341418
Осциллографом, пик 2. Данные должны иди через канал 1 (желтый) сразу после включения светодиода (канал 2, синий). Тактовая частота вроде верно настроена, пик 1.
Аноним 20/10/18 Суб 19:50:30 34143152
image.png (150Кб, 1058x534)
1058x534
>>341418
>>341429
Я напал на след и, кажется, ты прав. Почему-то все частоты кроме SYSCLK стоят в 0.
Аноним 20/10/18 Суб 20:03:35 34143753
image.png (23Кб, 207x442)
207x442
Все, решилась проблема. В USART_Init вызывалась RCC_GetClocksFreq, которая лезла в глобально объявленный массив APBAHBPrescTable. А там был мусор. Убрал модификаторы volatile и все заработало. Теперь вопрос к знатокам - какого хуя?
20/10/18 Суб 20:04:23 34143854
image.png (19Кб, 213x451)
213x451
APBAHBPrescTable здорового человека.
Аноним 20/10/18 Суб 20:52:24 34144055
>>341437
>>341438
Это скорее вопросы по стандарту Си или к компилятору. Разве оно там не static volatile const в результате получается?
Попробуй через objdump -t посмотреть в каком сегменте оказывался этот массив.
20/10/18 Суб 21:11:22 34144156
image.png (25Кб, 676x114)
676x114
>>341440
я немного ошибся, массивов два, один объявлен статически в XXX_rcc.c (APBAHBPrescTable), второй - глобально в system_XXX.c (AHBPrescTable). если вернуть все как было, то AHBPrescTable попадает в секцию .data в бинарнике.
Аноним 20/10/18 Суб 21:12:11 34144257
>>341441
Ах да, в рабочем состоянии он в секции .text
Аноним 20/10/18 Суб 22:27:04 34144758
>>341442
>>341441
Возможно ты это и так знаешь, но на всякий случай скажу. Очевидно, что секция .data должна инициализироваться в самом начале из флешки. Код этой инициализации находится в startup файле. И в скрипте линкера это тоже должно быть отражено.
Если все переменные из секции .data не инициализируются, то это может быть из-за неправильного startup или скрипта линкера.
Аноним 13/11/18 Втр 00:16:35 34508559
Full HD 1080p.jpg (2Кб, 300x300)
300x300
Хватит ли ресурсов контроллера, чтобы захватывать и слегка обрабатывать (смотреть среднюю яркость и превалирующий цвет) цветное аналоговое видео PAL или NTSC?
Аноним 13/11/18 Втр 14:43:37 34516160
>>345085
>чтобы захватывать и слегка обрабатывать
raspberry pi zero w
Аноним 13/11/18 Втр 15:57:37 34517261
>>345085
Цвет и яркость по всему кадру? Или по краям экрана? Мне кажется что микроконтроллер тут лишний, хватит какой-нибудь телевизионной микросхемы TDA для выделения цветоразностных сигналов. Для получения средней яркости так вообще достаточно лишь пропустить привязанный по уровню видеосигнал через RC-цепочку.
На микроконтроллере выделить цветоразностные сигналы должно быть затруднительно, как минимум потребуется довольно высокая частота дискретизации.
243243 5464465 13/11/18 Втр 18:47:24 34518962
342432
Аноним 13/11/18 Втр 19:20:15 34520063
>>345172
Спасибо. Немного не так выразился. Нужно разбить кадр на участки квадратно-гнездовым способом (т.е. что-то типа таблицы) и определить средние цвет и яркость каждого участка (ячейки таблицы).
Аноним 13/11/18 Втр 21:09:34 34523864
>>345200
Типичная задача для плис
Аноним 13/11/18 Втр 21:27:12 34525165
>>345238
Ерунду выдумываешь. Достаточно лишь получить цветоразностные сигналы на какой-нибудь телевизионной микросхеме, пропустить их через ФНЧ (в соответствии с ячейками таблицы) и в нужные моменты времени запустить АЦП. Длительность строки 64 мкс, даже на ардуине можно сделать запуск АЦП в нужный момент, если конечно ячейки не слишком мелкие.
Это скорее задача для компьютера (может одноплатника) с easycap для видеозахвата.
Аноним 14/11/18 Срд 07:07:20 34531166
.jpg (1129Кб, 2048x1232)
2048x1232
>>345251
>на какой-нибудь телевизионной микросхеме
Как-то так? Нет уж, лучше на плис.
Аноним 14/11/18 Срд 23:06:28 34538467
Так, я тут заказал простейшую stm32f103c8-базед плату и ст-линк в2 прошивальщик и надеюсь на то, что первое время поучусь без обвязки контроллера. Нормально жи? Я просто хочу с ним пообщаться с пекарни типа "посчитай мне корень из пи". Мне кажется, что после традиционного погромирования так проще будет.
Я вообще адекватно задачи ставлю по вкату?
Потом, если чё, докуплю макет за 200 рублёв с диодами разноцветными.
Аноним 15/11/18 Чтв 14:34:41 34552668
>>345384
Думаю, что это гораздо адекватнее чем покупать пачку модулей или всякие демоплаты типа дискавырей. Лично мне идеальным видится вариант покупки под конкретную задумку, когда сначала придумываешь охуительный велосипед, а затем подбираешь под него железо, которое и осваиваешь в процессе.
мимо
Аноним 15/11/18 Чтв 17:58:36 34554769
>>345526
>придумываешь охуительный велосипед
и начинаешь ЛУТить до дыму, запарывать детальки, пока Дискавери-боярин занимается написанием кода.
Аноним 15/11/18 Чтв 18:06:10 34554970
>>345547
Да, хотеть писать код.
Так что, в принципе кроме стлинка ничего не надо?
Вернуть на комп результат вычислений и бенчить МИПСы можно будет?
Аноним 15/11/18 Чтв 18:52:18 34556371
>>345547
>Дискавери-боярин занимается написанием кода.
Ты хотел сказать написанием хеллоуворлдов?

>>345549
Стоит еще взять переходник USB-UART.
Аноним 15/11/18 Чтв 19:04:37 34556672
>>345547
>Дискавери-боярин занимается написанием кода
Велосипед потом поедет по назначению, а дискавери отправится в небытие. Это примерно как делать детей или дрочить.
Аноним 15/11/18 Чтв 19:28:52 34557073
1542113727-352f[...].jpeg (41Кб, 700x438)
700x438
>>345566
>Велосипед потом поедет в помойку,
а Дискавери-боярин будет отлаживать код вывода на дисплей и работу с памятью. Данную связку велосипедо-нищенка не сможет спаять своими кривыми ручонками и забросит затею. А почтенный Дискавери-господин закончит написание кода, отрисует схему своего йоба-устройства, спокойно сочинит печатку и закажет ее изготовление китайским мастерам. Затем спаяет свое устройство и зальет в него отлаженный и рабочий код.

Аноним 15/11/18 Чтв 19:38:07 34557174
>>345570
>дисплей и работу с памятью
То есть во всех твоих самоделках, кроме микроконтроллера, дисплея, памяти и может быть батарейки, ничего более существенного нет?
Аноним 15/11/18 Чтв 19:38:55 34557275
7546459748676479.jpg (55Кб, 589x545)
589x545
>>345570
Так, а что с дискавырей станет по итогу?
>нищенка
Щас бы всерьёз думать, что у кого-то нет денег на дисковырь.
Аноним 15/11/18 Чтв 20:07:26 34557876
>>345571
>ничего
Ну чому ты так? Есть памяти 8Мб, есть GPRS-модем, есть порт Ethernet, 7" touch-LCD 800х640
Аноним 15/11/18 Чтв 20:53:42 34559877
>>345578
Ну а смысл делать такое на STM32? Не проще ли и дешевле взять одноплатный компьютер?
Толку от дискавери не так много. Допустим захочется отмакетировать синтезатор частоты для радиоприемника или часы на неонках, сильно поможет дискавери по сравнению с простейшей платой? Или взять к примеру задачу ОП-а, ему будет какой-то толк от дискавери только если он решит использовать ethernet.
Аноним 16/11/18 Птн 08:03:54 34569678
>>345563
> usb-uart
Пичаль, а что тогда вообще st-link v2 делает? Я читал, он и шьёт, и дебажит.
Т.е. доступ к памяти МК у него есть.
Так почему бы через него не возвращать результаты?
Аноним 16/11/18 Птн 09:16:22 34569979
>>345696
>Я читал, он и шьёт, и дебажит.
>Т.е. доступ к памяти МК у него есть.
Это все верно. Но printf-ами удобнее срать в UART. В отладчик тоже можно, например через SWO или semihosting, но по моему это не так удобно. Так что USB-UART дополняет отладчик.
Аноним 16/11/18 Птн 13:49:21 34571180
>>345699
Можешь нищепример кинуть?
Просто плата 120, отладчик столько же, а эти уарты нахожу по 800.
Проще тогда борду докупить за 200 и моргать диодами, так там ещё фоторезюки в комплекте.
Аноним 16/11/18 Птн 13:50:07 34571281
>>345711
> борду за 200
Сиранул, це макет, нувыпонели.
Аноним 16/11/18 Птн 14:35:36 34571882
Screenshot2018-[...].png (430Кб, 1080x1920)
1080x1920
Screenshot2018-[...].png (558Кб, 1080x1920)
1080x1920
>>345711
Эт что ты за 800 нашел?
Пик1 можно брать, или на chg340 что-то, но лучше пик2 - им можно как gpio/i2c/spi over usb пользоваться.
Аноним 16/11/18 Птн 14:52:57 34572183
Аноним 27/11/18 Втр 00:40:41 34714684
shutterstock909[...].jpg (17Кб, 300x225)
300x225
Пагни, а можно ли сделать на платке stm32f103c8t6 что-то вроде SPI сниффера или примитивный логический анализатор? Чтобы просто послушать SPI.
Аноним 27/11/18 Втр 06:33:06 34715885
>>347146
>примитивный логический анализатор
На Хабаре была статья про логаналайзер на стм32ф4ххх, думаю можно адаптировать под твои нужды. Гугл ит!
Аноним 27/11/18 Втр 07:44:33 34716186
>>347146
>SPI
>serial pereprherial interface
>SERIAL
Ну почему в вопросе опять ответ, а задавший его этого не видит? Конечно можно! Главное не мешай ему работать и всё. Тебе надо слушать MOSI, MISO по тактам через SCK.
Аноним 27/11/18 Втр 07:50:27 34716487
154110682114936[...].jpg (180Кб, 672x1000)
672x1000
>>347158
У него там осциллограф с аналоговой частью. Мне просто надо посмотреть, что стм8 передает модулю нрф24.
Аноним 27/11/18 Втр 08:52:24 34716788
ra - STM32 тред[...].png (1796Кб, 1289x780)
1289x780
>>345311
Где такой булыжник купить? Помню батя паял телевизоры и постоянно тыкал паяльником в него. А как он называется не знаю. Ищу его лет 10 уже.
Аноним 27/11/18 Втр 10:23:18 34717889
Аноны, есть STM32F103 на Cortex M3, есть SSD1306. как реализовать прошивку, чтобы вывести на дисплей элементарное анимированное изображение с ПК?
Аноним 27/11/18 Втр 10:47:41 34718190
Аноним 27/11/18 Втр 11:03:40 34718291
>>347161
>Тебе надо слушать MOSI, MISO по тактам через SCK.
Я только вчера с ардуины слез. Всё в теории выглядит довольно очевидно. Но где посмотреть пример кода для стм?
Аноним 27/11/18 Втр 11:10:39 34718392
Аноним 27/11/18 Втр 11:12:30 34718493
>>347164
А что ещё может STM32 передавать nRF24I01+ , кроме команд и данных? Или тебе лень проверять ВЕСЬ ЭФИР, НА ВСЕХ АДРЕСАХ И КАНАЛАХ? А ведь там 5 байт на адрес, лол.
Аноним 27/11/18 Втр 12:38:50 34719194
Аноним 27/11/18 Втр 17:39:30 34726895
>>339005 (OP)
Аноны, купил на али stm32f4.., до этого только с авр дело имел.
Битый час уже пытаюсь лед зажечь. Что я делаю не так? https://pastebin.com/K5FH5SCr
Аноним 27/11/18 Втр 18:15:23 34727496
>>347268
Не игрался с 40x серией, но ради интереса попробую помочь.
1) Вроде бы светодиоды на той плате сидят начиная с 12. Т.е. ты должен написать: GPIOD->MODER |= GPIO_MODER_MODE12_0;
2) Для светодиода можешь не трогать GPIOD->OSPEEDR
3) GPIOD->PUPDR тоже, ибо там 0 должны быть
4) Ну и далее уже GPIOD->ODR = GPIO_ODR_ODR12; (вроде, так, но ты понял в общем).
5) Если светодиод не зажёгся, возможно, следует писать 0 для зажигания(Это зависит от того где он сидит - на минусе или плюсе).
Аноним 27/11/18 Втр 18:24:47 34727597
>>347268
Для начала выкинул бы строчку GPIOD->OTYPER &= ~(GPIO_OTYPER_OT0);
Заглянул в документацию (ни камня, ни название доски) что висит на выводе PD0 и чем зажигать светодиод (есть вариант что его надо нулем зажигать). Без схемы ловить нечего.
Аноним 27/11/18 Втр 19:41:53 34728598
STM32F407ZET6de[...].jpg (548Кб, 1500x1000)
1500x1000
>>347274
>>347275
Доска на пике.
Использую свой внешний LED, хочу его через пин зыжечь, так что должно с любого пина работать, или я ошибаюсь? Собираю из под линукса с помощью arm-none-eabi-gcc, флешу через st-link v2. Флешится всё без проблем (по крайней мере так говорит мне программер). Говорит ли это о том, что я правильно компилирую? Может я там флагов каких-нибудь левых понапихал или еще чего...
Аноним 27/11/18 Втр 19:50:10 34728699
>>347285
Вот мэйкфайл вдогонку pastebin.com/HaR59pbT
Аноним 27/11/18 Втр 19:51:48 347287100
>>347285
Очевидно же, что если ты написал: "GPIOD->MODER |= GPIO_MODER_MODE0_0;" и так дальше всё, то у тебя светодиод будет зажигаться только от pd0.
Аноним 27/11/18 Втр 19:56:25 347288101
led4.png (3Кб, 189x184)
189x184
>>347285
Попробуй перебить свой код на портА вывод 6 или 7. Обрати внимание - светодиоды зажигаются НУЛЕМ, те по идее сразу засветится после строчки "GPIOA->MODER |= GPIO_MODER_MODE6_0;".
Кейл говорит код компилится в такой набор инструкций. По ним можно примерно сравнить компилируемость кода.
;;;3 int main(void)
000000 4813 LDR r0,|L1.80|
;;;4 {
;;;5
;;;6 RCC->AHB1ENR |= RCC_AHB1ENR_GPIODEN;
000002 6800 LDR r0,[r0,#0]
000004 f0400008 ORR r0,r0,#8
000008 4911 LDR r1,|L1.80|
00000a 6008 STR r0,[r1,#0]
;;;7 GPIOD->MODER |= GPIO_MODER_MODE0_0;
00000c 4811 LDR r0,|L1.84|
00000e 6800 LDR r0,[r0,#0]
000010 f0400001 ORR r0,r0,#1
000014 490f LDR r1,|L1.84|
000016 6008 STR r0,[r1,#0]
;;;8 GPIOD->OSPEEDR |= (GPIO_OSPEEDR_OSPEED0);
000018 480e LDR r0,|L1.84|
00001a 3008 ADDS r0,r0,#8
00001c 6800 LDR r0,[r0,#0]
00001e f0400003 ORR r0,r0,#3
000022 490c LDR r1,|L1.84|
000024 3108 ADDS r1,r1,#8
000026 6008 STR r0,[r1,#0]
;;;9 GPIOD->OTYPER &= ~(GPIO_OTYPER_OT0);
000028 1f08 SUBS r0,r1,#4
00002a 6800 LDR r0,[r0,#0]
00002c f0200001 BIC r0,r0,#1
000030 1f09 SUBS r1,r1,#4
000032 6008 STR r0,[r1,#0]
;;;10 GPIOD->PUPDR &= ~(GPIO_PUPDR_PUPD0);
000034 4807 LDR r0,|L1.84|
000036 300c ADDS r0,r0,#0xc
000038 6800 LDR r0,[r0,#0]
00003a f0200003 BIC r0,r0,#3
00003e 4905 LDR r1,|L1.84|
000040 310c ADDS r1,r1,#0xc
000042 6008 STR r0,[r1,#0]
;;;11
;;;12 GPIOD->ODR = 1;
000044 2001 MOVS r0,#1
000046 4903 LDR r1,|L1.84|
000048 3114 ADDS r1,r1,#0x14
00004a 6008 STR r0,[r1,#0]
;;;13 while (1) {
00004c bf00 NOP
|L1.78|
00004e e7fe B |L1.78|
;;;14
;;;15 }
;;;16 }
ENDP
Аноним 27/11/18 Втр 20:11:26 347289102
>>347288
Безрезультатно. Есть предположение, что борда поломаная.
Аноним 27/11/18 Втр 20:16:53 347293103
>>347289
Попробуй залить этот кекс (светодиод PA6 на плате). Его исходник (включая стартап код):
#include <stm32f407xx.h>
int main(void)
{
RCC->AHB1ENR |= RCC_AHB1ENR_GPIOAEN;
GPIOA->MODER |= GPIO_MODER_MODE6_0;
GPIOA->OSPEEDR |= (GPIO_OSPEEDR_OSPEED6);
GPIOA->ODR = 0x0000;
while (1) {
}
}
(в состоянии же скопипастить текст ниже в файл и прошить его?)
:020000040800F2
:10000000600600200D020008150200081702000813
:10001000190200081B0200081D0200080000000071
:100020000000000000000000000000001F020008A7
:100030002102000800000000230200082502000839
:1000400027020008270200082702000827020008EC
:1000500027020008270200082702000827020008DC
:1000600027020008270200082702000827020008CC
:1000700027020008270200082702000827020008BC
:1000800027020008270200082702000827020008AC
:10009000270200082702000827020008270200089C
:1000A000270200082702000827020008270200088C
:1000B000270200082702000827020008270200087C
:1000C000270200082702000827020008270200086C
:1000D000270200082702000827020008270200085C
:1000E000270200082702000827020008270200084C
:1000F000270200082702000827020008270200083C
:10010000270200082702000827020008270200082B
:10011000270200082702000827020008270200081B
:10012000270200082702000827020008270200080B
:1001300027020008270200082702000827020008FB
:1001400027020008270200082702000827020008EB
:1001500027020008270200082702000827020008DB
:1001600027020008270200082702000827020008CB
:1001700027020008270200082702000800000000EC
:10018000270200082702000800F002F800F02EF80D
:100190000AA090E8000C82448344AAF10107DA45E2
:1001A00001D100F023F8AFF2090EBAE80F0013F006
:1001B000010F18BFFB1A43F001031847B0010000FC
:1001C000C00100000023002400250026103A28BFAB
:1001D00078C1FBD8520728BF30C148BF0B607047B9
:1001E0001FB500F0BDF81FBD10B510BD00F031F80F
:1001F0001146FFF7F5FF00F099F800F04FF803B44F
:10020000FFF7F2FF03BC00F057F8000009488047F1
:1002100009480047FEE7FEE7FEE7FEE7FEE7FEE7E8
:10022000FEE7FEE7FEE7FEE704480549054A064B00
:1002300070470000C9020008890100086000002022
:1002400060060020600200206002002070477047B6
:100250007047754600F02CF8AE46050069465346D7
:1002600020F00700854618B020B5FFF7DDFFBDE898
:1002700020404FF000064FF000074FF000084FF00D
:10028000000B21F00701AC46ACE8C009ACE8C0099E
:10029000ACE8C009ACE8C0098D46704710B504460B
:1002A000AFF300802046BDE81040FFF7A8BF000074
:1002B000004870470000002001491820ABBEFEE74F
:1002C00026000200704700001448006840F47000E7
:1002D000124908601248006840F0010010490860A7
:1002E00000200F49083108600D4800680D4908409A
:1002F0000B4908600C48091D0860081F006820F4BD
:100300008020091F0860002005490C3108604FF06B
:1003100000600249803908607047000088ED00E005
:1003200000380240FFFFF6FE103000240A48006843
:1003300040F00100084908600848006840F4805017
:10034000064908600846806840F4405088600020F4
:10035000486100BFFEE70000303802400000024064
:100360004FF04070E1EE100A704700007C03000877
:0C0370000000002060060000C40100082E
:040000050800018965
:00000001FF

Аноним 27/11/18 Втр 20:27:59 347295104
123.png (9Кб, 322x159)
322x159
>>347293
Та плата, что на прошлом моём пике, оказалась чуть другой. Нашел схему своей. Можешь для PF9 хекс запилить, пожалуйста? Прошил своим - опять ноль эмоций.
Аноним 27/11/18 Втр 20:34:04 347296105
>>347295
RCC->AHB1ENR |= RCC_AHB1ENR_GPIOFEN;
GPIOF->MODER |= GPIO_MODER_MODE9_0;
GPIOF->OSPEEDR |= (GPIO_OSPEEDR_OSPEED9);
GPIOF->ODR = 0x0000;

:020000040800F2
:10000000600600200D020008150200081702000813
:10001000190200081B0200081D0200080000000071
:100020000000000000000000000000001F020008A7
:100030002102000800000000230200082502000839
:1000400027020008270200082702000827020008EC
:1000500027020008270200082702000827020008DC
:1000600027020008270200082702000827020008CC
:1000700027020008270200082702000827020008BC
:1000800027020008270200082702000827020008AC
:10009000270200082702000827020008270200089C
:1000A000270200082702000827020008270200088C
:1000B000270200082702000827020008270200087C
:1000C000270200082702000827020008270200086C
:1000D000270200082702000827020008270200085C
:1000E000270200082702000827020008270200084C
:1000F000270200082702000827020008270200083C
:10010000270200082702000827020008270200082B
:10011000270200082702000827020008270200081B
:10012000270200082702000827020008270200080B
:1001300027020008270200082702000827020008FB
:1001400027020008270200082702000827020008EB
:1001500027020008270200082702000827020008DB
:1001600027020008270200082702000827020008CB
:1001700027020008270200082702000800000000EC
:10018000270200082702000800F002F800F02EF80D
:100190000AA090E8000C82448344AAF10107DA45E2
:1001A00001D100F023F8AFF2090EBAE80F0013F006
:1001B000010F18BFFB1A43F001031847B8010000F4
:1001C000C80100000023002400250026103A28BFA3
:1001D00078C1FBD8520728BF30C148BF0B607047B9
:1001E0001FB500F0C1F81FBD10B510BD00F031F80B
:1001F0001146FFF7F5FF00F099F800F04FF803B44F
:10020000FFF7F2FF03BC00F057F8000009488047F1
:1002100009480047FEE7FEE7FEE7FEE7FEE7FEE7E8
:10022000FEE7FEE7FEE7FEE704480549054A064B00
:1002300070470000C9020008890100086000002022
:1002400060060020600200206002002070477047B6
:100250007047754600F02CF8AE46050069465346D7
:1002600020F00700854618B020B5FFF7DDFFBDE898
:1002700020404FF000064FF000074FF000084FF00D
:10028000000B21F00701AC46ACE8C009ACE8C0099E
:10029000ACE8C009ACE8C0098D46704710B504460B
:1002A000AFF300802046BDE81040FFF7A8BF000074
:1002B000004870470000002001491820ABBEFEE74F
:1002C00026000200704700001448006840F47000E7
:1002D000124908601248006840F0010010490860A7
:1002E00000200F49083108600D4800680D4908409A
:1002F0000B4908600C48091D0860081F006820F4BD
:100300008020091F0860002005490C3108604FF06B
:1003100000600249803908607047000088ED00E005
:1003200000380240FFFFF6FE103000240C48006841
:1003300040F020000A4908600A48006840F4802024
:100340000849086007480830006840F44020054923
:1003500008310860002003491431086000BFFEE73F
:1003600030380240001402404FF04070E1EE100AB5
:1003700070470000840300080000002060060000B1
:04038000C4010008AC
:040000050800018965
:00000001FF
Аноним 27/11/18 Втр 20:37:15 347297106
>>347296
Спасибо тебе, анон, большое, но не работает. На сегодня брошу это дело.
Аноним 27/11/18 Втр 20:57:13 347299107
f429.jpg (1642Кб, 3264x2448)
3264x2448
>>347297
На 429 камне стартанул код. Здесь PG14 зажигается единицей. Пикрил горит красным и сеанс отладки за заднем фоне. Мне кажется как-то не так прошиваешь хекс или страницы памяти не чистишь. В самом дубовом варианте попробуй через uart прошить - кажется бут0=1 , бут1=0 и через какую-то утилиту от st можно по компорту заливать прошивку. Нужен преобразователь уровней, напрямую к компорту подключать нельзя. Нужен как минимум usb-uart ttl преобразователь.
Аноним 27/11/18 Втр 21:00:19 347300108
>>347296
Вы на каком-то неправильном наречии базарите с контроллером. Используйте HAL и не ебите себе моск
Аноним 27/11/18 Втр 21:02:32 347302109
>>347297
Есть один вариант на проверку..
"install: main.bin
st-flash write main.bin 0x8000000"
Обращаем внимание - тут бин файл указываем, а тебе кидался хекс. Использовал внешнюю программу чтобы из HEX получить BIN? Кажется в этом косяк. Так и гуглить hex2bin.exe - старая консольная программка и обратная ей bin2hex.
Аноним 27/11/18 Втр 21:10:34 347303110
Аноним 27/11/18 Втр 21:12:05 347304111
>>347302
а в хекс через всё тот же arm-none-eabi-objcopy, только с ihex вместо binary
Аноним 27/11/18 Втр 21:17:59 347305112
>>347303
> st-flash хексы тоже кушает
"Flash binary files to arbitrary sections of memory, or read arbitrary addresses of memory out to a binary file." - четко же написано что двоичные файлы кушает, а шестнадцатеричные - не файлы, а размеры и смещения.

Из лога компиляции
linking...
Program Size: Code=496 RO-data=408 RW-data=0 ZI-data=1632
FromELF: creating hex file...
На диске test.hex занимает 2600 байт, а не полкилобайта. Преобразуй HEX в BIN и еще раз попробуй.
Аноним 27/11/18 Втр 21:23:04 347306113
>>347303
Еще мелочь - (как минимум в Keil) - после заливки прошивки (flash->download) ничего не происходит до тех пор, пока руками камень не перезагрузишь. Те или ресет на нем нажать или по питанию передернуть. Ребут после заливки делал?
Аноним 28/11/18 Срд 00:54:08 347318114
Кста, раз уж тут про хэллоуворды спрашивают, я тоже спрошу. Есть ли разница в форме импульсов ШИМ при использовании таймера и простого ногодрыга? Реально ли на stm32f103c8t6 разогнаться на частоту, хотя бы 2-х мегагерц? В регистрах то максимальная скорость 50мгц проскакивает, но вот что она значит и не будут ли фронты завалены?
Аноним 28/11/18 Срд 06:06:11 347330115
mco.png (17Кб, 602x253)
602x253
>>347318
> Есть ли разница в форме импульсов ШИМ при использовании таймера и простого ногодрыга?
Что GPIO, что Timer используют одинаковый тип выхода - Push-Pull. Разницы нет.
> не будут ли фронты завалены?
Зависит от емкости того, что подключено к выводу. Чем больше емкость, тем больше будут завалены и искажены. Как вариант можно взять только один вывод - MCO, на который выводить системную тактовую частоту. Настроек нет, доступен только меандр и с жестко заданной частотой.
Аноним 28/11/18 Срд 07:31:08 347339116
1.png (2Кб, 287x76)
287x76
28/11/18 Срд 14:12:25 347361117
>>339689

Привет, напиши мне в личку или на почту tyler.harper, есть тема.
28/11/18 Срд 14:13:52 347362118
>>347361

На эту почту tyler.harper@mail.ru
Аноним 28/11/18 Срд 15:43:28 347367119
Лень гуглить@Спрошу анона
STM32F407. На какие пины можно выставлять прерывания? Если на все, то как сконфигурировать прерывания? У меня все кроме PA0 не дают повесить на себя прерывания в кьюбе.
Аноним 28/11/18 Срд 15:56:15 347370120
>>347367
По даташиту на (почти) любую ногу можно повесить. Единственное что есть аццкая подстава - нельзя получить более 16 внешних прерываний, тк прерывание от PA6 PB6 PC6.. Px6 - это условно одно и то же прерывание и слушается только один порт. Что бы получить все 16 прерываний - нужны разные выводы портов от 0 до 15, сам порт (A-H) не важен (те например PA9 PB4 PC0 PG5.. - уже 4 прерывания).
Аноним 28/11/18 Срд 16:19:56 347376121
>>347370
Забей на кукареканья шизиков-HALовцев, CMSIS и подобных - тебе нужны регистры:
SYSCFG_EXTICRх - задается какой порт слушается и какой вывод (всего 4 регистра, в каждом 4 линии - нужно указывать с какого порта слушать)
EXTI_IMR - разрешить прерывания с линии (0-15)
EXTI_RTSR - какие линии (0-15) должны вызывать прерывание по ВОСХОДЯЩЕМУ фронту (0->1)
EXTI_FTSR - какие линии (0-15) должны вызывать прерывание по НИСХОДЯЩЕМУ фронту (1->0)
EXTI_PR - записью 1 сбрасывать флаг сработки прерывания (из обработчика или из основного цикла, если просто смотришь - произошло прерывание или нет).

Регистрация/разрешения прерывания в NVIC NVIC_EnableIRQ(EXTI1_IRQHandler); - На первые 5 прерываний (0-4) индивидуальные обработки, далее сгруппированы по 5 штук EXTI9_5_IRQHandler и EXTI15_10_IRQHandler.
Глобальное разрешение прерываний __enable_irq();
Настойки GPIO не трогать, они должны оставаться входами (подтяжка по желанию).
Аноним 28/11/18 Срд 16:55:20 347384122
Нашёл в кубе как выставить прерывания на пины, тупанул изначально.
Мне нужно записывать сигнал, в тот момент когда он изменяется на пинах. Попробовал пока послать на него I2C, но почему-то либо вешается ардуино, с которой посылаю, либо просто прерывания не срабатывают.
>>347376
Вроде бы я и понял, что ты мне описал, а вроде бы и нет.
Как понять какая линия к какому входу подведет и чем это отличается от 16 линий, про которые сказал >>347370-анон?
Могу ли я назначить прерывания более чем на 16 пинов, и если могу, то при пересечении двух пинов с противоположными подтяжками/уровнями сигнала (лог. единица и ноль) на одной линии, что произойдёт?
Аноним 28/11/18 Срд 18:31:40 347389123
>>347384
> записывать сигнал, в тот момент когда он изменяется на пинах
Обоссанное крылатое школололо с пердуино треда?
Настаивай сработку прерывания по обоим фронтам. Хоть и большая частота у STM, можно соснуть ( https://habr.com/post/161617/ ). Вопрос интересный, может поищу можно ли как-то через DMA ловить.

> Назначить прерывания более чем на 16 пинов
Нет, тк регистры SYSCFG_EXTICRх не дадут - там только выбор порта (A-..H) для конкретной линии (0-15) прерывания. Невозможно назначить прерывание на одноциферные(? незнаю как сказать) выводы разных портов - те одновременно ловить прерывания по линиям например PD6 и PH6 или PA6 или PC6 - невозможно, будет слушаться только что-то одно.
> при пересечении двух пинов с противоположными подтяжками/уровнями сигнала
Читай выше - это невозможно. Прерывание будет приходить только с того порта, который указан в SYSCFG_EXTICRх, другой порт никак не будет влиять.

Задавай лучше односложные вопросы - на них проще отвечать.
Если брать пердуину (в частности AVR микроконтроллеры) - на древних версиях было всего 2(3) прерывания по уровню (INT0 INT1 INT2(асинхронное)) - 2 жестко выделенных вывода с настраиваемыми фронтами и 2 обработчика прерывания. На версиях посвежее появилась фича - pin change interrupt - оно НЕ настраиваемое по фронтам, только задается на изменение (любое 1->0 0->1) и какие биты порта, на все 8 бит порта один обработчик. В STM есть 5 "выделенных" обработчиков прерываний (0-4) и 2 групповых по 5 выводов, оказавшись в которых нужно смотреть по какой линии произошло прерывание (в отличие от 0-4, которые однозначно говорят по какой линии было прерывание).
Если прям хочется всю шину снифать - мне кажется нужно CPLD ставить на входе. Завести на нее шину, поставить конвейер из 2 D триггеров с компаратором, которым ловить изменения на входе и достаточно будет всего одного прерывания, которое будет оповещать об изменении любого бита на шине, а не 16 обработчиков прерываний на каждую линию. Если почти сразу 2 прерывания сработает - можешь соснуть, тк пока просрешся на первое есть шанс потерять данные из второго прерывания (см ссылку выше).
это один и тот же анон
Аноним 28/11/18 Срд 19:06:22 347391124
Нашлось что-то в виде AN4666 от ST.
AN4666 Application note Parallel synchronous transmission using GPIO and DMA
https://www.st.com/content/ccc/resource/technical/document/application_note/7a/88/df/e3/d3/36/40/29/DM00169730.pdf/files/DM00169730.pdf/jcr:content/translations/en.DM00169730.pdf

Ни ивенты, ни прерывания к DMA явно не привязать. Fail~.
Интересно послушать как собрались делать логический анализатор на STM32.
Аноним 28/11/18 Срд 19:33:14 347396125
Аноним 28/11/18 Срд 20:41:13 347412126
>>347391
>Интересно послушать как собрались делать логический анализатор на STM32.
Помигали светодиодом и расходимся.
Аноним 29/11/18 Чтв 00:09:48 347439127
>>347306
Анонче, спасибо тебе за твоё вчерашнее время. Прошивал без стартап файла. Даже не знал, что он нужен был. Вот уж не думал, что буду когда-нибудь еще буду так радоваться загоревшемуся леду. Пошёл читать даташиты.
Аноним 29/11/18 Чтв 00:11:48 347440128
>>347439
>буду когда-нибудь еще буду
Ну вы поняли.
Аноним 29/11/18 Чтв 00:41:11 347445129
>>347439
>Даже не знал, что он нужен был.
В таком случае тебе нужно читать не даташиты, а Джозефа Ю.
Аноним 29/11/18 Чтв 00:58:02 347447130
yiu.png (259Кб, 597x737)
597x737
>>347445
>Джозефа Ю
Пикрл подойдет?
Аноним 29/11/18 Чтв 09:02:09 347463131
>>347389
>Обоссанное школололо с пердуино треда?
Да. Ну ты заебал, я ж не школоло
>Невозможно назначить прерывание на одноциферные выводы разных портов
Ок
>Если почти сразу 2 прерывания сработает - можешь соснуть, тк пока просрешся на первое есть шанс потерять данные из второго прерывания (см ссылку выше).
Если на разных пинах сработает прерывание, оно же просто встанет в очередь, не? На частоте 165mHz, или сколько там пиковая, прочитать с нескольких пинов значение и записать время - должен вписаться во временные рамки. Если только не все 16 пинов изменят состояние единоразово, но такие состояния я не встречу

>Задавай лучше односложные вопросы - на них проще отвечать.
Ок, логично.

Тогда простым вопросом уйду немножко в другую степь:
Как настроить USB? Есть готовые примеры с BULK передачей?
Те готовые примеры что есть, пока завести не смог.
Аноним 29/11/18 Чтв 13:19:49 347493132
eth.png (249Кб, 2795x1035)
2795x1035
> я ж не школоло
You make me sad

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


> Как настроить USB? Есть готовые примеры с BULK передачей?
С USB говном не работал и ебись оно конем разбираться в этих помоях и реализаций под каждую ось. Сам то хоть нашел СДК или либы через которые собрался принимать помои с USB шины?
Пикрил - немного погуглил и используя православный Ethernet сразу на 3 разных машинки лилось дерьмище броадкастом по UDP - Windows, FreeBSD, Linux - все приняли это. Дальше на том же питоне или сях import socket и вперед. По временнЫм меткам видно что срет примерно каждую миллисекунду (os.Delay(1)) как и задумывалось. Скорость сам прикинешь.
Аноним 29/11/18 Чтв 13:49:52 347502133
>>347493
>ебись оно конем разбираться в этих помоях и реализаций под каждую ось
Libusb же, просто не разобрался как она работает и почему не могу с ней достучаться к STM.
Пока читаю этот https://damogranlabs.com/2018/02/stm32-usb-cdc/ гайд
Аноним 29/11/18 Чтв 15:15:06 347510134
Вопрос короткий и по делу. Может кто сталкивался.

Либа LibUsb-1.0. На команду библиотеки libusb_open_device_with_vid_pid(ctx, USB_VENDOR_ID, USB_PRODUCT_ID);, STM с сгенерированным в кубе HID-кодом, отзывается как должна. STM с кодом же CDC-устройства сгенеренном там же, в кубе, с этим запросом не работает (возвращается Null). Так же, при этом, устройство определяется в системе как COM-6, но ни один терминал не с ним работает как говорится в примере из интернета, мы должны получать ответ в терминале, от сгенерированного кубом кода.
Аноним 01/12/18 Суб 07:36:22 347764135
ucb.png (69Кб, 1569x565)
1569x565
>>347510
Как мне кажется - всем по хуй. Троллинга ради попробовал создать проектик CDC. Ну и пиздец, осталась огромная куча вопросов по режиму отладки этого говна.
Запустил отладку. При самом первом прогоне кода до строчки 121 ничего не происходит(????). После первого прохода 121 строчки появляется компорт.
После появления компорта при попытке подключиться putty снова сосу - даже окно терминала не появляется пока еще раз не выполнится 121 строка (или криво тестил или в этот проход спам не шлется).
После третьего и последующего выполнения 121 строки уже шлется спам в терминал.
Определенно этот быдлокод поломал манямирок - U$B шина активна всегда, даже если ничего не передается летают какие-то пакеты опроса есть че? и при останове(?) выполнения кода соединение не рвется и компорт не пропадает.
При выходе из отладки/перезагрузке компорт пропадает, но putty не говорит что компорт недоступен (как при выдергивании FTDI или PL2303 и подобных) и при повторном прогоне кода в терминале тишина, ничего не шлется, а если закрыть терминал и заново открыть - говорит иди на хуй, не могу открыть, хотя он виден в диспетчере устройств.
Перезайдя в отладку - пропадет компорт и см начало поста. WTF?
Аноним 01/12/18 Суб 08:32:48 347767136
>>347764
>Перезайдя в отладку - пропадет компорт и см начало поста. WTF?
Потому что микроконтроллер перестает отвечать компу, а спецификация USB устанавливает определенное время на ответ.
Аноним 01/12/18 Суб 17:23:33 347828137
>>339005 (OP)
Гуры, расскажите как вы организуете расположение папок в проекте? Я уже заебался копировать примеры стм и корректировать их. Получается какая-то безумная ебала с папками библиотек и исходников. Как захуярить отдельно неизменяемое местоположение либ и прочих халов и облако/гит своего говнокода, чтобы его можно было быстро найти?
Аноним 02/12/18 Вск 02:13:25 347916138
Screenshot20181[...].jpg (45Кб, 1080x1152)
1080x1152
>>347828
CMSIS, HAL_Driver, startup - стандартная хуйня
inc - хедеры
src - c/cpp-файлы
layout - kicad схема/плата
external - сабмодули на драйверы периферии
С cubemx дрочусь скриптом который переносит файлы вроде spi.c dma.c spi.h dma.c main.h
main.c не переношу, ибо меняется он никогда, а генерит кашу неподдержтюиваемую
Аноним 02/12/18 Вск 02:17:14 347917139
>>347916
Забыл дописать. Если нужна периферия, а готовой репы нет, то ты обязан сделать отдельный готовый репозиторий из ошметков интернета и запушить на гитхаб, таким образом ты сделаешь жизнь другим легче. Ну и кидаешь эту репу в сабмодули. Реюзабельность +, карма +++
Аноним 02/12/18 Вск 06:35:15 347929140
>>347917
>и запушить на гитхаб
Ты же понимаешь, что весь гитхаб будет ржать над моими потугами в кодинге?
Аноним 02/12/18 Вск 08:08:19 347934141
>>347929
Никто не будет ржать. Портировал код с Raspberry на PIC.
Аноним 02/12/18 Вск 12:35:27 347968142
>>347934
Удваиваю, все похуй. Пока твой говнокод выполняепт задачу, всем похуй.
Аноним 04/12/18 Втр 15:53:45 348213143
>>347929
Никто даже не воспользуется твоим кодом
Аноним 04/12/18 Втр 17:01:51 348215144
>>348213
Не пизди.
запилил репу, получил четыре звезды в течение года
Аноним 05/12/18 Срд 23:52:47 348464145
>>340304
А кому продаешь? В рашке или за бугор с ибея какого-нибудь?
Аноним 05/12/18 Срд 23:54:07 348466146
15344409730020.png (104Кб, 645x729)
645x729
>>339005 (OP)
Приделал батарейку к своей STM32F429I-Discovery, теперь буду задрачивать все регистры RTC!
Аноним 05/12/18 Срд 23:56:15 348468147
>>348466
И сразу соснул с проглотом. Часы хоть и не сбрасываются при отключении питания, но таки останавливаются.
Аноним 06/12/18 Чтв 03:32:42 348495148
>>348468
Держи в курсе. не сарказм
Аноним 06/12/18 Чтв 08:45:35 348506149
>>348495
Насколько хватило моих знаний ангельского и мощности гуглопереводчика, понял, что для работы RTC от Vbat необходимо тактирование часов от LSE. В демонстрационной программульке от ST, дохуя завязано на тактирование от LSI и желания разбираться в дебрях их кода у меня нет. Сейчас засяду писать сам свои часы и попробую еще раз.
Аноним 06/12/18 Чтв 09:14:36 348508150
А вот эти вот примеры, типа TouchGFX_Demo, студии пишут или йоба-программисты одиночки? Этож охуеть можно сколько кода надо написать. Он только канпилируется 7 минут.
Аноним 06/12/18 Чтв 11:33:08 348516151
>>348508
Наверное это на С++ с использованием шаблонов написано, из-за этого вполне может компилироваться на порядок дольше чем аналогичный код на Си.
Аноним 06/12/18 Чтв 20:33:20 348566152
>>347463
Как дела у школьника? Давно не видно и не слышно. Уроки учит? Или в крестики-нолики играет над дампом?
Аноним 11/12/18 Втр 13:52:49 349270153
>>348566
Дохуя всего параллельно, и мне немножко лень.
Пока пилю I2C повторитель. К стати, анонче, подскажите нормальный пример I2C-Slave на LL, а то я ничего найти не могу даже те примеры которые я нашёл на хале, какие-то укуренные и не прозрачные.

Но если совсем не лень, то не откажусь от след. инфы:
1. От чего (от каких действий на I2C шине) срабатывает I2C1_EV_IRQHandler?
1.1 Возможно ли где-то прочесть, какой адрес всплыл на шине? Просто флаг ADDR в I2C_SR1 настораживает.
2. Как определить/обнаружить STOP и START на линии? ACK/NACK?
3. Как отправить NACK/ACK на мастера/слейва в передаче/приеме?
3. Как прижать SCL к нулю?
Я понимаю, что ручной доступ есть не ко всем перечисленным вещам если мы говорим об аппаратном I2C, но мне пока не найти даже нормальный пример слейва на LL, так что сам не раскопаю даже то, к чему доступ получить явно можно.
P.S: про STOPF в I2C_SR2 знаю, но без понимания всего процесса и того, как что срабатывает (особенно эвенты), я делать выводов не берусь
Аноним 11/12/18 Втр 14:05:06 349272154
Даже нет, не так, подправлю:
В принципе то понятно, когда срабатывает эвент сейчас с позиции слейва: как настроишь - на приходе адреса, при заполнении буффера, при срабатывании BTF, при получении стопа.
Только не ясно, как понять, что на линии был старт. Или оно тогда и не надо, даже если это повторный старт? Просто в таком случае получим задержку в ~2 пакета. Хотелось бы конечно минимизировать, но если что - не смертельно.
А NACK/ACK я хочу ставить сам, тогда когда мне удобно.
Аноним 11/12/18 Втр 17:30:16 349288155
i2c.jpg (644Кб, 3264x2448)
3264x2448
>>349270
Да вы батенька походу Reference Manual не открывали, или увидев овер 1К страниц открестился, закрыл и забыл как страшный сон.
Что у тебя за побрякушка как платка называется и что за камень (полное название)?
Мыльница говно. Открываю древний мануал Да, он бумажный, 4 страницы на листе. Как минимум его можно читать в сортире, делать пометки и пиздить им тех, до кого с первого раза не доходит.
> 1. От чего (от каких действий на I2C шине) срабатывает I2C1_EV_IRQHandler?
На странице 843 есть замечательная табличка, где видно как двумя битами включить и прерывания и события от блока I2C. Только вот незадача - два бита действуют глобально, те нельзя выбрать например автобус сломался и ошибка подтверждения.
Очень внимательно почитай раздел Inter-Integrated circuit interface - он короткий.
На первый взгляд только 2 адреса слейва себе можешь назначить. Остальное - через особо жесткие костыли. Возможно SPI+EXTI поможет ловить произвольные адреса.
Что меня напрягает в IIC - нет таймаутов и можно основательно повесить шину, которая отвисает только после ребута по питанию или руками давать STOP, но это не всегда корректно, так как некоторые слейвы очень привередливы и STOP например после 5 тактовых импульсов игнорируют.
Аноним 12/12/18 Срд 14:55:56 349363156
>>349288
У меня реф мануал немного отличается (RM0090 Rev 17), но суть та же. На эти страницы (IIC Functional Description) не обратил внимания, сейчас почитаю.
Железка STM32f407.
>Что меня напрягает в IIC - нет таймаутов и можно основательно повесить шину, которая отвисает только после ребута
Так то в том же референсе есть намёки на то что можно и без этого перезапустить шину. Как минимум я видел что настраиваются какие-то тайм-ауты, есть определение подвешенной линии и контроль недопустимых состояний на шине. А сбросить шину ты можешь и программно, но это не точно
Аноним 13/12/18 Чтв 11:41:48 349470157
shkololo.jpg (733Кб, 3041x2030)
3041x2030
detect.png (8Кб, 1375x240)
1375x240
>>349270
Масштаб троллинга неуклонно растет и достиг опасных показателей.
Собрал из подручного хлама - F429 под эмулятор, мега328 - для первоначальной отладки шины, онанокомп с линуксой под тестилку ебать она медленная, особенно i2cdump - на каждый байт оно дает команду записи адреса и потом команду чтения, но похуй - нашел говнокод на си - он чуть быстрее работает , логический анализатор, пара микросхем памяти и... CPLD на 64 макроячейки - может получится из нее сделать костыль I2C->SPI. На STM32F4 SPI умеет или 8 или 16 бит. Интересно, это все говно взлетит?

>>349363
Через жопу читал и мануал и пост повыше. В классической IIC нет таймаутов вообще. Таймауты в SMBUS (в компе можно найти). Повисший контроллер IIC можно попытаться "перезагрузить" через отключение и включение, но выше писалось про СЛЕЙВА, который считает такты и только спустя 9 тактов поймет команду СТОП и отпустит шину и игнорирует сигнал СТОП в другие моменты времени. Где-то видел описание подобных случаев.
Аноним 13/12/18 Чтв 13:30:41 349475158
>>349470
Я не могу понять, что ты снял анализатором. Что ты получить то хотел и чего добился?
Аноним 13/12/18 Чтв 16:51:29 349485159
image.png (24Кб, 1015x181)
1015x181
>>349470
Посмотри проект если не сложо.
Сгенерировал в кьюбе инициализацию, при установке адреса слейва1 зависает SCL на земле (пикрил).
Если вернуть адрес в ноль, то всё нормально. Сравниваю с примером из интернета , вроде последовательность инициализации похожа, в функцию тоже всё приходит норм.
Это на f103.
https://yadi.sk/d/CDEei4OVxVj1DQ
Аноним 13/12/18 Чтв 16:56:19 349486160
shololo2.png (89Кб, 1677x794)
1677x794
>>349475
Кое как подогнал смехоту. 5 макроячеек из 64.
Здесь за одно хорошо видно как тупит железка на линуксе и мне похуй. Это же proof of concept.
Как у меня ебануло.. Черную магию что ли еще раз почитать? CPLD настолько нежная, быстрая и суровая, что ловит отраженку с конца никуда не подключенного примерно 40 см шланга и считает ее за реальные импульсы/фронты. Временно отключил - уже нет аномалий. Если правильно понял вывод - оно легко прожует и не подавится от IIC с тактовой 50 МГц.
Смотреть на 7 и 5 анал, их "сумма"- 6 анал. Если включить мозги - догадаешься что это за костыль сбоку.
Аноним 13/12/18 Чтв 17:04:09 349488161
f1031.png (34Кб, 669x784)
669x784
f103.png (56Кб, 764x967)
764x967
>>349485
Точного камня не знаю, но серия F1 оставила тяжелые воспоминания.. Сам поищешь подобное, тем более что или здесь или в пердуино треде говорилось что F103 и IIC - крайне хреновая затея из-за аппаратных глюков. Поэтому ебитесь как хотите со своей F103.
Аноним 14/12/18 Птн 21:05:58 349667162
edge.png (27Кб, 1659x379)
1659x379
>>349475
Пока что переехал на циклон для обкатки. С учетом реального риалтайма есть бага, которую не пофиксить - возможна ошибка кадрирования не проверял еще. Поломали rarjpeg или нет?. Анал 5+6 - входные данные, анал 0+1 - "подогнанные" под формат SPI, которым в теории могу перехватывать с линии все, полностью игнорируя - мой не мой адрес.
Это аццки тупая штука, которая дает ответы на вопросы
> Как определить/обнаружить STOP и START на линии?
Смотри фронты 2 и 3 анала.
> ACK/NACK?
В 8 бит не впишешь и по идее на хуй не надо, но выводится в отдельную линию - 4 анал.

Это не к месту в данной железке-коверкалке I2C в SPI
>Как отправить NACK/ACK на мастера/слейва в передаче/приеме?
I2C_CR1
Bit 10ACK: Acknowledge enable
This bit is set and cleared by software and cleared by hardware when PE=0.
0: No acknowledge returned
1: Acknowledge returned after a byte is received (matched address or data)

> 3. Как прижать SCL к нулю?
Руками, сделав перенастойку порта с периферии AFxx на режим GPIO и выдать 1, прижав линию к земле.
Или снова заглянуть в I2C_CR1 Bit 7 NOSTRETCH: Clock stretching disable (Slave mode)
This bit is used to disable clock stretching in slave mode when ADDR or BTF flag is set, until
it is reset by software.
0: Clock stretching enabled
1: Clock stretching disabled
Аноним 15/12/18 Суб 07:59:06 349701163
currentlychargi[...].png (972Кб, 1000x700)
1000x700
displ.png (381Кб, 1000x1000)
1000x1000
Пагни, кто-нибудь заводил этот(1.8 TFT ST7735S SPI 160x128) дисплейчик на stm32?
Сначала заработал, подключил на следующий день, а у него только подсветка загорается и всё.
Как понять что не так. Провода прозванивал тестером, все в порядке.
Аноним 15/12/18 Суб 17:41:50 349743164
shololo3.png (39Кб, 1591x340)
1591x340
>>349475
Как оно меня заебало.. Какая-то странная фигня в виде глитчей, пропусков и прочей радости было когда подцеплен анализатором к одной из линий (scl или sda). Сделав из CPLD буфер-повторитель - как-то получше стало, минимум полдня просрал на шараду - одна и та же схема на FPGA работает, на CPLD - нет, зависимость от фазы луны не обнаружена, осциллографом с ходу ничего не нашел - поймать иголку(?) среди потока говна.
Жуткая асинхронщина в CPLD, выдает глитчи (под конец виден). Пока нет идей где или из чего синхру взять.
Анал 0+1 - исходные данные, анал 2+3 - закос под SPI, служебные сигналы (местами дублирующиеся) - аналы 4-6. Можно начинать дрючить STM32F429.
Аноним 15/12/18 Суб 20:50:44 349751165
Анончики, поясните за I2C в STM32F10x.
Что там за глюки страшные на практике?
Смогу я к нему подключить часики?
Там же вроде можно программно i2c, так?
Аноним 15/12/18 Суб 22:27:44 349754166
>>349701
Ты прошивку менял? Мб процедуру инициализации проебал?
Аноним 15/12/18 Суб 22:51:49 349756167
>>349701
Ты отключал его перед тем, как он перестал работать?
Пины точно не перепутал потом?
Я как-то ебался с JLX жк экраном 20 минут, выясняя, почему он сегодня ничего не показывает, а потом наконец заметил перепутанные SDA и SCK. Прототипы на ардуинах - они такие.
Аноним 16/12/18 Вск 06:51:09 349768168
>>349751
Школота не палится? Рандомно к одному из представителей каждой серии заходит и смотрел Errata.
> I2C analog filter may provide wrong value, locking BUSY flag and preventing master mode entry.
> This issue occurs randomly.
https://www.st.com/resource/en/errata_sheet/cd00288116.pdf
https://www.st.com/resource/en/errata_sheet/cd00197763.pdf
https://www.st.com/resource/en/errata_sheet/cd00190234.pdf
https://www.st.com/resource/en/errata_sheet/cd00197763.pdf
https://www.st.com/resource/en/errata_sheet/cd00238166.pdf
> This issue occurs randomly.
> occurs randomly.
> randomly.
Желаю побольше багов в отладке..
У Wiznet W7500 тоже есть бага с IIC - зажевывает одинаковые байты. Сам производитель рекомендует использовать программную реализацию IIC.
Аноним 16/12/18 Вск 19:05:25 349810169
475.jpg (76Кб, 620x679)
620x679
>>349756
Мне удалось его запустить и потом не разбирая отложил всё в сторону. На следующий день он уже не запустился. С этих дисплейчиков можно считать какие-нибудь данные, чтобы понять что там с ним внутри происходит?
Аноним 16/12/18 Вск 19:07:09 349811170
>>349754
>Ты прошивку менял?
А ему можно менять прошивку? Я такого не встречал.
Аноним 16/12/18 Вск 20:55:14 349831171
shkololo4.png (159Кб, 1914x1004)
1914x1004
Где школота? Уроки учит? Или референс мануал раскуривает? Как у него успехи?
Такой вот тупой быдлокод, пропитанный насквозь индусами и их стилем программирования подает признаки жизни.
Здесь нет никакого буфера захваченного спама, как захвачен байт через SPI- сразу шлем через VCP. То что что-то теряется - поебать. Оно уже подает признаки жизни, дальше тюнинг всего этого.
0x15 (0x2A) - это и есть сам слейв на STM42F429, который косит под память 24_02 (256 байт).
Походу ACK некорректно захватывается - идет задержка на цикл обмена. Делать сдвиг на 1 такт? Может и получится, надо только мозги для укрощения CPLD.
Аноним 16/12/18 Вск 23:11:28 349850172
>>349768
Да ты же сам капитанящий школодебил. Эррату я и сам могу посмотреть. Я хотел послушать реальные кулстори от анонов.
Аноним 17/12/18 Пнд 09:17:04 349864173
>>349751
програмно это как?
Аноним 17/12/18 Пнд 09:48:25 349869174
>>349864
http://we.easyelectronics.ru/khomin/i2c-programmnyy-stm32.html
Если кратко - сам в соответствии с протоколом выключаешь-выключаешь выходной транзистор (включая - получаешь 0 на линии, отключая - получаешь 1 на линии). Например для условия СТАРТ SCL должен быть отключен (те 1 на линии) и включить выходной транзистор на линии SDA - притянется к 0. Если же отпустишь SDA - будет СТОП. Потом включаешь выходной транзистор на линии SCL - она притягивается к 0. Все, сигнал СТАРТ выдан и шина условно захвачена. Выход типа Push-Pull нельзя использовать, только OpenDrain.

>>349850
Реальные кулстори только в гугле и тематических форумах типа electronix.ru . Школота - это ты, тк в еррате написано - может ёбнуть в любой момент. Может сразу, может через час, может через пару калобайт, может вообще не проявиться. Баг описан, известен и подтвержден производителем, пробуй. Никто не запрещает, но предупреждают что возможен BSDM. Сам запилишь кулстори как перекопипастил программный IIC. Впервые с ним столкнулся на F103ZC и DS2482-100
Аноним 19/12/18 Срд 08:35:35 350047175
>>349667
Братишка, ты отвечаешь на вопросы, но не на те, что я задаю.
Я спрашивал как это всё делать на встроенном I2C.
Ответ на определение стоп старта прост - запрограммировать логику. А на ACK/NAK так же в ручную не ответить.
Ты мне ответил как это делать с твоими девайсами.
Я спрашивал как прижимать SCL к нулю, в контексте действующего ресива/трансмита, ты мне ответил как вообще в принципе прижать. Ну ты понял.
Про флаги в CR я в курсе, но там не очевидно как этим пользоваться. Нужен пример из кьюба например, но охуительные ребята из STM не могут добавить примеры, которые конвертировались бы в их собственную IDE
Аноним 19/12/18 Срд 08:55:21 350050176
>>350047
Сейчас особо некогда пилить железку или быдлокодить - хотя на первый взгляд там мелочь осталась - кольцевой буфер вклеить. Fail. Пришла платка и могу 407 попробовать запустить и на работе иногда работать надо.
Задам вопрос проще - нарисуй сигналы на шине и явно отметь моменты когда хочешь делать гадости. Рисовать максимально подробно, что бы были видны каждый такт шины и фронты + свои камменты - какую гадость хочешь сделать в данный отмеченный момент. Если собрался делать гадости прямо посреди передачи байта - без адовых костылей ничего не выйден.
Аноним 19/12/18 Срд 11:04:58 350056177
>>350050
Я хотел решать, когда мне отвечать на ак/нак мастеру, беря это знание у слейва.
Полагаю, это считается прямо посреди передачи байта. Жеппа.
Самое тупое, что не могу до сих пор завести аппаратный I2C в Slave-режиме вообще. Ни на готовых Cube-примерах только что сообразил как их запустить в трустудио, ни просто написав код. Всё равно получается какая-то срака.
Аноним 19/12/18 Срд 13:02:31 350060178
top
Аноним 19/12/18 Срд 13:17:40 350062179
>>350056
Илья, залогинься.
> Я спрашивал как это всё делать на встроенном I2C.
> Ответ на определение стоп старта прост - запрограммировать логику.
Нет. Нет. Нет. Просто START и STOP на линии блоком IIC не поймаешь. Бит START устанавливается только если твой блок IIC, настроенный в режиме слейва (увидел старт) И (увидел свой адрес на шине), после чего битом ACK или говоришь что я тут или шлешь NACK мастера. Аналогично со СТОПом - только если твой слейв понял что с ним общение УЖЕ ведется, тогда он распознает сигнал СТОП на шине и установит бит STOPF и ТЕБЕ надо будет подтвердить стоп. Аналогично с растяжкой/остановкой обмена на тупняк - он и так есть "stretches SCL low" если сильно не менял настойки - пока тупишь, твой аппаратный блок IIC держит SCL в нуле, говоря - помедленней, я записываю, думаю и туплю.
Очень внимательно посмотри на картинки на 846-847 странице.

> А на ACK/NAK так же в ручную не ответить.
Жопой читаешь.. или не понимаю вопроса. Бит ACK.

> Ты мне ответил как это делать с твоими девайсами.
Снова жопой читал - они только ДЛЯ ЗАХВАТА. На обмен они не влияют, а то что в посте >>349831 виден в самом верху ответ 0x15 (0x2A) - это отвечает слейв на встроенном в STM32F429 IIC из блока I2C3 - видна независимая и одновременная работа захвата и слейва на одной железке.
По поводу внешних костылей - покажи как захватывать данные с IIC шины, ИГНОРИРУЯ адрес назначения? Можешь обоссать и сказать заведу в SPI - допустим. Только вот у тебя 9-ти битовые посылки, а SPI умеет 8 или 16 бит. Ну принял 8 бит, а дальше? Ушел в прерывание чтобы сбросить настойки модуля SPI и перезагрузить его для стирания огрызка из 1-го бита ? Ну изъебнулся, сделал. Как условия Старт-Стоп на шине ловить ? Прерывание на SDA вешать и при передаче 0x55 или 0xAA каждые 2(1) такта шины уходить в прерывания?

> Я спрашивал как прижимать SCL к нулю, в контексте действующего ресива/трансмита, ты мне ответил как вообще в принципе прижать.
Еще раз - бит ACK.

> Я хотел решать, когда мне отвечать на ак/нак мастеру, беря это знание у слейва.
Еще раз - бит ACK.

> Полагаю, это считается прямо посреди передачи байта.
Жеппа. Да, тк никто среди передачи байта такую хуйню не делает. Пробовал думать - можно таймером считать такты и после нужного такта через DMA записать в BSSR (не проверял) 1 чтобы прижать SCL к нулю, остановив обмен. Еще раз - ты ебанулся посреди (именно посреди, а не после) передачи байта обмен останавливать ? Прямая дорога повесить шину, введя в ступор настоящих аппаратных слейвов.

> Самое тупое, что не могу до сих пор завести аппаратный I2C в Slave-режиме вообще.
Тоже немного думал гадал что не так, ни ответа, ни привета. Перебор шин, настоек - мимо. Потом понял что туплю и... Ответ прост и повыше.

Такое ощущение что от возможностей отладчика шараешься как от огня и понятия не имеешь как его запускать и пошагово выполнять программу. Можешь обдристать, с openocd не работал, только шкодинг и дебаггинг через Keil.

Прости меня грешного Может это попробуешь попилить https://habr.com/post/357918/ ? Как всегда все упрется в скорость, ты же не говоришь чем управляешь. Может ядерным реактором/андронный коллайдером где критичны задержки или время с часов читаешь. Может у тебя там бегущая строка и по хуй что буквы с интервалом в пару раз дольше будут обновляться.
Но и тут проблемка - будешь видеть трафик только до себя, пролетающий мимо спам не виден, а это условие есть в ТЗ...
Аноним 20/12/18 Чтв 20:12:44 350210180
Посоны, вкатился недавновчера, СИ не знаю, инглиш не знаючитай долбоеб. Есть плата Nucleo на STM32F303RET6, пытаюсь пердануть символом в UART без использования кубов и библиотек периферии. Нахуячил простыню говнокода, само-собой, через отладчик работает, отдельно железка нет. Если выполнять программу пошагово, то данные в регистр TDR записываются, вроде как положено, но когда включаю плату и смотрю на выводах RX/TX saleae logic'ом, там нихуя нет. Сам говнокод, гляньте где обосралсяпо жизни:
https://pastebin.com/fZS79ui5
Аноним 20/12/18 Чтв 20:43:27 350212181
>>350210
>NVIC_EnableIRQ(USART2_IRQn); // Пока прерывания не использую, но пусть будет
А в дефолтном обработчике прерывания бесконечный цикл. Придет на вход байт - все повиснет.
>SystemInit();
Эта функция вообще-то вызывается из startup-а, перед main-ом.
>void delay (uint32_t time){
>uint32_t i;
И эта задержка без volatile может сломаться в любой момент, особенно при включении оптимизации.

Ничего конкретно подсказать не могу, т.к. STM-ами не занимаюсь. Но ты попробуй вместо "зажечь светодиод просто так" не зажигать, а инвертировать, чтобы мигал, тогда будет видно зависло оно или нет.
Аноним 20/12/18 Чтв 21:21:45 350214182
>>350212
Поправил цикл.
while(1) {
GPIOA->ODR = GPIO_ODR_5;
delay(300000);
if ((GPIOC->IDR & GPIO_IDR_13) == 0) {
delay(1000);//задержка в 1000 чего-то там
USART2_Send ('1');//отправить символ
}
}
Светодиод мигает. Ради эксперимента отправил на плату единицу через терминал, не зависла, продолжала мигать. Говорит ли это о том, что уарт вообще не запустился? Может я проебался где с настройкой. Но, NVIC_EnableIRQ все же закомментировал, на всякий случай. Почему же тогда в отладке, регистр TDR все же принимал значение?
Аноним 20/12/18 Чтв 21:27:52 350215183
>>350210
Этот антон >>350212 прав
> >NVIC_EnableIRQ(USART2_IRQn); // Пока прерывания не использую, но пусть будет
> А в дефолтном обработчике прерывания бесконечный цикл. Придет на вход байт - все повиснет.
Дописал бы для вида затычку void USART2_IRQHandler(void) {unsigned short tmp; tmp = USART2->RDR;};
Это первый косяк - закомменти прерывание пока не раскуришь референс -> USART2->CR1 |= USART_CR1_RXNEIE;
Второй косяк - при BRR 0xEA6 скорость 2135 бод, при 0x3A8 - 8556 бод (по анализатору).
Третий косяк - "Подтяжка 13 ножки PС к Vcc" и "if ((GPIOC->IDR & GPIO_IDR_13) == 0)" - без подачи 0 или земли на PC13 не войдешь в цикл. Проверял на STM32F3-Discovery (STM32F303VC)
Аноним 20/12/18 Чтв 21:36:36 350216184
>>350214
Поздравляю, у тебя походу хуита творится. Или быдлокод, или плата не але или еще что(сторожевого пса завел?)..
Светодиод мигать НЕ БУДЕТ.. ты постоянно пишешь одно и то же значение в порт. Как он зажегся, так и будет гореть.
Возможно вакаба съела символ исключающего ИЛИ - "^" - если он есть в этой строке "GPIOA->ODR = GPIO_ODR_5;" перед знаком присвоения, тогда да, будет мигать. у меня с частотой 3.33 Гц по анализатору.
Аноним 20/12/18 Чтв 22:17:33 350221185
Безымянный.jpg (123Кб, 972x467)
972x467
>>350215
>закомменти прерывание пока не раскуришь референс
Закомментил, хотя мк не зависал, когда я отправлял ему что-либо, складывается впечатление, что уарт не поднялся, не отправляет, не принимает. Все глухо.>>350215
>при BRR 0xEA6 скорость 2135 бод
Я считал по: USART_BRR = (fck + baudrate /2 ) / baudrate, где fck - частота шины APB1. В эту формулу я подставил 36мгц - максимальную частоту шины. Какая частота там в реальности, я не знаю, поскольку мк работает от внутренней цепочки, с дефолтными делителями. Думал заняться настройками, когда распаяю внешний кварц. Может тут и проеб.>>350215
>без подачи 0 или земли на PC13 не войдешь в цикл
На Nucleo пользовательская кнопка включена по схеме.
>>350216
>(сторожевого пса завел?)..
Он нужен мне на данном этапе? Если да, то объясни, интересно.
>Возможно вакаба съела символ исключающего ИЛИ
Yep.
Аноним 20/12/18 Чтв 23:28:21 350225186
Анончики, какие подводные в разводке ЮСБ на плате для stm32f103? Нужно ли располагать контроллер как можно ближе к разъему, могут ли соседние компоненты давать наводки на подводящие дорожки д+ и д- и т.п.? Где можно почитать об этом? Гуглятся только статьи о работе с уже готовыми платами.
Аноним 21/12/18 Птн 06:19:41 350244187
>>350221
> хотя мк не зависал, когда я отправлял ему что-либо, складывается впечатление, что уарт не поднялся, не отправляет, не принимает.
Давай с начала. Через что подключил UART к компу? К выводам 2,3,5 компорта? Через USB-UART преобразователь? Как соединял выводы ? RX-RX TX-TX или RX-TX TX-RX? Землю не забыл?
У ЮАРТа нет подтверждения доставки или получения.
> Я считал по:
Если 9600 поделить на 2135, то получишь 4.5, и поделив 36 на 4.5 получаем.. получаем.. 8МГц.. Прямо частота HSI. Вот это поворот. Намек понял? Попробуй BRR около 0x341 - должно быть около 9600 бод.
Аноним 21/12/18 Птн 07:18:23 350247188
>>350244
>Через что подключил UART к компу?
FT232RL, TX-RX RX-TX, земли объединялхотя и мк и USB-UART подключены к одному источнику.
Смотрел через Saleae, мк на уарт ничего не выдает.
BRR пересчитывал на 8мгц, да, там 0х341.
Сейчас на pastebin код с крайними правками. Не работает.

Аноним 21/12/18 Птн 12:26:31 350261189
NUC.png (197Кб, 1302x852)
1302x852
nuc3.png (83Кб, 1784x712)
1784x712
>>350247
Может в инструкцию(схему) заглянешь ?
Через какую задницу подключился к PA2 и PA3? На пердуиновские выводы они НЕ подключены, а идут на отладчик.
Тебе повезло если выводы не попалил, что очень реально. Сам переведешь текст на скинах из документации? Код то у тебя рабочий, а вот в схеме куча ошибок.
Аноним 21/12/18 Птн 19:11:39 350297190
>>350261
Блять, кто бы мог подумать?! Действительно, на ст-линк вывели, а я к ST morpho подключал. Забавно, в бумажном буклетике, что с платой шел, об этом ничего не сказано. Работает. Спасибо за помощь всем кто отвечал. Как опять проблемы появятся, я сюда вернусь. Короче, всем спасибо, всем по пирожку!
Аноним 21/12/18 Птн 20:25:38 350304191
Аноним 21/12/18 Птн 21:27:32 350317192
serdes.jpg (565Кб, 3116x2120)
3116x2120
>>350304
На первый взгляд - просто забить хуй. Даже в серийных железках народ не боится пускать "SerDes interface includes a 1.25 Gbaud data signal with a 625 MHz clock." через обычные штыри на 2.54мм и 2.0мм.
Если не сильно забивать - посмотреть хотя бы начало правой книги - волновое сопротивление и как оно зависит от ширины проводника, высоты подъема, расстояния между ними. Подобрать соотношения для импеданса 90 ом и спокойно спать.
Аноним 22/12/18 Суб 12:53:51 350388193
>>350317
Спасибо, анон.
Я и вижу, что все вроде не заморачиваются с разводкой юсб, но несколько раз сталкивался, что некоторые устройства не работают с кабелями, с которыми больше ни у чего нет проблем.
Аноним 22/12/18 Суб 17:11:59 350416194
dump0.png (201Кб, 3532x1084)
3532x1084
dump1.png (55Кб, 1655x421)
1655x421
dump2.png (70Кб, 1652x459)
1652x459
>>350056
Школотрон, ты где? Запилил слейва?
Впилил кольцевой буфер. CDC давится потоком говна, пропуская 2 или 3 байта. Впилил адовый костыль-задержку, что не очень то хорошо, но выдает все говно без зажевывания байтов. По идее все. Концептуальная модель на 100 КГц завелась и подает признаки жизни. Нет, не все - можно прикола ради запилить правку памяти слейва через компорт.
Пикрил 1 (dump0) - слева виртуальный компорт, справа склейка из 3 окон терминала. Как видишь - захват работает и ему поебать к кому обращение идет. Пишет всех, все и вся, проебывая бит ACK (не занимался этим, поэтому "+" от фонаря стоит). Реальные слейвы IIC - 0x50, 0x57,0x41. Слейв на STM32F4 - 0x15, который косит под память 24__02 (256 байт), которая после старта забита нулями и командами i2cset заполняется вполне осмысленным текстом и читается обратно.
Пикрил 2 (dump1) - как выглядит внутри собранный дамп с шины (с багом и с отключенной отправкой в компорт здесь и на dump2) - 0100 - старт, С0хх - Адрес, 0300 - стоп.
Пикрил 3 (dump2) - первые 4 шорта - это команда записи в EEPROM по адресу 0х50 байта 0х50, оставшиеся - захваченный обмен с шины при чтении содержимого настоящего слейва (памяти) с адресом 0x50 блоками по 32 байта (особенность i2cdump c режимом "i" - i2c block data).
Тут дольше всего идет преобразование байтов + отправка по виртуальному порту. Захваченный поток говна можно и на самом STM пофильтровать между 0100 и 0300 (старт и стоп на шине) и слать только нужное для большего риалтайма или готовить больший буфер отправки и не по одному байту слать, а по несколько или вообще все что было между состояниями 0100 и 0200 (старт-повторный старт) и 0200(0100) - 0300 (повторный старт(старт)-стоп).
Аноним 31/12/18 Пнд 06:31:35 351322195
vlcsnap-2018-12[...].jpg (163Кб, 1280x738)
1280x738
>>347463
Прошло 9 дней тишины. Школьник или познал дзен шкодинга или клал большой болт на затею-реализацию или его душа таки улетела на небеса... R.I.P. школота. Скучно без траллинга.
USB CDC как оказалось не совсем отборное, костыльное и вонючее дерьмецо или говнокод из кубика все хорошо скрывает.
Аноним 03/01/19 Чтв 00:39:21 351554196
Нужно разработать USB устройство класса CDC на STM32 с помощью библиотеки SPL в среде Keil. Не могу найти примеры в инете, может у кого есть инфа по этой теме?
Аноним 03/01/19 Чтв 02:40:14 351556197
tenor.png (174Кб, 300x300)
300x300
>>351322

>SPL
>Keil

школьник ордуинщег, ищущий БИБЛИОТЕКУ, детектед
Аноним 03/01/19 Чтв 09:44:13 351561198
>>351556
>>351554
Это больше похоже на курсовую работу в какой-нибудь шараге.
Аноним 03/01/19 Чтв 10:39:00 351563199
>>351561
> Это больше похоже на курсовую работу в какой-нибудь шараге.
Так и есть, но я другой анон.
Аноним 05/01/19 Суб 00:58:22 351764200
Аноним 05/01/19 Суб 04:53:40 351776201
>>351764
Смотри кубовские примеры, спл нахой выбросить вместо него взять лл. Спл списан в утиль истории, его замена как раз лл.
Аноним 05/01/19 Суб 10:34:25 351786202
>>351776
Я студень, задали спл
Аноним 05/01/19 Суб 10:42:59 351788203
>>351786
Возьми готовый пример с сайта ST. Если примера нет, то возьми код от какой-нибудь радиолюбительской поделки. Все, тут делать нечего.
>с помощью библиотеки SPL
Такая формулировка не запрещает дополнительно пользоваться еще какими-нибудь библиотеками. Можно взять весь код на LL или HAL и сбоку приделать что-нибудь на SPL.

>в среде Keil
Надеюсь ты понимаешь, что все компиляторы следуют стандарту и практически нет разницы каким компилятором пользоваться?
Аноним 05/01/19 Суб 11:45:16 351793204
>>351786
Вот погуглил немного за тебя. https://www.st.com/en/embedded-software/stsw-stm32046.html Когда-то сам на этом в институте делал, еще никаких кубов тогда не было.
Достаточно было в гугле задать период с 2000 по 2010 год, сайт st.com и тогда по "usb library" оно находится в первой строке. Там же готовый кейловский проект, тебе вообще ничего делать не нужно было.
Аноним 05/01/19 Суб 14:39:39 351804205
>>351786
Ленивый пидорас ты, а не студень. Мне преподы ни разу не отказали, если я приходил и говорил, что технология списана, давайте я возьму более новое решение.
Аноним 05/01/19 Суб 15:28:31 351806206
>>351804
Будто есть разница на чем учиться. Все равно, если он пойдет работать по специальности (что сомнительно), то не факт что будет касаться микроконтроллеров вообще. А даже если и будет, то не факт что STM32.
И если я правильно помню, то библиотека >>351793 не использует SPL, там только CMSIS. SPL там в примерах только для настройки портов, тактирования и прочего. В SPL, если я правильно помню, нет ничего связанного с USB.
Аноним 05/01/19 Суб 15:49:57 351807207
>>339005 (OP)
Есть хуйнюшка как на первом пике. К ней возможно ардуину цепануть? Дабы ебашить асинхронное устройство.
Аноним 05/01/19 Суб 20:36:56 351826208
>>351807
>К ней возможно
Да. Почитай даташит, может преобразователь уревней еще придется въебать.
Аноним 05/01/19 Суб 23:11:18 351847209
>>351776
Сразу CMSIS херли мелочиться
Аноним 08/01/19 Втр 10:29:36 352114210
>>349488
Я вот, кстати, уже не в первый раз встречаю нарекания на серию f1 и рассказы о том, что её особо не поддерживают. Какую серию тогда взять взамен, чтобы близко по фичам и производительности?
Аноним 08/01/19 Втр 11:13:16 352116211
IMG201901081244[...].jpg (610Кб, 2400x2332)
2400x2332
>>352114
Кто бы его знал. При взгляде со стороны F2=F4, особняком F373 - для любителей анальных утех с 16 битными сигма-дельта АЦП. Когда-то работал в связи реально днище - знать надо дохуя, получаешь нихуя и были попытки воссоздать клон Netagent CP504B (верхняя левая). У "конкурентов" (нижняя центральная) SNR ERD 3.2 - atmega644+enc28j60, более новая версия на stm32f407 https://nag.ru/user/notes/25598/kak-rojdayutsya-erd-pro-mini-fotki-.html . У нас же (только для внутренних нужд) - железки на stm32f107 (центральная вверху) и на Wiznet W7500P (это и cortex-m0 и phy в одной микросхемке). Умерло после первых тестов и ухода из той помойки.
Тупо шарясь по алиэкспрессу в происках плат с 2хCAN и 2xRS485 - нашлись только на stm32f407. Так вот и делался выбор - на чем can (до)изучать + в даташитах есть пара страничек про совместимость между сериями (как минимум F1-F2-F4) - где и что предусмотреть на плате для установки конкретной серии. Если надоели баги одной серии, можно заменить на другую.
Если не работаешь с аналогом и точными измерениями - бери любой, хоть F2, хоть F4.
 ST-Link V2 Аноним 09/01/19 Срд 10:47:14 352265212
1547020029748.jpg (67Кб, 600x498)
600x498
STM32F103C8T6-A[...].jpg (254Кб, 2256x2256)
2256x2256
Я правильно понимаю, что отладка в TrueStudio должна работать через этот свисток? У меня почему-то студия его видет, даже предложила обновить прошивку, заливает мой говнокод в микроконтроллер, но не работает пошаговая отладка.
Так и должно быть с этим китайским клоном или я что-то не так делаю.

Аноним 09/01/19 Срд 11:17:53 352268213
>>352265
Такой набор и всё нормально, и на ф103 и на ф407. Дело скорее всего в прокладке между клавиатурой и монитором.
Аноним 09/01/19 Срд 11:22:49 352270214
>>352268
Судя по знакомым цифра обоссанная школота проснулась? Так и не завел своего i2c раба?
Аноним 09/01/19 Срд 11:31:27 352271215
>>352268
> Дело скорее всего в прокладке между клавиатурой и монитором.
И какое может быть дело?
Установил куб, TrueStudio, stm32 utility. Дровишки встали при установке студии.
При первом подключении студия обновила прошивку свистка.
stm32 utility также видит свисток.

stm32ldiscovery в которую встроен стлинк работает корректно.
Аноним 09/01/19 Срд 12:56:11 352277216
>>352271
Если обновился, значит китайским остался только bootloader. Сомневаюсь что bootloader может оказывать такой эффект, хотя все возможно. Схема тем более не будет так влиять, она по идее везде практически одинаковая, за исключением разъемов и согласования уровней.

Ну и лучше было брать J-Link.
Аноним 09/01/19 Срд 13:04:56 352278217
Аноним 09/01/19 Срд 15:08:36 352287218
Глубоко копаете, там скорее всего точка в коллбэке, в который не заходит, или их больше пяти, или ещё какая хуйня.
Аноним 13/01/19 Вск 19:55:50 352782219
Суп радиач, решил тут вкатиться в STM, будучи гуманитарием (да-да я вообще охуел).
Собственно взял Nucleo 303, пошел курить погромирование этого чуда. И тут я прихуел, везде всё равное, кто-то под HAL, кто под SPL, кто с регистрами напрямую работает. В ру-сегменте адекватных уроков/учебников нет.
Наткнулся тут на MBED, довольно интересно в плане, что не надо читать мануалы на 2к страниц чтобы помигать светодиодом (привет ардуине). Суть вопроса - есть какие-то ресурсы русскоязычные по MBED? По STM вообще ресурсов негусто, видимо специфика что МК скорее проф. уровня накладывает свое говно на вентилятор и никто не хочет делиться опытом разработок (которые скорее всего продают, в отличие от ардуиновских).
Аноним 13/01/19 Вск 21:06:08 352791220
>>352782
Задрачивай HAL и не обращай внимания на кукаретиков требующих вникания в букву даташита и кодинга регистров. Потом, когда отдуплишь, что к чему, переходи уже на LL
Аноним 13/01/19 Вск 21:28:04 352794221
>>352782
Ищи на ютубе канал narod stream, ставь кубик и truestudio и бахай на хале. После генерации кубом мигать диодом можно одной строчкой.
Аноним 13/01/19 Вск 21:31:07 352796222
>>352794
Вся фигня в том, что надо же сгенерить еще, а чтобы генерить надо все эти регистры, тактирование и прочее знать еще лучше чем в случае с ручным написанием.
Аноним 13/01/19 Вск 22:05:54 352800223
hal2.png (23Кб, 478x609)
478x609
>>352791
Да, буду кукарекать - Reference Manual наше все. Те же сраные параметры функций настойки где брать будешь?
Взять тот же кусок инициализации RCC
RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE;
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
RCC_OscInitStruct.PLL.PLLM = 4;
RCC_OscInitStruct.PLL.PLLN = 120;
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
RCC_OscInitStruct.PLL.PLLQ = 5;
if (HAL_RCC_OscConfig(&RCC_OscInitStruct) != HAL_OK)
или I2C
hi2c3.Instance = I2C3;
hi2c3.Init.ClockSpeed = 100000;
hi2c3.Init.DutyCycle = I2C_DUTYCYCLE_2;
hi2c3.Init.OwnAddress1 = 132;
hi2c3.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
hi2c3.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;
hi2c3.Init.OwnAddress2 = 0;
hi2c3.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE;
hi2c3.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE;
Что за поеботина написана справа после знака равно? Где список всех значений смотреть? Список сочетаемых и непротиворечивых значений?
Или то же ссаное GPIO
GPIO_InitStruct.Pin = GPIO_PIN_13|GPIO_PIN_14;
GPIO_InitStruct.Mode = GPIO_MODE_OUTPUT_PP;
GPIO_InitStruct.Pull = GPIO_NOPULL;
GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
HAL_GPIO_Init(GPIOG, &GPIO_InitStruct);
Здесь только с ходу видно что только 13 и 14 вывод настраивается. Остальное- неведомая хуита, которая смотрится с расшифровкой в том же RM. Думаешь совсем ньюфаг поймет что тут написано?
С простой периферией - ничего не знаю, CMSIS наше все, для USB и Ethernet - не выебывался, использовал то говно, которое дают в кубике.
Reference Manual однозначно надо читать. Просто тупо несколько раз прочитать раздел не особо вникая, хоть что-то да запомнишь что видел что-то похожее в описании регистров, а не гадать что это за поебень тут написана.
Школотрон - можешь подглядеть настойки IIC.

>>352796
Частично согласен. Знать периферию надо ВСЕГДА, а это чтение RM чуть чаще, чем постоянно.
Когда знаешь как все работаешь - тебе без разницы на чем писать - что HAL, что SPL, что CMSIS. На CMSIS может даже проще будет делать прямые обращения, чем искать тормозные библиотечные функции с кучей проверок, а всякая логика типа for; while; if живет сама по себе.
GPIOC->BSRR = GPIO_BRR_BR3; вывести в линию PC3 лог1
GPIOC->BSRR = GPIO_BSRR_BR8; вывести в линию PC8 лог0
Неужели это какие-то страшные заклинания?
Аноним 13/01/19 Вск 22:07:40 352801224
>>352796
> Вся фигня в том, что надо же завести двигатель еще, а чтобы автозапуском пользоваться надо все эти степени сжатия, цикл Карно, механику движения поршней и прочее знать еще лучше чем в случае с ручным поворотом ключа.

Ясно.
Аноним 13/01/19 Вск 22:16:13 352803225
>>352800
За меня это говно пишет куб, и меняет он же. Прежде чем пиздеть, покажи свой код чтения-записи файлов с длинными именами в FAT на цмсис, папаша. Поговорим за хал после этого.
Аноним 13/01/19 Вск 22:21:03 352804226
>>352803
Лол, порвался. CMSIS - это управление периферией, а не логикой, которой является твой высер про FAT. Максимум что увидишь - это чтение/запись блоков на flash/sd карту, сама же логика работы FAT - независима и можно хоть на 8051 запустить.
Аноним 13/01/19 Вск 22:33:48 352808227
>>352801
Неуместное сравнение. Это ты скорее для ардуинки описал.
Тут ближе будет завести двигатель на самолете типа боинга 737
То есть проверить состояние аккумов, включить питание, подключить шину переменного тока, запустить топливные насосы (не один а дохуя, каждый отдельный тумблер), ВСУ, генератор ВСУ, воздухоподачу, etc...
Аноним 13/01/19 Вск 23:35:57 352817228
>>352808
Так-то никто не говорил, что использование хал освобождает от чтения рефмана, и особенно от доки о самом хале. Кубик просто генератор, но этот генератор сильно облегчает процесс создания инициализации. Я когда начинал, буквально за пару часов разобрался с кубом по ютубам, и впоследствии стал им пользоваться.

Все эти типы которые топят за цмсис в массе своей дальше мигания диодом не ушли, зато цмсисом помигали, ага. Без USB, Ethernet и SD-карты домашние проекты, за редким исключением - мертворождённое говно, и то с чем цмсис-пердолик будет ебаться неделями, на хале пишется за несколько дней. Однако строитель сарая будет смеяться над башенным краном, типа смотрите какие лохи, молотка не держали, ровно до тех пор, пока он строит сараи, потом же

>>352791
>для USB и Ethernet - не выебывался, использовал то говно, которое дают в кубике.

Вот и весь его боевой задор. Любители цмсис - лицемерные пидоры.
Аноним 14/01/19 Пнд 07:59:29 352839229
>>352817
>Ethernet
Делал без всяких халов, только не на STM32. Ничего такого сложного в этом нет.
>SD-карты
Когда-то делал на ассемблере чтение и запись секторов. Не для практических целей конечно, а для тренировки и изучения. Тот анон все правильно пишет >>352804 Там по части взаимодействия с периферией микроконтроллера достаточно сделать только инициализацию, чтение и запись секторов карты, все остальное есть в FatFs и прочих. Это всего лишь несколько команд, ничего сложного.

Способ настройки периферии вообще не столь существенен, это ведь обычно совсем небольшая часть программы получается.
Аноним 14/01/19 Пнд 11:09:02 352848230
>>352839
Именно. Претензии к хал начинаются когда открывается файл сгенерированный кубом, хотя хал и куб никак не связаны. В библиотечных файлах функции названы корректно, что называется самодокументируемо, сопровождены описанием и принимаемыми/возвращаемыми значениями, что куда лучше записей цмсис. Никто не запрещает для повышения быстродействия использовать в критических секциях цмсис или ассемблер, это необходимо для серийных устройств, но видимо цмсис юзеру кажется что это элитный клуб.

Tl;dr новичку и доморощенному эмбеду куб, хал и лл подойдут больше чем цмсис, профессионал в советах не нуждается.
Аноним 14/01/19 Пнд 13:03:28 352864231
>>352848
>лл
Ты точно видел LL?
LL это набор функций, в основном только распихивающих поля из структур по регистрам в нужном порядке. Для использования LL или SPL нужно знать назначения битов в регистрах, точно так же, как для использования CMSIS. Преимущество LL только в том, что снижается вероятность ошибки.
Поэтому противопоставлять LL и CMSIS это как-то очень странно. Просто невозможно научиться использовать LL и при этом не научиться использовать CMSIS.

Более того, если использовать LL без HAL, то для управления SysTick, NVIC и MPU, по любому придется использовать функции из CMSIS.
Аноним 14/01/19 Пнд 13:13:04 352866232
>>352864
Видел, даже i2c -> uart на 103 поднимал, в связке LL + RTOS, генерация полностью кубом, иде - трустудио. Цмсис проект был такой же, только без ртос и в вижуалгдб. Хал однозначно понравился больше, но для оптимизации программ и направления развития, лл после хал выглядит прекрасно.
Аноним 14/01/19 Пнд 14:42:40 352875233
Какие профессиональные пути развития сейчас актуальны при работе с stm32?
Имеется в виду в ракурсе работы/карьеры
Аноним 14/01/19 Пнд 16:46:36 352887234
>>352875
Впаривать девборды лошарам
Аноним 17/01/19 Чтв 09:23:31 353218235
currentlychargi[...].png (972Кб, 1000x700)
1000x700
Пагни, я пытался прикрутить bluetooth HC-06. С USB uart он работает нормально в оба направления. А с СТМа bluetooth принимает, только если подключить логический анализатор к RX блютуса. Что за бред?


Аноним 17/01/19 Чтв 16:58:19 353256236
>>339005 (OP)
Народ, а как вы организовываете свои проекты? Git обязательно использовать или легче копировать папки?
Аноним 17/01/19 Чтв 17:42:59 353264237
>>353256
Лучше иметь какой нибудь контроль версий. Геморроя меньше и в принципе как-то удобнее
17/01/19 Чтв 19:23:54 353290238
>>353256
Конечно, используем.
1. Сохраняется прогресс.
2. Можно откатиться если понял что за день хуйню наделал.
3. Если не стыдно то можно подрочить лайки на гитгабе
Аноним 17/01/19 Чтв 19:28:20 353292239
>>353264
>>353290
Ок. Спасибки за ответы. Буду изучать Git.
А насчет организации папок проекта, свою используете или STM-овскую Templates из архива с демонстрациями и примерами?
Аноним 17/01/19 Чтв 19:37:35 353295240
>>353292
У git команды наркоманские, возьми лучше hg.
Карта памяти Аноним 18/01/19 Птн 11:28:16 353362241
images-1.jpg (2Кб, 140x91)
140x91
Есть готовые решения для работы с картами памяти micro SDHC по SPI?
Файловая система не нужна. Требуется чтение и запись блоков.

Что-то я туповат для реализации этого с нуля.
Инициализацию сделать получилось.
Но при записи блока размером 512 байт, все значения 0хАА и последующем чтении этого блока, получаю какую-то херню.
Идут 7 байт как положено 0хАА, а восьмой мусор, дальше все повторяется до конца считанного блока.
Аноним 18/01/19 Птн 11:37:23 353363242
>>353362
Смотри примеры в файлах куба.
Аноним 18/01/19 Птн 11:39:55 353364243
>>353218
Поставил подтяжку к + и все заработало. Странно.
Аноним 18/01/19 Птн 11:54:08 353365244
WP2019011811411[...].jpg (1818Кб, 3264x1840)
3264x1840
Заебенил пучок хуевин для изучения погроммирования своей дискавери. Пятый год валяется, а я только сподобился залить в нее демо от TouchGFX и поморгать светодиодом. В этом году думаю таки немного подучить клятый Си и одолеть 1-Wire, энкодер, шим, датчик влажности и emWIN
Аноним 18/01/19 Птн 13:33:59 353377245
>>353363
А они там разве есть?
Там есть возможность подключить библиотеку для фат, но без реализации доступа к карте по spi или sdio ничего не будет работать
Аноним 18/01/19 Птн 14:01:31 353378246
>>353377
Тут например для F4. %USERPROFILE%\STM32Cube\Repository\STM32Cube_FW_F4_V1.23.0\Projects\STM32F4-Discovery\Applications\FatFs\FatFs_USBDisk
Аноним 18/01/19 Птн 14:31:15 353381247
>>353365
> своей дискавери.
Какой, что за контроллер?
> думаю таки немного подучить клятый Си
Зачем это тебе если плата пять лет валялась?
Аноним 18/01/19 Птн 14:33:02 353383248
>>353381
>что за контроллер?
429ZIT
>Зачем
Для общего развития. Может я на пенсии в кодеры-эмбеддеры хочу податься. Кек.
Аноним 27/01/19 Вск 00:12:32 354554249
Зачем удалять? Отписался в совершенно бесполезный /d/ Пост был вполне по тематике треда.
Аноним 27/01/19 Вск 00:38:02 354555250
>>354554
Да, с недавних пор тут модератор совершенно ебанутый и похоже в радиотехнике совершенно не разбирается.
Напиши вопрос еще раз, может не удалит (можешь еще в /d/ продублировать). Для ЦОС кортексы не особо подходят, весьма вероятно что ты собрался делать ерунду.
Аноним 27/01/19 Вск 00:59:54 354559251
>>354555
Если не подходит, то что именно гуглить? Раньше тут писали что STM32 самое то для вката в DSP. Нужна простейшая железяка, в которую я бы смог грузить короткие импульсы в WAV, чтобы сделать кроссовер со своими настройками для АС.
Аноним 27/01/19 Вск 01:20:55 354564252
>>354559
Ну так-то ЦОС можно делать на абсолютно любом микроконтроллере, вопрос только в требуемом быстродействии.
Но я не понимаю твой вопрос.
>грузить короткие импульсы в WAV
Что это значит? Ты хочешь сделать КИХ фильтр, импульсную характеристику которого называешь "короткими импульсами"? Если так, то все зависит от частоты дискретизации и порядка фильтра.
>сделать кроссовер
Но зачем для этого ЦОС?
Аноним 27/01/19 Вск 01:31:59 354566253
>>354564
Чтобы вместе с кросовером можно было вхардкодить эквализацию, и всё это вбить в один короткий импульс. а точнее по импульсу на каждый из динамиков, в типичной стереосистеме этих динамиков 4 штуки. Частота дискретизации? Ну не знаю, по идее 96кгц хватило бы, лично мне по крайней мере точно.
Мне надо понять что именно гуглить для этого, я не очень въезжаю.
Аноним 27/01/19 Вск 02:13:12 354567254
>>354564
В любом случае кажись я понял куда копать, в сторону эмуляции гитарных кабинетов, там эта тема будет нормально раскрыта, т.к там в обязательном порядке в результате процесса звукозаписи формируется импульс для конволюции.
Аноним 27/01/19 Вск 03:18:13 354573255
stm32cube-5.png (109Кб, 1016x900)
1016x900
>>352794
Не слушай этого дебила. Ставь system workbench for stm32 и stm32cubemx. Последний генерирует код для первого, периферия тупо кнопками настраивается. В настройках генерации выбирай SW4STM32 IDE, генерируй, дальше уже код меняй, и дрочи HAL.
Аноним 27/01/19 Вск 07:07:09 354580256
>>354567
Можешь написать то же но на русском или на английском, а то ничего не понятно.
>один короткий импульс.
>импульс для конволюции
О чем ты вообще? Открой любой учебник по ЦОС - там не будет таких терминов.

>что именно гуглить для этого, я не очень въезжаю.
Естественно, для начала терминологию изучи.
>в сторону эмуляции гитарных кабинетов
Можешь сколько угодно копать, но от этого STM32 не станут лучше подходить для ЦОС.
Аноним 28/01/19 Пнд 10:17:15 354731257
>>354573
Ты, видимо, промазал. Все так и делаю, только в тру студио, он новее и лучше чем воркбенч.
Аноним 28/01/19 Пнд 10:23:53 354732258
>>354731
Дай ссылку, а? Хочется вкатиться, а создание первичного кода было год назад через задницу и ничего с пинка не работало.
Аноним 28/01/19 Пнд 12:32:10 354744259
Используйте лучше CMake.
Аноним 28/01/19 Пнд 14:21:28 354767260
>>354732
Открываешь две вкладки в браузере, в одной набираешь в гугле Atollic TrueStudio, в другой STM32CubeMX. Обучалка есть в ютубе на канале NordicEnergy.
Аноним 28/01/19 Пнд 19:46:46 354860261
>>354767
Только на канале narod stream. Там с халом и нуклео, для вката самое то.
Аноним 29/01/19 Втр 04:46:06 354886262
154181500916172[...].jpg (117Кб, 978x1304)
978x1304
А кто-нибудь прикручивал Black Magic Probe к какой-нибудь IDE?
Аноним 29/01/19 Втр 07:38:10 354898263
>>354886
Это не нужно, есть J-Link.
А в чем проблема? Принцип тот же самый что при использовании OpenOCD или других GDB-серверов.
Аноним 29/01/19 Втр 17:27:18 354951264
151773568718136[...].jpg (248Кб, 1242x1209)
1242x1209
>>354886
Мне понадобился встроенный UART и я перепрошил свой ST-link в него. И внезапно осознал, что не знаю, как прикрутить это к Кейлу.
Аноним 29/01/19 Втр 19:46:23 354961265
>>354951
Наверное к кейлу по нормальному действительно сложно приделать сторонний программатор/отладчик.
С программированием проблем не должно быть, достаточно лишь использовать "Use External Tool for Flash Programming". http://www.keil.com/support/man/docs/uv4/uv4_fl_usingflashmenu.htm
А с отладкой наверное никак, кейл вроде как не умеет работать с gdb. Большинство IDE нормально работают с gdb, но тебя угораздило выбрать кейл.
>понадобился встроенный UART
Наверное ты и так знаешь, но на всякий случай напишу. Отладочную информацию можно выводить с простым ST-Link через SWO.
Аноним 29/01/19 Втр 22:17:30 354970266
>>354961
>Отладочную информацию можно выводить с простым ST-Link через SWO.
Там только в одном направлении, а я хочу как в ардуине, чтобы и туда послать можно было. Приходится подключать дополнительный UART-USB.
>Большинство IDE нормально работают с gdb
На какой-нибудь atollic truestudio это натягивается?
Аноним 29/01/19 Втр 23:51:28 354976267
Я сегодня узнал, что трустудио умеет в гит искаропки. Каждый день что-то новое, отлично просто.
30/01/19 Срд 00:16:31 354980268

>>354970
не знаю как в nucleo, сам регулярно юзаю discovery stm32f723, то у неё прокидан виртуальный ком порт через st-link (как архуины)
Аноним 30/01/19 Срд 01:38:47 354985269
>>354980
>nucleo
У меня 2 Blue Pill вставленные в бредборд. Одна из них в роли отладчика :з Покупать стшные платы жаба душит.
Аноним 30/01/19 Срд 05:58:37 354996270
>>354976
>трустудио умеет в гит искаропки
интересно. а куда тыкаться? :-)
Аноним 30/01/19 Срд 07:04:42 354998271
>>354970
>atollic truestudio
Это обыкновенный эклипс с плагинами. Как использовать этот отладчик с эклипсом вполне находится гуглом.
Аноним 30/01/19 Срд 07:22:25 354999272
>>354996
Гитом создаёшь локальный репозиторий, или клонируешь его в папку. Потом в эту папку генерируешь кубом проект трустудио, и открываешь. Если репо подцепился, то в трустудио рядом с названием в project explorer (список проектов слева) рядом с названием появится [твойгитрепо] и становятся доступны действия из пкм->Team. Хотя GitKraken по-прежнему удобнее, чем из трустудио.
Аноним 30/01/19 Срд 09:23:36 355003273
>>354999
>>354976
Только правильнее будет написать, что для эклипса есть плагин EGit, который по умолчанию установлен в этой студии. Этот плагин можно установить в любом поделии на эклипсе. Причем установка плагинов через marketplace аналогична установке дополнений в браузере - открыл каталог, ткнул в нужное и готово.
Аноним 30/01/19 Срд 09:25:46 355004274
>>354998
>Как использовать этот отладчик с эклипсом вполне находится гуглом
Ну если бы я нашел в гугле, я бы не полез сюда. Можно ссылочку. С меня большое спасибо.
Аноним 30/01/19 Срд 12:18:41 355018275
Аноним 30/01/19 Срд 23:18:07 355158276
Anime-Anime-Art[...].png (1330Кб, 1000x1245)
1000x1245
>>355018
Я уже был по этим ссылкам и ничего не понял. Но все равно спасибо, пойду раскуривать это дальше.
Аноним 31/01/19 Чтв 06:54:37 355168277
>>355158
>ничего не понял.
Я тоже все это не идеально знаю, но попробую объяснить ничего не напутав. Хотя ты может и так это все знаешь.
GDB - это консольная программа со своими командами, которые можно выучить и отлаживать без IDE. Для отладки, IDE запускает GDB и передает туда команды, аналогично тому, как если бы это делал человек вручную. При использовании GDB-сервера вроде OpenOCD (ST-LINK GDB-server, J-Link GDB Server и прочие) сначала запускается GDB сервер, потом запускается сам GDB, в который передается адрес, порт сервера и elf-файл. При использовании Black Magic Probe вместо адреса сервера задается порт, естественно другой командой.

Соответственно IDE нужно настроить таким образом, чтобы оно не пыталось подключиться к серверу (через TCP) или не пыталось запустить как нативную программу. А все необходимые для подключения команды (порт, elf-файл) передавать либо через опцию командной строки "-ex" либо сохранить в отдельный файл как скрипт и передавать уже его.
Для начала, если ты этого еще не делал, я бы попробовал все эти команды ввести вручную, без IDE. Но лучше возьми J-Link и не пользуйся кривыми поделками.
Аноним 31/01/19 Чтв 07:07:01 355170278
>>355168
GDB сервер там работает и даже програмируемый микроконтроллер видно. Осталось понять как заставить Трустудио подключаться к отладчику не по TCP, а через COM порт. В обычном эклипсе это есть, в Трустудио это куда-то упрятано.

>не пользуйся кривыми поделками
если не осилю просто перешью Блюпилл, который отдадчик, обратно в ST-link. Но хочется COM порт в отладчике, чтобы не подключать кучу лишних кабелей.
Аноним 31/01/19 Чтв 07:41:47 355171279
>>355170
В чем тогда проблема использовать обычный эклипс?
Либо, если иначе никак, можно попробовать соорудить костыль - скрипт, который подменяет или переопределяет команды для GDB. Вроде как такое проще сделать на питоне посредством gdb-py.
Как-то так https://github.com/in4lio/mdr1986x-JFlash
Аноним 31/01/19 Чтв 16:51:57 355244280
>>355171
>обычный эклипс
Лишний пердолинг с генерацией проекта в кубе. Хотя там не так и сложно.
Аноним 31/01/19 Чтв 16:56:37 355245281
А VisualGDB на рто как раздавали, так и раздают. GDB да в вижуал студио 2017, ух бля. Куб генерит искаропки под него почти все. Не генерил у меня только связку LL+FreeRTOS, остальное норм.
Аноним 31/01/19 Чтв 18:53:07 355252282
>>355245
>генерит искаропки под него
Уж лучше мейкфайлы использовать.
Аноним 31/01/19 Чтв 20:39:51 355260283
T
Аноним 31/01/19 Чтв 20:47:26 355261284
>>355252
Да сразу на асме бахай, нахер те этот высокоуровневый си.
Аноним 31/01/19 Чтв 22:30:13 355275285
Сап радач, дело в том, что есть одна отладочная платка STM32F407Discovery, и вот такие видеоуроки
https://www.youtube.com/watch?v=VD8OaPyAEtI&index=11&list=PL8OgDYWys_b6XtOjCejd37aVv0ic24jqV
Если я освою все это, то мне этого хватит, чтобы найти работу инженером микропроцессорных систем, или нужно еще что-то? из МК знаю только MCS-51, и вот сейчас стм32 начал ковырять
Аноним 01/02/19 Птн 07:40:38 355304286
>>355245
> ух бля
black magic probe заработал в визуал студии с VisualGDB. Регистры видно, можно рулить светодиодом прямо из отладки. Аж обои от стен отклеиваются. Пойду удалять Эклипс.
Аноним 01/02/19 Птн 11:33:20 355322287
>>355275
Для начала хватит чтобы ваять программы, а остальное зависит от работодателя. Хотя в будущем придется изучать самостоятельно дальше и больше всякие фичи из даташита. Ну и сами уарты-хуярты с прочими интерфейсами читай. Он вроде не объясняет. А в работе нужно знать.
И учти что у него в первом видосе не полностью указывается как создать проект (он это объясняет где-то в 4ом видео или около того) и откуда качать библиотеки ищи в комментариях под нужным видео. Сайт обновился и инструкция в ролике немного не актуальная.
Добра тебе
Ps сам изучал по этим роликам и год с лишним пользуюсь кейлом +stdperiph
Аноним 01/02/19 Птн 11:35:15 355323288
>>355322
>>355275
А вообще если нужно для работы, то почитай hh и выдели что в требованиях пишут.
Аноним 01/02/19 Птн 12:19:52 355326289
>>355275
>найти работу инженером микропроцессорных систем
ЗАБУДЬ.Будешь сосать последнюю залупу по этому направлению.
Учи лучше Java, будешь получать чуть больше, чем дворник или сантехник из ЖЭК-а.
https://www.rbc.ru/newspaper/2016/07/05/577a08e19a794717070ba97b
"R&D в России — это дешево. Например, китайский software-инженер стоит $150 тыс. в год, это приближается к зарплатам в Калифорнии. Те, кто занимается computer science, — $200–250 тыс. в год. Наши инженеры стоят в разы дешевле."
Аноним 02/02/19 Суб 15:17:08 355494290
Аноним 07/02/19 Чтв 00:59:48 356075291
1.png (36Кб, 830x734)
830x734
2.png (48Кб, 685x948)
685x948
Здравствуйте. Такая проблема у меня. Есть один микроконтроллер. И есть SD-флешка. Подключаю её по SPI. Пока флешка была новая и чистая всё работало, флешка инициализировалась, файловая система монтировалась, файлы записанные на неё читались. После того как я очередной раз записал на неё парочку файлов, флешка внезапно перестала инициализироваться. Купил новую флешку, закинул на компьютере на неё файлы, вставил - всё опять прекрасно работает. До того момента когда я ещё раз не попытался записать на неё ещё на компьютере. После этого она аналогично перестала инициализироваться. Причём на компьютере обе карты без проблем читаются и пишутся.
На пиках мой код. Красным подчеркнул там где обнаруживается косяк - в этом месте возвращаемый переменной ans ответ функции transfer =-1, то есть нет ответа по линии MISO. Смотрел осциллографом - SCK, MOSI - всё ок, то есть команда отсылается, CS тоже вроде всё на месте. Дальше идут тактовые сигналы по SCK - а ответа нет, на MISO остаётся единица. Пробовал на разной скорости - и на 32МГц, и на 250кГц - ничего не меняется, причём новая флешка работала на любой. На MISO у меня включена подтяжка. Что я делаю не так?
Аноним 07/02/19 Чтв 15:34:12 356116292
>>356075
>Что я делаю не так?
Форматируешь в компе?
Аноним 07/02/19 Чтв 20:39:04 356168293
>>356116
Всё, уже разобрался. Вот, выделил то, что пофиксил. После этого всё заработало. Пробовал вообще выпиливать этот кусок - тоже работает, видимо это для каких-то совсем древних флешек предусматривают. Кстати, пробовал ещё втыкать простую флешку (не НС) на 2 Гб. Думал что будет определяться как тип 1, но нет. Определяется как тот же тип 2, только без блочной адресации (номер сектора при доступе нужно умножать на 512). Ещё у меня теперь инициализируется на частоте 250кГц, потом если ок, то переключается на 32МГц. Так, на всякий случай, хотя оно и на 32МГц инициализируется.
Аноним 07/02/19 Чтв 20:42:17 356169294
11.png (152Кб, 826x722)
826x722
>>356168
Пикча отклеилась.
Аноним 08/02/19 Птн 07:56:40 356221295
>>356169
>Пикча отклеилась.
Ой, блядь. Всё сразу стало понятно. После просмотра рандомного кода на первых двух и отклеившейся. Ты просто космос, Анон.
Аноним 08/02/19 Птн 08:11:40 356222296
>>356221
Для тех, кто подключал sd флешку вполне должно быть понятно, так как непосредственную работу с интерфейсом тут всегда нужно прописывать ручками. Так что не понимаю твоего подрыва, мог бы просто пройти мимо.
Аноним 08/02/19 Птн 13:16:52 356263297
1549620999562.png (291Кб, 768x841)
768x841
1549620999858.png (319Кб, 768x892)
768x892
Дороу, хочу вктатиться в ARM и смотрю на две платы: NUCLEO-F767ZI и NUCLEO-H743ZI. Разница -- 300 рубасов. Какую взять?
На бумаге H7 интереснее, а на практике?
Аноним 08/02/19 Птн 13:53:42 356264298
>>356263
H-серия не поддерживается многими сторонними штуками вроде micropython , mbed, embedded rust etc, или поддерживается на уровне "быстрый F7". Но это пока что.
Аноним 08/02/19 Птн 15:12:37 356274299
Аноним 08/02/19 Птн 16:53:25 356288300
15400346493000.jpg (63Кб, 816x816)
816x816
>>356274
У меня первая уже пяты год валяется. Все никак не соберусь с духом поковырять. Кек. Еще за 2400 покупал, в 2014
Аноним 08/02/19 Птн 22:16:43 356316301
>>356222
И да, аноны. Ещё одно наблюдение. Библиотека FatFs глючит, если в настройках ИАРа включён уровень оптимизации выше среднего. Уж не знаю чего он там накрутил, разработчик сей библиотеки. Мне пока лень разбираться. Возможно как-нибудь прослежу в отладке, возможно проставить нужно где-то volatile. Пока что допилил их для быстрой загрузки картинок через DMA - как минимум раза в два быстрей стало выводиться на экран.
Аноним 08/02/19 Птн 22:48:01 356324302
>>356316
Есть вообще разница что юзать, ИАР или Кеил? Я пока что у кеила недостаток нашел только в том, что нет "Live watch" в менюхе view
Аноним 09/02/19 Суб 00:01:26 356332303
>>356324
Никогда не юзал кил, поэтому не могу ничего сказать. Мне и божественного ИАРа хватает.
Аноним 10/02/19 Вск 14:05:51 356535304
>>339005 (OP)
Решил перекатиться с авр на стм, короче вопрос такой - есть у меня самописная либа для управления дисплеями типо 1602 по 4 wire интерфейсу, но она под авр, я хочу ее переделать под стм, но уже в самом начале возникла проблема: у меня либа состоит из файла с самой прогой и файла с расширением h, в h прописывается к каким портам что подключать вот таким образом:
// порт к которому подключаем шину данных
#define DPORT PORTD
#define DDDR DDRD
#define DPIN PIND

// порт к которому подключаем RS, RW, E
#define CDDR DDRD
#define CPORT PORTD

Похоже в стм порты называются несколько по другому чем в авр, потому что на PORTD, DDRD, PIND и т.д. компилятор ругается (Error: Identifier "DDRD" is undefined in "lcd.cpp", Line: 8, Col: 6).
Вопрос - где можно глянуть названия портов для стм? И нужно ли для того подтягивать какие либо либы типо io.h как в авр?
Аноним 10/02/19 Вск 14:57:55 356550305
gpio.PNG (185Кб, 1412x687)
1412x687
>>356535
>где можно глянуть названия портов для стм?
Аноним 10/02/19 Вск 15:14:01 356552306
>>356550
А ссылочку можешь кинуть? А?
Аноним 10/02/19 Вск 15:16:40 356554307
>>356552
>А ссылочку можешь кинуть? А?
Ты трудный какой-то. Какой у тебя камень? В каком IDE пишешь? https://st.com все мануалы, даташиты, сопутствующее ПО, драйвера и прочая чухонь.
Аноним 10/02/19 Вск 15:21:36 356557308
>>356535
Гугл в помощь. Порты там перебить и всё будет работаь. Для вывода значения в порт есть регистр PORTx->ODR - аналог PORTx у атмеги, для атомарного вывода на пин PORTx->BSSR - аналог операций PORT{x}_Bit{y}={1 или 0} (или ассемблерных команд sbi/cbi) у атмеги. Библиотечные функции HAL_WritePin использовать можно, но дисплей будет работать раза в полтора-два медленнее, чем при работе напрямую с портами через BSSR.
Аноним 10/02/19 Вск 15:30:48 356561309
>>356535
И да, для работы по SPI для начала лучше используй библиотечные функции из библиотеки HAL - самая главная для тебя это HAL_SPI_Transmit(), для вывода пикселей лучше использовать HAL_SPI_Transmit_DMA() - быстрей будет работать. Но для этого придётся устанавливать STM32CubeMX, либо изучать всё это дело и инициализировать вручную, либо самому накатывать библиотеку HAL.
Аноним 10/02/19 Вск 16:14:38 356573310
>>356554
IDE - mbed, камень stm35l053r8. Ок я понял, просто на стм не работал вообще поэтому могу тупить.
>>356557
Вот теперь уже несколько понятнее стало.
Аноним 10/02/19 Вск 17:47:30 356594311
>>356573
>IDE - mbed
Проиграл с мани. Установи нормальное ПО уже наконец и не еби моск. Используй СТМ-кубик - он упрощает вхождение в СТМ. Ты бы ещё в Atollic программу писал.
>stm35l053r8
Хотя куда тебе программировать, если ты даже название своего процессора без ошибок не можешь написать.
опытный иараст
Аноним 11/02/19 Пнд 10:09:24 356652312
>>356535
>PORTD, DDRD, PIND
>PORTD

GPIOC
@
GPIO_PIN_13
@
GPIO_PIN_SET
@
GPIO_PIN_RESET
@
HAL_GPIO_WritePin(GPIOC, GPIO_PIN_13, GPIO_PIN_SET);
Аноним 11/02/19 Пнд 10:48:14 356656313
>>356594
Ну не ругайся, я же писал что совсем нуб в стм. После авр с которым 3 года проработал все очень необычно. Даже названия микроконтроллеров. Борду купил, мозги и руки не купил.
Кстати mbed мне тоже много чем не нравится. Мне бы какую-нибудь IDE с автоматическим поиском методов по всей структуре программы как ко всяких Visual Studio, Sharp Develop и т.д.
>>356652
Короче как я понял вместо DDRD в стм нужно писать GPIOD, вместо RS 5 писать RS GPIO_Pin_5, а вместо CDDR |= (1 << RS) нужно писать GPIO_SetBits(CDDR, RS); ну и GPIO_ResetBits(CDDR, RS); соответственно.
Правда не совсем понятно как сконфигурировать несколько портов одинаковым образом, например мне нужно сконфигурировать 4 порта определенным образом. Для конфигурации 1 порта на выход с подтяжкой к земле нужно написать вот такую телегу:
GPIO_InitTypeDef data;

data.GPIO_Mode = GPIO_Mode_OUT; // Выход
data.GPIO_OType = GPIO_OType_PP; // Хз зачем надо
data.GPIO_PuPd = GPIO_PuPd_DOWN; // Подтяжка на землю
data.GPIO_Speed = GPIO_Speed_2MHz; // Скорость низкая
data.GPIO_Pin = GPIO_Pin_2; // 2 вывод

GPIO_Init(GPIOD, &data);
И так для каждого вывода чтоли? Это же ебнутся можно. Есть способ это сократить?
Аноним 11/02/19 Пнд 11:11:05 356659314
>>356656
Хотя чего это я туплю, можно же метод создать:
void ConfigPort(char port, char pin)
{
GPIO_InitTypeDef data;

data.GPIO_Mode = GPIO_Mode_OUT;
data.GPIO_OType = GPIO_OType_PP;
data.GPIO_PuPd = GPIO_PuPd_DOWN;
data.GPIO_Speed = GPIO_Speed_2MHz;
data.GPIO_Pin = pin;

GPIO_Init(port, &data);
}

ConfigPort(GPIOD, GPIO_Pin_2);
Могут быть ошибки, но суть я думаю понятна. Или можно как-то проще?
Аноним 11/02/19 Пнд 11:18:26 356662315
>>356656
Если надо сконфигурировать одинаково несколько пинов одного порта, в структуре параметр pin можно писать несколько ножек через ИЛИ
GPIO_Pin_1|GPIO_Pin_3
Аноним 11/02/19 Пнд 11:20:19 356663316
>>356659
Проще только в кубе тыкать наверное
И ты тут забыл тактировние порта врубить. И тип входных параметров мне кажется неверный.
Аноним 11/02/19 Пнд 11:36:00 356667317
>>356662
О! Вот то что надо. Знал же что должен быть способ.
>в структуре параметр pin можно писать несколько ножек
Вот так чтоли?
data.GPIO_Pin = pin1;
data.GPIO_Pin = pin2;
data.GPIO_Pin = pin3;
data.GPIO_Pin = pin4;
>>356663
А зачем тактирование врубать в данной ситуации вообще?
Тип возможно и неверный. Не отрицаю.
Аноним 11/02/19 Пнд 11:48:49 356668318
>>356667
А забей. Жопой твой пост прочел, думал ты написал "писать несколько ножек или через ИЛИ".
Аноним 11/02/19 Пнд 12:58:42 356687319
>>356667
Тактировние надо включить, потому что у тебя работать иначе не будет. В стм по умолчанию почти вся переферия отключена. Перед использованием надо поднять соответствующий бит в регистрах rcc, чтобы подключить нужную фигню к тактировние шине.
Аноним 11/02/19 Пнд 16:25:28 356725320
>>356687
А, ты неверное про это RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOD, ENABLE); ?
Аноним 11/02/19 Пнд 17:51:55 356743321
Аноним 11/02/19 Пнд 21:17:40 356780322
>>356656
> CDDR |= (1 << RS) нужно писать GPIO_SetBits(CDDR, RS); ну и GPIO_ResetBits(CDDR, RS);
Да. Но лучше всё-таки с регистрами портов атомарно обращаться, также как в атмеге. Здесь всего-то выучить как правило:
GPIOA->BSSR = 1<<(pin1|pin2) - установить ноги
GPIOA->BSSR = 1<<((pin1|pin2)+16) - сбросить ноги
value=GPIOA->IDR - считать состояние ногю
>Ну не ругайся
>ебнутся
Как на тебя не ругаться, если ты даже русский язык не осилил. В таком случае тебе лучше использовать библиотечные функции, как в ардуино иде, а инициализацию генерировать в кубике, тамм уж совсем для дебилов всё сделано чтоб освоили.
Аноним 12/02/19 Втр 21:47:39 356899323
может для кого-то банальный вопрос (тому респект и уважуха за ответ), но прошу пояснить.
Начал изучать FreeRTOS и там написано что мол все круто, псевдопараллельность выдается за счет того что каждый равный промежуток времени обработчик задач (sheduler) забирает выполнение от одной задачи, сохраняя все данные в стек, и дает поработать следующий квант другой задаче.

Появилось два не связанных вопроса
1) Если у меня задача скажем выполнится за время, меньшее чем системный квант, он пойдет по новому кругу выполнения или отдаст власть обработчику? (написал и думаю ответ в самом вопросе --> новая итерация бесконечного цикла в задаче. Но все равно жду ответ знающих)
2) Если системный квант равен скажем 1мс, а одновременно работающих задач у меня скажем штук 200. Значит ли это, что если одна из задач выполняет обработку клавиатуры, то со стороны человека она будет как-бы тормозить? Реакция на нажатие же 200мс = 200 задач, слишком частое нажатие тупо не сможет обработаться
Аноним 13/02/19 Срд 12:30:19 356970324
А как можно убрать одиночный импульс при запуске ШИМа на таймере? У меня от этого светодиоды на ws2812 глючат.
Аноним 13/02/19 Срд 14:44:49 356984325
>>356970
>>356970
> как
Вставить задержку перед выдачей ШИМа в ногу?
Аноним 13/02/19 Срд 19:38:57 357002326
>>356984
>Вставить задержку
Я вообщем-то так и сделал, но я думал, что я в кубе что-то забыл настроить.
Аноним 13/02/19 Срд 20:01:10 357003327
PWM.png (44Кб, 1122x497)
1122x497
Аноним 13/02/19 Срд 21:24:03 357010328
IMG201803071304[...].jpg (37Кб, 672x372)
672x372
Аноны, я правильно понял вот этого
https://blog.danman.eu/st-link-clone-as-stm32-dev-board/
что для вкатывания хватит двух st-link v2 клонов, и можно сразу начинать одним прошивать другого?
Аноним 13/02/19 Срд 21:51:07 357015329
>>356970
>>357003
>А как можно убрать одиночный импульс при запуске ШИМа на таймере?
Никак. Только допиливанием библиотеки HAL.
Аноним 14/02/19 Чтв 01:13:35 357026330
IMG201902140105[...].jpg (106Кб, 1048x786)
1048x786
>>357010
>для вкатывания

Да. Выпаиваешь оттудова камень и впаиваешь в свою плату.

Две платы Blue Pill самое то. Одну через UART-USB переходник или ардуину прошить в ST-Link. Подключить и работать со второй.

https://hackaday.io/project/158262-using-blue-pill-stm32f103c8t6-as-st-link

На фотке немного другое, но принцип тот-же.
Аноним 15/02/19 Птн 14:19:41 357171331
image.png (18Кб, 680x285)
680x285
image.png (16Кб, 437x727)
437x727
Привет анон.
У меня возникла проблема с Дискавери (stm32f407g disc1).
Настраиваю порт B как показано на первом пике. Но при работе, вижу охуительную картину - висящая в воздухе дискавери, не подключенная ни к чему, детектит единицу на входе PB6 (второй пик).
Я что-то делаю не так? Тут есть какой-то нюанс, который надо учитывать?
На порте E такой хуйни не нашёл.
Аноним 15/02/19 Птн 18:24:12 357191332
pull-up.png (58Кб, 535x459)
535x459
Аноним 15/02/19 Птн 19:10:06 357198333
>>357191
Спасибо.
Это бля.
Есть предложения, как пофиксить? Не выпаивать же её.
Аноним 15/02/19 Птн 21:36:23 357209334
>>357198
есть предложение использовать другую ногу, а не расхуячивать плату
Аноним 15/02/19 Птн 21:50:48 357210335
>>357209
Отдельную ногу не вариант, придётся переносить как минимум пины с 0 по 7.
Аноним 17/02/19 Вск 10:15:04 357292336
>>357210
Пока пришлось отпаять подтяжку.
Если есть варик как запустить эту красоту с подтяжкой на месте - было бы збс.
Аноним 17/02/19 Вск 13:57:50 357323337
>>357292
Чувак, просто интересно, чем тебя другая нога не устраивает,? Уверен, на плате достаточно свободных пинов
Аноним 17/02/19 Вск 17:02:45 357342338
>>357323
Потому что я уже спаял макетку и мне лень перепаивать 16 проводов.
Аноним 17/02/19 Вск 17:27:54 357344339
Нужно собрать проект, в котором stm32F103 работает с EEPROM. Думаю использовать для этой цели BluePill, а вот как память подключить хз. И в инетах никаких гайдов нет
Аноним 17/02/19 Вск 21:21:45 357367340
>>357344
Любишь BDSM? Бери что-то типа 24LC64 и подключаешь по IIC, который может зависнуть в любое время, или писать программную реализацию IIC.
Не любишь BDSM? Берешь что-то типа 95512 https://www.st.com/resource/en/datasheet/m95512-df.pdf - EEPROM с SPI интерфейсом.
Где-то посередине - 93С66 и подобные 93 серии.
Если верить производителю - хуй вам, а не EEPROM - используйте одну/../ из страниц FLASH памяти(с).
Аноним 18/02/19 Пнд 06:56:49 357404341
Blank+edb31036d[...].jpg (10Кб, 326x195)
326x195
>>357367
>stm32
>iic может зависнуть
Серьёзно? Как так?!
Аноним 18/02/19 Пнд 09:10:55 357418342
>>357404
F100 серия была первопроходцем, самая горбатая из всех. Описания вообще всех проблем есть в Errata shit на любое семейство.
Пользуйте F0/F2/F3/F4/L серии, 100 слишком горбата, много отличий. На любую серию МК есть листок "миграция с 100й серии" что как-бы намекает, что даже производитель считает их мусором
Аноним 18/02/19 Пнд 09:17:55 357419343
>>357418
В демоплату STM32VLDISCOVERY нормально становится F071/F301 и подобное пин ту пин. Проще выкинуть 100ю серию и забыть
Аноним 18/02/19 Пнд 12:23:03 357439344
BEAR-USTAL.png (434Кб, 564x564)
564x564
>>357418
>производитель считает их мусором
Аноны, посоветуйте тогда годную недорогую плату на СТМ32 для собственных экспериментов.
Аноним 18/02/19 Пнд 16:43:16 357488345
>>357418
Посоветуй камень:

два SPI
три UART
аппаратный TRNG
флеш хотябы 128кб
оперативной памяти 20кб
цена: до 2$
Аноним 18/02/19 Пнд 18:40:30 357499346
>>357488
>цена: до 2$
Сильно растяжимое требование. Цена при покупке в каком месте? При каких партиях?
>аппаратный TRNG
Чем не подходит младший разряд с АЦП? Можешь еще диод с обратным смещением приделать, чтобы сильнее шумело.
Аноним 18/02/19 Пнд 20:49:25 357508347
12.PNG (62Кб, 567x460)
567x460
>>357488
>аппаратный TRNG
Вещь сомнительной полезности. F405 с ней, в китае они по 3,5$.
По остальным требованиям ближе всего пойдет старшие F0 семейство (16кб озу)
Аноним 19/02/19 Втр 13:03:22 357545348
>>357488
Прямо сейчас, в электронщике, 401vbt6 по 175р. Не джва бакса, но близко
Аноним 19/02/19 Втр 15:55:56 357562349
>>357545
В китае STM32F401RCT6 1$ стоит. Хватит кормить барыг и пыню
Аноним 19/02/19 Втр 16:48:24 357573350
Аноним 19/02/19 Втр 17:36:08 357577351
>>357562
Разве что сальваж. Не может новая стоить 60р. Да и сдается ты пиздишь безпруфно в тред
Аноним 19/02/19 Втр 23:10:07 357599352
>>357573
>кокхол что ли?
Да

>>357562
>Да и сдается ты пиздишь безпруфно в тред
https://item.taobao.com/item.htm?id=544907210814
Конкретно у этого продавца беру и F4 и F0 серии, ADUMы различные, АЦП, Токовые ЦАПы. Разницы с деталями с маузера/фарнела/тме не заметил ни визуально ни в работе. Можете брать смело. Если детали не оригинал или Б/У это пишут в описании.
Например SP485
Оригинал https://item.taobao.com/item.htm?id=549197050879
Китайская копия https://item.taobao.com/item.htm?id=524754218256
Как видите разница в 10 раз. Копии кстати хорошо работают. Единственно что, подтяжки внутри у них более высокоомные. Ну и на "живую" длинную линию я не рискнул бы ставить без испытаний переходных процессов.
Выбор есть, ультрадешевые китайские копии, или дешевые оригиналы.
То же самое и дисплеев касается, 16х2 классический стоит меньше доллара. Большой ассортимент, в десятки раз больше чем могут предложить где угодно. Особенно COG графические. С местных цен хуею давно. Но знаю точно одну вещь, если цена с доставкой и всеми расходами ниже в 2-2,5 раза чем в космодроме - смело берите, это оригинальные детали.
Аноним 19/02/19 Втр 23:26:50 357605353
>>357577
Разве что сальваж. Не может новая стоить 60р.

Вам барыги это втюхали в головы. Все детали в китае дешевле раза в 3 как минммум из-за отсутсивия импорт/экспорт пошлин, НДС, барыжинга, зарплат монагеров и машин директора.
По своему опыту - видишь цену, дели в уме на 2-3 раза, это то, что ты заплатишь за поставку напрямую с китая, где стоят эти заводы где клепают эти микросхемы.
Аноним 20/02/19 Срд 04:18:57 357614354
1471599687874.jpg (151Кб, 1280x1381)
1280x1381
>>357599
>космодроме
Как он меня заебал, блядь. Гандоны, блядь, в 2к19м году не иметь https? Сайт из 90х. Вы если цены заломали, то сделайте хоть сайт удобный.
Аноним 20/02/19 Срд 04:57:02 357619355
>>356316
Выбросил бы ты fatfs, и взял бы littlefs. Меньше памяти, wear leveling, также можно монтировать в комп через блочное устпоймтво. Fatfs оперативно тебе флешку ушатает.
Аноним 20/02/19 Срд 07:03:46 357623356
>>357614
>2к19м
Не продолжай, все с тобой понятно.
Что с ценами не так, примерно +- как у других. Космодром, VDMAIS и РКС в принципе полностью перекрывают потребности для прототипов. Для серии даже 10шт - китай.
Аноним 20/02/19 Срд 14:29:33 357649357
>>357623
Ты мой пост читал? Я рвался на сайт, а не на цены.
Аноним 20/02/19 Срд 14:43:05 357650358
>>357649
Окей, каким должен быть сайт радиокомпонентов? Свистелки и перделки? Или как у РКС конченое глючащее жабаскрипт говно? Зато новое.
По личному опыту формирования закупок на 200+ позиций, удобнее космодрома пока не видел сайтов
Аноним 20/02/19 Срд 15:30:32 357653359
1481723400725.jpg (462Кб, 3216x2136)
3216x2136
>>357650
По приоритету
1. АШ ТИ ТИ ПИ ЭС блядь. Не заказать все эти 200 позиций, не слив провайдеру/СБУ/твоей мамке их содержимое вместе с твоим номером телефона именем и адресом
2. Поисковой движок говно, только точное совпадение или соси хуй. Фильтров нет, иди нахуй. Категоризация только если повезет и найдешь страницу линейки чипов.
3. Даташитов часто нет, пиздуй гуглить. Ой, не гуглится? Мы же заказали это у ноунейм китайцев, на плате ни обозначений нихуя, ну сорян придумаешь что-нибудь.
4. Вырвиглазный дизайн, каждая страница самая блять разнообразная по стилю.
5. В корзине блядь не узнать что ты там назаказывал, только наименование товара (50% их собственное) и пиздуй обрать искать в их "движке" этот товар чтоб понять что это.
Аноним 20/02/19 Срд 15:35:44 357654360
>>357650
В догонку, пидарасы разбросали все по двум магазинам, шоб и дальше быть ФОПами и наебывать налоговую. Из-за этого самому заехать и забрать не получится, обязательно придется ездить и туда и туда. Ну или заказывать по НП в тот же город, но доставка минимум 4 дня получается. Обычно в среду заказываешь, в понедельник забираешь.
Аноним 20/02/19 Срд 22:00:16 357688361
>>357599
>Конкретно у этого продавца беру
>Согласно соответствующим местным законам и правилам и политике Taobao, этот товар не может быть отправлен в вашу страну или регион.
Кто-то запизделся.
Аноним 20/02/19 Срд 22:04:59 357689362
Подскажите, пожалуйста, что будут спрашивать на собеседовании на программиста микропроцессорных систем. Наконец-то судьба дает мне шанс, а я не готов, и времени до пятницы.
Аноним 20/02/19 Срд 23:04:24 357697363
Привет анон.
Странная ситуация - никак не могу настроить I2C Slave при помощи Cube/Hal. (пробовал на f103 и f407).
Вроде составляю всё правильно, но при попытке обратиться на выбранный мною адрес - не получаю никакого прерывания (в кубе они конечно выбраны).
ЧЯДНТ? Есть годный пример? А то гугл направляет только на встроенные кьюбо-примеры, которые мне нихуя не понятны.
Аноним 21/02/19 Чтв 05:50:27 357730364
>>357697
Школотрон, хватит летать в облаках, вернись на землю. Крыльями поделишься?
Старый говнокод закоса под память 24 серии. Буду рад бурлящим потокам говна.
unsigned char i2cbuf[256];
unsigned char i2cbuf_i=0;
void I2C3_EV_IRQHandler(void)
{
static volatile unsigned short tmp1,tmp2,SR1,SR2;
static volatile unsigned char addr;
SR1 = I2C3->SR1;
SR2 = I2C3->SR2;
if (SR1 & I2C_SR1_RXNE) //incoming
{
if (addr)
i2cbuf[i2cbuf_i++]= I2C3->DR;
else
{ i2cbuf_i = I2C3->DR;
addr = 1;
};
};
if (SR1 & I2C_SR1_TXE) //send spam
{
I2C3->DR = i2cbuf[i2cbuf_i++];
};
if (SR1 & I2C_SR1_AF) //last byte send
{
I2C3->SR1 = (I2C3->SR1 & (~I2C_SR1_AF));
addr = 0;
};
if (SR1 & I2C_SR1_ADDR) //start
{
I2C3->CR1 = (I2C3->CR1 & (~I2C_CR1_STOP));
};
if (SR1 & I2C_SR1_STOPF) //stop
{
I2C3->CR1 |= I2C_CR1_STOP;
addr = 0;
};
};
void I2C3_ER_IRQHandler(void)
{
};

...
MX_I2C3_Init();
...
//FUCK HAL! Tune I2C3 Interrupts
//Enable ITEVFEN & ITBUFENT INT
I2C3->CR2 |= (I2C_CR2_ITEVTEN | I2C_CR2_ITBUFEN);
I2C3->CR1 = (I2C3->CR1 & (~I2C_CR1_PE));
I2C3->OAR1 = 0x002A;
I2C3->FLTR = I2C_FLTR_ANOFF;
I2C3->CR1 |= I2C_CR1_PE | I2C_CR1_ACK ;
NVIC_EnableIRQ(I2C3_EV_IRQn);
__enable_irq();
...
/ I2C3 init function /
static void MX_I2C3_Init(void)
{

hi2c3.Instance = I2C3;
hi2c3.Init.ClockSpeed = 100000;
hi2c3.Init.DutyCycle = I2C_DUTYCYCLE_2;
hi2c3.Init.OwnAddress1 = 132;
hi2c3.Init.AddressingMode = I2C_ADDRESSINGMODE_7BIT;
hi2c3.Init.DualAddressMode = I2C_DUALADDRESS_DISABLE;
hi2c3.Init.OwnAddress2 = 0;
hi2c3.Init.GeneralCallMode = I2C_GENERALCALL_DISABLE;
hi2c3.Init.NoStretchMode = I2C_NOSTRETCH_DISABLE;
if (HAL_I2C_Init(&hi2c3) != HAL_OK)
{
_Error_Handler(__FILE__, __LINE__);
}
}
Аноним 21/02/19 Чтв 09:14:26 357737365
>>357688
>Кто-то запизделся
Я где-то говорил, что продавец напрямую отправляет мне детали?
Нет, я пользуюсь услугами доп склада, заказываешь хуйни, детали, кастомные изделия, материалы, химию, жидкости, печатки с jlcpcb, небо и даже аллаха. Все локальной доставкой складывается в гуанджоу, а потом я решаю сам, сколько это стоит (декларация) как это упаковать и чем отправить, самолетом, поездом.

Вы блять как типикал рагули, если вы не знаете как это делается, значит все пиздят атата.
Аноним 21/02/19 Чтв 13:08:53 357750366
>>357737
>Аноним
Но зачем ты пиздишь, что камень тебе обходитмя в дорар? Добавь услуги посредников, доставку, растаможку и вкаля, цена одного контроллера нихуя не отличается от цены электронщика. Только заместо Путина, тв кормишь китайского кормчего и кучу барыг присосавшихся к доставке
Аноним 21/02/19 Чтв 15:35:20 357759367
>>357750
>Но зачем ты пиздишь, что камень тебе обходитмя в дорар? Добавь услуги
Как вы заебали...
Окей, хотите полную цену контроллера - доставка по китаю примерно как новая почта. 1$. Накладные расходы с учетом банковских процентов переводов, складу - 15%. Доставка 10$/кг
Стоит ли напоминать вес контроллера.
Короче этот сратый 401RCT6 обойдется в 1.2$
Аноним 21/02/19 Чтв 15:43:57 357761368
>>357750
Притом за доставку ты платишь в любом случае, не важно кто доставляет, телепорты не изобрели. Все поставщики покупают ровно также. Только к этой цене (1,2$ при учете что ты покупаешь не один МК а сразу все детали на все необходимые устройства), ты добавляешь 100% жадности и 20% налогов и получаешь ровно ту же цену того же космодрома.
Заебали, как нищеброды считаете каждую копейку в ссылках. Я говорю как есть в сухом остатке - 2-3 раза дешевле обходится ящик деталей например на 10 устройств. Дисплеи, кнопки, корпуса, платы (кстати ПП довольно тяжелые), короче все что нужно затариваешь и особо не колупаясь в ценах ты гарантированно экономишь в 2 раза
Аноним 21/02/19 Чтв 15:49:44 357762369
>>357761
Вот именно. У китайцев то зачем покупать, если можно на диджикее? Там хотя бы не подсунут ерунду.
Аноним 21/02/19 Чтв 16:22:27 357764370
>>357762
Насчет ерунды я уже говорил, ты сам выбираешь что покупать.
>если можно на диджикее
Поехавший? Барыжинг значительно похлеще хохломагазинов, цены оттуда выйдут еще дороже нем просто сходить в магазин.
Есть конечно позиции которые производят не в китае, тогда цена что в европе, что в китае одинаковая или даже дешевле из европы.
Недавно светодиоды японского производства покупал с TME, вышли более чем в 2 раза дешевле чем с китая. Конечно, такие позиции нужно смотреть отдельно.
Но речь изначально шла о цене деталей в целом, вам барыги вбили в головы, что если вы можете купить что-то в 2-3 раза дешевле, то это подделка. Конечно нет, подделка стоит в 10-20 раз дешевле, просто барыгам выгодно чтоб вы так думали.
Аноним 21/02/19 Чтв 16:30:48 357765371
>>357764
https://item.taobao.com/item.htm?id=572835945719
https://item.taobao.com/item.htm?id=44346842148
Как видишь, цена в 4 раза отличается на самом магазине. На фото думаю отличия тоже увидишь. На второй ссылке не указано что это оригинал. В чем обман со стороны китайцев? Если барыги у нас покупают за 1,2 юаня, а продают как оригиналы, ну блять, это не китайцы виноваты.
Аноним 21/02/19 Чтв 16:44:38 357767372
>>357765
Как вы блядь вообще разбираетесь в этих иероглифах? Гугл транслейт?
Аноним 21/02/19 Чтв 17:22:33 357772373
Аноним 21/02/19 Чтв 19:33:44 357780374
>>357772
Господи, как обычно, абы ляпнуть что. Речь о позиции оригинал и копия, что китайцы предоставляют выбор, а не про какой-то конкретный радиоэлемент, это было бы достаточно глупо.

За бсоды не знаю, я не пользовался особо этими конвертерами, просто привел пример на том, что первое пришло в голову, но опять же CP2102N в китае ровно в 2 раза дешевле диджикея.

Личный выбор на то и личный, у меня к китаю достаточно положительное отношение, особенно если что-то заказывать напрямую с завода под заказ, не единично конечно же. Например заказать пьезоэлементы по своим чертежам в европе/США обходится 7-8$ за штуку на сотне, то же самое сделать в китае - 0,6-0,8$ за штуку при той же партии. Хотя это и так очевидно.

Рассуждать где лучше покупать нужно после сборки изделия, передачи заказчику, засунуть руку в карман и поглядеть сколько у тебя в итоге осталось, тогда и делать объективный выбор.
Аноним 21/02/19 Чтв 20:53:43 357788375
>>357764
>вам барыги вбили в головы, что если вы можете купить что-то в 2-3 раза дешевле, то это подделка
Но ведь т ы можешь посмотреть цены на сайте ST и убедиться, что 401rc стоит 2.43 от 10к штук. Как же добрая китайца продает по дорару? Сальваж? Подъебка? Или злой СТ вбивает нам в головы, что 2.43 это нормальная цена?
Аноним 21/02/19 Чтв 21:25:35 357792376
>>357788
Цены на сайте производителя указаны с учетом интересов дистрибьюторов, просто чтоб не срать им. Опять же, цены для покупателя. Это легко проверить, у того же VDMAIS цены на продукцию Analog Devices ниже чем цены на сайте AD, поставки у них прямые от AD без дополнительных посредников. В некоторых случаях (если они брали большую партию чего-либо) у них цены даже ниже чем в китае, но это не особо часто такое.
Texas например указывает что цена может сильно варьироваться от условий.
Так что эти цены хороши для быстрой оценки в большую сторону, например заказчик спрашивает, сколько это будет стоить? Берешь цены с сайтов производителей и будь уверен что не проебешься, т.е. она будет "с запасом"
Аноним 21/02/19 Чтв 21:47:41 357793377
Вот вопрос тогда, сколько стоит законченное рабочее изделие с внутренним ПО, конфигурация примерно такая
msp430fg4618
XC2C32A-6VQG44
msp430fg2112
max9202
dg403
mc1350
tc4427 2
4х слойная ПП 80
80мм
штук 10 операционников типа 358х, 4 оптрона, диоды, батерая, 2576, конденсаторы, мелочевка, кварцы 2ши, несколько светодиодов, дроссели короче как обычно
Вот сколько навскидку это стоит?
Аноним 21/02/19 Чтв 23:35:41 357799378
>>357793
Тут стоимость будет в основном определяться потраченным на разработку временем, а не стоимостью деталей, если конечно это не относительно большая серия. За единичное устройство я бы обсуждал от $1500 самый минимум.
Аноним 21/02/19 Чтв 23:50:27 357800379
>>357792
Нет. У всех вендоров цены на сайте включают только маржу вендора без учета дистрибьютора. Тексас, например, можно вообще поштучно купить и оплатить кредиткой, дистрибьютора в цепочке не будет.
Далее, каждый вендор имеет свою стратегию - тексас имеет высокие сайтовые цены, но может сильно снижать квотные цены, особенно на коммодити, 300мм пластины помогают. Девицы наоборот. Им нет смысла продавать крутой аналог задешево, особенно после покупки Linear - конкурентов почти не осталось.
Есть простой лайфхак: конечная цена в РФ примерно равна сайтовой. Ну то есть дистик получит скидку от вендора, накрутит свою маржу и НДС - то на то и выйдет. До 50к штук приблизительно работает.
Аноним 22/02/19 Птн 00:06:36 357801380
>>357800
>Им нет смысла продавать крутой аналог задешево, особенно после покупки Linear - конкурентов почти не осталось.
Куда смотрел швятой антимонопольный комитет? У них же там вроде как такие сделки запрещены.
Аноним 22/02/19 Птн 00:23:59 357802381
>>357800
Абсолютно верно. Вот эти НДС, маржа и прочее и дает 100% цены товара. Именно об этом я и говорил, что цены на сайтах - индикативные. Покупая в китае вы фактически покупаете со склада с которых отгружают дистрибьюторам. Отсюда и разница в цене в 2 раза. Если вы сами захотите продавать эти детали, купленные в китае, вы добавите налог, свою прибыль и получится ровно то, что и в магазине. Тут нет никакой магии, нет подделок продукции, просто многие люди забывают, что цена товара в стране составляет едва ли 30%, все остальное - накрутки, налоги
Аноним 22/02/19 Птн 00:28:31 357803382
>>357799
Если что - 65$ цена. Я это к тому, что это законченное изделие, проверенное, настроенное. Пример привел лишь для того, чтоб показать истинную дешевизну радиокомпонентов
Аноним 22/02/19 Птн 09:19:31 357817383
>>357803
Просто именно эти радиокомпоненты уже многократно окупили свою разработку и выпускаются настолько большими партиями что практически стоят копейки. Стоимость сырья, издержки производства, логистики, амортизации станочного парка просто растворились в количестве уже реализованного
Аноним 22/02/19 Птн 11:08:58 357828384
>>357802
Тексас и ADi уже прекращают отгрузки в Китай, оставив по одному большому дисти. Скоро и вендоры второй-третьей руки будут делать то же самое - ты или лидер рынка, или следуешь за лидером. Никому не охота ебаться с реэкспортом.
Маржа и прочее - это треть цены максимум. 100% накрутки будет если покупать со склада. Но опять же через пару лет ты со склада купишь только коммодити. Нужен тебе будет проц или что повеселее - добро пожаловать в мир квот и лид таймов.
А цены в Китае.. Сегодня они есть, потому что у Фоксконна эппл не выбрал весь объем аудиокодеков, завтра нет, потому что в этот раз выбрал.
Аноним 22/02/19 Птн 11:12:06 357829385
>>357793
Без учета памяти и керамических конденсаторов, я готов сделать тебе такую плату за 22-23 доллара тут в РФ. В партии от 5к штук. Керамику достаешь сам, я не буду связываться с керамическими конденсаторами в партиях менее миллиона.
Аноним 22/02/19 Птн 11:14:21 357830386
>>357801
Ну, формально конкуренция есть. Но после сделок c Hittite и Linear, девицы получили себе в портфолио уникальные продукты.
Аноним 22/02/19 Птн 16:51:04 357852387
Ничего не меняется, зашла речь о цене деталей и покупке, все свели к глобальной политике, каким-то фоксконн, эпл, блять, каким-то хуем какие-то аудикодеки приплели, все что "слышал звон", все высрали в тхреад и довольно урчат.
Двач такой двач
Аноним 22/02/19 Птн 16:56:27 357853388
d1a37563495598f[...].jpg (34Кб, 500x336)
500x336
>>357829
>я не буду связываться с керамическими конденсаторами в партиях менее миллиона

Вся русня в одном предложении. Нахуй вы кому нужны с такими запросами. Китаец сделает все гораздо лучше и качественнее при партии в 100шт за меньшие деньги. Ведь они не столь брезгливые господа.
Аноним 25/02/19 Пнд 16:13:17 358087389
>>357853
Не сделает. Сейчас на керамику ебанутая аллокация по всему миру. Или 35 недель, или трехкратная цена, или искать по стокам. Последнее очень времязатратно.
Аноним 26/02/19 Втр 09:34:00 358129390
Кто какой средой разработки пользуется?
Аноним 26/02/19 Втр 09:38:12 358131391
Аноним 26/02/19 Втр 09:42:06 358133392
>>358129
Обсуждали уже много раз, в этом треде в том числе. Вообще советую осознать, что на STM32 микроконтроллеры вовсе не заканчиваются.
Аноним 26/02/19 Втр 14:28:08 358181393
Аноним 26/02/19 Втр 15:27:58 358187394
>>358181
Хуя ты. И как она, стоит того?
Аноним 26/02/19 Втр 15:59:34 358191395
>>358187
Я давно на игле джетбрейнса, поэтому да. Знакомая и привычная для меня среда, все красиво собирается через cmake, есть дебаг и вообще все как положено.
я вообще на работе на джаве прогромирую, микроконтролёры только как хобби
Аноним 27/02/19 Срд 17:23:10 358334396
>>357730
На F407 работает (спс), но на F103 не генерируются пр