当前位置: 首页 > news >正文

网站建设开发心得游戏类网页设计

网站建设开发心得,游戏类网页设计,北京大兴网站建设公司哪家好,京东云wordpress1:libserialport简介 github路径 自己的gitee路径 libserialport 是一个跨平台的串口通信库,由 sigrok 项目开发。它简洁、易用,并且支持多种操作系统。 libserialport 支持阻塞和非阻塞模式,可以根据你的需求选择适当的模式。阻…

1:libserialport简介

github路径
自己的gitee路径
libserialport 是一个跨平台的串口通信库,由 sigrok 项目开发。它简洁、易用,并且支持多种操作系统。

libserialport 支持阻塞和非阻塞模式,可以根据你的需求选择适当的模式。阻塞模式下,操作会等待完成或超时,而非阻塞模式下,操作会立即返回。通过使用 sp_blocking_* 和 sp_nonblocking_* 函数,你可以轻松实现这两种模式。

2:交叉编译脚本

1:将下面的代码保存为一个脚本,使用source执行;
2:注意先修改 CROSS_COMPILE 和 prefix 路径;
3:编译步骤请参考编译说明;

#!/bin/bash# 源码地址 https://github.com/sigrokproject/libserialport#export CROSS_COMPILE=<交叉编译工具链前缀>
export CROSS_COMPILE=/opt/gcc-linaro-7.4.1-2019.02-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
export CC=${CROSS_COMPILE}gcc
export CXX=${CROSS_COMPILE}g++
export AR=${CROSS_COMPILE}ar
export AS=${CROSS_COMPILE}as
export LD=${CROSS_COMPILE}ld
export RANLIB=${CROSS_COMPILE}ranlib
export STRIP=${CROSS_COMPILE}strip
echo "cross ok"# 编译说明
# 1: 先执行 make clean 
#    source build.sh,注意修改交叉编译工具链
# 2:执行 ./autogen.sh
# 3: 修改交叉编译工具链和生成目标文件路径
#    ./configure --enable-tools=yes --host=aarch64-linux-gnu --prefix=/home/djq/mokar/cv2x_libs/libserialport-0.1.1/targets/
# 4:make
# 5:make install
# 6:libserialport-0.1.1/targets/ 路径下会生成目标文件

3: libserialport对比系统自带的read和write优势

libserialport 和直接使用系统自带的 read 和 write 函数来操作串口设备在功能和便利性上有一些区别。以下是一些主要的区别和考虑因素:

  1. 易用性
    libserialport: 提供了更高级的抽象,简化了串口的打开、配置和通信操作。处理串口通信时,开发者不需要深究底层细节,如设置串口参数和处理各种可能的错误。
    系统自带的 read 和 write: 需要开发者手动处理串口的打开、配置、参数设置以及错误处理。尽管更灵活,但容易出错且代码更复杂。
  2. 跨平台支持
    libserialport: 设计之初就考虑了跨平台支持,能在 Linux、Windows 和 macOS 上运行而无需修改代码。这对需要跨平台兼容的项目非常有用。
    系统自带的 read 和 write: 这些是 POSIX 标准函数,主要在 Unix/Linux 系统上原生支持。要在其他操作系统上使用,可能需要额外的工作。
  3. 功能扩展
    libserialport: 提供了更丰富的功能库,如列出系统中可用的串口、设置和获取串口参数、阻塞和非阻塞读写操作、事件通知等。
    系统自带的 read 和 write: 只提供基本的读写功能。若要实现高级功能(比如列出串口、流控等),需要额外编写大量代码。
  4. 代码简洁性
    libserialport: 提供了更简洁的 API,减少了重复代码,提高了代码的可读性和维护性。
    系统自带的 read 和 write: 需要写更多的样板代码来实现同样的功能。例如,配置串口需要手动使用 termios 结构体和相关函数。
  5. 错误处理
    libserialport: 内置了更好的错误处理机制,可以方便地进行错误检测和处理。
    系统自带的 read 和 write: 需要手动处理每一个系统调用的返回值,并进行相应的错误处理。
http://www.yayakq.cn/news/805667/

相关文章:

  • 安康做网站哪家好wordpress上传歌曲
  • 常州网站制作公司有哪些台州建站服务
  • 网站建设从零开始 教程旅游网站建设课程设计
  • 网站建设中 页面源代码苏州吴江做网站
  • 门户类网站注重什么做网站有没有效果
  • 网站建设技术人员工作想自学广告设计怎么学
  • 网页app生成器原理什么是优化营商环境
  • 学网站建设需要几年网页制作与设计站点应该怎么建
  • 如何建立个人网站的步骤武进网站建设价位
  • 化学药品购买网站专业的网站建设公
  • 网站建设公司招聘面试视频网站怎么做可以播放电视剧
  • 网站建设与开发英文文献企业营销案例
  • 个人网站可以做百度推广么长沙网站定制公司
  • 保定市城市规划建设局网站用手机制作ppt的软件
  • zencart 一个产品网站下单长沙网站外包公司吗
  • wordpress 会员发文百度搜索优化建议
  • 柳州 网站建设开锁做网站哪个好
  • 网站建设 学习什么成都网络公司排名榜
  • 深圳品牌网站制作公司哪家好学校网站定位
  • 自学建立网站做电子商务系统网站
  • 龙岩网站建设要多少费用搜索引擎作弊的网站有哪些
  • 优惠券网站建设制作东莞关键词排名推广
  • asp装修公司网站源码网站建设贰金手指下拉贰壹
  • 用地方名字做网站wordpress表格布局插件
  • 机械毕业设计代做网站辽阳建设网站公司报价
  • 新余市建设厅网站仓库进销存管理软件免费版
  • 承德做网站设计的wordpress 模板 安装
  • 平邑网站制作河南省住房和建设厅网站
  • 长沙公司做网站的价格四川seo快速排名
  • 免费手机网站网站防止恶意注册