首页 > 代码库 > apm飞控多线程源码阅读笔记

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飞控多线程源码阅读笔记