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

 
 
> STM32F висящие входы, Опасно ли?
RomanRom
сообщение Mar 15 2012, 12:53
Сообщение #1


Местный
***

Группа: Участник
Сообщений: 231
Регистрация: 14-02-05
Пользователь №: 2 635



В STM32F1xx есть два похожих режима: Reset State (вход висящий, но без тактирования GPIO) и Input Floating (вход висящий, но с тактированием GPIO).
Вопросы.
1) Можно ли оставлять висящие входы в STM32F1xx в принципе или их надо обязательно подтягивать внутренними резисторами или переводить в режим выхода?
2) Будет ли увеличиваться ток потребления в режиме с висящими входами, как в AVR (из-за наводок)?
3) Если подтягивать резисторами, то нужно ли включать тактирование GPIO или можно тактирование не включать?
4) Аналогичные вопросы для режима входа с альтернативными функциями
Go to the top of the page
 
+Quote Post
2 страниц V   1 2 >  
Start new topic
Ответов (1 - 16)
dac
сообщение Mar 15 2012, 16:11
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 600
Регистрация: 27-05-05
Пользователь №: 5 482



1) нельзя, нельзя для любого мк, но некоторые прощают, стм32 не прощает. где то на форуме уже был крик души прошедшего по граблям.
и лучше на выход, встроенные подтяжки слабые.
2) см. п1
3) что бы подтянуть резистором, тактирование порта все равно придется включить.
4) см. п1
Go to the top of the page
 
+Quote Post
zöner
сообщение Mar 15 2012, 18:45
Сообщение #3


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

Группа: Участник
Сообщений: 195
Регистрация: 16-02-12
Пользователь №: 70 299



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

Сообщение отредактировал zöner - Mar 15 2012, 18:45
Go to the top of the page
 
+Quote Post
RomanRom
сообщение Mar 17 2012, 12:32
Сообщение #4


Местный
***

Группа: Участник
Сообщений: 231
Регистрация: 14-02-05
Пользователь №: 2 635



В AVR-контроллерах, как мне помнится, тоже на входах стоят триггеры Шмитта, но там рекомендуют висящих входов не оставлять.

С другой стороны, если в STM32 подтягивающие резисторы включаются только при наличии тактировании GPIO, то без тактирования ток потребления микросхемы должен быть меньше, следовательно, входы можно оставлять висящими и они не будут приводить к "перебрасыванию" уровней от наводок.

Тогда чем отличается STM32 от AVR в части триггеров Шмитта?
Go to the top of the page
 
+Quote Post
Aner
сообщение Mar 17 2012, 14:57
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



можно, а иногда и нужно.
Go to the top of the page
 
+Quote Post
dac
сообщение Mar 17 2012, 15:06
Сообщение #6


Знающий
****

Группа: Свой
Сообщений: 600
Регистрация: 27-05-05
Пользователь №: 5 482



делайте выводы
Go to the top of the page
 
+Quote Post
Aner
сообщение Mar 17 2012, 15:25
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



и где там про висящие входы?
Go to the top of the page
 
+Quote Post
Allregia
сообщение Mar 18 2012, 15:30
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 047
Регистрация: 28-06-07
Из: Israel
Пользователь №: 28 763



Помоему, лучше что можно - аналоговыми входами сделать.
Go to the top of the page
 
+Quote Post
paskal
сообщение Mar 20 2012, 19:50
Сообщение #9


Местный
***

Группа: Свой
Сообщений: 352
Регистрация: 29-10-06
Из: Тула
Пользователь №: 21 769



Цитата(Aner @ Mar 17 2012, 18:25) *
и где там про висящие входы?

Наверно это:
Цитата(vlad_new @ Aug 21 2011, 17:02) *
К стате уж точно нельзя оставлять не использованные лапки во float. Первой же командой всегда перевести все лапы на Pull-Down ( подтяжка вниз).

Go to the top of the page
 
+Quote Post
dinam
сообщение Mar 23 2012, 04:07
Сообщение #10


Профессионал
*****

Группа: Свой
Сообщений: 1 415
Регистрация: 10-06-05
Из: Наукоград Кольцово(Новосибирск)
Пользователь №: 5 898



Я ещё для проверки помехоустойчивости брал в руку иголку и тыкал на каждую ножку. Проверял чтобы программа все такие действия отрабатывала корректно. Думаю что если проведете подобный эксперимент у вас сразу отпадут подобные вопросы biggrin.gif
Go to the top of the page
 
