簡體   English   中英

普通 Windows 10 PC 的 USB 到 GPIO/SPI/I2C/UART? 類似於 Raspberry Pi 40 針接頭

[英]USB to GPIO/SPI/I2C/UART for regular Windows 10 PC? Simular to Raspberry Pi 40 pin Header

有誰知道有一家公司為普通的非物聯網 Windows 10 PC 銷售 USB 電纜,可以將 USB 轉換為 40 針 Raspberry pi 接頭連接器上的以下所有總線? 示例:USB->GPIO、I2C、SPI、UART 等。

我能找到的最接近的東西是:

來自 digilentinc.com 的數字發現邏輯分析儀

這可以將 PC USB 轉換為 GPIO/I2C/SPI 等......除了我正在尋找更小的電線更少的東西......只有 40 針接頭或更少......類似樹莓派 40 針接頭,除了被驅動從連接到 PC 的 USB 而不是...有沒有人看到這種類型的產品可以從 PC-USB 轉換為 40 針頭與所有列出的總線?

此外,我希望能夠使用“Windows.Devices”Api 而不是專有驅動程序 DLL API 通過Windows UWP對這個 USB 轉換設備進行編程......還沒有真正找到......示例:

// C# Program GPIO connected to USB dongle of regular PC...
using Windows.Devices.GPIO;
...
private void InitGPIO()
{
    var gpio_ctrl = GpioController.GetDefault();
    // Check GPIO state
    if (gpio_ctrl == null)
    {
        this.pin = null;
        this.status.Text = "ERROR: No GPIO controller found!";
        return;
    }
    // Setup the GPIO pin
    this.pin = gpio_ctrl.OpenPin(LED_PIN);
    // Check to see that pin is Ok
    if (pin == null)
    {
        this.status.Text = "ERROR: Can't get pin!";
        return;
    }
    this.pin.SetDriveMode(GpioPinDriveMode.Output);
    this.pinValue = GpioPinValue.Low; // turn off
    this.pin.Write(this.pinValue);
    this.status.Text = "Good to go!";
}

我知道我可以用在樹莓派上運行的 Windows IoT Core 做一些類似的事情,但是,我想改用我的普通筆記本電腦。

下面的分線板很相似,但我不確定是否與 Rasperry PI 頭相同,因為這個 FTDI 文檔說它只有一個可配置為任何協議(i2c、spi 等)的串行通道。 相比之下,Raspberry Pi 為您提供了多個串行通道,只有數據和時鍾信號以及 gpio。 但是,它至少部分類似於 raspberry pi header。

Adafruit FT232H 突破

FT232H芯片能做什么? FTDI 的這款芯片類似於他們的 USB 轉串口轉換器芯片,但增加了一個“多協議同步串行引擎”,使其能夠處理許多常見協議,如 SPI、I2C、串行 UART、JTAG 等,甚至還有一些數字 GPIO 引腳,您可以讀取和寫入這些引腳以執行諸如閃光 LED、讀取開關或按鈕之類的操作。 和更多。 FT232H 突破就像為您的計算機添加了一把用於串行協議的瑞士軍刀!

具有適用於 Windows、Mac、Linux 的 USB 驅動程序。

Adafruit FT232H 分線文檔

FT-232H 數據表

從 Windows PC,您可以訪問所有傳感器和 GPIO、I2C、SPI 等...如果您編寫“串行端口服務器”並將其加載到 Arduino 或 Raspberry- Pi板,然后使用C#程序向該板發送串口讀/寫命令...

例如,Arduino 板由您的 PC 的 USB 供電,並且此 USB 還可以連接串行端口,同時您可以從 C# 程序連接。 您只需將 Arduino 草圖上傳到電路板,然后啟動 C# 程序即可連接到 Arduino 串行端口。 它不如在 Windows.Devices 下使用 IoT API 好用,但它可以讓您通過串行端口訪問所有相同的設備。 (它的主要問題是串行端口是一個沒有唯一 DeviceID 的匿名端口……如果多個串行端口連接到您的系統,會導致混淆。)

請注意,在“JavaFX 9 示例,第 3 版”一書中有一個很好的示例來說明如何執行此操作。 (但是,沒有理由不能改用 C#/WPF 和 .NET 串行端口 API)

您還可以執行類似的操作,從連接到作為客戶端控制該卡的 PC 的 IoT 卡中設置具有以太網、WiFi 和藍牙端口的服務器端口。

為了完整起見,還有 FPGA 解決方案。 創建一些 Verilog 或 VHDL,其中包括 UART 串行端口和您需要的所有其他外圍設備,例如 I2C、SPI 等...將它們連接在總線上,在 UART 周圍添加一些自定義邏輯,使其像一個可以通過串行端口從 Windows PC 寫入的地址/數據總線。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM