реклама на сайте
подробности

 
 
2 страниц V   1 2 >  
Reply to this topicStart new topic
> Atmel Studio + ASF + SAM4S, Помогите начать
Haamu
сообщение Mar 12 2014, 09:35
Сообщение #1


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 12-12-13
Пользователь №: 79 587



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

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

Существует ли в природе какая-то альтернатива ASF, что нибудь вроде как SPL (Standard Peripherals Library) для STM'ов?
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 12 2014, 12:31
Сообщение #2


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



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

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


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Alex A. Mihaylov
сообщение Mar 13 2014, 00:25
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 15-11-10
Из: Санкт-Петербург
Пользователь №: 60 892



Цитата(Haamu @ Mar 12 2014, 13:35) *
какая-то альтернатива ASF, что нибудь вроде как SPL (Standard Peripherals Library) для STM'ов?


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

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

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

Сообщение отредактировал Alex A. Mihaylov - Mar 13 2014, 00:27
Go to the top of the page
 
+Quote Post
Haamu
сообщение Mar 13 2014, 02:09
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 12-12-13
Пользователь №: 79 587



Цитата(Alex A. Mihaylov @ Mar 13 2014, 04:25) *
Но в целом - лучшая библиотека это документация на чип. Тут я с коллегой согласен.

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

IAR или Keil... Как то уж очень ценник у них пугающий. Пока обхожусь функционалом бесплатных IDE.
Go to the top of the page
 
+Quote Post
DpInRock
сообщение Mar 13 2014, 03:22
Сообщение #5


Гуру
******

Группа: Участник
Сообщений: 2 254
Регистрация: 4-05-07
Из: Moscow
Пользователь №: 27 515



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

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


--------------------
On the road again (Canned Heat)
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Mar 13 2014, 07:09
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



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

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

Go to the top of the page
 
+Quote Post
Alex A. Mihaylov
сообщение Mar 13 2014, 07:24
Сообщение #7


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 15-11-10
Из: Санкт-Петербург
Пользователь №: 60 892



Цитата(Golikov A. @ Mar 13 2014, 11:09) *
нет это чистая правда.
Потому что во время написания программ НЕ входит: отладка, тупежка почему оно не работает, мольбы помочь определить место куда забить костыль, переписка с поддержкой, ответы на негативные отзывы пользователей и прочее...


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

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

Впрочем, Atmel любят именно за то, что с их чипами можно работать и по голому железу (опять камень в сторону огорода ST).
Go to the top of the page
 
+Quote Post
Haamu
сообщение Mar 13 2014, 08:32
Сообщение #8


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 12-12-13
Пользователь №: 79 587



Цитата(Alex A. Mihaylov @ Mar 13 2014, 11:24) *
Не совсем. IHMO лучше тупежка при запуске, чем она же при сопровождении.

Полностью с Вами согласен.
Цитата(Alex A. Mihaylov @ Mar 13 2014, 11:24) *
Надо читать мануалы до полного просветления.

Тоже верно. Но вот что делать, если мануалы не особо информативны. У тех же ST SPL на столько просто устроена. Для каждой периферии по одному исходнику с заголовочником, в исходниках для каждой функции описание дано, что никакой мануал и не нужен становится. А в ASF всё как-то уж очень запутано. Тут всё дело в универсальности, одна библиотека на все случаи жизни.
Цитата(Alex A. Mihaylov @ Mar 13 2014, 11:24) *
Впрочем, Atmel любят именно за то, что с их чипами можно работать и по голому железу (опять камень в сторону огорода ST).

STM ни чуть не уступает в этом плане. CMSIS то для всех одинакова.
Цитата(Alex A. Mihaylov @ Mar 13 2014, 11:24) *
К теме форума: ASF хорош, но не догма.

А есть альтернатива? Всмысле другая библиотека какая?
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Mar 13 2014, 09:32
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



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

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

ИМХО надо писать свою библиотеку (или использовать свою корпоративную) если сидишь плотно на проце, не обязательно писать с нуля, можно хорошо проверять и править чужие исходники, но главное не использовать в слепую. В целом у всего что идет бесплатно в начале так и написано, используй на свой страх и риск, это только демонстрация и примеры.
Go to the top of the page
 
+Quote Post
Alex A. Mihaylov
сообщение Mar 14 2014, 00:21
Сообщение #10


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 15-11-10
Из: Санкт-Петербург
Пользователь №: 60 892



Цитата(Haamu @ Mar 13 2014, 12:32) *
Тоже верно. Но вот что делать, если мануалы не особо информативны. У тех же ST SPL на столько просто устроена. Для каждой периферии по одному исходнику с заголовочником, в исходниках для каждой функции описание дано, что никакой мануал и не нужен становится. А в ASF всё как-то уж очень запутано. Тут всё дело в универсальности, одна библиотека на все случаи жизни.


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

Цитата(Haamu @ Mar 13 2014, 12:32) *
STM ни чуть не уступает в этом плане. CMSIS то для всех одинакова.


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

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

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

Цитата(Haamu @ Mar 13 2014, 12:32) *
А есть альтернатива? Всмысле другая библиотека какая?


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

Сообщение отредактировал Alex A. Mihaylov - Mar 14 2014, 02:06
Go to the top of the page
 
+Quote Post
Haamu
сообщение Mar 14 2014, 02:24
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 12-12-13
Пользователь №: 79 587



Цитата(Alex A. Mihaylov @ Mar 14 2014, 04:21) *
По мне ST чем-то похож на Китайский автомобиль.
...
Atmel в этом плане прямо красная Итальянская машинка с лошадкой на капоте.

Если честно, пока не увидел такую разницу. Наверно я еще до конца не распробывал ни первый, ни второй.
Спасибо за советы, буду разбираться.
Go to the top of the page
 
+Quote Post
RabidRabbit
сообщение Mar 14 2014, 03:17
Сообщение #12


Местный
***

Группа: Свой
Сообщений: 397
Регистрация: 3-12-09
Из: Россия, Москва
Пользователь №: 54 040



bb-offtopic.gif А я вот брошу "фи" в сторону Atmel - в SAM D у них есть PTC (Peripheral Touch Controller), а вот описание регистров положить в даташит "забыли" - пользуйтесь QTouch library. Или может вообще нет там никакого PTC, а всё софтом реализовано mad.gif
Go to the top of the page
 
+Quote Post
Alex A. Mihaylov
сообщение Mar 14 2014, 04:29
Сообщение #13


Участник
*

Группа: Участник
Сообщений: 63
Регистрация: 15-11-10
Из: Санкт-Петербург
Пользователь №: 60 892



Цитата(RabidRabbit @ Mar 14 2014, 07:17) *
bb-offtopic.gif А я вот брошу "фи" в сторону Atmel


Есть такая буква... Безгрешным был только один человек, и того через 33 года распяли. Могу добавить в список камней TWI на SAM'ах - редкостная гадость.
Go to the top of the page
 
+Quote Post
Haamu
сообщение Mar 19 2014, 02:17
Сообщение #14


Частый гость
**

Группа: Участник
Сообщений: 90
Регистрация: 12-12-13
Пользователь №: 79 587



Всеже предлогаю вернуться к теме. Есть ли какая альтернатива ASF? Именно библиотека для работы с перефирией. Чем-то же люди пользовались до появления ASF? Чем больше разбираюсь с ASF, тем сильнее убеждаюсь, на сколько всё там запутано и усложнено. Взять тот же SPI. Для его инициализации надо вызвать с десяток функций, каждая из которых устанавливает по одному биту в регистр управления. Не проще сделать как у STM, заполнить структуру и проинициализировать всё одной функцией? В то же время инициализацию USART почему-то сделали через структуру. Такое ощущение складывается, что ASF писала не одна команда программистов, а будто куски нахватали из разных мест и собрали в кучу.
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Mar 19 2014, 04:42
Сообщение #15


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(Haamu @ Mar 19 2014, 04:17) *
Не проще сделать как у STM, заполнить структуру и проинициализировать всё одной функцией?
Не проще ли открыть документацию и записать слово в регистр без всяких структур и функций?


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post

2 страниц V   1 2 >
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 20th July 2025 - 21:22
Рейтинг@Mail.ru


Страница сгенерированна за 0.01422 секунд с 7
ELECTRONIX ©2004-2016