Как задать пин расширителя портов в качестве пина chipSelect

Kakmyc
Offline
Зарегистрирован: 15.01.2018

В общем смысл такой.
Количество устройств SPI превысило количество свободных пинов. Есть расширитель портов mcp23017. Только вот непонятно, как в качестве пина SS указать пин расширителя портов.

sadman41
Offline
Зарегистрирован: 19.10.2016

Кому указать?

Kakmyc
Offline
Зарегистрирован: 15.01.2018

Любой из используемых библиотек, которая будет работать с этим пином

Kakmyc
Offline
Зарегистрирован: 15.01.2018

Конкретно сейчас нужно библиотеке MFRC522.h указать пин расширителя который работает через библиотеку Adafruit_MCP23017.h

MFRC522 mfrc_case(case_pin, RST_PIN);
Как вот в этой конструкции в качестве case_pin скормить вот такое mcp.bitForPin(uint8_t pin)

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Если библиотека не предполагает работать с SS через расширитель, то это в неё нужно добавить. Иначе - никак.

astwo
Offline
Зарегистрирован: 10.07.2019

Похоже кто-то разучился расширять через регистр свига.

Kakmyc
Offline
Зарегистрирован: 15.01.2018

astwo пишет:
Похоже кто-то разучился расширять через регистр свига.

Как будто сдвиговый регистр библиотека съест без вопросов.

astwo
Offline
Зарегистрирован: 10.07.2019

Поставь дешифратор. Классический приём расширения чипсетов. Так три вывода дадут 8,а четыре 16.

sadman41
Offline
Зарегистрирован: 19.10.2016

astwo, вопрос-то Вам понятен? По ходу дела нет ))

Kakmyc
Offline
Зарегистрирован: 15.01.2018

Будем переписывать библиотеку, раз такое дело.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Удачи!