Программа для проверки обратной связи последовательного порта. Я нахожу проблему в номере порта последовательного порта. Как определить номер порта usb-uart моста COM39 в диспетчере устройств? Программа скомпилирована должным образом, но при выполнении она застревает.
#include <string.h>
#include <stdlib.h>
#include <conio.h>
#include <ctype.h>
#include <math.h>
#include <dos.h>
#define MAX 5000 // max length of delay period of time
#define COM1 (unsigned short)0x006 // serial port COM1
#define COM2 (unsigned short)0x2F8 // serial port COM2
int TestSerial ();
void Delay (int num);
int TestSerial ()
{
int index, value, result = 0;
printf ("Begin to execute outp() & inp()...\n");
for (index = 0; index < 10; index++)
{
printf ("Data sent to COM1 is: %d\n", index);
_outp (COM1, index);
Delay (500);
value = _inp (COM1);
printf ("Data returned from COM1 is: %d\n", value);
printf ("\n");
if (value != index)
{
printf ("Error in loop testing of the COM1!\n");
result = -1;
return result;
}
}
return result;
}
void Delay (int num)
{
int m, n, cycle = MAX;
for (m = 0; m <= num * cycle; m++)
n = m - 1;
return;
}
void main (void)
{
int rc = 0;
printf ("\n");
rc = TestSerial ();
if (rc != 0)
printf ("Error in TestSerial()!\n");
else
printf ("Success in TestSerial()!\n");
return;
}
Вывод такой, как показано ниже
Я получаю диапазон ввода-вывода для COM1 под вкладка ресурса, которую я использовал в программе изначально, но она не работала
Я хочу использовать программу для тестирования последовательного порта COM39, который является ничем иным, как UART на USB-мост. Там нет вкладки ресурсов для указанного COM39. Как найти диапазон ввода-вывода для порта, который будет использоваться в разделе #define?