добавил комментарии для правок

parent 8df5e7e1
......@@ -127,7 +127,7 @@ T15 – запись памяти
### 4. API библиотеки для ПК
`
```
class CLIProtocol:
def __init__(self, port: str, baudrate: int = 115200):
"""Инициализация"""
......@@ -179,4 +179,5 @@ class CLIProtocol:
def write_memory(self, addr: int, data: bytes) -> bool:
"""Запись памяти (T15)"""
pass
`
\ No newline at end of file
```
......@@ -26,8 +26,10 @@
#include <string.h>
#include <stdio.h>
// todo - убрать зависимость от МК
// Включаем заголовок для доступа к регистрам USART (только для ожидания TC)
#include "gd32f4xx_usart.h"
// #include "gd32f4xx_usart.h"
//************************************ Локальные константы **************************************************
#define CLI_CMD_PREFIX 'T' // Префикс команды
......@@ -119,8 +121,11 @@ void cli_send_string(const char* str)
}
// Ждём завершения передачи, чтобы не смешивать вывод
uart_wait_tx_done();
//! TODO - МОЖНО БЫЛО ИСПОЛЬЗОВАТЬ lmcal_uart_get_status()
}
//-----------------------------------------------------------------------------------------------------------
// Ожидание завершения передачи UART (флаг TC)
// Используем прямой доступ к регистрам, т.к. LMCAL не предоставляет такой функции.
......
......@@ -42,6 +42,10 @@ typedef struct {
typedef void (*cli_cmd_handler_t)(const u8* data, u8 len);
//************************************ Структура регистрируемой команды **************************************
// TODO - че, прям реально от 0x00–0xFF, а как же встроенные команды?
//! @brief Структура для регистрации пользовательской команды
typedef struct {
u8 code; // Код команды (0x00–0xFF)
......@@ -64,11 +68,17 @@ fun_res_t cli_protocol_deinit(void);
//! @brief Основной цикл обработки (вызывать в главном цикле программы)
void cli_protocol_process(void);
// TODO - сделать с параметром - блок\ не блок
//---------------------------------------------------------------------
//! @brief Отправка строки через UART (с ожиданием завершения передачи)
//! @param str Указатель на нуль-терминированную строку
void cli_send_string(const char* str);
//---------------------------------------------------------------------
//! @brief Установка информации об устройстве
//! @param name Имя устройства (до 31 символа)
......@@ -78,23 +88,33 @@ void cli_send_string(const char* str);
//! @return ERR_OK при успехе
fun_res_t cli_protocol_set_device_info(const char* name, const char* serial, const char* ver, u8 board_id);
// todo - а зачем
//---------------------------------------------------------------------
//! @brief Установка board_id устройства
//! @param board_id Идентификатор платы (0–254)
//! @return ERR_OK при успехе
fun_res_t cli_protocol_set_board_id(u8 board_id);
// todo - а зачем
//---------------------------------------------------------------------
//! @brief Получение текущего board_id устройства
//! @return Идентификатор платы
u8 cli_protocol_get_board_id(void);
//---------------------------------------------------------------------
//! @brief Установка пароля для открытия соединения
//! @param pass Указатель на массив байт пароля (до 15 байт)
//! @param len Длина пароля в байтах
void cli_protocol_set_password(const u8* pass, u8 len);
// todo - а зачем
//---------------------------------------------------------------------
//! @brief Проверка пароля
//! @param pass Указатель на массив байт пароля
......@@ -102,6 +122,9 @@ void cli_protocol_set_password(const u8* pass, u8 len);
//! @return true – пароль верен, false – неверен
bool cli_protocol_verify_password(const u8* pass, u8 len);
// todo - а где реализация: cli_protocol_reset_block
//---------------------------------------------------------------------
//! @brief Сброс блокировки после превышения попыток ввода пароля
void cli_protocol_reset_block(void);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment