Jump to content
KVAnton

STM32 GPIO интересная проблема с Input

Recommended Posts

Всем привет, начал недавно STM32 осваивать (до этого были pic12-18/arduino/raspberry) и столкнулся с интересной проблемой:

Настроил GPIO как Input Pull-Up но при считывании получаю 0.

Условия:
Несколько других также настроенных портов (Input Pull-Up) при этом посажены на землю (на один порт Output Open-Drain), а непосредственно перед считыванием переключаю другой порт Output Open-Drain Pull-Up с 1 на 0.
При этом, если поставить задержку (пробовал 1мс) после переключения OutPut и считыванием Input получаю - 1, как и должно быть. Порты по схеме ни как не связанны - пробовал вообще отключать input порт от схемы (матрица кнопок) ситуация не меняется.

Работаю с китайской платой на stm32f103c8t6 (ардуино подобная) и библиотекой LL. Скорость порта пробовал разную - результат один.

Сможет кто-то объяснить или хотя бы намекнуть (куда копать, что почитать) почему такой эффект возможен?
Во всяких даташитах/аппликейшн ноте вроде ни чего интересного, зацепила только аббревиатура  SSO ( simultaneous switching output) в разделе Adapt GPIO speed (в AN на GPIO) - но понять глубину этой фразы и контекста с ходу не получилось (возможно из-за непонимания каких-то базовых моментов)

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

Буду благодарен любым вариантам, может что-то натолкнет на правильные мысли.

Share this post


Link to post
Share on other sites
3 часа назад, MasterElectric сказал:

Вопрос откуда взялся режим Output Open-Drain Pull-Up? Подтяжка внешняя?

нет, все подтяжки (pull up) внутри STM32, есть там такой режим. но пробовал и push-pull + pull-up разницы нет.

Share this post


Link to post
Share on other sites

Конденсаторы Panasonic. Часть 4. Полимеры – номенклатура

В заключительной, четвертой статье из цикла «Конденсаторы Panasonic» рассматриваются основные достоинства и особенности использования конденсаторов этого японского производителя на основе полимерной технологии. Главной конструктивной особенностью таких конденсаторов является полимерный материал, используемый в качестве проводящего слоя. Полимер обеспечивает конденсаторам высокую электрическую проводимость и пониженное эквивалентное сопротивление (ESR). Номинальная емкость и ESR отличается в данном случае высокой стабильностью во всем рабочем диапазоне температур. А повышенная емкость при низком ESR идеальна для решения задач шумоподавления и ограничения токовых паразитных импульсов в широком частотном диапазоне.

Читать статью

11 часов назад, KVAnton сказал:

Настроил GPIO как Input Pull-Up но при считывании получаю 0.

Показывайте, как настроили.

 

16 минут назад, KVAnton сказал:

все подтяжки (pull up) внутри STM32

Очень плохая идея. Подтяжка ВСЕГДА должна быть внешней. Внутри стоит слишком высокоомная подтяжка и для нормальной работы не годится. особенно, если есть внешние помехи.

Share this post


Link to post
Share on other sites
                     

STM32G0 - средства противодействия угрозам безопасности

Результатом выполнения требований безопасности всегда является усложнение разрабатываемой системы. Особенно чувствительными эти расходы стали теперь, в процессе массового внедрения IoT. Обладая мощным набором инструментов информационной безопасности, микроконтроллеры STM32G0 производства STMicroelectronics, объединив в себе невысокую цену, энергоэффективность и расширенный арсенал встроенных аппаратных инструментов, способны обеспечить полную безопасность разрабатываемого устройства.

Подробнее...

3 часа назад, KVAnton сказал:

нет, все подтяжки (pull up) внутри STM32, есть там такой режим. но пробовал и push-pull + pull-up разницы нет.

Это кто NarodStream такому научил?

Share this post


Link to post
Share on other sites

оказывается в cortex m3 нет нормальных подтяжек. позже проверю на cortex m0

Share this post


Link to post
Share on other sites
46 минут назад, KVAnton сказал:

