#include "foc/mc_error.h" #include "foc/core/PMSM_FOC_Core.h" static err_record_t err[FOC_Err_Max]; void err_add_record(u8 err_code, s16 err_value) { if (err_code >= FOC_Err_Max) { return; } err[err_code].err_value = err_value; err[err_code].err_time = shark_get_seconds(); } int err_get_record(u8 index, int size, err_record_t *err_out) { size = min(size, (FOC_Err_Max - index)); for (int i = index; i < index + size; i++) { err_out[i].err_value = err[i].err_value; err_out[i].err_time = err[i].err_time; } return size; }