我希望能夠從Raspberry Pi輸出75個數字輸出信號。但是,它只有26個GPIO引腳。精確的計時並不重要,只要在1秒以內即可。我需要能夠同時打開或關閉所有信號,這樣查理復用將無法正常工作。但我想知道是否可以使用現有的硬件來實現此目的?
我希望能夠從Raspberry Pi輸出75個數字輸出信號。但是,它只有26個GPIO引腳。精確的計時並不重要,只要在1秒以內即可。我需要能夠同時打開或關閉所有信號,這樣查理復用將無法正常工作。但我想知道是否可以使用現有的硬件來實現此目的?
最好的解決方案可能是使用“端口擴展器”。
英國的HobbyTronics提供了一個擴展器套件: http://www.hobbytronics.co .uk / mcp23017-port-expander-board
有關端口擴展器的一般簡介,請訪問Wikipedia上的頁面: http://en.wikipedia.org/wiki/ Port_expander
使用一些通過I2C接口連接的MCP23008芯片,可以擴展多達64個其他GPIO端口。每個增加8個GPIO,最多可通過I2C連接八個。當您需要75個端口時,我想您會選擇MCP23017的老大哥MCP23017,它具有16個GPIO端口。不能將兩者混合併超過128,因為I2C總線上的限制8會同時應用於兩者,因為地址重疊。
為方便訪問I2C總線,您可以使用 Quick2Wire提供的I2C-Python-API。 Quick2Wire的芯片上也有貼子。
看看 這個答案 ,其中 MAX7219 , MAX7221 , MAX6950 , MAX6951 和 TLC5940 作為類似問題的解決方案進行了討論。
我知道這是一篇非常古老的文章,但這是您在Google搜索中如何訪問多個gpio引腳時發現的第一篇文章...而且結果不包含可能是最簡單的選擇的新功能:
因此對於其他搜索者,此新軟件可能正是您要尋找的:
sudo apt install usbbootgui
(描述在 https://www.raspberrypi.org/blog/gpio-expander/上更詳細地介紹)
,使您可以通過USB訪問多個派的GPIO。我猜想受限於您擁有的USB端口的數量。
我將自己使用它來創建一個eprom讀取器,以丟棄舊遊戲卡帶。 (這就是我一直在尋找這個的原因)
Raspberry Pi的“ 計算模塊”現已上市,並且它(和相應的開發板,如果您想讓自己更輕鬆地完成)提供全部120個BCM2835的GPIO引腳!但是,它還有其他一些東西可能會影響您是否要使用它...
使用移位寄存器。 https://www.sparkfun.com/products/10680它們很便宜,您可以根據需要隨意放入許多。有些具有輸出使能/鎖存機制,可讓您同時進入三態和移位電平。