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

В Atmel Studio есть такая чудесная штука под названием Atmel Software Framework (ASF) с кучей прекрасных примеров. Проблема вся в том, что все эти примеры идут под определенные отладочные платы. Да и вообще, как то всё запутано в этом ASF. В интенете как то скудновато информации на эту тему.

 

У кого есть опыт написания программ с использованием для контроллеров семейства SAM с использованием ASF, поделитесь пожалуйста информацией (или может готовым проектом), с чего начинать. Для начала хотябы как настроить систему тактирования и просто помигать светодиодом.

 

Существует ли в природе какая-то альтернатива ASF, что нибудь вроде как SPL (Standard Peripherals Library) для STM'ов?

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


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

Лучшая альтернатива - Datasheet. Тем более, что к любому процессору у атмела есть набор примеров.

А все люди, которые алкают всяких темных библиотек попадают в ад.

Лишь те чужие библиотеки достойны использования, текст которых ты лично просмотрел, одобрил и утвердил.

 

И вместо Атмел Студио я бы бросил взгляд в сторону IAR или Keil.

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


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

какая-то альтернатива ASF, что нибудь вроде как SPL (Standard Peripherals Library) для STM'ов?

 

А в чем проблема? Там есть замечательный USER BOARD - потом говоришь камень в основе и все. Тебе остается в хедере подправить настройки тактирования для работы. А всеми прелестями ASF можешь пользоваться.

 

Что до Keil (IHMO: боже упаси) или IAR (IHMO: больше с лицензией воюешь, чем программируешь. А ценник совершенно неадекватный.) то не рекомендую. AVR и ARM gcc в основе AVRStudio - штука достаточная для работы и в то же самое время весьма не хилая. А gdb в него так здорово интегрирован, что последний козырь IAR'а оказывается побит. У него, правда, еща распоследний есть - макроязык для стимуляции входных данных - но это совсем на любителя.

 

Но в целом - лучшая библиотека это документация на чип. Тут я с коллегой согласен.

Изменено пользователем Alex A. Mihaylov

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


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

Но в целом - лучшая библиотека это документация на чип. Тут я с коллегой согласен.

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

 

IAR или Keil... Как то уж очень ценник у них пугающий. Пока обхожусь функционалом бесплатных IDE.

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


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

Но все-же наличие библиотеки очень сокращает процесс написания программы.

Судя по сообщениям форума - это далеко не так.

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


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

нет это чистая правда.

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

 

так что сам акт писания действительно становиться меньше....

 

 

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


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

нет это чистая правда.

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

 

Не совсем. IHMO лучше тупежка при запуске, чем она же при сопровождении. А профи ВСЕГДА пишет так, чтоб можно было без проблем сопровождать код. И уж подавно не надо молить о поддержки, а после забивать костыли. Надо читать мануалы до полного просветления. И уж подавно реагировать на негативные отзывы - это просто кормить тролей.

 

К теме форума: ASF хорош, но не догма. В частности I2C device там сделан просто отвратительно. А вот USB device на порядок лучше STM'овского.

 

Впрочем, Atmel любят именно за то, что с их чипами можно работать и по голому железу (опять камень в сторону огорода ST).

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


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

Не совсем. IHMO лучше тупежка при запуске, чем она же при сопровождении.

Полностью с Вами согласен.

Надо читать мануалы до полного просветления.

Тоже верно. Но вот что делать, если мануалы не особо информативны. У тех же ST SPL на столько просто устроена. Для каждой периферии по одному исходнику с заголовочником, в исходниках для каждой функции описание дано, что никакой мануал и не нужен становится. А в ASF всё как-то уж очень запутано. Тут всё дело в универсальности, одна библиотека на все случаи жизни.

Впрочем, Atmel любят именно за то, что с их чипами можно работать и по голому железу (опять камень в сторону огорода ST).

STM ни чуть не уступает в этом плане. CMSIS то для всех одинакова.

К теме форума: ASF хорош, но не догма.

А есть альтернатива? Всмысле другая библиотека какая?

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


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

в исходниках для каждой функции описание дано, что никакой мануал и не нужен становится

вот в этом месте обычно больнее всего и прилетает...

 

