Jump to content

    

XMEGA еще жива?

Я столкнулся с тем, что 22пФ на кварце - слишком большой конденсатор. Хотя по даташиту нужно 10...30пФ. Контроллер работал не стабильно. Поменял на 15 пФ - стало нормально.

 

Весьма интересно. Как то так получилось что у меня "зависло" довольно много конденсаторов на 27 пФ. Уже давно использую их в кварцевых генераторах AVR микроконтроллеров, причём любых типов. Никогда не было с этим проблем ни при малом ни при максимальном уровне выходного сигнала генератора. Может мне просто всегда везло с ёмкостью монтажа?

Share this post


Link to post
Share on other sites
Номинал этих конденсаторов надо смотреть в документации на кварц (параметр "нагрузочная емкость"). Если он укладывается в допустимые для контроллера - такой кварц применять можно. Умножаем его на два (конденсаторы включены параллельно кварцу но последовательно друг другу, поэтому емкость каждого вдвое больше общей) и вычитаем емкость встроенных в контроллер (если есть) и паразитные емкости монтажа. Получаем номинал конденсатора под конкретный тип кварца и конкретную схему/плату.
В даташите на кварц написано:

capacity load CL 16pF

В ATXMega128A1U встроенных ёмкостей нет.

Паразитные емкости хрен знает, как считать, мерять.

Получается надо кондёры по 32pF ставить?

Share this post


Link to post
Share on other sites
Получается надо кондёры по 32pF ставить?
Получается, так (при условии, что это техописание именно на ваш кварц). Кстати, ограничения в 10...30 пФ я в документации не нашел.

Share this post


Link to post
Share on other sites

А вообще можно на STM8 сделать - живее всех живых. 2 spi пожалуйста. Флеш до 64к. Куча других переферий can и т.д. И 5в.

 

А про конденсаторы - считаем по формуле C = 2C_L - C_in, где C_in - емкость выводов МК с учетом монтажа, если C_in отсутствует в ДШ на МК, с достаточной для практических расчетов точностью ее можно принять равной 3 - 5 пФ. В итоге 27пф а то и меньше.. я так понимаю можно и 22пф ставить.

Share this post


Link to post
Share on other sites
Получается, так (при условии, что это техописание именно на ваш кварц). Кстати, ограничения в 10...30 пФ я в документации не нашел.

Вот:

post-4057-1504574239_thumb.png

Вот ещё нашёл:

post-4057-1504574302_thumb.png

Получается, что нужно ставить разные емкости:

C1=16pF*2-3.8pF-5pF(емкость монтажа)-6pF(CXTAL1)=17,2pF

C2=16pF*2-3.8pF-5pF(емкость монтажа)-10pF(CXTAL2)=13,2pF

Их оба можно округлить до 15pF.

Share this post


Link to post
Share on other sites
Вот ещё нашёл:
Забавно. В свежескчанном вчера с микрочипа документе 8067O–AVR–06/2013 (ТО на XMEGA A1) этой таблицы нет. И в первой таблице только одно, минимальное значение.

Получается, что нужно ставить разные емкости:

C1=16pF*2-3.8pF-5pF(емкость монтажа)-6pF(CXTAL1)=17,2pF

C2=16pF*2-3.8pF-5pF(емкость монтажа)-10pF(CXTAL2)=13,2pF

Их оба можно округлить до 15pF.

Полагаю, что немного не так. 3.8 пФ - это емкость параллельно включенных 10 пФ и 6 пФ. Т.е. надо С1 = 16 пФ * 2 - 6 пФ = 26 пФ и С2 = 16 пФ * 2 - 10 пФ = 22 пФ. И минус емкость монтажа.

 

Добавлено: И округлял бы я их в разные стороны. Возможно как раз эта разница в емкостях C1 и C2 и заставляет генератор запускаться? То есть стоит попробовать выбрать емкости так, чтобы отношение результирующих емкостей тоже было примерно 6:10, т.е. С1 = 15пФ, С2 = 32 пФ.

Share this post


Link to post
Share on other sites
Забавно. В свежескчанном вчера с микрочипа документе 8067O–AVR–06/2013 (ТО на XMEGA A1) этой таблицы нет. И в первой таблице только одно, минимальное значение.
Есть в другом документе 8331F–AVR–04/2013 XMega AU Manual на странице 95.

 

 

Share this post


Link to post
Share on other sites

Всем привет! Наткнулся на небольшую проблему. При инициализации SPI-порта не могу управлять в своих целях ни MISO, ни MOSI. Это нормально? Вроде в документации написано, что в режиме Master, 3 вывода порта (SS, MOSI, SCK) указаны как User Defined. Мне казалось, что их я могу задействовать в своих целях как угодно...

Share this post


Link to post
Share on other sites
в документации написано, что в режиме Master, 3 вывода порта (SS, MOSI, SCK) указаны как User Defined.

Цитату из документации можете озвучить?

Я в документации вижу что речь идёт лишь о возможности изменения направления работы портов,

которое должно быть корректно задано пользователем.

Share this post


Link to post
Share on other sites

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

post-26768-1524464916_thumb.png

Edited by Neznaika

Share this post


Link to post
Share on other sites

В SPI можно иногда не задействовать SS, MISO. Без любой из остальных ног смысл интерфейса теряется

Share this post


Link to post
Share on other sites

MISO достаточно для датчика температуры, тут нужно лишь данные считывать по SCL, а для ЦАП достаточно MOSI, здесь только загрузка кода...

Share this post


Link to post
Share on other sites

Ну так и подключайте все параллельно а SSами выбирайте то с чем хотите общаться.

Share this post


Link to post
Share on other sites
MISO достаточно для датчика температуры, тут нужно лишь данные считывать по SCL, а для ЦАП достаточно MOSI, здесь только загрузка кода...

1. SCL - нет такого сигнала в SPI. Это из терминологии TWI (I2C)

2. SCK нужен всегда

3. С датчиками температуры по SPI не работал, вполне вероятно. Остальные известные мне устройства, работающие в двух направлениях, перед операцией считывания обязательно предусматривают команду на считывание, отправляемую от мастера к слейву, т.е. использование сигнала MOSI

Share this post


Link to post
Share on other sites

Видимо мы не понимаем друг друга) Я имел в виду SCK, тут я опечатался, приношу свои извинения. Ещё раз повторю вопрос по другому - если я использую SPI для датчика температуры.. У меня задействованы только SCK, MISO и SS, так как мне нужно только считать код. Могу ли я объявить MOSI как выходной пин и зажигать им светодиод?

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now