One Framework 0.1.0
RoboMaster嵌入式框架“一键”解决方案,为你的“创意”服务。
载入中...
搜索中...
未找到
ImuHub.cpp 文件参考
#include <OF/lib/ImuHub/ImuHub.hpp>
#include <OF/utils/Mahony.hpp>
#include <OF/utils/CCM.h>
#include <cerrno>
#include <cmath>
#include <zephyr/logging/log.h>
#include <zephyr/rtio/rtio.h>
#include <zephyr/sys/util.h>
#include <zephyr/kernel.h>
#include <zephyr/init.h>
#include <OF/utils/SeqlockBuf.hpp>
ImuHub.cpp 的引用(Include)关系图:

命名空间

namespace  OF
 

宏定义

#define DT_DRV_COMPAT   one_framework_imu_hub
 

函数

 LOG_MODULE_REGISTER (ImuHub, CONFIG_IMU_HUB_LOG_LEVEL)
 
 BUILD_ASSERT (CONFIG_IMU_HUB_PUBLISH_EVERY_N_FRAME !=0, "CONFIG_IMU_HUB_DATA_UPDATE_FRAME_CNT should not be 0!")
 
 RTIO_DEFINE_WITH_MEMPOOL (imu_rtio_ctx, 16, 16, 16, 512, sizeof(void *))
 
static int imu_hub_init ()
 
 SYS_INIT (imu_hub_init, APPLICATION, CONFIG_APPLICATION_INIT_PRIORITY)
 

变量

OF_CCM_ATTR uint8_t g_cnt {}
 
constexpr uint16_t UPDATE_COUNT = CONFIG_IMU_HUB_PUBLISH_EVERY_N_FRAME / 2 * 2
 
OF_CCM_ATTR ImuHub imu_hub
 
OF_CCM_ATTR Mahony g_mahony {1.5f, 0.0f}
 
OF_CCM_ATTR IMUData g_imu_data {}
 
OF_CCM_ATTR SeqlockBuf< IMUDatag_imu_buf
 
OF_CCM_ATTR uint64_t g_prev_timestamp {}
 
std::function< void(IMUData &)> update_func
 

宏定义说明

◆ DT_DRV_COMPAT

#define DT_DRV_COMPAT   one_framework_imu_hub

函数说明

◆ BUILD_ASSERT()

BUILD_ASSERT ( CONFIG_IMU_HUB_PUBLISH_EVERY_N_FRAME ! = 0,
"CONFIG_IMU_HUB_DATA_UPDATE_FRAME_CNT should not be 0!"  )

◆ imu_hub_init()

static int imu_hub_init ( )
static

◆ LOG_MODULE_REGISTER()

LOG_MODULE_REGISTER ( ImuHub ,
CONFIG_IMU_HUB_LOG_LEVEL  )

◆ SYS_INIT()

SYS_INIT ( imu_hub_init ,
APPLICATION ,
CONFIG_APPLICATION_INIT_PRIORITY  )

变量说明

◆ g_cnt

OF_CCM_ATTR uint8_t g_cnt {}

◆ UPDATE_COUNT

uint16_t UPDATE_COUNT = CONFIG_IMU_HUB_PUBLISH_EVERY_N_FRAME / 2 * 2
constexpr