powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Чтение COM порта GPS навигатора
30 сообщений из 30, показаны все 2 страниц
Чтение COM порта GPS навигатора
    #39471444
Фотография yardie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет всем!
Есть прибор GPS навигатор TELTONIKA GH4000. Он подключается к компу через USB и создает виртуальный COM порт.
Он передает NMEA данные. Если брать уже готовые программы по типу Serial Port Monitor , то видно как дыннае поступаю от прибора, прибор передвает данные, считывание проходит нормально.

Но если писать чтение данных на C#, через SerialPort, то данных просто нет... перепробовал уже кучу программ взятых с codeplex, писал сам разными способами но данных нет. Первый раз раьботаю с COM портом, на первый взгляд кажеться все просто.

Код: 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.
static void Main(string[] args)
        {
            SerialPort mySerialPort = new SerialPort("COM3");

            mySerialPort.BaudRate = 115200;
            mySerialPort.Parity = Parity.None;
            mySerialPort.StopBits = StopBits.One;
            mySerialPort.DataBits = 8;
            mySerialPort.Handshake = Handshake.None;

            mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);

            mySerialPort.Open();

            Console.WriteLine("Press any key to continue...");
            Console.WriteLine();
            Console.ReadKey();
            mySerialPort.Close();
        }

        private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
        {
            SerialPort sp = (SerialPort)sender;
            string indata = sp.ReadExisting();
            Debug.Print("Data Received:");
            Debug.Print(indata);
        }



пишу самым простым образом, как в большинстве примеров, прибор данные транслирует непрерывно, но у меня в программе даже событие DataReceivedHandler не срабатывает.

Подскажите что не так делаю? может нужно какие-то дополнительные функции вызывать? может другую какую библиотеку попробоватьт?
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471453
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yardie,

mySerialPort.BaudRate = 115200;

попробуйте задать 9600
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471457
Фотография yardie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,

пробовал, ни чего не меняется
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471466
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yardie,

посмотрите в программах которые работают параметры подключения к порту и задайте такие же
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471470
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtesyardie,
посмотрите в программах которые работают параметры подключения к порту и задайте такие же
А еще гляньте что они(эти самые программы) шлют и что им коробка отвечает...
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471474
Фотография yardie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,

все точно так же и делаю
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471580
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
yardie
Код: c#
1.
SerialPort mySerialPort 


из того, что Вы не попробовали.
Сделайте SerialPort mySerialPort глобальной переменной и в событии обращайтесь к нему.
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471584
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
когда все правильно, но не работает, надо проверять самые бредовые иди
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471610
Фотография yardie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
buser,

как глянутььи чем глянуть?

вот что я вижу с помощью Serial Port Monitor
http://joxi.ru/Y2Lq7J0Cnw68QA
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471638
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2когда все правильно, но не работает, надо проверять самые бредовые иди

когда все правильно, но не работает, значит что-то неправильно
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471673
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Ролг ХупинCat2когда все правильно, но не работает, надо проверять самые бредовые иди

когда все правильно, но не работает, значит что-то неправильно
Это точно, но не всегда ошибка в своем коде. бывают и ошибки в реализации языка.
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=675497&msg=7349190]1. Image в pictureBox и RowChanged. 2. Image в byte[]
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471682
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2,

за COM портом не припомню косяков
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471685
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Вообще-то дизайнер строит вызов события так

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
SerialPort mySerialPort = new SerialPort("COM3");
mySerialPort.DataReceived += SerialDataReceivedEventHandlerd;

...

 private static void SerialDataReceivedEventHandlerd(object sender, SerialDataReceivedEventArgs e)
        {
            throw new NotImplementedException();
        }


а не так, как Вы ручками наваяли

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
 SerialPort mySerialPort = new SerialPort("COM3");
 mySerialPort.DataReceived += new SerialDataReceivedEventHandler(DataReceivedHandler);

  ...  
        

        private static void DataReceivedHandler(object sender, SerialDataReceivedEventArgs e)
        {
            
        }                             
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471686
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Внезапно, евенты не добавляют асинхронный второй поток
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471690
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://www.google.ru/search?q=serialport datareceived not firing
мне в свое время помогло
Код: c#
1.
port.DtrEnable = true;
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471691
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хотя нет, пример с МСДН https://msdn.microsoft.com/ru-ru/library/system.io.ports.serialport.datareceived(v=vs.110).aspx

Тогда, возможно стоит прикрутить обработчик ошибок порта?
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471693
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ИзопропилCat2,

за COM портом не припомню косяков
Помнится тут даже форум предлагали "программирование ком-портов", столько у народа косяков было в этом жестко-брутальном устройстве
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471701
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилCat2,

за COM портом не припомню косяков

между портом и приложением есть еще система
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471720
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ролг ХупинИзопропилCat2,

за COM портом не припомню косяков

между портом и приложением есть еще система

в системе косяков не припомню(включая dot.net) - так понятнее?
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471726
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропил,

много исследовал код WPF, там полно всякой хохмы и баги находил в том числе
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471848
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ИзопропилРолг Хупинпропущено...


между портом и приложением есть еще система

в системе косяков не припомню(включая dot.net) - так понятнее?
Есть такое сообщение об ошибке: "Существует назначенный этой команде Command открытый DataReader, который требуется предварительно закрыть."

Оно появляется тогда, когда никаких открытых датаридеров и в помине нет и решение обычно никак с закрытием каких-то датаридеров не связано.

https://yandex.ru/search/?lr=18&clid=2270453&banerid=020162301488623749617434024119&win=270&msid=1497490482.99505.20933.14806&text=Существует назначенный этой команде Command открытый DataReader, который требуется предварительно закрыть

Выскакивает она и тtх, кто датаридер даже не использует. Потом начинается шаманство. У меня пропала после того, как я исправил ошибку в описании Datatable
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471852
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
yardiebuser,

как глянутььи чем глянуть?

Попробуй еще поиграться с параметрами DtrEnable/RtsEnable перед открытием порта
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471857
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Pallarisyardiebuser,

как глянутььи чем глянуть?

Попробуй еще поиграться с параметрами DtrEnable/RtsEnable перед открытием порта
20564742
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471858
Сон Веры Павловны
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилкосяков не припомню(включая dot.net)
Ну как же. Вспомнить хотя бы достаточно известный косяк с temporary assembly, которые создаются при десериализации XmlSerializer'ом, и не выгружаются из памяти - в такой ситуации вполне возможны ощутимые memory leaks. Причем вообще не зависящие от прикладного кода ( см. здесь ).
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471861
Pallaris
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры ПавловныPallarisпропущено...


Попробуй еще поиграться с параметрами DtrEnable/RtsEnable перед открытием порта
20564742

простите меня, лююююди
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471884
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
какие глюки были в dotnet с COM-портами и сокетами?
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471954
Фотография fortibransa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилкакие глюки были в dotnet с COM-портами и сокетами?++
Если не работает, то что-то не так с параметрами SerialPort.
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39471995
Ролг Хупин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ИзопропилРолг Хупинпропущено...


между портом и приложением есть еще система

в системе косяков не припомню(включая dot.net) - так понятнее?

если вы не видите их это еще не означает, что их нет
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39472045
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и эти люди зарплату получают......
...
Рейтинг: 0 / 0
Чтение COM порта GPS навигатора
    #39472053
Фотография yardie
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сон Веры Павловны https://www.google.ru/search?q=serialport datareceived not firing
мне в свое время помогло
Код: c#
1.
port.DtrEnable = true;



Спасибо, именно оно!!!

Свойство SerialPort.DtrEnable
Возвращает или задает значение, включающее поддержку сигнала готовности терминала (DTR) в сеансе последовательной связи.
теперь все работает!
...
Рейтинг: 0 / 0
30 сообщений из 30, показаны все 2 страниц
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Чтение COM порта GPS навигатора
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]