The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"RS485 in Linux"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [Проследить за развитием треда]

"RS485 in Linux" 
Сообщение от Lesha Искать по авторуВ закладки on 07-Апр-05, 20:07  (MSK)
Не могу нормально организовать работу RS485.
char out_buf[]="#20S1512345k1A\x0d";
open_port();
set_port_parametres();

while(!kbhit())
{
  ioctl(fd,TIOCMGET,&status);
  status|=TIOCM_RTS;
  ioctl(fd,TIOCMSET,&status);
  
  write(fd,&out_buf,sizeof(out_buf)-1);

  sleep(1);

  ioctl(fd,TIOCMGET,&status);
  status&=~TIOCM_RTS;
  ioctl(fd,TIOCMSET,&status); //RESET RTS after transmitt

  sleep(1);
  printf("\n%s",out_buf);
}
Можно ли отследить конец передачи по СОМ-порту, что бы затем отключить RTS? Т.к. требуется переключиться очень быстро на прием. А без sleep RTS рубит передачу.

Заранее спасибо.

P.S. В Линуксе полный ламер. Но от его быстродействия работы с портом челюсть отвисает.

  Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

  • RS485 in Linux, ACCA, 22:05 , 14-Апр-05, (1)  

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RS485 in Linux" 
Сообщение от ACCA Искать по авторуВ закладки(ok) on 14-Апр-05, 22:05  (MSK)
>Можно ли отследить конец передачи по СОМ-порту, что бы затем отключить RTS?
>Т.к. требуется переключиться очень быстро на прием. А без sleep RTS
>рубит передачу.

Следи за CTS - как он появился, так передача окончена. Если ты на RS485 выходишь через RS232, то не забудь поставить размер буфера = 1 в передатчике 82450/82550.

Следить за RTS можно с помощью select, упомянув твой fd в exceptfds.
Другой подход - сунуть его в writefds, только нужно будет похимичить с буферизацией fd и размерами аппаратных буферов.

  Удалить Правка | Высказать мнение | Ответить | Рекомендовать в FAQ | Cообщить модератору | Наверх


Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ]
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру