Giter Club home page Giter Club logo

cserialport's Introduction

CSerialPort

Version Stars Forks License GitHub last commit

语言:English 英语 / 中文

一个使用C++实现的轻量级串口类库,可以轻松在windows和linux下进行串口读写


Design Principles 设计原则

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

Todo List 待处理事项

Strategic Goal 战略目标

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

Short-term Goal 短期目标

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

Last Modify 最新版本

Version: 4.0.3.200429

by itas109 on 2020-04-29

Quick Start 快速开始

Windows

  • cmake(recommend)
git clone https://github.com/itas109/CSerialPort.git

cd CSerialPort\Demo\CommNoGui

mkdir bin

cd bin

cmake ..
  • MSVC
git clone https://github.com/itas109/CSerialPort.git

cd CSerialPort\Demo\CommNoGui

compile-MSVC.bat

CSerialPortDemoNoGui-MSVC.exe
  • MinGW
git clone https://github.com/itas109/CSerialPort.git

cd CSerialPort\Demo\CommNoGui

compile-MinGW.bat

CSerialPortDemoNoGui-MinGW.exe

Linux

  • cmake(recommend)
git clone https://github.com/itas109/CSerialPort.git

cd CSerialPort\Demo\CommNoGui

mkdir bin

cd bin

cmake ..

make

./CSerialPortDemoNoGui
  • makefile
git clone https://github.com/itas109/CSerialPort.git
cd CSerialPort\Demo\CommNoGui

make
./CSerialPortDemoNoGui
  • shell
git clone https://github.com/itas109/CSerialPort.git
cd CSerialPort\Demo\CommNoGui

chmod +x compile.sh
./compile.sh
./CSerialPortDemoNoGui

Tested Machine 测试机器

系统版本 CPU架构 Gui 编译器 版本 测试时间
DeepIn 15.11 64bit CN x86_64 QT 5.12.6 GCC 6.3.0 4.0.3 2020-04-29
NeoKylin Server 7.0 CN x86_64 NoGui GCC 4.8.5 4.0.3 2020-04-29
Win7 Ultimate 64bit CN x86_64 QT 5.6.2 MSVC2013u5 32bit 4.0.3 2020-04-29
Win7 Ultimate 64bit CN x86_64 QT 5.12.7 MSVC2017 64bit 4.0.3 2020-04-29
Win7 Ultimate 64bit CN x86_64 NoGui MinGW73 64bit 4.0.3 2020-04-29
Win7 Ultimate 64bit CN x86_64 NoGui MinGW48 32bit 4.0.3 2020-04-29
Win7 Ultimate 64bit CN x86_64 MFC MSVC2013u5 32bit 4.0.3 2020-04-29
Win7 Ultimate 64bit CN x86_64 MFC MSVC2015u3 32bit 4.0.3 2020-04-29
Win10 Enterprise 64bit CN x86_64 MFC MSVC2015u3 32bit 4.0.3 2020-04-29
Win10 Enterprise 64bit CN x86_64 QT 5.12.7 MinGW73 64bit 4.0.3 2020-04-29
Linux raspberrypi 4.9.70 armv7l NoGUi GCC 4.9.2 4.0.3 2020-04-29

Result 结果

Linux:

Gui 界面

示例路径: CSerialPort/Demo/CommQT

image

No Gui 无界面

示例路径: CSerialPort/Demo/CommNoGui

image

Windows:

Gui 界面

示例路径: CSerialPort/Demo/CommQT

image

No Gui 无界面

示例路径: CSerialPort/Demo/CommNoGui image

Directory List 目录列表

目录列表文档

Error Guide 错误指南文档

错误指南文档

Frequently Asked Questions 常见问题回答

常见问题回答

Contacting 联系方式

Links 链接

CSerialPort-based Applications 基于CSerialPort的应用

欢迎补充

Donate 捐助


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

cserialport's People

Contributors

itas109 avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.