Вопрос про SPI и несколько устройств
- Войдите на сайт для отправки комментариев
Пнд, 02/10/2017 - 22:36
Здравствуйте
Скажите, как правильно работать с устройствами, которые занимают SPI и не дают работать другим подключенным устройствам?
Конкретно заметил это на модулях, построенных на mcp2515 (can-контроллер).
Есть ли какое-то решение?
Ну очень не хватает возможности работать с 2-3-мя SPI...
http://arduino.ru/forum/apparatnye-voprosy/arduino-duo-ethernet-w5500-i-...
Блин, да я не про это. Как оно должно быть - это понятно. А вот что делать, когда некоторые устройства отказываются работать как должны.
Взять ТВС с лампового телевизора и шарахнуть непокорные модули по лапам. Не подчинятся - нахлобучить им сверху ТС/TCA/ТПП.
А что такое "отказываются работать как должны", кстати?
я подключал несколько mcp2515 - у меня работали норм. CS (SS) модулей нужно на разные пины ардуино
Ясно, что на разные пины.
У меня mcp2515 по CS не отпускает линию SPI и не дает работать другим.
Если оно не переводит выводы MISO, MOSI в Hi-Z состояние - то никак. SPI-устройство обязано во время нахождения на SS единицы вести себя так, как будто его нет на линии вовсе. Выбрасывать, менять. Китайцу, продавшему такое барахло
нассать на ебалоизлить на лицо содержимое мочевого пузыря. Созвать коммьюнити CS: GO (школьников-мамоебателей), пусть хейтят производителя.Можно по плюсу питание отрезать (PNP или pFET транзистором).
код в студию
Ну, вообще то, странно, и не зря у Вас попросили код.
Согласно дата, MCP2515 сделан вполне правильно и шину отпускает, может, у Вас модуль сделаный криворукими разработчиками с неправильной буферизацией - тогда все может быть - хорошо бы его название и ссылку.
Если у Вас одно такое устройство на шине сидит, то поможет последовательный резистор между SO и модулем, а если много - то решения я не вижу.