apm飞控多线程源码阅读笔记

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了apm飞控多线程源码阅读笔记相关的知识,希望对你有一定的参考价值。

1、定时回调

     每个飞控平台都提供一个1khz的定时器,通过“注册”一个定时器来获取1khz的定时功能。所有注册的定时器将被顺序调用。调用形式:

    hal.scheduler->register_timer_process((AP_HAL::MemberProc)(&AP_Baro_MS5611::_update));

    AP_HAL::MemberProc()宏,主要作用是将一个C++成员函数包装起来,作为一个回调函数。其定义如下:

    typedef void(*Proc)(void);

    FUNCTOR_TYPEDEF(MemberProc, void);

 

以上是关于apm飞控多线程源码阅读笔记的主要内容,如果未能解决你的问题,请参考以下文章

基于Eclipse IDE的Ardupilot飞控源码阅读环境搭建

C#多线程之旅

线程池相关源码阅读笔记 | 手记

Java多线程——ReentrantReadWriteLock源码阅读

ORB_SLAM3源码阅读笔记

FlinkFlink 源码阅读笔记(20)- Flink 基于 Mailbox 的线程模型