All Classes Namespaces Files Functions Variables Enumerations Enumerator Pages
get_version_lines.c
1 
13 #include "urg_ctrl.h"
14 #include <stdio.h>
15 #include <stdlib.h>
16 
17 
18 static void urg_exit(urg_t *urg, const char *message)
19 {
20  printf("%s: %s\n", message, urg_error(urg));
21  urg_disconnect(urg);
22 
23 #ifdef MSC
24  getchar();
25 #endif
26  exit(1);
27 }
28 
29 
31 int main(int argc, char *argv[])
32 {
33  enum {
34  LinesMax = 5,
35  };
36 
37  //const char device[] = "COM3"; /* Example for Windows */
38  const char device[] = "/dev/ttyACM0"; /* Example for Linux */
39 
40  char buffer[LinesMax][UrgLineWidth];
41  char *lines[LinesMax];
42  int ret;
43  int i;
44 
45  /* Connection */
46  urg_t urg;
47  ret = urg_connect(&urg, device, 115200);
48  if (ret < 0) {
49  urg_exit(&urg, "urg_connect()");
50  }
51 
52  /* Get version information */
53  for (i = 0; i < LinesMax; ++i) {
54  lines[i] = buffer[i];
55  }
56  ret = urg_versionLines(&urg, lines, LinesMax);
57  printf("urg_getVersion: %s\n", urg_error(&urg));
58  if (ret < 0) {
59  urg_disconnect(&urg);
60  exit(1);
61  }
62 
63  /* Display */
64  for (i = 0; i < LinesMax; ++i) {
65  printf("%s\n", lines[i]);
66  }
67 
68  /* Disconnect */
69  urg_disconnect(&urg);
70 
71  return 0;
72 }