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

Microchip SAM E Series: обмен опытом

Приветствую!

Недавно обратил внимание на данное семейство МК. Понравилась цена и более продуманная периферия (в отличие от STM32).
По мере изучения возможностей периферии обнаружил некоторые нюансы, нестыковки и неясности в даташите. Не исключаю, что где-то не прав.

1. Порты GPIO не имеют возможности задать тип выходного драйвера - push-pull или open-drain. Всегда push-pull. Это правда?
В документации все картинки и описание регистров не дают информации, как настроить выход на open-drain. Некоторые источники (раздва) это подтверждают.
Ну а как тогда, например, I2C? Ему обязательно нужна шина с подключением через open-drain. Через DIR, что ли, управляют, как в AVR? Костыль, ИМХО.

2. Тут.

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


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

1. Ну да, в даташите есть некоторая информация по этому поводу

Цитата

36.5.1 I/O Lines
In order to use the I/O lines of this peripheral, the I/O pins must be configured using the I/O Pin Controller (PORT). When the SERCOM is used in I2C mode, the SERCOM controls the direction and value of the I/O pins. In I2C mode pull-up resistors are disabled. External pull-up resistors are required for proper function.

image.thumb.png.f26e19c0103ab46fe6f09fd18bef5b09.png

Контроллер SERCOM переопределяет OUT в 0, а open-drain эмулирует через сигнал DIR модуля GPIO.

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


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

32.2

Features

• Selectable Input and Output Configuration for Each Individual Pin

• Software-controlled Multiplexing of Peripheral Functions on I/O Pins

• Flexible Pin Configuration Through a Dedicated Pin Configuration Register

• Configurable Output Driver and Pull Settings: – Totem-pole (push-pull) – Pull configuration – Driver strength

• Configurable Input Buffer and Pull Settings: – Internal pull-up or pull-down – Input sampling criteria – Input buffer can be disabled if not needed for lower power consumption – Read-Modify-Write support for output value (OUTCLR/OUTSET/OUTGL) and pin direction (DIRCLR/ DIRSET/DIRTGL)

• Input Event: – Up to four input event pins for each PORT group – SET/CLEAR/TOGGLE event actions for each event input on output value of a pin – Can be output to pin

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


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

2 hours ago, Arlleex said:

более продуманная периферия (в отличие от STM32).

1. Порты GPIO не имеют возможности задать тип выходного драйвера - push-pull или open-drain. Всегда push-pull. Это правда?

Нестыковочка, однако )))

В прежних атмеловских ARM/Cortex был регистр Multi-driver Enable Register (PIO_MDER), который как раз для целей разрешения режима open-drain.

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


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

15 минут назад, dimka76 сказал:

Нестыковочка, однако )))

Ну я смотрю на общий вес всех "за" и "против". Во многом отношении МК SAM привлекательнее STM32 одного ранга:wink:

На самом деле не хотелось бы превращаться во всем известного Александра, рекламирующего везде понравившийся МК:spiteful:
Просто я искал довольно гибкое решение по конкурентной цене. И вот оно нашлось. Но есть нюансы, собственно, как и везде.

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


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

image.thumb.png.bd10ec8744e4ab8a986d565d12d1e7cd.png

 

image.thumb.png.a64ff4136773746d9e5f661e80da24ee.png

 

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

 

image.png

По моему сугубо личному мнению, ATSAM могут быть привлекательны лишь встроенным High-Speed USB PHY, чего STM не имеет, хотя в какую-то чуть ли не единственную модельку они все-таки встроили High-Speed USB PHY.

Но и у NXP также есть встроенный High-Speed USB PHY.

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


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

10 минут назад, dimka76 сказал:

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

Довольно много нюансов, я бы сказал. Например, ATSAME51J20 (120MHz, 1MB Flash, 256kB RAM, LQFP-64) сейчас стоит < 300р.
При этом периферия заметно лучше по удобству работы, нежели в любом STM32, в том же ценовом диапазоне или даже кратно выше.
2 CAN-FD есть, мне в ближайшем будущем вполне может понадобиться. Пока что простой CAN - и здесь перевешивает STM32 просто ценой.
Сейчас я рассматриваю STM32F412RE, тупо потому, что выводится вся нужная мне периферия на лапы корпуса LQFP-64. И стоит ~240р.
Но одновременно я понимаю, сколько костылей я должен наворотить в ПО под STM-ку, дабы эмулировать аппаратный CS в том же SPI и много чего еще.

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


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

34 minutes ago, Arlleex said:

Довольно много нюансов, я бы сказал. Например, ATSAME51J20 (120MHz, 1MB Flash, 256kB RAM, LQFP-64) сейчас стоит < 300р.
Но одновременно я понимаю, сколько костылей я должен наворотить в ПО под STM-ку, дабы эмулировать аппаратный CS в том же SPI и много чего еще.

Главное еррату читать перед использованием, у Атмела много неисправимых кривостей в чипах

If the operating temperature is less than -20°C, the device does not start.

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


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

6 часов назад, _4afc_ сказал:

Главное еррату читать перед использованием,

Ага.

Device Operation for Temperature < -20°C If the operating temperature is less than -20°C, the device does not start.

This erratum only applies to Revision A silicon (all temperature grades) and Revision D silicon (85°C temperature grade).

7 часов назад, Arlleex сказал:

Пока что простой CAN - и здесь перевешивает STM32 просто ценой.

Не только, в STM кан просто убогий с тремя маил боксами.

7 часов назад, Arlleex сказал:

Сейчас я рассматриваю STM32F412RE, тупо потому, что выводится вся нужная мне периферия на лапы корпуса LQFP-64.

Что нельзя вывести в SAME?

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

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


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

2 часа назад, _4afc_ сказал:

Главное еррату читать перед использованием...

1 час назад, Vasily_ сказал:

This erratum only applies to Revision A silicon (all temperature grades) and Revision D silicon (85°C temperature grade).

О как. Неизвестно еще, какую ревизию предоставит тот же Элитан. Лотерея.

1 час назад, Vasily_ сказал:

Не только, в STM кан просто убогий с тремя маил боксами.

Ну то что мэйлбоксов всего 3 - это да, минус. Становится сложнее организовать менеджмент сообщений.
А чем еще он плох? В целом, у нас на них работают CAN-анализаторы (адаптеры) и USB-CAN-мосты (в SoM-модуле не хватило каналов CAN).

1 час назад, Vasily_ сказал:

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

Ну, к сожалению, ограничивает стоимость да и только лишь. На том же Элитане 100-ногий уже в 2-2.5 раза дороже 64-ногого. А это не мой бюджет.
Я же ведь пока прицениваюсь, то тут посмотрел, то там. Вся схема уже даже нарисована, все что нужно заложил - осталось выбрать контроллер.
Хотя, конечно, схема рисуется когда МК выбран - но не мой случай - у меня все достаточно тривиально и МК меняется на любой доступный/оптимальный.

P.S. А вот 128-ногий ATSAME54P20 (самый жирный) - оказался дешевле моделей без Ethernet-а и с меньшим объемом Flash/RAM. Где логика...:crazy:

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


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

А. Походу понял, почему STM32F412 такие дешевые.

Цитата

2.1.7 Flash sector erase issue for sectors 5 to 11
Description
Under specific conditions, flash erase issues are observed. The involved sectors are: 5 to 11.
Workaround
Do not perform sector erase on sectors 5 to 11. Use flash mass erase to erase sectors 5 to 11.

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

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


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

16 hours ago, dimka76 said:

Нестыковочка, однако )))

В прежних атмеловских ARM/Cortex был регистр Multi-driver Enable Register (PIO_MDER), который как раз для целей разрешения режима open-drain.

Ну и тут так же,  из даташита на SamE70:

 

opendrain.PNG

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


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

27 минут назад, TU-104 сказал:

Ну и тут так же,  из даташита на SamE70...

Ну я в SAME5x понял как сделать можно - через регистр DIR. Он отключает выходной драйвер (вообще), переводя линию в Z.
Теперь все встало на свои места и понятно, зачем они сделали отдельные регистры атомарных операций SET/CLR/TGL на DIR.

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


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

Небольшой оффтопик, но я обязан написать.

То, что STM32F412 не может нормально работать с Flash при стирании секторов с 5 по 11, относится к микросхемам ревизии Z.
В ревизиям 1 и C этот баг был исправлен, о чем свидетельствует таблица 4 в эррате. Я сначала даже сунулся в коммьюнити STM-оводов.

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


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

16.11.2020 в 18:46, Arlleex сказал:

О как. Неизвестно еще, какую ревизию предоставит тот же Элитан. Лотерея.

Если учесть что ревизия А 2017 год, шансов довольно много получить правильный чип.

А может просто стоит взять чип на 125град ?

 

16.11.2020 в 18:46, Arlleex сказал:

Ну, к сожалению, ограничивает стоимость да и только лишь. На том же Элитане 100-ногий уже в 2-2.5 раза дороже 64-ногого. А это не мой бюджет.

Я не знаю что там в Элитане пишут эффективные менеджеры, в миру разницы практически нет.

https://eu.mouser.com/Semiconductors/Embedded-Processors-Controllers/Microcontrollers-MCU/ARM-Microcontrollers-MCU/_/N-a85pc?P=1z0wuodZ1z0ypqiZ1z0ypqj&Keyword=ATSAME51&FS=True&Ns=Pricing|0

16.11.2020 в 18:46, Arlleex сказал:

P.S. А вот 128-ногий ATSAME54P20 (самый жирный) - оказался дешевле моделей без Ethernet-а и с меньшим объемом Flash/RAM. Где логика...

Это надо спросить у эффективных манагеров!

 

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


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

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

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

Гость
К сожалению, ваш контент содержит запрещённые слова. Пожалуйста, отредактируйте контент, чтобы удалить выделенные ниже слова.
Ответить в этой теме...

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

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

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

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

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

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