Перейти к содержанию
    

Определение inline функции

Лучше просто писать в регистр.

Как просто...

А почему они не пишут "просто в регистр"?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

А почему они не пишут "просто в регистр"?

От большого ума, надо полагать. Увы, вижу массу примеров, как на пустом месте создается "библиотека", бессмысленная и беспощадная. CMSIS - как раз один из таких случаев.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне кажется, тут разные люди говорят о разных CMSIS-ах. Та часть, которая от собственно ARM - она состоит вообще исключительно из *.h файлов с инлайн-функциями и определениями структур. (Это файлы core_cm0.h, core_cm3.h, core_cm4.h, core_cm4_simd.h, core_cmFunc.h, core_cmInstr.h.) Остальное - это уже от производителя конкретного контроллера. И здесь уже конечно бывают навороты:)

Кстати, ST здесь на удивление скромны - всего-лишь startup_xxx.s и system_xxx.c. Остальное - опять же хидеры. Зато уж в своей StdPeriph библиотеке они уже оторвались по полной:)

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Зато уж в своей StdPeriph библиотеке они уже оторвались по полной:)

И не только они: NXP, EFM - тоже самое делают.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Кстати, ST здесь на удивление скромны - всего-лишь startup_xxx.s и system_xxx.c. Остальное - опять же хидеры. Зато уж в своей StdPeriph библиотеке они уже оторвались по полной:)

Мне хватило просмотра кода вычисления делителя UART - остальную часть библиотек ST забраковал не глядя.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне хватило просмотра кода вычисления делителя UART - остальную часть библиотек ST забраковал не глядя.

Да, это шедевр:) Но это не CMSIS, вот я о чём.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Мне хватило просмотра кода вычисления делителя UART - остальную часть библиотек ST забраковал не глядя.

+1. STишная библиотека вызывает стойкое отвращение.

Причём особого смысла в её существовании не вижу: руководство по МК всё равно нужно читать, а для облегчения программирования регистров можно придумать очень небольшой набор макросов. Регистры МК довольно понятные. А в сложных случаях (таймеры) попытка сделать обёртку для упрощения может всё только запутать. Лучше в руководстве всё подробно расписать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

STишная библиотека вызывает стойкое отвращение.

Причём особого смысла в её существовании не вижу

Я вот тоже отвращение испытываю, но подергался-подергался и работаю с библиотекой.

Не критично. Но зло берет. Смайлик неудовлетворения.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, это шедевр:) Но это не CMSIS, вот я о чём.

Дык, в CMSIS тоже всплывают косяки периодически.

 

...подергался-подергался и работаю с библиотекой.

У меня были такие мысли, пока окучивал USB на STM32F40x. Сделано как будто специально, чтобы максимально неудобно софт писать было :(

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...