All Projects → itas109 → Cserialport

itas109 / Cserialport

Licence: other
基于C++的轻量级开源跨平台串口类库Lightweight cross-platform serial port library based on C++

Programming Languages

cpp
1120 projects

Projects that are alternatives of or similar to Cserialport

Node Serialport
Access serial ports with JavaScript. Linux, OSX and Windows. Welcome your robotic JavaScript overlords. Better yet, program them!
Stars: ✭ 5,015 (+1594.26%)
Mutual labels:  serial, serialport, serial-ports
Cserialport
The latest modified version of Remon Spekreijse's serial port class
Stars: ✭ 64 (-78.38%)
Mutual labels:  serialport, serial-ports, communication
Raspberry-Pi-Electricity-Monitor
Software for monitoring the electricity consumption of a home with a Raspberry Pi
Stars: ✭ 33 (-88.85%)
Mutual labels:  serial, serial-ports
RxSerialPort
基于Rxjava2.x的串口通信library
Stars: ✭ 11 (-96.28%)
Mutual labels:  serial-ports, serialport
SerialTransfer
Arduino library to transfer dynamic, packetized data fast and reliably via Serial, I2C, or SPI
Stars: ✭ 273 (-7.77%)
Mutual labels:  serial, communication
SerialPorts.jl
SerialPort IO streams in Julia backed by pySerial.
Stars: ✭ 28 (-90.54%)
Mutual labels:  serial, serial-ports
Qtswissarmyknife
QSAK (Qt Swiss Army Knife) is a multi-functional, cross-platform debugging tool based on Qt.
Stars: ✭ 196 (-33.78%)
Mutual labels:  serial, serialport
netty-transport-purejavacomm
A netty serial pipeline using JNA and PureJavaComm
Stars: ✭ 30 (-89.86%)
Mutual labels:  serial, serialport
P5.serialport
Serial Port API and Server for p5.js
Stars: ✭ 120 (-59.46%)
Mutual labels:  serial, serialport
serial.nim
A Nim library for accessing serial ports.
Stars: ✭ 59 (-80.07%)
Mutual labels:  serial-ports, serialport
etherport-client
Client-side virtual serial port for Etherport. Used to implement firmata-compatible boards and relays.
Stars: ✭ 20 (-93.24%)
Mutual labels:  serial-ports, serialport
yahdlc
yahdlc - Yet Another HDLC implementation
Stars: ✭ 47 (-84.12%)
Mutual labels:  serial, communication
Packetserial
An Arduino Library that facilitates packet-based serial communication using COBS or SLIP encoding.
Stars: ✭ 177 (-40.2%)
Mutual labels:  serial, communication
Web Bluetooth Terminal
Progressive Web Application for serial communication with your own Bluetooth Low Energy (Smart) devices
Stars: ✭ 130 (-56.08%)
Mutual labels:  serial, communication
bluetooth-terminal
ES6 class for serial communication with your own Bluetooth Low Energy (Smart) devices
Stars: ✭ 43 (-85.47%)
Mutual labels:  serial, communication
Liblightmodbus
A cross-platform, lightweight Modbus RTU library
Stars: ✭ 121 (-59.12%)
Mutual labels:  serial, communication
serial2mqtt
Serial to MQTT adapter serivce
Stars: ✭ 21 (-92.91%)
Mutual labels:  serial, serialport
serialport
PHP Serial Port
Stars: ✭ 42 (-85.81%)
Mutual labels:  serial-ports, serialport
Arduino Robust Serial
A simple and robust serial communication protocol. It was designed for Arduino but can be used for other purposes (e.g. bluetooth, sockets). Implementation in C Arduino, C++, Python and Rust.
Stars: ✭ 83 (-71.96%)
Mutual labels:  serial, communication
Usbserial
Usb serial controller for Android
Stars: ✭ 1,301 (+339.53%)
Mutual labels:  serial, serialport

CSerialPort

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

语言:English / 中文

基于C++的轻量级开源跨平台串口类库,可以轻松实现跨平台多操作系统的串口读写


Design Principles 设计原则

  • 跨平台
  • 简单易用
  • 高效

Platform 平台

CSerialPort已经在以下平台做过测试:

  • 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 战略目标

  • [x] 1.首先支持windows和linux平台
  • [ ] 2.增加通用串口通信协议
  • [ ] 3.支持热插拔
  • [ ] 4.更高效的通知模块
  • [ ] 5.支持其他语言,如C, C#, Python, Java, Golang等
  • [x] 6.同步串口通信
  • [X] 7.全新的跨平台串口调试助手
  • [ ] 8.增加一个类库的介绍和使用视频
  • [ ] 9.串口侦听hook

Short-term Goal 短期目标

  • [x] 1.跨平台操作系统识别库
  • [ ] 2.跨平台多线程类库
  • [ ] 3.跨平台锁类库
  • [ ] 4.跨平台高效定时器类库
  • [ ] 5.性能测试报告(吞吐量、时延、丢包率)

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 图形用户界面

示例路径: CSerialPort/examples/CommQT

image

Tui 终端用户界面

示例路径: CSerialPort/examples/CommTui

image

No Gui 无界面

示例路径: CSerialPort/examples/CommNoGui

image

Directory List 目录列表

目录列表文档

Error Guide 错误指南文档

错误指南文档

Frequently Asked Questions 常见问题回答

常见问题回答

Contacting 联系方式

Links 链接

CSerialPort-based Applications 基于CSerialPort的应用

1.CommMaster通信大师

  • 支持windows/linux/macos/raspberrypi等等
  • 支持自定义串口名称
  • 支持自定义波特率
  • 支持自定义语言
  • 支持自定义主题

https://gitee.com/itas109/CommMaster

image

2.CommLite

CommLite是一款基于CSerialPort的文本UI串口调试助手

  • 支持x86, arm, mips等cpu架构
  • 支持windows dos, linux, macos, raspberrypi, freebsd等操作系统

https://github.com/itas109/CommLite

image

Donate 捐助

CSDN博客


Other branches 其他分支

Remon Spekreijse的串口类库对于本类库有着深远的影响,十分感谢Remon Spekreijse http://www.codeguru.com/cpp/i-n/network/serialcommunications/article.php/c2483/A-communication-class-for-serial-port.htm

仅支持windows版本分支 : https://github.com/itas109/CSerialPort/tree/CSerialPort_win_3.0.3


License 开源协议

自 V3.0.0.171216 版本后采用GNU Lesser General Public License v3.0

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].