Поздравляем 2nd с днём рождения!
- Добрый день уважаемые коллеги. Вопрос типичный заложил в устройство STM32F0, в целом активно "узаю" Atmel и их ARM-ы, но хочется разнообразия. Скачал Atollic TrueStudio процессор в роде зацепился на моей плате через J-Link STM. Но не как не могу Help(435 знак., 02.03.2019 12:02,
, ARM, полностью)
- мне вот, как абсолютному новичку (на старости лет) в этих АРМах в частности и в языке Си вообще, было очень болезненно переползать с АСМа 8-битника. Это я начал делать после 35 лет работы с тем АСМом и в возрасте почти 60 лет. Сначала 8080/8085, Лагунов(272 знак., 02.03.2019 21:27)
- Я бы посоветовал переползти в 2 этапа - сначала на Си на 8битниках, потом на СИ с 8битников на самые простейшие АРМы. - scorpion(03.03.2019 11:00)
- Можно попробовать книгу почитать, говорят, помогает. Там нужная часть всего 150 страниц. SciFi(129 знак., 03.03.2019 10:28 - 10:30, ссылка)
- название книжки знаменитое. Читать пробовал. Что-то иногда понимаю. :-) - Лагунов(03.03.2019 10:39)
- Чего не понимаете - спрашивайте. Язык C в принципе несложный, хотя указатели многих поначалу озадачивают. ЛИ, помнится, тут возмущался указателями на указатели, но и в этом можно разобраться. - йцукен(03.03.2019 11:03)
- вот сейчас с этими указателями часто в ступоре. Вот сейчас конкретно надо передать строку из буфера в через USB Host во внешнее устройство, у которого по USB вирт. СОМ-порт. Вот есть функция: Лагунов(817 знак., 03.03.2019 12:00 - 12:05)
- USBH_HandleTypeDef - это структура-обработчик коннекта между usb-хостом и устройством, существует в проекте в единственном экземпляре. evgeniy1294(221 знак., 03.03.2019 22:04)
- С селектором (. или ->) все просто. С т.з. ассемблера f(struct* s,...) - это передача в стек вызова функции базового адреса для последующей относительной адресации, а addr->value - это сама относительная адресация. 8051(328 знак., 03.03.2019 15:59,
)
- &hUSBHost - Vit(03.03.2019 14:51)
- Лучше бы создать отдельную тему. Когда вы видите объявление USBH_HandleTypeDef *phost, phost является указателем на переменную типа USBH_HandleTypeDef. Значит, где-то, вероятно в .h файле, есть соответствующий typedef. йцукен(106 знак., 03.03.2019 12:22)
- Каждый выбирает для себя женщину, религию, дорогу. У вас 3 основных варианта: надеяться на куб, писать самому с использованием HAL/LL и писать всё самому. Выберите свою религию, от этого зависят дальнейшие шаги. - йцукен(02.03.2019 14:42, картинка)
- Качаете reference manual на камень и работаете по нему (CMSIS), попутно смотря примеры на LL. Кстати, TrueStudio - говно. Из IDE лучше Segger Embedded Studio (CrossWorks), хотя в идеале проект лучше собирать через cmake. - evgeniy1294(02.03.2019 13:57 - 13:59)
- Есть в библиотеках от ST слой LL = The Low Layer (LL) drivers are designed to offer a fast light-weight expert-oriented layer which is closer to the hardware than the HAL. А недружественно потому что сложно, сцуко! :) Это не старые добрые VLLV(97 знак., 02.03.2019 12:58)
- Я поначалу вообще завел себе а экселе таблицу в которой прописывал какие функции на какие биты регистров влияют. STM-вая додкументация бесила неимоверно. По ходу дела их искодники прошерстил. Был фшоке, что простое действие там выливается в целое Codavr(106 знак., 02.03.2019 12:25 - 12:33)
- Ключевое слово - CMSIS. Ну еще и CUBE-MX - графический конфигуратор для МК Cortex от STM --> - MBedder(02.03.2019 12:18 - 12:21, ссылка, ссылка)
- Забавный факт о кортексах. Блок NVIC умеет вызывать прерывание программно, что позволяет делать всякое. Например в таблице прерываний есть секции, помеченные как unused - эти векторы можно использовать в качестве пользовательских прерываний! evgeniy1294(249 знак., 01.03.2019 22:00 - 22:02, ARM, полностью)
- Попробовал перейти из софта в стоковый бутлодырь STM32L476. DFU без пина BOOT0 не стартует. Ищу волшебное слово. Аппаратное решение с временным заданием состояния BOOT0 не годится. - Vit(28.02.2019 17:20, ARM, полностью)
- Кстати, мы несправедливо обошли вниманием целое семейство камушков от Allwinner-а на ядре ARM9. Там целый выводок камешков, в том числе умилительный F1C100S, ARM9+32MB DDR в корпусе QFN88. Оно кстати способно играть H.264 в 720p. - LightElf(28.02.2019 15:08 - 15:23, ARM)
- Если вдруг кому-то срочно надо много считать, то у Allwinner появилось странное поделие MR100. Обещают 4 ядра Cortex-A7 + 64MB DDR2 в одном флаконе. - LightElf(28.02.2019 14:25, ARM, ссылка, полностью)
- Кучно пошло. iMX.8M Nano. До 4 ядер A53 плюс M7. DDR4/DDR3L. Корпусок конечно не айс, но грозятся что разводится в 6 слоях без micro-VIA. - LightElf(27.02.2019 17:43, ARM, ссылка, полностью)
- Можно ли получить номер бита битового поля структуры по его имени? maleon(691 знак., 26.02.2019 17:09, ARM, полностью)
- Теоретически, большим if-ом AlexBi(146 знак., 27.02.2019 12:55)
- А нумерация сверху или снизу? Вообще можно enum завести, как бомж написал, но непонятно чем тебе это поможет и зачем, ибо обратной операции у тебя нет (если гигантский switch-case не писать). - fk0(27.02.2019 00:17)
- Сверху maleon(49 знак., 27.02.2019 09:42)
- enum NameToBitNr {MTZP1, MTZP2, MTZO1,...}; бомж(41 знак., 26.02.2019 19:57)
- Для структур стандартно offsetof. Для битовых полей вроде бы нет. - misyachniy(26.02.2019 17:24, ссылка)
- можно с помощью X-MACRO которое создаст структуру и enum. Потом макрос по имени поля вернет номер из енума. - abivan(26.02.2019 17:23)
- Подскажите, в какую сторону следует смотреть для оценки количества выполняемых инструкций в пользовательской программе Linux (для ARM9). Есть ли возможность использовать системные утилиты? VVB_(474 знак., 12.02.2019 10:39, ARM, полностью)
- Если вам нужен профилировщик, то это callgrind (из пакета valgrind), но нужно помнить, что это долбанная виртуальная машина и делает выполняемый код медленнее раз в пять. lloyd(344 знак., 12.02.2019 13:05, ссылка)
- Если вам нужен профилировщик, то это вначале gprof, но работает он конечно так себе... Зато не так тормозит, как callgrind, и не жрёт столько памяти. Потом есть sysprof (относительно легко использовать), systemtap (не осилил) и современные fk0(489 знак., 13.02.2019 10:52)
- Я пока не считаю такты, а думаю, надо ли считать. Было бы неплохо использовать готовые системные инструменты, вот и интересуюсь их наличием. VVB_(90 знак., 12.02.2019 13:35)
- А что, real-time поток всего-то 40.000 пакетов CAN в секунду 300-МГц МК не потянет? Смешно, если не потянет. VVB_(67 знак., 12.02.2019 13:31)
- STM32 пин RX UART в качестве внешнего прерывания, изгалялся кто нибудь на эту тему ? чтот прерывания по ошибке нет от слова совсем. раньше Пользовал подобное на AVR и PIC все работало с пол пинка, здесь ну никак - Aleksey_75(25.02.2019 22:33, ARM, полностью)
- Умеет ли STM32 блокировать аппаратный RESET? Ксения(654 знак., 22.02.2019 19:12, ARM, полностью)
- Поскольку в STM есть внутренний ключ, дублирующий пин rst, можно предполагать, что в процессе bootload, он защищается от неожиданностей внешнего. Видимо можете измерить там 0в тестром, осцилло в процессе заливки флэш любым способом. ( я в онумер(44 знак., 23.02.2019 01:19 - 01:21)
- В загрузчик можно попасть двумя способами: evgeniy1294(176 знак., 23.02.2019 00:36)
- 1) Который именно STM32? Я правда не знаю, чтобы хоть какой-то умел, но мало ли
в Бразилии Донов Педро у ST камней? LightElf(131 знак., 22.02.2019 20:29)
- [CrossWorks for ARM 4.3.2] -> Интересное в мануале. Подняли старую тему, которой на секундочку 11 лет! про CrossWorks 1.7.6 -->. Посмотрел текущий статус тулчейна. Впечатлился. Evgeny_CD(1055 знак., 31.01.2019 13:05, ARM, ссылка, ссылка, полностью)
- Вроде бы уже и 4.4.0 вышел. А где для них лекарство брать? - Ксения(21.02.2019 14:30)
- Generic ARM CPU Support Package -> ARM7TDMI-S, ARM926EJ-S, ARM1136JF-S, ARM1176JZF-S, Cortex-A5, Cortex-A7, Cortex-A8, Cortex-A9, Cortex-R4F, Cortex-R5 - Evgeny_CD(21.02.2019 01:38, ссылка)
- ARM Simulator target Можно ПО без железа хотя бы немного поотлаживать -> - Evgeny_CD(21.02.2019 01:36, ссылка)
- На базе CrossWorks построена Segger Embedded Studio, которая бесплатна (!) для некоммерческого использования. - evgeniy1294(31.01.2019 13:37)
- не надо меня слушать про Tasking Library, вы загляните в её код. всё станет понятно. Mahagam(115 знак., 31.01.2019 13:21)
- И отдельный нюанс - их сайт вызывает у меня просто кайф! Даже не понимаю, отчего так. И раньше обращал внимание на то, что их стиль подачи информации, и сама информация, идеально цепляют меня. - Evgeny_CD(31.01.2019 13:16)
- К нему еще J-Link PRO -> (у нас чуть дешевле 70кр продают) и будет полный кайф. На пенсии буду кодить :) - они за 15 лет еще что-нибудь наулучшают :) - Evgeny_CD(31.01.2019 13:13, ссылка)
- Существуют интринсики для команды VADD.F32 (stm32f4xx)? Если да, то где их найти? - evgeniy1294(19.02.2019 12:04, ARM, полностью)
- ST выкатили STM32L5 с ядром CM-33 (FPU - Single-Precision). Из примечательного USB Type-C / USB power delivery controller и Octo SPI. Начиная с STM32L4 предлагают юзать внешний мелкожручий Step-Down. В какой-то их борде находил от Linear (ADI) - Vit(53 знак., 05.01.2019 15:12, ARM, полностью)
- [Panasonic MN1M7] High-performance ARM® Cortex®-M7 -> Пока будущее. Обещяется не очень много ОЗУ и FLASH, скорости 160 МГц, но высокая "дуракоупорность" - Evgeny_CD(23.05.2018 01:24, ARM, ссылка, полностью)
- Не работал SPI. На линию MOSI ставится единица и ничего не помогает. Методом исключения оказалось, что SPI не работает одновременно с I2C. Потратил несколько часов на выяснение этой хрени, пока не прочитал еррату и понял, что это глюк всех чипов. Котяра(82 знак., 15.02.2019 10:53 - 10:55, ARM, полностью)General