AP_PicolloCAN: Load PiccoloCAN parameters from EEPROM

This commit is contained in:
Oliver Walters 2020-09-02 17:16:31 +10:00 committed by Andrew Tridgell
parent 09d38f8729
commit fc29e40463
3 changed files with 5 additions and 2 deletions

View File

@ -57,7 +57,7 @@ const AP_Param::GroupInfo AP_CANManager::CANDriver_Params::var_info[] = {
#if (APM_BUILD_TYPE(APM_BUILD_ArduCopter) || APM_BUILD_TYPE(APM_BUILD_ArduPlane) || APM_BUILD_TYPE(APM_BUILD_ArduSub))
// @Group: PC_
// @Path: ../AP_PiccoloCAN/AP_PiccoloCAN.cpp
AP_SUBGROUPPTR(_pcan, "PC_", 5, AP_BoardConfig_CAN::Driver, AP_PiccoloCAN),
AP_SUBGROUPPTR(_piccolocan, "PC_", 5, AP_CANManager::CANDriver_Params, AP_PiccoloCAN),
#endif
AP_GROUPEND

View File

@ -213,12 +213,14 @@ void AP_CANManager::init()
}
} else if (drv_type == Driver_Type_PiccoloCAN) {
#if HAL_PICCOLO_CAN_ENABLE
_drivers[drv_num] = new AP_PiccoloCAN;
_drivers[drv_num] = _drv_param[drv_num]._piccolocan = new AP_PiccoloCAN;
if (_drivers[drv_num] == nullptr) {
AP_BoardConfig::config_error("Failed to allocate PiccoloCAN %d\n\r", drv_num + 1);
continue;
}
AP_Param::load_object_from_eeprom((AP_PiccoloCAN*)_drivers[drv_num], AP_PiccoloCAN::var_info);
#endif
} else if (drv_type == Driver_Type_CANTester) {
#if HAL_NUM_CAN_IFACES > 1 && !HAL_MINIMIZE_FEATURES

View File

@ -129,6 +129,7 @@ private:
AP_CANDriver* _testcan;
AP_CANDriver* _uavcan;
AP_CANDriver* _kdecan;
AP_CANDriver* _piccolocan;
};
CANIface_Params _interfaces[HAL_NUM_CAN_IFACES];