Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ О взаимном расположении двух прямых (на языке С) https://www.cyberforum.ru/ cpp/ thread173380.html
даны действ. числа x1,y1,x2,y2,x3,y3,x4,y4. (x1,y1) и (x2,y2) - координаты двух точек первой прямой., (x3,y3) и (x4,y4) - координаты двух точек второй прямой. определить расположение прямых...
C++ graphics.h в code blocks ....
Всем здравствуйте!:) Подскажите пожалуйста, как подключить библиотеку graphics.h в code blocks? А то че-т ниче не выходит....:(
Инсталлятор C++
Вобщем хочу написать свой инстолятор! есть у кагонибудь литература на русском по этой теми или исходники??
C++ Обмен по RS-422 Добрый всем день! Подскажите, пожалуйста, что можно почитать для организации обмена по RS-422. Никак не могу найти внятных примеров или исходников по этому протоколу. https://www.cyberforum.ru/ cpp/ thread172122.html
C++ delete vs. delete [] https://www.cyberforum.ru/ cpp/ thread170782.html
Всем привет, в разница использования delete и delete ? я читал, что delete используется для освобождения массивов, а delete для освобождения единичных объектов. Однако я использовал и так и...
C++ Перевод
HELP!!!! Добавлено через 36 секунд Люди пожалуйста помогите написать на си ++ программу Перевод из CMYK в YUV и обратно.... Пожалуйста =(
C++ Что не так?
//--------------------------------------------------------------------------- #include <iostream.h> #include <new.h> #include <stdlib.h> #include <cctype.h> #pragma hdrstop ...
C++ Одного ли цвета эти клетки на шахматной доске? Как решить задачу - Даны координаты двух полей шахматной доски. Координаты клетки - это два числа от 1 до 8: номер столбца и номер строки. Одного ли цвета эти клетки на шахматной доске? Я попробовал... https://www.cyberforum.ru/ cpp/ thread170255.html
C++ получение EventLog https://www.cyberforum.ru/ cpp/ thread170136.html
Доброго времени суток! Есть необходимость реализации получения и сохранения журнала событий Windows XP. Помогите пожалуйста определиться в каком направлении смотреть, т.к. навыков программирования...
C++ Нужен "Исходник" Вообщем курсовой пишу...прогу скачал с нэта) Хотел уже здать, но учителя сказали сделать "Исходник". Кто может мне с этим помочь? вот код: 580 #include<conio.h> #include<stdio.h>... https://www.cyberforum.ru/ cpp/ thread169527.html
20 / 20 / 3
Регистрация: 21.03.2010
Сообщений: 221
12.10.2011, 16:23  [ТС] 0

Программирование последовательного порта.

12.10.2011, 16:23. Просмотров 3470. Ответов 5
Метки (Все метки)

Ответ

Если кто-то считает что это нереально, вот вам код:
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
/*Програма-чат через послідовний порт(для двох ПК)*/
 
#include <dos.h>
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
char buf[250],buf2[250];
int com,com2;
void initcom1 () {
          /* налаштування поpту COM-1 на pоботу */
outportb(0x3f8,0x80);  /* пiдготовка до завантаження швидкостi */
outportb(0x3f8,0x60);  /* швидкiсть прийому-пеpедачi в 1200 бод */
outportb(0x3f9,0x00);  /* старший байт подiлювача частоти */
outportb(0x3fB,0x03);  /* бiтiв даних = 8
                  стоп-бiтiв = 1
                  тип паpностi невикоpистовуеться
                  поpти 2F8h i 2F9h в звичайному pежимi */
outportb(0x3fC,0x00); /* модем не викоpистовуеться */
outportb(0x3f9,0x00); /* забоpона всих пеpеpивань */
}
void initcom2 ()
 {
          /* налаштування поpту СОМ-2 на pоботу */
outportb(0x2f8,0x80);  /* пiдготовка до завантаження швидкостi */
outportb(0x2f8,0x60);  /* швидкiсть прийому-пеpедачi в 1200 бод */
outportb(0x2f9,0x00);  /* старший байт подiлювача частоти */
outportb(0x2fB,0x03);  /* бiтiв даних = 8
                стоп-бiтiв = 1
                тип паpностi невикоpистовуеться
                     поpти 2F8h i 2F9h в звичайному pежимi */
outportb(0x2fC,0x00); /* модем не викоpистовуеться */
outportb(0x2f9,0x00); /* забоpона всих пеpеpивань */
}
void gochat (){
char ch;
int z,k,i,dov;
i=0;
k=1;
z=0;
buf[0]=NULL;
buf2[0]=NULL;
do
 {
 if (k==21) 
{
   clrscr();
   k=1;
   gotoxy(1,23);
   printf("%s",buf);
   gotoxy(1,k);
   textcolor(3);
   printf("%s",buf2);
   k++;
}                  /*Приймач*/
  if(((inport(com))&1)!=0) /* пеpевipка на пpийнятi данi */
  {
   ch=inportb(com2);   /* читання пpийнятого бiту */
   buf2[z]=ch;
   z++;
   outport(com,0x20); /* пiдготовка для пpийому слiдуючого символу */
if (ch==13)
{
buf2[z-1]=NULL;
gotoxy(1,k);
textcolor(3);
printf("%s",buf2);
k++;
buf2[0]=NULL;
textcolor(2);
}
  }
                 /*Передавач*/
  if(kbhit())
  {
   ch=getch();
   gotoxy(i+1,23);
   printf("%c",ch);
   buf[i]=ch;
   i++;
   if (ch==13)
{
dov=i;
gotoxy(1,23);
clreol();
gotoxy(1,k);
printf("%s",buf);
buf[i+1]=13;
k++;
   for(i=0;i<=dov+1;i++)
{
do
     {
      outportb(com2,buf[i]);  /* занесення символу в поpт для пеpедачi */
     }
   while((inport(com) & 0x20)==0);
   delay(100);          /* затpимка, якщо буфеp пустий */
   if((inport(com) & 0x10)==1)
   printf("Обрив лінії!!!");
   buf[i]=NULL;
     }
     i=0;
     
   }
  }    
 } while(ch!=27);    /* Вихiд з програми по натисненнi ESC */
}
void main ()
{
 char ch;
 do
 {
 clrscr();
 gotoxy(30,10);
 printf("1.  Com 1\n");
 gotoxy(30,11);
 printf("2.  Com 2\n");
 gotoxy(30,12);
 printf("3.  EXIT\n");
 ch=getch();
 if (ch=='1')
  {
   com=0x3FD;
   com2=0x3F8;
   initcom1();
   clrscr();
   gochat();
  } else
 if (ch=='2')
  {
   com=0x2FD;
   com2=0x2F8;
   initcom2 ();
   clrscr();
   gochat ();
  } else
If(ch=='3')
{
Exit;
}
  }
  while(ch!='1' && ch!='2' && ch!='3');
}


Вернуться к обсуждению:
Программирование последовательного порта.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.10.2011, 16:23

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как принять число из последовательного порта и отобразить его в edit_box?
Как принять число из последовательного порта и отобразить его?Работаю с помощью CreateFile и...

Программирование Com порта в Microsoft Visual Studio 9.0 C++
Всем привет! Имеется микроконтроллер AVR ATmega128, на борту которого имеется UART. Требуется...

WinAPI и Qt. Как реализовать выпадающий список для конфигурирования свойств последовательного порта
Ребят,подскажите пожалуйста, как замутить выпадающий список для конфигурирования свойств...

Программирование последовательного порта
Добрый день, камрады. Не знаю в верный ли подраздел форума я обращаюсь! Прошу строго не судить! Но...

0
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.