ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Вторник
26 ноября
926839 Топик полностью
Ксения (11.06.2019 19:07 - 19:16, просмотров: 354) ответил Dingo на При этом вы не обозначили, ни сколько входов вам требуется отслеживать, ни сколько энкодеров. Хотя бы в минимальной версии.
Если делать на STM32, то, несмотря на множество таймеров (их 14 штук), использовать для энкодерных целей можно только 3 из них - те, у которых каналы 1 и 2 выведены наружу. А вообще цоколёвка STM32 меня откровенно удручает - зачем было сажать так много функций на порт A, хотя дофига свободных пинов на других портах? Впечатление такое, что проектировали малоножку с 1-2 портами, а остальных добавили задним числом. Реально мои энкодеры медленные - это рукоятки, крутимые руками, да и то изредка. Обслуживать их аппаратно в общем-то избыточно. Скажем, если бы была одна единственная линия прерывания, сообщающая о том, что в каком-то из входных портов (даже без указания в каком именно) изменился какой-то бит (тоже без указания, какой именно), то это мгновенно решило бы проблему, сколько бы много энкодеров ни было, т.к. здесь узкое место не опрос портов, а своевременная реакция на изменения. Снова не могу удержаться от того, чтобы похвалить периферию X-меги :), где отдельные порты (кроме специализированных под АЦП, ЦАП, внешнюю память) в значительной мере автономны - у каждого свои таймеры, UART, SPI, I2C, и конечно же линии прерывания для них. Поэтому, если делают многоногий корпус, то там вместе с увеличением числа портов становится пропорционально больше и всего прочего. А когда делают малоногую, что и периферия сокращается пропорционально уменьшившемуся числу портов. Тогда как STM32 оставляет впечатление разросшегося города, в котором по-прежнему всего 16 туалетов :), да и то в самом центре города. Т.е. выглядит так, как будто создавали его без плана, делая пристройки к тому, что было раньше. На мой взгляд, эта моя тема в разделе ARM полностью тривиальна - я выясняю возможности новой для меня архитектуры, а вовсе не прошу посторонних решать за меня мои задачи. Ибо знание возможностей вполне достаточно для того, чтобы самостоятельно решить, где проходит граница между разумными требованиями и реальными возможностями. А сползание обсуждения с архитектурных особенностей на мои задачи происходит исключительно по вине любопытных, которые сперва невинно интересуются "для чего тебе это нужно?", чтобы затем резко сменить тему разговора на другую - "ты - дура, разве эту задачу так надо решать?". :)