Advertisement
Guest User

Untitled

a guest
Aug 8th, 2013
38
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.90 KB | None | 0 0
  1. int main(void)
  2. {
  3.     char *portname = "/dev/ttyO4";
  4.    
  5.     int fd = open (portname, O_RDWR | O_NOCTTY | O_SYNC);
  6.     if (fd < 0)
  7.     {
  8.         printf ("error %d opening %s: %s", errno, portname, strerror (errno));
  9.         return 0;
  10.     }
  11.    
  12.     set_interface_attribs (fd, BAUD_RATE, 0);
  13.     set_blocking (fd, 1);
  14.    
  15.     tcflush(fd, TCIOFLUSH);
  16.    
  17.     char s[] = "XBMCA";
  18.     std::string ans = "";
  19.    
  20.     int n;
  21.    
  22.     while (true)
  23.     {
  24.         do {
  25.             n = write (fd, s, sizeof(s));
  26.            
  27.             if (n < 0)
  28.             {
  29.                 std::cout << "ERROR";
  30.             }
  31.         } while (n == 0);
  32.    
  33.         //write (fd, (void*)s, strlen(s));
  34.         char buf[100];
  35.        
  36.         do {
  37.             n = read(fd, buf, 99);
  38.            
  39.             if (n < 0 && errno != EAGAIN)
  40.             {
  41.                 std::cout << "ERROR";
  42.             }
  43.             if (n < 0 && errno == EAGAIN)
  44.             {
  45.                 continue;
  46.             }
  47.         } while (n == 0);
  48.        
  49.         //int b = read (fd, (void*)buf, 99);
  50.         buf[n] = '\0';
  51.        
  52.         std::cout << buf;
  53.         std::cout.flush();
  54.         sleep(1);
  55.     }
  56.    
  57.     return 0;
  58. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement