Большая часть вашего приложения не имеет ничего общего с ARM и cortex-m.Каждый производитель чипов добавляет свои собственные периферийные устройства (или иногда приобретенные) вокруг ядра руки.Большая часть вашего кода говорит с периферийными устройствами.Ядро процессора не делает чип, вещи, кроме ядра процессора, делают чип.
Вам нужно заняться исследованиями, stackoverflow не предназначен для того, чтобы делать это за вас.Вы должны быть в состоянии найти список деталей с количеством периферийных устройств, которые вы хотите, независимо от используемого ядра процессора.Хотя у конкретного производителя микросхем могут быть разные уарты в их линейке продуктов или разные gpi, adcs и т. Д., Вы все равно можете почувствовать вендора, не обращая внимания на каждую часть этого списка по мере сужения.
Ни у одного поставщика нет хороших документов, у некоторых есть плохие документы, что является частью этого упражнения.Все они предоставляют библиотеки, но ни у кого нет хороших библиотек, у некоторых есть плохие, но цель библиотек - скрыть детали.Вы должны выполнить свою домашнюю работу и посмотреть документы, посмотреть на этот код, можете ли вы жить с ним, можете ли вы заменить его или отремонтировать его, или лучше перейти к другому поставщику или тому же поставщику и альтернативной библиотеке.
1% работы - это написание приложения, остальные 99% - чтение документов и проведение экспериментов, чтобы заставить периферийные устройства делать то, что вы хотите, чтобы они делали.
Одна и та же марка или разные марки с одинаковым названием ядра процессора ничего не значат в отношении портативности.Если вы прочтете готовые документы так же, как и любые другие документы по ядру процессора, для каких-либо частей, которые вы оцениваете или выбираете, вы увидите, что даже если у 7 поставщиков есть продукты с cortex-m0, это ядро имеет параметры времени компиляции и выполнения, которыекаждый производитель мог сделать из кода или производительности несовместимой с другими чипами, используя cortex-m0.Но объем кода, который все равно будет портироваться, составляет очень очень небольшой процент вашего проекта.Большая часть вашего проекта - это не ядро процессора.
Примечание. ARM делает несколько ядер cortex-m несовместимыми на 100%.Если вы чувствуете необходимость использовать ядро ARM, а затем сузить желаемое, это сузит ваш выбор в отношении доступных чипов.
Встроенные АЦП позволяют экономить на чипах, в зависимости отв зависимости от требуемых характеристик, точности или производительности вы вполне можете получить внешний АЦП, который делает конкретный микроконтроллер менее важным, если АЦП и его характеристики являются вашим основным требованием.
Производительность программного обеспечения также малоне имеет ничего общего с ядром процессора.Поставщики собираются объединить IDE с компилятором и библиотеками, потому что люди ожидают, что ни один из них не принесет пользы или продуктивности.Один текстовый редактор идет по пути религии и политики с разработчиками, нет единого редактора или среды, которая идеально подходит для каждого разработчика, разработчики имеют свои способы ведения дел, а некоторые совместимы, а некоторые нет.Некоторые разработчики могут согнуть некоторые косяки.Очень редко вам приходится использовать инструменты, которые они предоставляют.
Мы не можем выбрать вашу часть для вас, и мы не можем выбрать вашу среду разработки.Это не цель stackoverflow.
Сколько времени потребовалось, чтобы написать свой вопрос и дождаться ответа, пока вы могли бы просмотреть все документы основных поставщиков несколько раз.Я надеюсь, что вы не остановились после первого.