Create your Gitee Account
Explore and code with more than 6 million developers,Free private repositories !:)
Sign up
Clone or download
Cancel
Notice: Creating folder will generate an empty file .keep, because not support in Git
Loading...
README-EN.md

CSerialPort

Version Stars Stars Forks License language platform appveyor-ci travis-ci GitHub last commit

Language: English / 中文

Lightweight cross-platform serial port library based on C++, which can easy to read and write serial port on mutiple operating system


Design Principles

  • Cross-platform
  • Easy use
  • higher efficiency

Platform

CSerialPort has been tested to the following platforms:

  • DOS ( x86_64 )
  • Windows ( x86_64 )
  • Linux ( x86_64, aarch64, mips64el, s390x, ppc64le )
  • macOS ( x86_64 )
  • Raspberry Pi ( armv7l )
  • FreeBSD ( x86_64 )
  • ...

Todo List

Strategic Goal

  • 1.support windows and linux first
  • 2.add communicating protocol
  • 3.support hot swap
  • 4.higher efficiency notify module
  • 5.support other language,such as C, C#, Python, Java, Golang
  • 6.sync serial port communication
  • 7.new cross-platform gui serial port tool
  • 8.add a video description of this class
  • 9.comm monitor hook

Short-term Goal

  • 1.cross-platform OS identify class
  • 2.cross-platform Thread class
  • 3.cross-platform Lock class
  • 4.cross-platform higher efficiency Timer class
  • 5.Performance test report(Throughput && delay && packet dropout rates)

Last Modify

Version: 4.1.0.201010

by itas109 on 2020-10-10

Quick Start

$ git clone --depth=1 https://github.com/itas109/CSerialPort.git
$ cd CSerialPort
$ mkdir bin && cd bin
$ cmake ..
$ cmake --build .

Screenshot

Gui

Demo Path: CSerialPort/examples/CommQT

image

Tui

Demo Path: CSerialPort/examples/CommTui

image

No Gui

Demo Path: CSerialPort/examples/CommNoGui

image

Directory List

Directory List Document

Error Guide

Error Guide Document

Frequently Asked Questions

Frequently Asked Questions

Contacting

Links

CSerialPort-based Applications

1.CommMaster

  • support windows/linux/macos/raspberrypi and so on
  • support custom port name
  • support custom baudrate
  • support custom language
  • support custom theme

https://gitee.com/itas109/CommMaster

image

2.CommLite

CommLite is tui's serial port tool based CSerialPort

  • support x86, arm, mips cpu architecture
  • support windows dos, linux, macos,raspberrypi, freebsd operating system

https://github.com/itas109/CommLite

image

Donate

CSDN Blog


Other branches

Remon Spekreijse's serial library has had a profound impact on me, thanks again to Remon Spekreijse http://www.codeguru.com/cpp/i-n/network/serialcommunications/article.php/c2483/A-communication-class-for-serial-port.htm

only for windows branches : https://github.com/itas109/CSerialPort/tree/CSerialPort_win_3.0.3


License

since V3.0.0.171216 use GNU Lesser General Public License v3.0

Comments ( 0 )

Sign in for post a comment

About

基于C++的轻量级跨平台串口类库Lightweight cross-platform serial port library based on C++ spread retract
Cancel

Releases (2)

All

CSerialPort

Contributors

All

Activities

load more
can not load any more