Пожалуйста, помогите с этой последовательной программой связи - PullRequest
0 голосов
/ 17 ноября 2010

Что с этим не так? Я пытаюсь связаться с контроллером двигателя TReX. Мне нужно отправить следующие данные "DA 1F 1F" или "0xDA 0x1F 0x1F"

using System;
using System.IO.Ports;
using System.Threading;

public class PortChat
{
    static SerialPort _serialPort;
    public static void Main()
    {

        StringComparer stringComparer = StringComparer.OrdinalIgnoreCase;
        // Create a new SerialPort object with default settings.
        _serialPort = new SerialPort();
        _serialPort.PortName = "COM3";
        _serialPort.Open();
        _serialPort.BaudRate = 19200;
        _serialPort.DataBits = 8;
        _serialPort.Parity = Parity.None;
        _serialPort.StopBits = StopBits.One;        
        _serialPort.Write("Byte[DA 1F 1F]");
        _serialPort.Close();
    }
}

1 Ответ

2 голосов
/ 17 ноября 2010
  1. Создать экземпляр Com-порта с необходимыми параметрами.
  2. Открыть Com порт
  3. Запишите команду
  4. Закрыть

        static SerialPort _serialPort;
        public static void Main()
        {
            _serialPort = new SerialPort();
            _serialPort.PortName = "COM3";
            _serialPort.BaudRate = 19200;
            _serialPort.DataBits = 8;
            _serialPort.Parity = Parity.None;
            _serialPort.StopBits = StopBits.One;
    
    
    <pre><code>    _serialPort.Open();
    
    
        byte[] command = new byte[] { 0xDA, 0x1F, 0x1F };
        _serialPort.Write(command, 0, command.Length);
    
    
        _serialPort.Close();
    }
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...