Какую линейку продуктов ARM Cortex M использовать? - PullRequest
0 голосов
/ 26 ноября 2018

Я пытаюсь выбрать конкретную линейку микропроцессоров ARM Cortex M для работы над проектом, который я хочу сделать.Поскольку все компании лицензируют архитектуру у ARM Holdings, мне интересно, какая разница в аппаратном обеспечении между брендами?Я думаю, что документация и производительность программного обеспечения и общий опыт могут быть решающим фактором?

Я пробовал одну компанию, и их документация отсутствовала!Тысячи страниц о том, какие замечательные вещи они делают, но очень мало информации о том, как их использовать.

В основном я ищу хорошую документацию.Мне не нужны бесконечные устаревшие примеры программ, которые не компилируют и не используют загадочные макросы и функции!Линия, которая включает в себя микропроцессор с 2 АЦП, а не просто мультиплексирование каналов на 1 АЦП, была бы хороша, но я мог бы в конечном итоге использовать внешний АЦП.

Кто-нибудь захочет сказать, что они рекомендуют и почему.

Кстати: моя история - программирование C ++, C # в MS Visual Studio для станков HMI, а также контроллеров движения.

Заранее спасибо, Крис

1 Ответ

0 голосов
/ 26 ноября 2018

Большая часть вашего приложения не имеет ничего общего с ARM и cortex-m.Каждый производитель чипов добавляет свои собственные периферийные устройства (или иногда приобретенные) вокруг ядра руки.Большая часть вашего кода говорит с периферийными устройствами.Ядро процессора не делает чип, вещи, кроме ядра процессора, делают чип.

Вам нужно заняться исследованиями, stackoverflow не предназначен для того, чтобы делать это за вас.Вы должны быть в состоянии найти список деталей с количеством периферийных устройств, которые вы хотите, независимо от используемого ядра процессора.Хотя у конкретного производителя микросхем могут быть разные уарты в их линейке продуктов или разные gpi, adcs и т. Д., Вы все равно можете почувствовать вендора, не обращая внимания на каждую часть этого списка по мере сужения.

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

1% работы - это написание приложения, остальные 99% - чтение документов и проведение экспериментов, чтобы заставить периферийные устройства делать то, что вы хотите, чтобы они делали.

Одна и та же марка или разные марки с одинаковым названием ядра процессора ничего не значат в отношении портативности.Если вы прочтете готовые документы так же, как и любые другие документы по ядру процессора, для каких-либо частей, которые вы оцениваете или выбираете, вы увидите, что даже если у 7 поставщиков есть продукты с cortex-m0, это ядро ​​имеет параметры времени компиляции и выполнения, которыекаждый производитель мог сделать из кода или производительности несовместимой с другими чипами, используя cortex-m0.Но объем кода, который все равно будет портироваться, составляет очень очень небольшой процент вашего проекта.Большая часть вашего проекта - это не ядро ​​процессора.

Примечание. ARM делает несколько ядер cortex-m несовместимыми на 100%.Если вы чувствуете необходимость использовать ядро ​​ARM, а затем сузить желаемое, это сузит ваш выбор в отношении доступных чипов.

Встроенные АЦП позволяют экономить на чипах, в зависимости отв зависимости от требуемых характеристик, точности или производительности вы вполне можете получить внешний АЦП, который делает конкретный микроконтроллер менее важным, если АЦП и его характеристики являются вашим основным требованием.

Производительность программного обеспечения также малоне имеет ничего общего с ядром процессора.Поставщики собираются объединить IDE с компилятором и библиотеками, потому что люди ожидают, что ни один из них не принесет пользы или продуктивности.Один текстовый редактор идет по пути религии и политики с разработчиками, нет единого редактора или среды, которая идеально подходит для каждого разработчика, разработчики имеют свои способы ведения дел, а некоторые совместимы, а некоторые нет.Некоторые разработчики могут согнуть некоторые косяки.Очень редко вам приходится использовать инструменты, которые они предоставляют.

Мы не можем выбрать вашу часть для вас, и мы не можем выбрать вашу среду разработки.Это не цель stackoverflow.

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

...