00001
00013 #include "urg_ctrl.h"
00014 #include <stdio.h>
00015 #include <stdlib.h>
00016
00017
00018 static void urg_exit(urg_t *urg, const char *message)
00019 {
00020 printf("%s: %s\n", message, urg_error(urg));
00021 urg_disconnect(urg);
00022
00023 #ifdef MSC
00024 getchar();
00025 #endif
00026 exit(1);
00027 }
00028
00029
00031 int main(int argc, char *argv[])
00032 {
00033 enum {
00034 LinesMax = 5,
00035 };
00036
00037 #ifdef WINDOWS_OS
00038 const char device[] = "COM4";
00039 #else
00040 const char device[] = "/dev/ttyACM0";
00041 #endif
00042
00043 char buffer[LinesMax][UrgLineWidth];
00044 char *lines[LinesMax];
00045 int ret;
00046 int i;
00047 urg_t urg;
00048
00049
00050 urg_initialize(&urg);
00051 ret = urg_connect(&urg, device, 115200);
00052 if (ret < 0) {
00053 urg_exit(&urg, "urg_connect()");
00054 }
00055
00056
00057 for (i = 0; i < LinesMax; ++i) {
00058 lines[i] = buffer[i];
00059 }
00060 ret = urg_versionLines(&urg, lines, LinesMax);
00061 printf("urg_getVersion: %s\n", urg_error(&urg));
00062 if (ret < 0) {
00063 urg_disconnect(&urg);
00064 exit(1);
00065 }
00066
00067
00068 for (i = 0; i < LinesMax; ++i) {
00069 printf("%s\n", lines[i]);
00070 }
00071
00072
00073 urg_disconnect(&urg);
00074
00075 #ifdef MSC
00076 getchar();
00077 #endif
00078
00079 return 0;
00080 }