crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> QextSerialPort, Как заставить отправлять/принимать байт целиком
dimay192
  опции профиля:
сообщение 29.7.2010, 16:46
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 10
Регистрация: 29.7.2010
Пользователь №: 1915

Спасибо сказали: 0 раз(а)




Репутация:   0  


Привет, форумчане!
Использую QextSerialPort!
Вот такая проблемма!
Закольцевал последовательны порт сам на себя! Отправляю числа в диапазоне 0xFF-0x00, а получаю обратно в диапазоне 0x7F-0x00, т.е. восьмой бит всегда равен нулю.
И не могу понять: толи это особенность символьных устройств (работать только с символами в диапазоне 0x7F-0x00), толи преобразование типов надо какое произвести...
Подскажите, как быт!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
dimay192
  опции профиля:
сообщение 29.7.2010, 18:04
Сообщение #2


Студент
*

Группа: Новичок
Сообщений: 10
Регистрация: 29.7.2010
Пользователь №: 1915

Спасибо сказали: 0 раз(а)




Репутация:   0  


Версия 1.2.0
Код приёма....

Для начала код отправления:

void QespTest::transmitMsg()
{
  int i = port->write((message->text()).toAscii(),
                       (message->text()).length());
}

код приема:
bool serialPort::synchronizedReading()
{
    int numBytes;
    numBytes = port->bytesAvailable();

    while(numBytes = port->bytesAvailable())
    {
        QByteArray b;
        b.append(port->read(1));

        port->getChar(&byte);
        ...

     }

}



собственно, это чуток подправленный пример QESPTA

QByteArray b отношения к делу не имеет... так, экспериментировал...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


5 чел. читают эту тему (гостей: 5, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 1.12.2024, 14:49