koluna 0 21 марта, 2012 Опубликовано 21 марта, 2012 · Жалоба Здравствуйте! Начал осваивать Cortex'ы. Имеет ли смысл использовать CMSIS? Насколько она стабильна и безбажна? Реально ли упрощает жизнь в плане портирования на Cortex'ы других производителей и т. п.? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
porex 0 21 марта, 2012 Опубликовано 21 марта, 2012 (изменено) · Жалоба CMSIS это стандартная для всех кортексов библиотека. Как бы единый стандарт описаний ресурсов. Благодаря ей легко таскать код с одного вида ARM Cortex контроллеров на другой. Конечно периферия у всех армов разная, даже в пределах одной линейки, но вот доступ к регистрам периферии из Си стандартизирован и описан в CMSIS © Easyelectronics.ru Если тебе удобней работать напрямую с адресами регистров, то можешь ее не использовать:) Кстати многие путают CMSIS и StdPeriph Library у STM - это разные вещи. Изменено 21 марта, 2012 пользователем PoReX Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
koluna 0 21 марта, 2012 Опубликовано 21 марта, 2012 (изменено) · Жалоба © Easyelectronics.ru Если тебе удобней работать напрямую с адресами регистров, то можешь ее не использовать:) Кстати многие путают CMSIS и StdPeriph Library у STM - это разные вещи. Про CMSIS и StdPeriph Library у STM читал - не путаю :) Главные фишки CMSIS, как я понимаю, это хидеры для ядра и периферии Cortex-Mx, скрипты линкера, стартапы, векторы. Хидеры, как я понимаю, облегчают работу с ядром и периферией, упрощают портирование кода с проца одного производителя на другой (ну и в пределах "линейки"). Про остальные фишки CMSIS я пока не дочитал, в процессе... Фактически, как я понимаю, CMSIS частично используется для всех компиляторов. По крайней мере, для ГЦЦ однозначно: оттуда, как минимум, можно поиметь все выше перечисленное (в StdPeriph Library это присутствует, но не в полном составе). StdPeriph Library это АПИ для процов от СТМ, упрощающее работу с ядром и периферией. Вопросы были другого плана... Читал, что эти либы (говорим про АПИ) создают оверхед, криво написаны и являются весьма глючными, имеются дурные отзывы... Вот я и спрашиваю, имеет ли смысл использовать с ГЦЦ (ну и не только) АПИ этих либ помимо хидеров с регистрами, стартапов и скриптов :) Кстати, что из ГЦЦ Си++ можете порекомендовать? Это "Sourcery G++ Lite 2010q1-188 for ARM EABI" нормально? Платформы - винда и Убунта. Изменено 21 марта, 2012 пользователем koluna Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
porex 0 21 марта, 2012 Опубликовано 21 марта, 2012 · Жалоба StdPeriph Library это АПИ для процов от СТМ, упрощающее работу с ядром и периферией. Вопросы были другого плана... Читал, что эти либы (говорим про АПИ) создают оверхед, криво написаны и являются весьма глючными, имеются дурные отзывы... Вот я и спрашиваю, имеет ли смысл использовать с ГЦЦ (ну и не только) АПИ этих либ помимо хидеров с регистрами, стартапов и скриптов :) Кстати, что из ГЦЦ Си++ можете порекомендовать? Это "Sourcery G++ Lite 2010q1-188 for ARM EABI" нормально? Платформы - винда и Убунта. Так все-таки CMSIS или АПИ -> StdPeriph Library? Сам только вникаю в STM32, до этого работал с LPC17xx. CMSIS однозначно стоит использовать и дурных отзывов о ней не видел(отзывы в студию, если есть;)), да и никогда проблем с ней не было. С StdPeriph думаю могут быть проблемы, особенно от незнания принципов работы. Насчет Sourcery G++ не знаю, сам использую Keil под виндой, либо он же в виртуалке под убунтой:) Как я понял под Cortex-m3 для Linux другого компилятора и нету, так что выбирать не приходится. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
koluna 0 21 марта, 2012 Опубликовано 21 марта, 2012 · Жалоба Так все-таки CMSIS или АПИ -> StdPeriph Library? CMSIS содержит некоторое количество функций и структур для работы с ядром, поэтому я и назвал это АПИ :) Но, возможно, я не прав... Сам только вникаю в STM32, до этого работал с LPC17xx. CMSIS однозначно стоит использовать и дурных отзывов о ней не видел(отзывы в студию, если есть;)), да и никогда проблем с ней не было. Т. е., вы CMSIS использовали и все без нареканий? На работе Кейл + LPC17xx планируется. Параллельно хочу ГЦЦ + STM32 попробовать. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
porex 0 21 марта, 2012 Опубликовано 21 марта, 2012 · Жалоба Т. е., вы CMSIS использовали и все без нареканий? Да, глюков не замечено, при том что на работе все ею пользуются. Даже если в ней есть глюки, куда деваться, какие есть альтернативы? Работать на прямую с адресами регистров, так тут еще больше вероятность ошибок наделать, а CMSIS постоянно развивается. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Сергей Борщ 141 21 марта, 2012 Опубликовано 21 марта, 2012 · Жалоба Даже если в ней есть глюки, куда деваться,Один глюк точно есть (был): http://electronix.ru/forum/index.php?showtopic=100616 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
porex 0 21 марта, 2012 Опубликовано 21 марта, 2012 · Жалоба Там вопрос спорный, кто прав, а кто нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
koluna 0 21 марта, 2012 Опубликовано 21 марта, 2012 · Жалоба Да, глюков не замечено, при том что на работе все ею пользуются. Даже если в ней есть глюки, куда деваться, какие есть альтернативы? Работать на прямую с адресами регистров, так тут еще больше вероятность ошибок наделать, а CMSIS постоянно развивается. А что из нее наиболее часто используемо? Алиасы для регистров? Читаю доки, в голове каша пока :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
porex 0 22 марта, 2012 Опубликовано 22 марта, 2012 · Жалоба В основном да. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
koluna 0 12 апреля, 2012 Опубликовано 12 апреля, 2012 · Жалоба Всем привет! Ковыряю потихонечку "LPC1700CMSIS Standard Peripheral Firmware Library" от "NXP MCU SW Application Team". Кое-какие драйвера уже поиспользовал. Как можете охарактеризовать данную либу? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
esaulenka 7 13 апреля, 2012 Опубликовано 13 апреля, 2012 · Жалоба Как можете охарактеризовать данную либу? На мой взгляд, лучше уж с нуля всё написать. Благо в документации на контроллер всё подробно описано. Какая-то ненужная "типа универсальная" прослойка. Один чёрт при замене, скажем, LPC-STM придётся всё переделывать. А если менять LPC->LPC, то с большой вероятностью всё заработает и без переделок - периферия у разных контроллеров NXP весьма совместима. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться