Player
Frontpage
Contents
User
Installation
Quick start
Supported devices
Tutorials
Utilities
Client libraries
FAQ
Help
Developer
Architecture
libplayercore
libplayerinterface
interfaces
libplayerdrivers
drivers
libplayercommon
libplayersd
libplayertcp
libplayerxdr
TODO
Online
Homepage
Download
Project
Bugs
Help
server
drivers
mixed
khepera
khepera_serial.h
1
/*
2
* Player - One Hell of a Robot Server
3
* Copyright (C) 2006
4
* Toby Collett
5
*
6
*
7
* This library is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License as published by the Free Software Foundation; either
10
* version 2.1 of the License, or (at your option) any later version.
11
*
12
* This library is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
16
*
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with this library; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
*/
21
22
#ifndef KHEPERA_SERIAL_H
23
#define KHEPERA_SERIAL_H
24
25
#include <pthread.h>
26
#include <termios.h>
27
28
#define KHEPERA_DEFAULT_BAUD B38400
29
#define KHEPERA_BUFFER_LEN 255
30
#define KHEPERA_SERIAL_TIMEOUT_USECS 100000
31
32
33
class
KheperaSerial
34
{
35
public
:
36
37
KheperaSerial
(
char
* port,
int
rate = KHEPERA_DEFAULT_BAUD);
38
~KheperaSerial
();
39
40
bool
Open() {
return
fd >0;};
41
int
KheperaCommand(
char
command,
int
InCount,
int
* InValues,
int
OutCount,
int
* OutValues);
42
43
void
Lock();
44
void
Unlock();
45
protected
:
46
// serial port descriptor
47
int
fd;
48
struct
termios oldtio;
49
50
// read/write buffer
51
char
buffer[KHEPERA_BUFFER_LEN+1];
52
53
int
WriteInts(
char
command,
int
Count = 0,
int
* Values = NULL);
54
int
ReadInts(
char
Header,
int
Count = 0,
int
* Values = NULL);
55
56
pthread_mutex_t lock;
57
};
58
59
#endif
KheperaSerial
Definition
khepera_serial.h:34
Generated on Thu Jul 25 2024 00:00:00 for Player by
1.12.0