ardupilot读取串口数据不成功笔记(ChibiOS)
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)相关推荐
- 如何在QT中读取串口数据
总是能在别人的博客中学到太多太多,谢谢各位对知识的无私共享,谢谢大家 前言 去年我使用Qt编写串口通信程序时,将自己的学习过程写成了教程(Qt编写串口通信程序全程图文讲解),但是由于时间等原因,我只实 ...
- web前端读取串口数据
来自扫码枪应用适配的经验及扩展. 查了好多资料,发现实现思路不外乎以下几种: 1.使用服务端开发语言开发一个读取串口数据的本地服务模块,并实现websocket长连接支持,前端开启长连接到该服务,根据 ...
- Java读取串口数据
本文主要实现读取员工刷卡信息 将淘宝买的刷卡IC卡读取器插入Windows笔记本的USB接口,安装驱动,设备管理器会自动添加一个模拟的COM3串口 本次使用的Java环境为 java version ...
- java 读取串口数据
串口资料 链接:https://pan.baidu.com/s/1jVO47WF7pCO6kDLezsBZ0g 提取码:hgwn 这段时间遇到了读取串口数据的需求,吭哧吭哧搞了两三天才搞出来,惭愧,所 ...
- windows下C++读取串口数据
windows下C++读取串口数据 这里提供一个类: SerialPort.h #pragma once #ifndef SERIALPORT_H_ #define SERIALPORT_H_ #in ...
- python串口通信_python 读取串口数据的示例
python3 读取串口数据 demo 最近在写一个demo,zigbee串口连接树莓派,树莓派使用串口通信接受zigbee穿过来得值.其中我是用的树莓派是3代B+,zigbee每隔三秒钟从串口输出数 ...
- 使用 ext3grep 恢复数据试验成功 笔记
使用 ext3grep 恢复数据试验成功 笔记 来源: Linux论坛 日期: 2009.07.07 10:03 (共有条评论) 我要评论 [Copy to clipboard] [ - ...
- RXTXcomm.jar 读取串口数据时报 Underlying input stream returned zero bytes 异常解决方法
RXTXcomm.jar 读取串口数据时报 Underlying input stream returned zero bytes 异常解决方法 一.示例程序 1.依赖 2.示例代码 3.测试读取文件 ...
- python监听串口数据_python 读取串口数据的示例
python3 读取串口数据 demo 最近在写一个demo,zigbee串口连接树莓派,树莓派使用串口通信接受zigbee穿过来得值.其中我是用的树莓派是3代B+,zigbee每隔三秒钟从串口输出数 ...
最新文章
- jquery 幻灯片图像切换效果
- Ubuntu 16.04.6 LTS 发布:紧急修复 APT 漏洞
- 【♻️markdown之一次编写,到处使用♻️】markdown文件转word
- python实现条件匹配_python3 re如何匹配满足条件的选项?
- 关于日志系统显示SLF4J: Failed to load class “org.slf4j.impl.StaticLoggerBinder“.
- 如何为编程爱好者设计一款好玩的智能硬件(三)——该选什么样的MCU呢?
- linux安装telnet组件,LINUX下如何安装telnet
- Bailian4045 与3和5无关的数【进制+模除】
- [每日一题] 11gOCP 1z0-053 :2013-10-1 persistent lightweight jobs...........................11
- Codeforce 1700Difficulty Graphs 20 questions
- 绘制自己的人际关系图_matlab能绘制人际关系网络图吗?
- android实现第三方QQ登录
- 一些关于医学科研的好用网站(转载)
- app中使用企业微信sdk分享小程序报错:小程序路径错误,加载超时 解决办法。
- php文件 怎么写韩文,php插入韩文txt文件内的数据,SQL-Front显示乱码
- 除法的向上取整和向下取整
- 『Python学习笔记』Python中的异步Web框架之fastAPI介绍RestAPI
- Opencv学习笔记完整版
- Java实现一个简单双色球摇奖功能
- 经验谈|如何处理好产品与开发的关系
热门文章
- APC PDU AP7921 DHCP配置
- 百度地图只有网格 Authentication Error errorcode: -1 uid: -1 appid -1 msg: Current network is not available.
- 使用Unity3D的设计思想实现一个简单的C#赛车游戏场景
- 历时半年,Web版Skype扩大测试范围至美国和英国所有用户
- html5视频播放器video player 选择
- 中文稀疏GPT大模型落地 — 通往低成本高性能多任务通用自然语言理解的关键里程碑
- 界面控件DevExtreme v23.1抢先体验,增强的UI/UX自定义功能!
- 浏览不良网站一定会有记录吗?无痕模式有用吗?
- 如何处理 网站被网安大队下发的信息系统安全等级保护限期整改通知书
- 【原创】提醒久坐器:一个小时提醒一次,让自己不要长时间坐在椅子上