固件版本 APM copter 4.3.1
参考:https://ardupilot.org/dev/docs/code-overview-scheduling-your-new-code-to-run-intermittently.html
APM添加任务比PX4要简单很多,直接在调度器里添加函数即可。
先定义一个要调度的函数my_test()
然后加到调度器中:这个函数第一个参数是函数名,第二个是调度的频率,第三个是函数的最大执行时间。第四个是优先级。我这里就1Hz运行
SCHED_TASK(my_test, 1, 75, 84),
定义函数如下:在函数中向地面站发送test。
void Copter::my_test()
{gcs().send_text(MAV_SEVERITY_INFO,"test");
}
最后编译下载到飞控,然连接到地面站可以看到地面站以1Hz收到test消息。