Связь с портом RS232 в сборе - PullRequest
0 голосов
/ 28 июня 2011

У меня есть схема, которая имеет 8 входных линий и кабель, подключенный к последовательному порту компьютера.Контроллер порта подключен в параллельной конфигурации.(Я понятия не имею, что это значит! Студенты-электронщики сказали, что это означает, что «вы должны использовать сигналы асинхронно, например, каждый сигнал может быть включен или независим от других»)ассемблерный код, который считывает некоторые входные данные из файла, обрабатывает их и устанавливает эти строки данных в или из.Я могу сделать первые 2, но понятия не имею о портах.

Не могли бы вы дать мне отправную точку?например, как инициализировать порт и как установить строку данных на последовательный порт ПК в сборке?

Ответы [ 2 ]

5 голосов
/ 28 июня 2011

Я действительно думаю, что вы запутались - много. RS 232 - это протокол последовательный порт . В своей 9-контактной версии (DE-9) он имеет 8 используемых линий данных, но только половина из них является выходными контактами, и вы не можете реально контролировать контакт данных, если только вы не отправляете через него фактические данные. Если у вас нет устройства с микроконтроллером с последовательным интерфейсом, я сомневаюсь, что оно предназначено для использования с интерфейсом RS-232.

RS-232 действительно был соединением, используемым некоторыми принтерами в 80-х и начале 90-х, обычно матричными принтерами. К сожалению, это было слишком медленно для печати чего-либо, кроме текста ASCII, поэтому появился параллельный порт , который, кстати, имеет , имеет 8 строк вывода. Этот порт известен как "порт принтера" с 90-х годов. В современных компьютерах вы даже можете управлять выводами параллельного порта несколько раздельно, поэтому он широко используется в электронике - ну, это и тот факт, что он использует 5-вольтовый TTL-интерфейс, который намного проще в обращении, чем 12-вольтовый последовательный порт. порты используют.

Вы также не упоминаете, для какой операционной системы предназначена ваша программа, хотя, если вы намерены получить доступ к порту напрямую с помощью сборки, вы, вероятно, ограничены DOS или Windows 9x / Me.

Это говорит:

0 голосов
/ 28 июня 2011

Поскольку вы не указали какой язык или среду разработки, вот пример с использованием VB.NET:

    Private WithEvents m_comport1 As IO.Ports.SerialPort

Private Sub Form_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
    m_comport1 = New IO.Ports.SerialPort("COM1")
    AddHandler m_comport1.DataReceived, AddressOf Comport_DataReceived
End Sub

Private Sub SendData(p_data() As Byte)

    m_comport1.Write(p_data, 0, p_data.Length)

End Sub

Private Sub SendData(p_data As String)

    m_comport1.Write(p_data)

End Sub

Private Sub Comport_DataReceived(sender As System.Object, e As System.IO.Ports.SerialDataReceivedEventArgs)
    Dim bytesAvailable = m_comport1.BytesToRead
    Dim tempData(bytesAvailable) As Byte
    m_comport1.Read(tempData, 0, bytesAvailable)

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