2016-02-28 12 views
-1

У меня есть требование, когда мне нужно переключиться между подключением к ICSP-заголовкам чипов Arduino 328P и 16U2. Я знаю, что не могу общаться с ними, пока они связаны друг с другом, так как я могу переключиться между ними? Предпочтительно с помощью программного обеспечения, возможно, с реле.Переключение между различными соединениями ICSP

Я знаю, что мне нужно было бы сразу переключить 4 провода, так как + 5V и GND одинаковы для обоих. Просто я не знаю, с чего начать искать аппаратное решение для переключения между ними. Это должно быть компактное решение, поэтому я хотел бы, чтобы 4 отдельных реле занимали много места, и я не уверен, как реле справится с цифровым сигналом, проходящим через него, я неопытен.

Может ли кто-то пролить свет на то, как я должен продолжить это?

Большое спасибо :-)

ответ

0

Ну, ICSP на SPI, так что если вы не возражаете, соединив их вместе (в конце концов, 16U2 никогда не будет использовать SPI), вы можете подключить вместе 5V, GND , MISO, MOSI, CLK. Единственный вывод, который вы не должны подключать, - это сброс (вы можете использовать реле или простой интегрированный коммутатор). НО я не знаю, как работают процессоры Atmel, если вы соединяете два контакта MISO вместе, поэтому, возможно, вам следует избегать.

Лучшим решением является попытка отделить их некоторыми переключателями. Простейшими из них являются аналоговые двунаправленные переключатели IMHO (аналоговые переключатели не заботятся о направлении сигнала, поэтому они подходят как для входных, так и для выходных контактов). Это проще, если вы возьмете мультиплексор (2: 1) с четырьмя каналами, например, Analog ADG774, но любой мультиплексор в порядке.

Если вы планируете использовать 3.3V микроконтроллеры или 3.3V-программист, я предлагаю вам использовать несколько преобразователей напряжения вместо мультиплексоров. Обычно преобразователи напряжения также имеют контактный контакт, поэтому вам просто нужно будет управлять им надлежащим образом.