Связь с USB-портом напрямую из приложения .net и управление током (вкл. И выкл.) - PullRequest
0 голосов
/ 13 апреля 2019

Я хочу связываться с портом напрямую из приложения .net и контролировать поток тока ... чтобы я мог напрямую включать или выключать шаговый двигатель или что-нибудь из программы c #.По сути, я хочу использовать USB-порты, такие как последовательные порты ... Я также хочу знать, как это можно сделать с помощью arduino.

1 Ответ

0 голосов
/ 14 апреля 2019

Я думаю, вы можете просто использовать SerialPort из System.IO.Ports. Что касается arduino, используйте Serial статический класс для записи / чтения порта.

Вот небольшой набросок, иллюстрирующий, как вы можете продолжить (с помощью приложения Windows Forms).

.NET (txtCom As TextBox и btnSend As Button)

Imports System.IO.Ports
Public Class SerialCom
    Dim WithEvents SP As New SerialPort("COM5", 9600)
    Private Sub SerialCom_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        SP.Open()
    End Sub

    Private Sub SP_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SP.DataReceived
        Dim dataR As String = SP.ReadExisting
        Me.Invoke(New updateText(AddressOf updateText_s), dataR)
    End Sub

    Public Delegate Sub updateText(ByVal line As String)
    Sub updateText_s(ByVal line As String)
        txtCom.AppendText(line)
    End Sub

    Private Sub btnSend_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSend.Click
        SP.Write("Welcome")
    End Sub
End Class

Arduino

void setup() {
  Serial.begin(9600);
  Serial.setTimeout(200); // Wait 200ms max. when Serial.readString() is called
}

void loop() {
  Serial.println("CONNECTION");
  delay(1000);
  Serial.println("+OK");
  delay(1000);
  String rec;
  rec=Serial.readString();
  Serial.println("Received:'"+rec+"'"); // Send back what we received
}

ПРИМЕЧАНИЯ. Чтобы проверить идентификатор COM-порта, вы можете {CTRL} + {BEAK} в Windows, затем открыть диспетчер устройств и найти Arduino в поддереве PORT. Не забудьте подключить arduino перед запуском приложения .NET.

Последовательная связь на Arduino: https://www.arduino.cc/reference/en/language/functions/communication/serial/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...