
Шина SPI
Шина SPI
Всем добрый день. Продвигаясь в проекте, столкнулся с вопросом. Модуль считывания карт rfid и радио передатчик NRF24 подключаются в одни и те же пины - т.е. по шине spi. Необходимо считать данные с Карты и отправить на другую ардуинку. Во время всего процесса Карта скорее всего будет лежать на считывателе. Хотел вот узнать, первое, как правильно подключить 2 устройства к spi и второе, какие нюансы в самой программе? Не будет ли rfid все время занимать шину, пока на нем карта? Как распределить их в Flprog? Заранее спасибо 

- Grafsaxar
- Лейтенант
- Сообщения: 377
- Зарегистрирован: 06 сен 2015, 16:04
- Откуда: Маркс-Энгелс
- Имя: Alexander
Шина SPI
А что если вместо радио передатчика NRF24 взять JDY-40.
https://ru.aliexpress.com/item/JDY-40-2 ... a480ba44-1
Работает с УАРТОМ. И проблема исчезнет.
Качество — это делать что-либо правильно, даже когда никто не смотрит
Шина SPI
Может всё-таки можно как-то это запустить, По моей схеме ?
Отправлено спустя 5 часов 3 минуты 38 секунд:
SPI интерфейс поддерживает же несколько устройств. Просто, как правильно подключить и настроить?
Отправлено спустя 5 часов 3 минуты 38 секунд:
SPI интерфейс поддерживает же несколько устройств. Просто, как правильно подключить и настроить?
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Шина SPI
[ref]vfear[/ref], Пришли проект - лень собирать самому. (Надоело)
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Шина SPI
Да пока только теория, ещё куча вопросов.
RFID записывает данные типа byte в массив, а блок NRF24 отправляет даные типа int. Как их отконвертировать правильно?
Скрин моей схемы прикладываю.
Пин ведомого устройства в блоке NRF24 можно поменять. Если SCK, MOSI и MISO подключить параллельно от nrf и rfid, а SS (выбор ведомого) поставить разные. Все нормально должно заработать?
RFID записывает данные типа byte в массив, а блок NRF24 отправляет даные типа int. Как их отконвертировать правильно?
Скрин моей схемы прикладываю.
Пин ведомого устройства в блоке NRF24 можно поменять. Если SCK, MOSI и MISO подключить параллельно от nrf и rfid, а SS (выбор ведомого) поставить разные. Все нормально должно заработать?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Шина SPI
Обязано.vfear писал(а): 14 фев 2019, 11:39Если SCK, MOSI и MISO подключить параллельно от nrf и rfid, а SS (выбор ведомого) поставить разные. Все нормально должно заработать?
Блок стандартный - "Bytes->World(Integer)". Отправляешь два байта. С остальными байтами из массива также.
На другой стороне распаковываешь на байты или другое по необходимости.
Отправлено спустя 1 минуту 11 секунд:
Был-бы сам проект - показал. На скринах не буду.

мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Шина SPI
Прикрепил 2 файла (отправка и прием)Sancho писал(а): 14 фев 2019, 12:41 Отправлено спустя 1 минуту 11 секунд:
Был-бы сам проект - показал. На скринах не буду.
Пожалуйста покажите, как отправлять и распаковывать.
На выходе мне нужны данные типа int
Заранее огромное спасибо



У вас нет необходимых прав для просмотра вложений в этом сообщении.
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Шина SPI
Возможно, так.
Но только 10 байт
Но только 10 байт
У вас нет необходимых прав для просмотра вложений в этом сообщении.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Шина SPI
2 дня мучаюсь
Все без толку. Модуль RFID не даёт NRF24 отправить данные. Проверял: оба модуля подключены к одним и тем же 3-м пинам (SPI), а ss (выбор ведомого) - на разных пинах. Запускаю монитор порта - от RFID данные карточек получаю. (Поставил блок отправка в UART). На отправку NRF24 подставил переменную (уже не от RFID приходящею, а просто создал переменную типа int и записал в неё число выдуманное) это просто для проверки, передаст или нет. На другой стороне Ардуинка подключена с экраном, ждёт данные переменной... но ничего не приходит. Последнее, что сделал ничего не меняя выдергиваю провода от RFID и NRF24 сразу же отправил мою переменную. А на экране принимающей стороны, высветилось мое число.
Подсоединяю RFID обратно, отправка снова не идёт, а карточки читаются. Делаю вывод что RFID не даёт отправить NRF-у. У кого, какие мысли?

Подсоединяю RFID обратно, отправка снова не идёт, а карточки читаются. Делаю вывод что RFID не даёт отправить NRF-у. У кого, какие мысли?
- Sancho
- Полковник
- Сообщения: 4066
- Зарегистрирован: 25 дек 2015, 17:32
- Откуда: Ярославль.
- Имя: Александр
- Поблагодарили: 5 раз
- Контактная информация:
Шина SPI
[ref]vfear[/ref], Не знаю, может я слепой, но в Ваших выложенных проектах CS пин в обоих блоках - 10-й...
Вот здесь измените 10 на Ваш
MFRC522 _mfrc522(10, 3); // строка 7
А здесь для радио
RF24 radio( 9 , тут ); // строка 19
Отправлено спустя 1 минуту 46 секунд:
Изменяйте по очереди до получения положительного результата.
Вот здесь измените 10 на Ваш
MFRC522 _mfrc522(10, 3); // строка 7
А здесь для радио
RF24 radio( 9 , тут ); // строка 19
Отправлено спустя 1 минуту 46 секунд:
Изменяйте по очереди до получения положительного результата.
мой ник в нете и почте omelchuk890, если что. запомните на всякий. многие знают номер тлф.
Шина SPI
Это было для примера. Вот последний проект (Прикрепил внизу). Здесь я просто проверял работоспособность обоих модулей. Связи между ними особой нет. Просто RFID отправляет в UART, а NRF24 пересылает переменную. Отсоединяю контакты RFID переменная отправляется. Подсоединяю обратно карта читается, но NRF не отправляет.Sancho писал(а): 16 фев 2019, 10:57[ref]vfear[/ref], Не знаю, может я слепой, но в Ваших выложенных проектах CS пин в обоих блоках - 10-й...
Вот здесь измените 10 на Ваш
MFRC522 _mfrc522(10, 3); // строка 7
А здесь для радио
RF24 radio( 9 , тут ); // строка 19
Отправлено спустя 1 минуту 46 секунд:
Изменяйте по очереди до получения положительного результата.
Отправлено спустя 3 минуты 36 секунд:
Вот распиновки
Nrf поменял на 7,6
Отправлено спустя 4 часа 2 минуты 39 секунд:
В общем не понятно как то(
Есть мысли?
Отправлено спустя 6 часов 37 минут 39 секунд:
Может разбить на 2 платы проект, и сделать свои выходы на Ss и принудительно отправлять на них сигналы по очереди? Будет так работать?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Кто сейчас на конференции
Сейчас этот форум просматривают: CraCk и 1 гость