ИМХО надо писать свою библиотеку (или использовать свою корпоративную) если сидишь плотно на проце, не обязательно писать с нуля, можно хорошо проверять и править чужие исходники, но главное не использовать в слепую. В целом у всего что идет бесплатно в начале так и написано, используй на свой страх и риск, это только демонстрация и примеры.

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


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

Тоже верно. Но вот что делать, если мануалы не особо информативны. У тех же ST SPL на столько просто устроена. Для каждой периферии по одному исходнику с заголовочником, в исходниках для каждой функции описание дано, что никакой мануал и не нужен становится. А в ASF всё как-то уж очень запутано. Тут всё дело в универсальности, одна библиотека на все случаи жизни.

 

Ну... У ASF есть отличная документация на сайте. Например, вот страница про I2C-slave для xMega (Хм... Мне показалось или этот кусок переписан и стал несравнимо лучше). Да и сама Atmel Studio открывает как раз нужную станицу.

 

STM ни чуть не уступает в этом плане. CMSIS то для всех одинакова.

 

Ни за что! Да, конечно, CMSIS одна, ибо она описывает ARMовское ядро. А вот набор регистров перефирии разный. Как и их содержание.

 

По мне ST чем-то похож на Китайский автомобиль. Каждая интерфейсная часть - прямо чудо. И все предусмотрено, и кнопочек-ручечек вагон, сидухи с шикарной подержкой, двигло отлично, коробка - класс, мафон с офигенным экраном просто чудо. Но в целом не чип, а сборище понадерганных кусков (сидухи примялись и отвалились, двигла не хватает для коробки, мафон не воспроизводит MP3, а кнопочками-ручечками вслепую пользоваться не получается - слишком плотно, соседнюю зацепляешь). Atmel в этом плане прямо красная Итальянская машинка с лошадкой на капоте. В том смысле, что дизайн не броский, сидухи без изысков, мафона вообще нет да еще и задний привод! Но раз прокатившись полюбишь навсегда. Ибо все составные части четко выверены и подогнаны. Все для твоего удобства.

 

Впрочем, каждый выбирает для себя... Возможно, я слишком критичен.

 

А есть альтернатива? Всмысле другая библиотека какая?

 

Ну так сказали же - есть. Документация на процессор. И уж поверьте мне, применительно к Atmel это не отсыл в лес, а реально дельный совет. Попробуйте. Вам обязательно понравится.

Изменено пользователем Alex A. Mihaylov

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


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

По мне ST чем-то похож на Китайский автомобиль.

...

Atmel в этом плане прямо красная Итальянская машинка с лошадкой на капоте.

Если честно, пока не увидел такую разницу. Наверно я еще до конца не распробывал ни первый, ни второй.

Спасибо за советы, буду разбираться.

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


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

:bb-offtopic: А я вот брошу "фи" в сторону Atmel - в SAM D у них есть PTC (Peripheral Touch Controller), а вот описание регистров положить в даташит "забыли" - пользуйтесь QTouch library. Или может вообще нет там никакого PTC, а всё софтом реализовано :mad:

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


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

:bb-offtopic: А я вот брошу "фи" в сторону Atmel

 

Есть такая буква... Безгрешным был только один человек, и того через 33 года распяли. Могу добавить в список камней TWI на SAM'ах - редкостная гадость.

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


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

Всеже предлогаю вернуться к теме. Есть ли какая альтернатива ASF? Именно библиотека для работы с перефирией. Чем-то же люди пользовались до появления ASF? Чем больше разбираюсь с ASF, тем сильнее убеждаюсь, на сколько всё там запутано и усложнено. Взять тот же SPI. Для его инициализации надо вызвать с десяток функций, каждая из которых устанавливает по одному биту в регистр управления. Не проще сделать как у STM, заполнить структуру и проинициализировать всё одной функцией? В то же время инициализацию USART почему-то сделали через структуру. Такое ощущение складывается, что ASF писала не одна команда программистов, а будто куски нахватали из разных мест и собрали в кучу.

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


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

Не проще сделать как у STM, заполнить структуру и проинициализировать всё одной функцией?
Не проще ли открыть документацию и записать слово в регистр без всяких структур и функций?

 

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


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

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

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

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

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

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

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

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

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

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