1
0
mirror of https://github.com/wjwwood/serial.git synced 2026-01-22 19:54:57 +08:00

147 Commits

Author SHA1 Message Date
William Woodall
de704369db fixup removal of read_cache_ 2014-07-02 15:17:02 -07:00
William Woodall
76c5575f80 Merge pull request #66 from bakercp/bugfix_osx_compiling
Add defines to new list_ports methods to compile on OSX.
2014-07-02 15:05:15 -07:00
William Woodall
033b009480 Merge pull request #65 from wjwwood/fix_locking
fix usage of scoped locks
2014-07-02 15:03:41 -07:00
William Woodall
051824894b style fixup 2014-07-02 15:01:53 -07:00
Christopher Baker
24a8722f3e Fix typo. 2014-07-02 11:18:11 -05:00
Christopher Baker
b46681e8cc Add defines to new list_ports methods to compile on OSX. 2014-07-02 10:47:45 -05:00
William Woodall
72af8435c5 fix usage of scoped locks
previously they were getting destroyed
immediately because they were not stored in a
temporary scope variable
2014-06-23 11:23:27 -07:00
Konstantina Kastanara
04d4763926 Added return value control in Serial::SerialImpl::close () in unix.cc and win.cc 2014-05-07 18:49:37 +03:00
William Woodall
2df3499e81 Merge pull request #49 from clearpathrobotics/wait-functions
Wait functions
2014-04-28 10:58:55 -07:00
Craig Lilley
10fa977dad Fixed a syntax error.
In list_ports_win.cc.
2014-04-28 00:01:42 +01:00
Craig Lilley
31a589e6e7 Added osx implementation to list_ports. 2014-04-26 12:49:30 +01:00
Craig Lilley
301a3d4b27 Changed the serial::PortDescription struct.
- Renamed to PortInfo.

- "friendly_name" field is now "description".
2014-04-24 02:23:26 +01:00
Craig Lilley
b8479822f7 Refactored list_ports to return a vector of serial::PortDescription. 2014-04-22 01:02:58 +01:00
William Woodall
9f89596e85 return a vector<array<string, 3> > from list_ports
instead of a vector<vector<string> >
2014-04-17 19:54:29 +01:00
Craig Lilley
72604cec0e Added ability to enumerate ports on linux and windows.
Updated serial_example.cc to show example of port enumeration.
2014-04-17 19:54:29 +01:00
William Woodall
4e5f143121 fix compile on VS2013 2014-04-16 14:32:28 -07:00
Mike Purvis
5ec56d8294 Stubs for waitReadable and waitByteTimes on Windows. 2014-02-17 22:50:16 -05:00
dawid
780f76c40d support for mingw (mxe.cc) 2014-01-05 18:29:04 +01:00
Mike Purvis
d74c74bf15 Fill out waitByteTimes, integrate it into read as discussed in ticket #37 2013-11-19 12:27:56 -05:00
Mike Purvis
28025034bd Add waitReadable and waitByteTimes stubs. 2013-11-19 12:27:56 -05:00
Mike Purvis
a9bf8d804d Pre-fill buffer at start of read, to avoid the select if unnecessary. 2013-11-18 11:26:04 -05:00
Mike Purvis
c3855adbb0 Wrap nanoseconds when >= 1e9, rather than > 1e9. 2013-11-14 22:02:07 -05:00
Mike Purvis
fbffc18dd7 Fix for computing an expiry without rollover. 2013-11-08 10:03:27 -05:00
Mike Purvis
2e5e8f940b Divide by 1e9 to get seconds from nanoseconds, instead of 1e6. 2013-10-31 21:48:44 -04:00
William Woodall
cfac5bbcc9 use static casts rather than C-style casting
C-style casting can result in undesired reinterpret_casts
So we should avoid them, see:
http://stackoverflow.com/questions/332030/when-should-static-cast-dynamic-cast-and-reinterpret-cast-be-used
2013-10-31 19:44:34 -04:00
Mike Purvis
3f2ed36849 Of course, the timespec_from_ms function must return its result. 2013-10-31 19:43:49 -04:00
Mike Purvis
5820056aef Remove TimerExpiredException. 2013-10-31 19:43:49 -04:00
Mike Purvis
589e7b9a3b Eliminate modulus operator. 2013-10-31 19:43:49 -04:00
Mike Purvis
d8a1ef4ecf Rename now function to timespec_now and timeout_time to expiry, for greater clarity. 2013-10-31 19:43:49 -04:00
Mike Purvis
6747711632 Implement MillisecondTimer in the unix read() and write() functions. 2013-10-31 19:43:49 -04:00
Mike Purvis
16a024691b Add MillisecondTimer class. 2013-10-31 19:43:49 -04:00
William Woodall
e8f913b4a4 Contributor notice 2013-10-30 11:53:06 -07:00
William Woodall
092836d78f [style] whitespace changes only 2013-10-30 11:42:35 -07:00
Christopher Baker
0e5f7fa317 Fix broken ioctl calls, add exception handling. 2013-10-27 18:50:06 -05:00
Christopher Baker
9d04c09f10 Code guards for platform-specific implementations.
(when not using cmake / catkin)
2013-10-27 18:49:07 -05:00
William Woodall
ae34a17364 Merge pull request #33 from wjwwood/fix_custom_baudrate_osx
Update how custom baudrates are handled on OS X
2013-08-13 13:53:14 -07:00
daniser
079615f11f Update win.cc 2013-08-06 02:08:22 +03:00
daniser
125c105e3f Implemented Serial::available() for Windows 2013-08-06 01:28:46 +03:00
William Woodall
e11abb04f2 Fix compiler warnings on Windows 2013-08-02 21:20:25 -07:00
William Woodall
3db36faa14 Update how custom baudrates are handled on OS X
This is taken from the example serial program
on Apple's developer website, see:

http://free-pascal-general.1045716.n5.nabble.com/Non-standard-baud-rates-in-OS-X-IOSSIOSPEED-IOCTL-td4699923.html
2013-07-31 16:54:15 -07:00
William Woodall
e1138fda9e Merge pull request #32 from wjwwood/fix_timeout_windows
Setting timeout throws an exception on Windows
2013-07-30 16:17:00 -07:00
William Woodall
2143e8d475 Apply the timeout settings with reconfigurePort 2013-07-30 14:08:06 -07:00
William Woodall
a0a586cf5b [style] always use curly braces with if statements 2013-07-30 14:04:30 -07:00
William Woodall
9d20d1a07f convert wstring into string when printing 2013-07-30 11:06:47 -07:00
William Woodall
82884ca519 Pass LPCWSTR to CreateFile in Windows impl
This should fix #29
2013-07-30 10:31:15 -07:00
William Woodall
ffc3028289 Use wstring for port_ type in Windows impl 2013-07-30 10:30:46 -07:00
William Woodall
516a5c7e82 Fixed another Exception misspelling. 2013-06-11 17:05:24 -07:00
William Woodall
308be5b337 Merge pull request #25 from wjwwood/fix_exceptions
fix, by Thomas Hoppe <thomas.hoppe@cesys.com>
2013-06-11 14:40:18 -07:00
William Woodall
060634bf91 Potential timing fix for read and write.
Fixes #27
2013-05-22 21:45:20 -07:00
William Woodall
2b4bafbfd2 fix, by Thomas Hoppe <thomas.hoppe@cesys.com>
For SerialException's:

- The name was misspelled…
- Use std::string's for error messages to prevent corruption of messages on some platforms
2013-05-08 13:52:28 -07:00