-
- А у меня элементарно нет идей, какое нужно придумать устройство,
чтобы к нему больше одного датчика с SPI нужно было подключить! Вот
I2C куда как чаще встречается. По SPI разве что экранчик или
угловой энкодер. Ну вот делал платку для телескопа, которая с двух
энкодеров в два интерфейса USB данные передает, посадил каждый
энкодер на свой SPI, чтобы не мешали друг другу и можно было
параллельно читать. - Eddy_Em(18.02.2026 17:37)
- У меня 8шт ацп ads1220 и еще 3шт 74hc165 на одном spi. - 3m(25.02.2026 14:52)
- у мну на одном SPI 3 шт АЦП, на втором SPI - OLED, а на I2C вообще
свальный грех - еепром, датчик температуры, датчик атмосферного
давления, микросхема зарядки АКБ, микросхема счетчик
электроэнергии, короче картинка покажет Ralex(1 знак., 18.02.2026 17:47, картинка)
- Я предпочитаю брать один внешний АЦП и ставить три мультиплексора.
Есть хорошая методика, позволяющая практически к нулю свести
влияние мультиплексоров. Но в данном случае никакого аппаратного SS
не выйдет: их же аж три штуки надо! - Eddy_Em(18.02.2026 18:41)
- Бывают входы, на которые могут попадать произвольные посторонние напряжения. В этом ключе, схема на одном АЦП уязвима - напряжение вне диапазона сместит коммутатор и все каналы поплывут. Nikolay_Po(87 знак., 25.02.2026 15:33)
- Да дажэ с одним АЦП. С нормальным СПИ работать можно так, заряжаем
таймер на сэмплрейт, от него стартуем ДМА, которое пихает 16 бит в
СПИ и по прерыванию от окончания педерачи СПИ, вычитываем данные.
Что имеем с СТМ? Настраиваем таймер на сэмплрейт, по прерыванию
ручкаме машем портом НСС, запускаем СПИ(тут дажэ из прерывания нет
смысла выходить, накладные расходы на вход-выход примерно такого-жэ
порядка), отмахиваем НСС взад, вычитываем данные. Зокат солнца
вручную. И mse homjak(91 знак., 18.02.2026 20:45)
- SSM + SSI, и не нужно беспокоиться: Eddy_Em(118 знак., 18.02.2026 21:24)
- Из доков или сам так делал? Когда я озаботился и пару дней
подпрыгивал, находил по форумам советы бывалых. Они тожэ цытировали
ДШ, но в концэ приписывали, что НСС нужно, таки, махать вручную.
Ибо у СТМ лапки. - mse homjak(19.02.2026 10:19)
- железный NSS там (только!) для того, чтобы сказать STM'у, что он
больше не мастер. beefdeadbeef(94 знак., 19.02.2026 12:17)
- сомнительно - Ralex(19.02.2026 12:21)
- Ну, я тоже сомневался. А как до дела дошло - хрен вам, а не аппаратный контроль. Чипов-то на линии мастера может быть много, на кой хрен им аппаратный CS-выход, если одного всё равно не хватит? Вот оно и не работает как выход. Мало того, в своих проектах я этот вывод из работы исключю - есть непонятки, типа того, что даже когда он не используется, и вдруг упадёт в ноль, то SPI принудительно переводится в ведомого. Ну его нафиг. - Nikolay_Po(19.02.2026 12:42)
- rm0008 нам сообщает, что вот-де, "NSS management by hardware or
software for both master and slave: dynamic change beefdeadbeef(72 знак., 19.02.2026 12:31)
- Это, наверное, последние версии ДШ. В старых было расписано как должно быть по жизни. А так, похожэ, что Томсоны купили задорого часть периферии у какой-то конторы, с родственниками топов, в учредителях. И, смешнее всего, что и китайцам пришлось тариться периферией в том-жэ лабазе. Одно дело, когда в отзывах "залил прошивку и сразу заработало" и другое "блин, они сделали правильный СПИ, как теперь с этим жыдь?!!!111" - mse homjak(19.02.2026 16:54)
- сомнительно - Ralex(19.02.2026 12:21)
- Это я процитировал реальную строчку из рабочего кода. Не нужно им
"махать": один раз разрешил (SSI+SSM), и забыл! Eddy_Em(98 знак., 19.02.2026 10:51, ссылка)
- махать бывает нужно, когда nss используется для фрейминга -- beefdeadbeef(18 знак., 19.02.2026 12:40)
- железный NSS там (только!) для того, чтобы сказать STM'у, что он
больше не мастер. beefdeadbeef(94 знак., 19.02.2026 12:17)
- Из доков или сам так делал? Когда я озаботился и пару дней
подпрыгивал, находил по форумам советы бывалых. Они тожэ цытировали
ДШ, но в концэ приписывали, что НСС нужно, таки, махать вручную.
Ибо у СТМ лапки. - mse homjak(19.02.2026 10:19)
- SSM + SSI, и не нужно беспокоиться: Eddy_Em(118 знак., 18.02.2026 21:24)
- Это 3 АЦП с 8 входов каждый, при этом они работают как диф пары поэтому 4 канала данных на 1 АЦП. А иногда не диф, тогда больше чем 4 канала, но зависимых. Если бы все 17 каналов измерений я одним АЦП измерял, пришлось бы дольше усреднять (уменьшаем шум усреднением). Мультиплексор применялся в предыдущей модели прибора, но там было всего 7 каналов измерений, а тут 17. - Ralex(18.02.2026 18:50)
- Я предпочитаю брать один внешний АЦП и ставить три мультиплексора.
Есть хорошая методика, позволяющая практически к нулю свести
влияние мультиплексоров. Но в данном случае никакого аппаратного SS
не выйдет: их же аж три штуки надо! - Eddy_Em(18.02.2026 18:41)
- А у меня элементарно нет идей, какое нужно придумать устройство,
чтобы к нему больше одного датчика с SPI нужно было подключить! Вот
I2C куда как чаще встречается. По SPI разве что экранчик или
угловой энкодер. Ну вот делал платку для телескопа, которая с двух
энкодеров в два интерфейса USB данные передает, посадил каждый
энкодер на свой SPI, чтобы не мешали друг другу и можно было
параллельно читать. - Eddy_Em(18.02.2026 17:37)