оказывается в cortex m3 нет нормальных подтяжек

Да не ужели!

Если хотите получить нормальный ответ на свой вопрос то будьте добры приложить свой код! хотя бы инициализацию выводов.

Share this post


Link to post
Share on other sites
Posted (edited)

при чем тут ядро? нет в F1xx, а конкретно нет Output Open-Drain Pull-Up. Зачем проверять можно за минуту узнать в доках.

Edited by MasterElectric

Share this post


Link to post
Share on other sites
оказывается в cortex m3 нет нормальных подтяжек. позже проверю на cortex m0
Ты не поверишь, их ни в одном мк нет

Share this post


Link to post
Share on other sites
Posted (edited)

ну пощадите новичка, запутался немного - с кем не бывает)  в любом случае спасибо за внимание.

После документации Microchip немного не привычно было, сразу не разобрался что к чему. с МК на ARM до этого тоже не работал.

Только что, BARS_ сказал:
1 час назад, KVAnton сказал:
оказывается в cortex m3 нет нормальных подтяжек. позже проверю на cortex m0

Ты не поверишь, их ни в одном мк нет

это да, но зачем-то же их там ставят) в f103 их совсем нет на output, а на input

Цитата

weak pull-up and pull-down resistors

и по схеме видно, что они не такие как в AN4899.

Edited by KVAnton

Share this post


Link to post
Share on other sites

Join the conversation

You are posting as a guest. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Similar Content

    • By svd
      Предлагаю печатные платы для паяльной станции на STM32 и OLED дисплее 1,3" версии 2.1S
      Плата делалась под китайский алюминиевый корпус.
      Тема, где обсуждается данная станция T12 , опубликована на сайте radiokot.ru
      Фото платы


      Схема немного доработана:
      1) добавлены блокировочные конденсаторы 0,1 мкФ в цепях микроконтроллера;
      2) добавлен резистор в цепи буззера для возможности снижения громкости;
      3) есть возможность подключать жала JBC (для Т12 в разъеме паяльника запаивается перемычка)

      Большинство элементов типоразмера 0603. DC/DC преобразователь PSR-7805LF можно заменить на любой китайский аналог или микросхему 7805
      Ссылки на возможные замены:
      DC/DC аналог 7805 №1
      DC/DC аналог 7805 №2

      Во вложениях схема и расположение элементов на ПП, чертеж передней панели и прошивка под дисплей 1.3" с контроллером SH1106.

      Цена за одну плату 400 руб c учетом стоимости пересылки по РФ. Количество плат ограничено.
      По всем вопросам просьба обращаться в личку.
       
      STM32_T12_2.1S_SSH1106_1.3_v2_.pdf передняя панель.pdf T12_HW21S_Encryption-SH1106.zip
    • By ART_ME
      Здравствуйте.
      Рискну спросить: не завалялась ли у кого в хозяйстве для STM32F103xx: 
      - AC induction motor IFOC software library V1.0
      либо 
      - ACIM and PMSM motor control software libraries release 2.0
      ?
      Просьба поделиться если вдруг такой раритет найдется. 
       
    • By Илья Юрченко
      Добрый день, уважаемые форумчане! Для научной работы хотел собрать данные о том, насколько микроконтроллеры stm32 удовлетворяют нужды и требования программистов и разработчиков продуктов на нем. Если не сложно, ответьте, пожалуйста, важны данные)
      Разумеется "очень средне" неадекватная метрика, но в рамках работы нужна именно средняя удовлетворённость, и определение существует ли необходимость в создании другой серии универсальных плат на базе МК.
    • By n_angelo
      Привет. Хочу узнать ваше мнение. Я новичок в embedded. Можно сказать, что пришел с веба. Малость Python, JS, C. Меня, конечно, предупреждали начать с AVR, но я уверенный в себе решил сразу залезть на STM32. Вынашивая идею для проекта, параллельно курив Reference Manual и Data Sheet по STM32, я понял что его будет слишком жирно для проекта. Я перескочил на STM8L. И тут меня начал огорчать мир embedded. При переходе между stm8 и stm32 нужно менять IDE (TrueStudio на STVD). Во избежание таких курьёзов я пересаживаюсь на IAR. В процессе подключения родной библиотеки от ST, понимаю что библиотека от IAR для того же самого STM8L152C6T6 дико отличается (макросы, структуры). Привет веб-разработка. Как такое могло произойти, что под один и тот же контроллер ST даёт одну библиотеку, а IAR другую. И нигде в уроках тебя не предупредят об этом. Ну, ребят, у меня всего одна жизнь. Вы уже договоритесь там между собой? Придите к единому стандарту. Или они так решили новичков завендерлочить? Моё мнение (не претендует на правильное): пробираясь сквозь тернии популярной архитектуры ARM, инфраструктуры, инструментария, забываешь про бизнес-логику устройств. А еще просто пропасть между "я ничего не понимаю" и "господи, я зажег светодиод". Речь не о копипастерах с уроков, а действительно понимая что ты делаешь, в каком регистре, что меняешь. Это путь в 2000 (а то и больше) страниц на английском перечитанных по несколько раз, чтобы отоложилось. И в конце тебя ждут разные версии одной и той же библиотки в разных IDE. И сидишь вдупляешь... ну почему... я же в правильный регистр кладу правильную маску... ох, наболело. Такое ощущение что не для людей это всё делали, не для людей.
      Ваше мнение?
    • By Sofia Vin
      Предлагаем проектную работу в Москве:
      Микроконтроллер STM32F103.
        
      Есть встроенный код с использованием функций библиотеки FreeRTOS, код имеет описанный протокол для связи с внешним миром.
        
      Необходимо проводить доработку кода под задачи программиста верхнего уровня и его тестирование в составе оборудования. 
      Работа в лаборатории (м.Университет) и удаленно. 
      Оплата по договоренности.
      Если Вы обладаете опытом схемотехнического проектирования и программирования микроконтроллеров, и Вас заинтересовала данная возможность, ждем Ваши отклики по контактным данным:
      8 (925) 023-60-02   Алексей
      E-mail: nassa@marathon.ru
       
  • Сообщения

    • Это единственно верное предложение, если интересует результат.    
    • Дожили))) скоро плазмы сантехник чинить будет. 
    • Вы пытаетесь изобрести (сконструировать) велосипед ( причём велосипед типа байка, не костотряс какой нибудь) , и купили для этого набор спиц и обод колеса, и с этим "набором" пришли на технический форум, чтоб Вам помогли собрать и  ехать!!? Помимо  докупки нужных элементов, надо бы ещё и знаний прикупить, ну хотя бы для того чтоб понимали об чём Вам советуют, или отсоветывают - типа где грабли лежат...  И однако, таки есть более специализированые форумы по Вашему вопросу, где люди не одну собаку съели, и до мелочей знают что к чему и как лучше (условия эксплуатации, от места расположения , могут сильно отличаться, типа местность где 15 солнечных дней в году - плохо подходит солнечной энергетики, даже для покрутить комповый кулер (кстати не самый лучший вариант ветродуйки))... Сотрудник по работе, немного увлечённый солнечной энергетикой (типа чиста из интереса), таки построил рабочий девайс (всей бригадой помогали) в течении полутора месяцев (сбор панелей, изготовление настройка электроники, подбор ёмкостей......)..., только на вспомогательные элементы у него ушло около 5 тыров... Типа не по наслышке знаю об предстоящих трудностях и сложностях, как теоретических так и практических!  С уважением, Сергей.
    • Посмотрите в начале темы.  
    • По причине невостребованности продам двухканальный осциллограф С1-118 с полосой до 10МГц. Аппарат рабочий, запас яркости луча приличный, синхронизируется легко.  В комплекте самопальный пробник. Из нюансов: требуют профилактики или замены переменные резисторы горизонтального отклонения луча. Форумчанам отдам за 4000 руб. Упакую надёжно, отправлю удобным для вас способом. Местоположение: Екатеринбург.
  • Покупай!

×
×
  • Create New...