SPI Micro SD + DS1302 + RC522

Тема в разделе "Arduino & Shields", создана пользователем sanik, 17 сен 2017.

  1. sanik

    sanik Гик

    Доброго времени суток! Кто нибудь помогите разобраться. Реально ли подключить три разных модуля по SPI как это реализовать? Нужно устройство на Arduino которое писало бы в лог файл UID метки дату и время когда поднесли метку. Может кто делал или встречал пример.
     
  2. rkit

    rkit Гуру

    Реально. Прочитать как работает SPI.
     
  3. sanik

    sanik Гик

    Мне не разобраться как ардуино обращается к устройствам. В моем понимании ногу CLK для каждого модуля назначаем отдельно на разные пины , и поним ардуино распознает к какому модулю обращаемся? Мне бы хотя бы какой нибудь пример с тремя модулями.
     
  4. Limoney

    Limoney Гик

    micro SD и RC522 работают по интерфейсу SPI. Выбор модуля выбирается установкой низкого сигнала на пине ss модуля. В одно и тоже время активен только один модуль. A DS1302 работает по интерфейсу I2C
     
  5. sanik

    sanik Гик

    Спасибо! То есть для чтения метки подаем низкий уровень на ss модуля RC522 обрабатываем потом подаем низкий уровень на ss модуля micro SD и пишем в файл Верно?
     
  6. Limoney

    Limoney Гик

    ДА!
    Одинаковые пины SPI для micro SD и RC522 SCK, MOSI, MISO, а пины сs (micro SD) и ss (RC522) - разные.
    Там смотрите, пин выбора устанавливается в библиотеках модулей
     
    arkadyf нравится это.
  7. rkit

    rkit Гуру

    не CLK, а CS а так все правильно
     
    arkadyf нравится это.
  8. DIYMan

    DIYMan Guest

    Выше про CS сказано всё верно. Однако, хотелось бы обратить внимание на особенности некоторых китайских модулей, например, некоторых модулей SD - бывает, что они не отпускают MISO даже когда CS в высоком уровне - ну вот так вот они сделаны. Как результат - бывают проблемы с одновременной работой нескольких модулей на SPI при наличии вот такого вот "больного" модуля. Лечится, собственно говоря, просто - все линии MISO всех модулей - через 74HC125, сигнал управления каждой линией буфера - запараллелен с CS соответствующего модуля.
     
    Limoney, ostrov, arkadyf и ещё 1-му нравится это.
  9. ostrov

    ostrov Гуру

    Мультиплексор на CD74HC4067 тоже годится. Но чутка сложнее.
     
    Последнее редактирование: 17 сен 2017