Щит CAN-Bus, модуль SD-карты и LED_BUILTIN используют D13; возможная коллизия?

Насколько мне известно, шилд SeeedStudio CAN-Bus использует D13, как и модуль SD-карты, который я использую. А также LED_BUILTIN Arduino Uno равен 13. Не грозит ли мне здесь какая-то коллизия?

Я прочитал этот вопрос, но он описывает ситуацию, когда оба модуля находятся на одном шилде.

Почему я встревожен: я могу выполнить следующую последовательность: включить светодиод, открыть файл, записать, закрыть файл, выключить светодиод, здесь нет видимых проблем. Но когда я подключаю свой CAN-Bus shield, чтобы просто читать сообщения (т. е. не отправлять данные на shield, не специально), моя машина ведет себя странно, как будто мне все же каким-то образом удалось отправить несколько вредоносных байтов на shield. (Правые боковые окна и зеркало не работают, дисплей информационно-развлекательной системы показывает неработающий экран-заставку, панель приборов жалуется на «неисправность двигателя» и подушки безопасности...)

Интересно, не отправил ли я какие-то байты на шилд, записывая на SD-карту и, возможно, включая светодиод? Нужно ли мне как-то Select Slave?

, 👍0

Обсуждение

Настоящая причина того, что машина сошла с ума, была в том, что я не подключил заземление., @Jaroslav Záruba


1 ответ


Лучший ответ:

1

Да, вы находитесь в опасности столкновения. Насколько велика опасность, я сказать не могу, но вероятность есть.

  1. Можно ли прекратить использовать светодиод на D13?
  2. Не могли бы вы переставить контакты вашего устройства чтения SD-карт или приобрести другое, поддерживающее интерфейс I2C или SPI?

Полагаю, что с устройством шины CAN ничего сделать нельзя, но если можно, то было бы неплохо переместить его контакты.

,