+Quote Post
RomanRom
сообщение Apr 16 2012, 13:09
Сообщение #11


Местный
***

Группа: Участник
Сообщений: 231
Регистрация: 14-02-05
Пользователь №: 2 635



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

Но тогда контрольный вопрос - зачем разработчик STM32F ввел специальный режим тактирования портов, утверждая, что это экономит энергию? Дело в том, что если не разрешить в программе тактирование, то все входы автоматически переходят в "подвешенное" Z-состояние. Может быть, наоборот, разработчик считает, что без тактирования помехи внутрь не проходят и все-таки можно оставлять неиспользуемые входы свободными?
Go to the top of the page
 
+Quote Post
Aner
сообщение Apr 16 2012, 13:19
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Пин для подключения батарейки тоже заземлять предлагаете? Попробуйте и скажите ка что у вас получилось?
Go to the top of the page
 
+Quote Post
RomanRom
сообщение Apr 16 2012, 13:35
Сообщение #13


Местный
***

Группа: Участник
Сообщений: 231
Регистрация: 14-02-05
Пользователь №: 2 635



Цитата(Aner @ Apr 16 2012, 16:19) *
Пин для подключения батарейки тоже заземлять предлагаете? Попробуйте и скажите ка что у вас получилось?

Aner, пожалуйста, поясните, какое отношение имеет батарейка к конкретному вопросу про программное тактирование портов???
Go to the top of the page
 
+Quote Post
Aner
сообщение Apr 16 2012, 13:46
Сообщение #14


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Как я понимаю, речь о висящих в воздухе свободные входы у STM32F, которые якобы "подвешивают" процессор.
Пин для подключения батарейки- это же вход, также как и пины для подключения часового кварца, хотя последнии можно пользовать как GPIO.
Тактирования портов "с боку".
Go to the top of the page
 
+Quote Post
RomanRom
сообщение Apr 16 2012, 14:01
Сообщение #15


Местный
***

Группа: Участник
Сообщений: 231
Регистрация: 14-02-05
Пользователь №: 2 635



Цитата(Aner @ Apr 16 2012, 16:46) *
Как я понимаю, речь о висящих в воздухе свободные входы у STM32F, которые якобы "подвешивают" процессор.
Пин для подключения батарейки- это же вход, также как и пины для подключения часового кварца, хотя последнии можно пользовать как GPIO.
Тактирования портов "с боку".

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

В STM32F имеется режим тактирования портов, который отсутствует в ATmega. Вот и хочется узнать, может быть разработчик как раз и решил эту проблему. Напрашивается вариант - если в каком-либо порту A, B, C ни одна линия не используется, то можно задать Reset-State без тактирования для всего порта. Если хоть одна линия порта используется, то тактирование придется разрешить и остальные линии перевести в режим pull-up или pull-down
Go to the top of the page
 
+Quote Post
Aner
сообщение Apr 16 2012, 14:10
Сообщение #16


Гуру
******

Группа: Свой
Сообщений: 4 869
Регистрация: 28-02-08
Из: СПБ
Пользователь №: 35 463



Если остальные линии перевести в режим pull-up или pull-down, это увеличит потребление только.
У меня не используемые порты отключены, ничего не виснет в 103, 107 процах.
Go to the top of the page
 
+Quote Post
RomanRom
сообщение Apr 17 2012, 08:35
Сообщение #17


Местный
***

Группа: Участник
Сообщений: 231
Регистрация: 14-02-05
Пользователь №: 2 635



Цитата(Aner @ Apr 16 2012, 17:10) *
Если остальные линии перевести в режим pull-up или pull-down, это увеличит потребление только.
У меня не используемые порты отключены, ничего не виснет в 103, 107 процах.

1) Каким образом программное подключение нагрузочных резисторов pull-up/pull-down по входу увеличивает ток потребления кристалла (имеется в виду, что к входу больше ничего не подключается извне)? Вы реально измеряли на сколько мА увеличивается ток?
2) Вы не тактируете неиспользуемые порты и оставляете в них висящими входы. Именно это я и предлагаю сделать. А по поводу тактируемых портов - что вы делаете со свободными выводами (или тоже их оставляете висящими в воздухе в режиме Input_Floating)?
Go to the top of the page
 
+Quote Post

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

 


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


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