20191128:

串口初始化:

const AP_SerialManager &serial_manager = AP::serialmanager();
uart = serial_manager.find_serial(AP_SerialManager::SerialProtocol_XXXX, 0);
uart->begin(serial_manager.find_baudrate(AP_SerialManager::SerialProtocol_XXXX, 0))

假设接受缓冲区中有4个字节,调用uart->available()函数,返回值为4,调用uart->read()函数读取缓冲区的值时,发现读到的值是-1,且再次调用uart->available()函数时,返回值仍是4。经过检查后发现,串口使用时,配置和调用必须在同一线程下,否则读取就会失败。

多数情况下,在添加ardupilot中添加代码,不会涉及到创将新线程,但如果需要创建新线程时,一定要注意。

代码出处:

执行函数uart->begin(serial_manager.find_baudrate(AP_SerialManager::SerialProtocol_XXXX, 0))时,在begin函数中会给一个线程变量赋值(_uart_owner_thd = chThdGetSelfX())

再调用read函数时,会去检查调用read函数和调用begin函数是不是一个线程,如果不是就返回-1。

ardupilot读取串口数据不成功笔记(ChibiOS)相关推荐

  1. 如何在QT中读取串口数据

    总是能在别人的博客中学到太多太多,谢谢各位对知识的无私共享,谢谢大家 前言 去年我使用Qt编写串口通信程序时,将自己的学习过程写成了教程(Qt编写串口通信程序全程图文讲解),但是由于时间等原因,我只实 ...

  2. web前端读取串口数据

    来自扫码枪应用适配的经验及扩展. 查了好多资料,发现实现思路不外乎以下几种: 1.使用服务端开发语言开发一个读取串口数据的本地服务模块,并实现websocket长连接支持,前端开启长连接到该服务,根据 ...

  3. Java读取串口数据

    本文主要实现读取员工刷卡信息 将淘宝买的刷卡IC卡读取器插入Windows笔记本的USB接口,安装驱动,设备管理器会自动添加一个模拟的COM3串口 本次使用的Java环境为 java version ...

  4. java 读取串口数据

    串口资料 链接:https://pan.baidu.com/s/1jVO47WF7pCO6kDLezsBZ0g 提取码:hgwn 这段时间遇到了读取串口数据的需求,吭哧吭哧搞了两三天才搞出来,惭愧,所 ...

  5. windows下C++读取串口数据

    windows下C++读取串口数据 这里提供一个类: SerialPort.h #pragma once #ifndef SERIALPORT_H_ #define SERIALPORT_H_ #in ...

  6. python串口通信_python 读取串口数据的示例

    python3 读取串口数据 demo 最近在写一个demo,zigbee串口连接树莓派,树莓派使用串口通信接受zigbee穿过来得值.其中我是用的树莓派是3代B+,zigbee每隔三秒钟从串口输出数 ...

  7. 使用 ext3grep 恢复数据试验成功 笔记

    使用 ext3grep 恢复数据试验成功 笔记   来源:  Linux论坛 日期: 2009.07.07 10:03 (共有条评论)  我要评论   [Copy to clipboard] [ - ...

  8. RXTXcomm.jar 读取串口数据时报 Underlying input stream returned zero bytes 异常解决方法

    RXTXcomm.jar 读取串口数据时报 Underlying input stream returned zero bytes 异常解决方法 一.示例程序 1.依赖 2.示例代码 3.测试读取文件 ...

  9. python监听串口数据_python 读取串口数据的示例

    python3 读取串口数据 demo 最近在写一个demo,zigbee串口连接树莓派,树莓派使用串口通信接受zigbee穿过来得值.其中我是用的树莓派是3代B+,zigbee每隔三秒钟从串口输出数 ...

最新文章

  1. jquery 幻灯片图像切换效果
  2. Ubuntu 16.04.6 LTS 发布:紧急修复 APT 漏洞
  3. 【♻️markdown之一次编写,到处使用♻️】markdown文件转word
  4. python实现条件匹配_python3 re如何匹配满足条件的选项?
  5. 关于日志系统显示SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“.
  6. 如何为编程爱好者设计一款好玩的智能硬件(三)——该选什么样的MCU呢?
  7. linux安装telnet组件,LINUX下如何安装telnet
  8. Bailian4045 与3和5无关的数【进制+模除】
  9. [每日一题] 11gOCP 1z0-053 :2013-10-1 persistent lightweight jobs...........................11
  10. Codeforce 1700Difficulty Graphs 20 questions
  11. 绘制自己的人际关系图_matlab能绘制人际关系网络图吗?
  12. android实现第三方QQ登录
  13. 一些关于医学科研的好用网站(转载)
  14. app中使用企业微信sdk分享小程序报错:小程序路径错误,加载超时 解决办法。
  15. php文件 怎么写韩文,php插入韩文txt文件内的数据,SQL-Front显示乱码
  16. 除法的向上取整和向下取整
  17. 『Python学习笔记』Python中的异步Web框架之fastAPI介绍RestAPI
  18. Opencv学习笔记完整版
  19. Java实现一个简单双色球摇奖功能
  20. 经验谈|如何处理好产品与开发的关系

热门文章

  1. APC PDU AP7921 DHCP配置
  2. 百度地图只有网格 Authentication Error errorcode: -1 uid: -1 appid -1 msg: Current network is not available.
  3. 使用Unity3D的设计思想实现一个简单的C#赛车游戏场景
  4. 历时半年,Web版Skype扩大测试范围至美国和英国所有用户
  5. html5视频播放器video player 选择
  6. 中文稀疏GPT大模型落地 — 通往低成本高性能多任务通用自然语言理解的关键里程碑
  7. 界面控件DevExtreme v23.1抢先体验,增强的UI/UX自定义功能!
  8. 浏览不良网站一定会有记录吗?无痕模式有用吗?
  9. 如何处理 网站被网安大队下发的信息系统安全等级保护限期整改通知书
  10. 【原创】提醒久坐器:一个小时提醒一次,让自己不要长时间坐在椅子上