APM二次开发(二):添加一个任务

固件版本 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消息。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_38768959/article/details/131284506