Russian Qt Forum
Ноябрь 24, 2024, 04:56
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
[Решено] QSerialPort пара воросов
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: [Решено] QSerialPort пара воросов (Прочитано 13588 раз)
titan83
Гость
[Решено] QSerialPort пара воросов
«
:
Сентябрь 15, 2016, 14:07 »
Здравствуйте, уважаемые коллеги.
В тему кастуется kuzulis, как человек наиболее приближенный к сабжу, но и наставления других камрадов приветствуются.
Среда. С одной стороны - ti sitara 3357 + linux 3.14, с другой - ноут с win7 64.
1. Не могу получить правильные данные при числе бит меньше семи, т.е.7 и 8 - все правильно. Делаю 6 или 5 - получаю мусор. В принципе, на жизнь не влияет - просто интересно.
2. Про mark и space под линухом я в курсе (что не работает), тоже не критично.
3. И важное. Если на стороне линуха стоит 7 бит данных, а на ноуте 8, и с ноута я что-то посылаю, то в линухе я неполаю ничего. Я понимаю, что это вопрос не к SerialPort - он просто от ядра ничего не получает, но все интересно: так всегда происходит, если у отправителя бит данных больше, чем у получателя? Просто хотелось бы получать хоть что-то, чтобы понимать, что дело в настройках, а не в кабелях.
Спасибо.
«
Последнее редактирование: Сентябрь 20, 2016, 07:59 от titan83
»
Записан
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: QSerialPort пара воросов
«
Ответ #1 :
Сентябрь 15, 2016, 21:47 »
Цитировать
Делаю 6 или 5 - получаю мусор.
Не может быть.
Цитировать
Про mark и space под линухом я в курсе (что не работает)
Неправда, работает.
Цитировать
если у отправителя бит данных больше, чем у получателя?
Как карта ляжет.
Записан
ArchLinux x86_64 / Win10 64 bit
qate
Супер
Offline
Сообщений: 1177
Re: QSerialPort пара воросов
«
Ответ #2 :
Сентябрь 15, 2016, 21:59 »
1. а зачем чтото иное чем 8 бит?
2. четность тоже никогда не нужна )
я бы даже сказал что компорт тоже не нужен, т.к. неудобен и устарел, ethernet удобнее )
Записан
titan83
Гость
Re: QSerialPort пара воросов
«
Ответ #3 :
Сентябрь 15, 2016, 22:32 »
Цитировать
Не может быть.
Тут ты прав - моя промашка(
Цитировать
Неправда, работает.
https://www.google.ru/search?q=linux+mark+space+parity&oq=linux+mark+spa&aqs=chrome.1.69i57j0j69i60.7296j0j4&sourceid=chrome&ie=UTF-8
И у меня так и нет приема корректного (есть только некоторые символы)ю
Цитировать
Как карта ляжет.
Жаль, почему-то если шлешь в обратную сторону с разными датабитами, то виндовый драйвер выдает мусор.
Но все равно спасибо.
Записан
titan83
Гость
Re: QSerialPort пара воросов
«
Ответ #4 :
Сентябрь 15, 2016, 22:37 »
Цитата: qate от Сентябрь 15, 2016, 21:59
1. а зачем чтото иное чем 8 бит?
2. четность тоже никогда не нужна )
я бы даже сказал что компорт тоже не нужен, т.к. неудобен и устарел, ethernet удобнее )
Я с вами солидарен, я люблю стек TCP\IP.
Но вот незадача - есть еще места на планете, куда не добрались современные веяния: там нет хипстеров, макбуков и смузи, а в наличии только масс-спектрометры, да весы производства конца 80-х годов прошлого века)))
Но я стараюсь, честно, чтобы и у них все было, как у людей - собираю данные с их старья и кидаю их в MSSQL, так что скоро и на чилийских медных рудниках откроются detox-бары)))
Humor mode off))
Записан
qate
Супер
Offline
Сообщений: 1177
Re: QSerialPort пара воросов
«
Ответ #5 :
Сентябрь 16, 2016, 08:44 »
Цитата: titan83 от Сентябрь 15, 2016, 22:37
в наличии только масс-спектрометры, да весы производства конца 80-х годов прошлого века
по исходному сообщению и не понятно что идет подключение к весам 80х, а будто разработка нового железа
Записан
titan83
Гость
Re: QSerialPort пара воросов
«
Ответ #6 :
Сентябрь 16, 2016, 14:30 »
Цитата: qate от Сентябрь 16, 2016, 08:44
Цитата: titan83 от Сентябрь 15, 2016, 22:37
в наличии только масс-спектрометры, да весы производства конца 80-х годов прошлого века
по исходному сообщению и не понятно что идет подключение к весам 80х, а будто разработка нового железа
Я без шуток считаю, что для взаимодействия между устройствами надо использовать только tcp\ip (modbus tcp, mqtt, snmp, https), а serial - это поддержка старых legacy-систем, где сроки работы - десятилетия, и раньше никто ничего менять не будет.
Записан
Bepec
Гость
Re: QSerialPort пара воросов
«
Ответ #7 :
Сентябрь 16, 2016, 15:47 »
Вы имеете шоры на глазах.
Пока вы сидите в квартирке/офисе в центре города с развитой инфраструктурой и пользуетесь умной кофемолкой - да, можно забыть о serial.
А вот когда вам нужно передать сигнал на расстоянии пары тройки километров, вы вдруг узнаете, что ethernet тянет только около 100 метров без повторителя... Оптоволокно дорого... А обычный двужильный провод и serial даёт нормальный результат
На каждую технологию своя ниша. По телефону можно говорить по 2 проводам. Там незачем 8 проводов плюс микроконтроллер с поддержкой ethernet
Датчик температуры за 100 рублей нормально подключается по serial. А версия с ethernet стоит раз в 5/6 дороже.
Записан
lit-uriy
Джедай : наставник для всех
Offline
Сообщений: 3880
Re: QSerialPort пара воросов
«
Ответ #8 :
Сентябрь 16, 2016, 18:09 »
в промышленном оборудовании пока приходится пользоваться RS-485 (Modbus, ...) или CAN, у первого скорость невменяемая, но большинство оборудования его поддерживает.
А в толстых конторах, разработчик, как правило, имеет право выбора из ассортимента конкретных поставщиков (из утверждённого "на верху" списка).
Ещё большая жопа в конторах где проводят [антикорупционные] тендеры. Там какое говно тендер выиграет, на том и клепать будешь.
Записан
Юра.
qate
Супер
Offline
Сообщений: 1177
Re: QSerialPort пара воросов
«
Ответ #9 :
Сентябрь 16, 2016, 19:18 »
Цитата: Bepec от Сентябрь 16, 2016, 15:47
А вот когда вам нужно передать сигнал на расстоянии пары тройки километров, вы вдруг узнаете, что ethernet тянет только около 100 метров без повторителя... Оптоволокно дорого... А обычный двужильный провод и serial даёт нормальный результат
и какая скорость будет у serial на длине 100м ?
ethernet есть везде, он удобен, его не пожгут руки пользователей, есть снифферы для анализа, доступ в любую точку мира есть
Цитата: Bepec от Сентябрь 16, 2016, 15:47
На каждую технологию своя ниша. По телефону можно говорить по 2 проводам. Там незачем 8 проводов плюс микроконтроллер с поддержкой ethernet
Датчик температуры за 100 рублей нормально подключается по serial. А версия с ethernet стоит раз в 5/6 дороже.
когда ты говорил по телефону по двум проводам в последний раз? )
канал до местной АТС не в счет
и не 8, а 4 провода надо для ethernet
да даже датчики по etherent удобнее, прописал кучу ip - все получили сигнал
Записан
Bepec
Гость
Re: QSerialPort пара воросов
«
Ответ #10 :
Сентябрь 16, 2016, 19:44 »
Ну самый простой пример - удаленное устройство. До него 500 метров по лесу.
Что проще - кинуть 2 провода и радоваться, или же ставить каждые 100 метров репиторы, подводить к ним полноценную магистраль и питание?
PS вот вы и о скорости вспомнили. А она в 90% случаях, когда речь не касается интернета, не очень нужна
Записан
qate
Супер
Offline
Сообщений: 1177
Re: QSerialPort пара воросов
«
Ответ #11 :
Сентябрь 16, 2016, 21:02 »
Цитата: Bepec от Сентябрь 16, 2016, 19:44
Ну самый простой пример - удаленное устройство. До него 500 метров по лесу.
я не знаток железа, но разве serial тут будет работать и на какой скорости ?
Записан
Old
Джедай : наставник для всех
Offline
Сообщений: 4350
Re: QSerialPort пара воросов
«
Ответ #12 :
Сентябрь 16, 2016, 21:43 »
Цитата: qate от Сентябрь 16, 2016, 21:02
я не знаток железа, но разве serial тут будет работать и на какой скорости ?
Посмотрите на RS-485
Записан
Bepec
Гость
Re: QSerialPort пара воросов
«
Ответ #13 :
Сентябрь 17, 2016, 00:37 »
Serial по RS 485 спокойно передаётся на 1км. Выше - уже начинаются потери, искажения, но вполне работает, если в протоколе дублирование или проверки целостности есть.
Записан
titan83
Гость
Re: QSerialPort пара воросов
«
Ответ #14 :
Сентябрь 17, 2016, 11:35 »
Цитата: Bepec от Сентябрь 16, 2016, 15:47
Вы имеете шоры на глазах.
Пока вы сидите в квартирке/офисе в центре города с развитой инфраструктурой и пользуетесь умной кофемолкой - да, можно забыть о serial.
А вот когда вам нужно передать сигнал на расстоянии пары тройки километров, вы вдруг узнаете, что ethernet тянет только около 100 метров без повторителя... Оптоволокно дорого... А обычный двужильный провод и serial даёт нормальный результат
На каждую технологию своя ниша. По телефону можно говорить по 2 проводам. Там незачем 8 проводов плюс микроконтроллер с поддержкой ethernet
Датчик температуры за 100 рублей нормально подключается по serial. А версия с ethernet стоит раз в 5/6 дороже.
Раз тема свалилась в небольшой оффтоп, то)))
На счет шор вы слегка погорячились: я работал с rs-232 (485), can, ethernet, wifi, zigbee, сейчас слегка ковыряю lora. Причем работать приходилось в регионах наподобие Ухты, Нижневартовска... Это были отнюдь не удобные офисы в миллионниках. Так что понимание плюсов и минусов каждой технологии присутствует.
А вот вы, как мне показалось, отождествляете Ethernet и tcp\ip, а это в корне неверно. Я несколько раз писал, что вижу приоритет именно tcp\ip, а не Ethernet, как частной физической среды. Это существенная разница.
Я работал с modbus, я работал с колхозными протоколами на can - это все неимоверная боль. Все эти бесконечные поллинги... На стеке tcp\ip есть протоколы для любых целей, нет нужды натягивать сову на глобус (canopen - слишком сложно, поэтому напишем-ка свой колхоз, имитирующий modbus, но в can-кадре 8 байт).
Но я считаю, что точка невозврата уже пройдена: дешевле нанять сисадминчика, чем бородача из 80-90-х и любая промышленная автоматика будет по сути сетевой инфраструктурой с четким централизованным управлением, а не мешаниной разномастных устройств.
Поэтому для меня так: tcp\ip везде, где возможно, serial - где невозможно предыдущее.
Все вышесказанное - имхо, мне 33 года, программирую с 9 лет, начинал на асме, так что кой-чего понимаю про работы в самом низу. Это для составления психоповеденческого образа)))
Всем мира))
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...