2016-02-28 49 views
-1

我有一個要求,即需要在連接到Arduino的328P和16U2芯片的ICSP頭之間進行切換。我知道當他們連接在一起時我無法與他們溝通,那麼我將如何去切換這兩者呢?最好通過軟件,也許用一個繼電器。在不同的ICSP連接之間切換

我知道我只需要一次切換4根導線,因爲+ 5V和GND兩者都是相同的。只是我不知道從哪裏開始尋找硬件解決方案來在兩者之間切換。它需要一個緊湊的解決方案,所以我想成像4個獨立的繼電器將佔用大量的空間,我不確定繼電器將如何處理通過它的數字信號,我沒有經驗。

請問有人能告訴我應該如何處理?

非常感謝:-)

回答

0

好,ICSP是SPI,所以如果你不介意它們連接在一起(畢竟16U2永遠不會使用它的SPI),可以連接在一起5V,GND ,MISO,MOSI,CLK。唯一不能連接的引腳是復位引腳(可以使用繼電器或簡單的集成開關)。但是我不知道如果你將兩個MISO引腳連接在一起,Atmel處理器的行爲如何,所以也許你應該避免。

更好的解決方法是嘗試用一些開關將它們分開。最簡單的使用方法是模擬雙向開關(恕我直言)(模擬開關不關心信號的方向,所以它們對於輸入和輸出引腳都很好)。如果您採用具有四個通道的(2:1)多路複用器(如Analog ADG774),但任何多路複用器均可用,則更容易。

如果您打算使用3.3V微控制器或3.3V編程器,我建議您使用一些電壓轉換器而不是多路複用器。通常電壓轉換器也有一個使能引腳,所以你只需要適當地驅動它們。

相關問題