Форум программистов, компьютерный форум CyberForum.ru

Обмен через порт - C++

Восстановить пароль Регистрация
 
DragoDemon
2 / 2 / 0
Регистрация: 18.11.2009
Сообщений: 43
22.04.2011, 12:56     Обмен через порт #1
нужно написать две программки под UNIX, которые общались бы между собой через последовательный порт /dev/ser. Может кто нибудь рассказать общие концепции как это делается и если можно какие нибудь примеры.

ну я попробовал это реализовать через fstream. Но обмен у меня почему то не идет. Вообще зависает все в get и put, но почему я не понимаю.
*/dev/ser1 и /dev/ser2 соединены между собой

Вот код первой программки:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <fstream>
 
using namespace std;
fstream port;
port.open(/dev/ser1”, ios::in | ios::out | ios::binary);
 
int main()
    {
    char byte;
 
    while(1)
        {
        while(port.get(byte))
            cout << byte;
        
        port.put(‘a’);
        }
 
    port.close();
    return 0;
    }
Вот, второй (код тот же самый что и в первой, только порт другой)
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>
#include <fstream>
 
using namespace std;
fstream port;
port.open(/dev/ser2”, ios::in | ios::out | ios::binary);
 
int main()
    {
    char byte;
 
    while(1)
        {
        while(port.get(byte))
            cout << byte;
        
        port.put(‘a’);
        }
 
    port.close();
    return 0;
    }
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.04.2011, 12:56     Обмен через порт
Посмотрите здесь:

C++ управление через СОМ порт
C++ Модифицированний обмен
Через какое время корабль прибудет в порт назначения? C++
Подключение миши через USB порт C++
C++ Game порт. или не Game порт
Обмен данными через файлы по локальной сети C++
C++ Обмен данными с ЭБУ через RS-232
Обмен данными между 2 клиентами через интернет C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Aye Aye
 Аватар для Aye Aye
367 / 281 / 36
Регистрация: 17.12.2009
Сообщений: 567
22.04.2011, 13:52     Обмен через порт #2
потренируйся на именованном канале сначала:
Bash
1
2
3
4
5
6
7
$ mkfifo chanal
$ echo 'Hello, world!' > chanal &
[3] 12322
$ cat chanal 
Hello, world!
[3]   Готово            echo 'Hello, world!' > chanal
$
у меня нет таких устройств, я не могу проверить. Но если с каналом заработает то и с /dev/* должно.
Yandex
Объявления
22.04.2011, 13:52     Обмен через порт
Ответ Создать тему
Опции темы

Текущее время: 05:12. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru