+ пример debug_vars.c
+ exe + опечатка в readme + коррекции по абзацам в комментах
This commit is contained in:
parent
ae2c90160e
commit
c55f38ef1c
BIN
DebugVarEdit.exe
BIN
DebugVarEdit.exe
Binary file not shown.
@ -28,7 +28,7 @@ DebugVar_t dbg_vars[] = {\
|
|||||||
{(uint8_t *)&ADC_sf[0][2], pt_int16, t_iq_none, t_iq_none, "ADC_sf02" }, \
|
{(uint8_t *)&ADC_sf[0][2], pt_int16, t_iq_none, t_iq_none, "ADC_sf02" }, \
|
||||||
{(uint8_t *)&ADC_sf[0][3], pt_int16, t_iq_none, t_iq_none, "ADC_sf03" }, \
|
{(uint8_t *)&ADC_sf[0][3], pt_int16, t_iq_none, t_iq_none, "ADC_sf03" }, \
|
||||||
{(uint8_t *)&Bender[0].KOhms, pt_uint16, t_iq, t_iq10, "Bend0.KOhm" }, \
|
{(uint8_t *)&Bender[0].KOhms, pt_uint16, t_iq, t_iq10, "Bend0.KOhm" }, \
|
||||||
{(char *)&Bender[0].Times, pt_uint16, t_iq_none, t_iq_none, "Bend0.Time" }, \
|
{(uint8_t *)&Bender[0].Times, pt_uint16, t_iq_none, t_iq_none, "Bend0.Time" }, \
|
||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
@ -11,10 +11,10 @@ static int getDebugVar(DebugVar_t *var, int32_t *int_var, float *float_var);
|
|||||||
static int convertDebugVarToIQx(DebugVar_t *var, int32_t *ret_var);
|
static int convertDebugVarToIQx(DebugVar_t *var, int32_t *ret_var);
|
||||||
|
|
||||||
///////////////////////////----EXAPLE-----//////////////////////////////
|
///////////////////////////----EXAPLE-----//////////////////////////////
|
||||||
int var_numb = 1; ///< Пример переменной для отладки
|
int var_numb = 1; ///< Пример переменной для отладки
|
||||||
DebugVarName_t var_name; ///< Имя переменной
|
DebugVarName_t var_name; ///< Имя переменной
|
||||||
int32_t return_var; ///< Переменная для возврата результата
|
int32_t return_var; ///< Переменная для возврата результата
|
||||||
int32_t return_ll_var; ///< Возвращаемое значение с нижнего уровня
|
int32_t return_ll_var; ///< Возвращаемое значение с нижнего уровня
|
||||||
int result; ///< Переменная результата
|
int result; ///< Переменная результата
|
||||||
DateTime_t ext_date = {2025, 11, 07, 16, 50}; ///< Пример внешней даты сборки
|
DateTime_t ext_date = {2025, 11, 07, 16, 50}; ///< Пример внешней даты сборки
|
||||||
|
|
||||||
@ -37,7 +37,7 @@ void Debug_Test_Example(void)
|
|||||||
/**
|
/**
|
||||||
* @brief Читает переменную по индексу.
|
* @brief Читает переменную по индексу.
|
||||||
* @param var_ind – индекс переменной.
|
* @param var_ind – индекс переменной.
|
||||||
* @param return_32b – указатель для возврата результата.
|
* @param return_32b – указатель для возврата результата.
|
||||||
* @return int – 0: успех, 1: ошибка.
|
* @return int – 0: успех, 1: ошибка.
|
||||||
* @details Используется для чтения значений переменных по их индексу.
|
* @details Используется для чтения значений переменных по их индексу.
|
||||||
*/
|
*/
|
||||||
@ -88,7 +88,7 @@ int Debug_ReadVarName(int var_ind, DebugVarName_t name_ptr)
|
|||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Читает значение переменной отладки с нижнего уровня.
|
* @brief Читает значение переменной отладки с нижнего уровня.
|
||||||
* @param return_32b – указатель на переменную, куда записывается результат.
|
* @param return_32b – указатель на переменную, куда записывается результат.
|
||||||
* @return int – 0: успех, 1: ошибка, 2: недопустимый адрес.
|
* @return int – 0: успех, 1: ошибка, 2: недопустимый адрес.
|
||||||
* @details Использует адресс, передаваемый с терминалки для получения значения.
|
* @details Использует адресс, передаваемый с терминалки для получения значения.
|
||||||
*/
|
*/
|
||||||
@ -154,7 +154,7 @@ int Debug_LowLevel_Initialize(DateTime_t* external_date)
|
|||||||
/////////////////////----INTERNAL FUNCTIONS-----////////////////////////
|
/////////////////////----INTERNAL FUNCTIONS-----////////////////////////
|
||||||
/**
|
/**
|
||||||
* @brief Преобразует тип IQ переменной в число битов для сдвига(Q-фактор).
|
* @brief Преобразует тип IQ переменной в число битов для сдвига(Q-фактор).
|
||||||
* @param t – тип IQ (перечисление DebugVarIQType_t).
|
* @param t – тип IQ (перечисление DebugVarIQType_t).
|
||||||
* @return int – Q-фактор (например, 24), 0: если t_iq_none, -1: ошибка.
|
* @return int – Q-фактор (например, 24), 0: если t_iq_none, -1: ошибка.
|
||||||
* @details Сопоставляет тип IQ переменной с соответствующим Q-значением.
|
* @details Сопоставляет тип IQ переменной с соответствующим Q-значением.
|
||||||
*/
|
*/
|
||||||
|
@ -134,7 +134,7 @@ typedef long DebugValue_t;
|
|||||||
* @brief Ñòðóêòóðà äàòû è âðåìåíè.
|
* @brief Ñòðóêòóðà äàòû è âðåìåíè.
|
||||||
*/
|
*/
|
||||||
typedef struct {
|
typedef struct {
|
||||||
uint16_t year; ///< <20>מה (םאןנטלונ, 2025)
|
uint16_t year; ///< <20>מה (םאןנטלונ, 2025)
|
||||||
uint8_t month; ///< Ìåñÿö (1-12)
|
uint8_t month; ///< Ìåñÿö (1-12)
|
||||||
uint8_t day; ///< Äåíü (1-31)
|
uint8_t day; ///< Äåíü (1-31)
|
||||||
uint8_t hour; ///< ×àñû (0-23)
|
uint8_t hour; ///< ×àñû (0-23)
|
||||||
|
23
debug_vars_example.c
Normal file
23
debug_vars_example.c
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
#include "debug_tools.h"
|
||||||
|
|
||||||
|
|
||||||
|
// Инклюды для доступа к переменным
|
||||||
|
#include "bender.h"
|
||||||
|
|
||||||
|
// Экстерны для доступа к переменным
|
||||||
|
extern int ADC0finishAddr;
|
||||||
|
|
||||||
|
|
||||||
|
// Определение массива с указателями на переменные для отладки
|
||||||
|
int DebugVar_Qnt = 5;
|
||||||
|
#pragma DATA_SECTION(dbg_vars,".dbgvar_info")
|
||||||
|
// pointer_type iq_type return_iq_type short_name
|
||||||
|
DebugVar_t dbg_vars[] = {\
|
||||||
|
{(uint8_t *)&freqTerm, pt_float, t_iq_none, t_iq10, "freqT" }, \
|
||||||
|
{(uint8_t *)&ADC_sf[0][0], pt_int16, t_iq_none, t_iq_none, "ADC_sf00" }, \
|
||||||
|
{(uint8_t *)&ADC_sf[0][1], pt_int16, t_iq_none, t_iq_none, "ADC_sf01" }, \
|
||||||
|
{(uint8_t *)&ADC_sf[0][2], pt_int16, t_iq_none, t_iq_none, "ADC_sf02" }, \
|
||||||
|
{(uint8_t *)&ADC_sf[0][3], pt_int16, t_iq_none, t_iq_none, "ADC_sf03" }, \
|
||||||
|
{(uint8_t *)&Bender[0].KOhms, pt_uint16, t_iq, t_iq10, "Bend0.KOhm" }, \
|
||||||
|
{(uint8_t *)&Bender[0].Times, pt_uint16, t_iq_none, t_iq_none, "Bend0.Time" }, \
|
||||||
|
};
|
Loading…
Reference in New Issue
Block a user