TT无人机扩展模块库分析(default.ino)补篇2
这个简单
请对照
因为源码在这里出现了和手柄相关的源码
设置tof传感器的超时时间(500)什么单位?
没有搜索到,我用SI了
搜索到了~有很多函数
定位位置
在这里
找到了,为什么我又回去了code,不用SI
因为Code漂亮啊。。。。。
在这个里面找到下面的东西
一个方法
获取实例
这个地方出现这个图有点太早了,但是遥控器的控制是最难的部分
这个地方写的话保证了可以自己diy遥控器
上文说的例子就是在这个目录里,后面再分析
截图看看
还有手柄控制的头文件
cpp文件
有大佬已经做出来了
900快一个核心板,我还是自己做一个吧。。。。
再次说,完整代码是在example中的
后期diy的遥控器里面有2个遥感,算参考的原型
读这段
单独写出来
如果标志位是1
开启了调试开关,打印如下内容
判断tof是不是被初始化了无法检测和初始化传感器
设定测量时间预算
开始连续
设置
这个是cmd_register函数在
这个函数里面有定义
又是具体的实现
//开始连续测距。如果period_ms(可选)为0
//给定,使用连续的背对背模式(传感器以
//通常) 否则,使用连续定时模式
//跨测量周期(以毫秒为单位)确定传感器的频率
//进行测量。
//基于VL53L0X_StartMeasurement()
这个是上文的函数定义或者具体定义
查看符号信息
矩阵的回调函数
这个是函数定义,我这个文章还没有分析。下一篇分析
这个是tof的回调函数
回调函数只有两次出现,一次函数声明
一次使用
大数代表高优先级
通用任务创建
gameir配对任务
gameir配对任务句柄
gamesir任务
ble状态任务
http://arduino.esp8266.com/Arduino/versions/2.0.0/doc/filesystem.html
这段读的很乱代码
不停的循环读入
https://www.arduino.cc/reference/en/language/functions/communication/serial/available/
Serial.available()
描述
获取可用于从串行端口读取的字节数(字符)。这是已经到达并存储在串行接收缓冲区(包含64个字节)中的数据。
Serial.available()
从Stream实用程序类继承。
句法
Serial.available()
参量
Serial
:串行端口对象。
返回
可读取的字节数。
开启编译条件以后
如果串口使能
设置一个变量i设置一个缓存数组,大小为20
当串口还在继续收数据,i小于20的时候
把数组读取到的数据,存到数组里面,大小为20
然后最后加个'/0'
就是在读取外部的输入,来判断。对了就打印响应的字符串
一个upgrade_cnt变量
接下来意思死循环
看起来是读到一点东西就蓝色的灯亮
如果这个计数变量大于1000
就绿的和红的都不亮了
接着清零
继续循环
这个告诉你,别瞎鸡儿改~
@param标签提供了对某个函数的参数的各项说明,包括参数名、参数数据类型、描述等。
@param
描述: 记录传递给一个函数的参数。别名:
arg
argument
概述
@param
标签提供了对某个函数的参数的各项说明,包括参数名、参数数据类型、描述等。
未知的命令
第一个是控制
二三是什么???
如果三个参数这个程序响应不了,就打印argv[0](函数的名称?)有开发版试试
%s\r\n
输出格式为字符串,通常用来输出字符数组
argc 是 argument count的缩写,表示传入main函数的参数个数;
argv 是 argument vector的缩写,表示传入main函数的参数序列或指针,并且第一个参数argv[0]一定是程序的名称,并且包含了程序所在的完整路径,所以确切的说需要我们输入的main函数的参数个数应该是argc-1个;
简单用法示例,新建工程键代码:
#include <iostream>
using namespace std;
void main(int argc,char *argv[])
{
for(int i=0;i<argc;i++)
{
cout<<"argument["<<i<<"] is: "<<argv[i]<<endl;
}
system("pause");
}
argv是指向指针的指针,main函数的第二个参数“char *argv[]“也可以替换为 “char **argv“,两者是等价的。
按照顺序到这里了,上面分析过了
还有一段长程序,下篇文章再写