c # — запись данных из параллельного порта в последовательный

Мы написали программу, которая отправляет простые данные из LPT1 в RS232C. В основном, кабель LPT в Serial используется для соединения двух машин. У программы нет проблем с записью данных в параллельный порт, но на последовательном конце ничего не получено.

Мне интересно, возможно ли такое общение на фундаментальном уровне, или я неправильно написал свою программу.

DataSender (запись в LPT1)

#include "stdafx.h"

int _tmain(int argc, _TCHAR* argv[])
{

HANDLE m_hCommPort = ::CreateFile( "LPT1",
GENERIC_READ|GENERIC_WRITE,  // access ( read and write)
0,                           // (share) 0:cannot share the
// COM port
0,                           // security  (None)
OPEN_EXISTING,               // creation : open_existing
FILE_FLAG_OVERLAPPED,        // we want overlapped operation
0                            // no templates file for
// COM port...
);if(m_hCommPort) {
printf("OK\n");
}
char data[] = "123481278349789\r\n";
DWORD dwSize = strlen(data);
DWORD dwBytesWritten;
DWORD dwBytesRead;

while(true) {

if(WriteFile (m_hCommPort,data,dwSize,&dwBytesWritten ,0)) {
printf("sended: %d\n", dwBytesWritten);
} else {
printf("send fail: %d\n", dwBytesWritten);
}

printf("send done\n");

int i;
scanf("%d", &i);
}
return 0;

}

DataReceiver (получение от COM3)

class Program
{
static void Main(string[] args)
{
SerialPort sendingPort = new SerialPort("COM3", 9600);
try
{
sendingPort.Open();
char c = (char)sendingPort.ReadChar();

Console.WriteLine("Readed:" + c);
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}Console.ReadKey();
}
}

0

Решение

Задача ещё не решена.

Другие решения


По вопросам рекламы [email protected]