From 6ec779c11dab4a2cdee38930058e51ae1bb8939a Mon Sep 17 00:00:00 2001 From: Razvalyaev Date: Fri, 27 Jun 2025 16:21:05 +0300 Subject: [PATCH] =?UTF-8?q?=D0=9E=D0=B1=D0=BD=D0=BE=D0=B2=D0=B8=D1=82?= =?UTF-8?q?=D1=8C=20README.md?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 98b2aa9..d67d9cc 100644 --- a/README.md +++ b/README.md @@ -2,15 +2,29 @@ Папка _CubeKeil Example_ содержит проект, который демонстрирует работу с библиотеками. -Папка _GENERAL_ содержит кастомные библиотеки для периферии. В данном проекте используется только "_gpio_general.c/.h_" и общий файл "_peripheral_general.h_" для настройки GPIO для SPI. - -Папка _memory_spi_ содержит библиотеку для SPI памяти (FLASH/EEPROM): два файла "_spi_flash.c/.h_". +Папка _memory_spi_ содержит библиотеку для SPI памяти (FLASH/EEPROM): два файла "_memory_spi.c/.h_". ## Функции SPI MEMORY Общение с памятью на уровне железа выполняют [функции для команд](#функции-для-команд). Координацию команд выполняют [функции для внутреннего использования](#функции-для-внутреннего-использования). А запросы на запись/чтение/очистку произвольного кол-ва байт выполняют [функции для пользователя](#функции-для-пользователя). + +## Пример + +```c + MEMSPI_HandleTypeDef hmemspi; + HAL_StatusTypeDef MEMSPI_RES; + + hmemspi.CS_GPIOx = GPIOC; + hmemspi.CS_PIN = GPIO_PIN_4; + MEMSPI_Base_Init(&hmemspi, &hspi3); + + MEMSPI_RES = MEMSPI_EEPROM_Write(&hmemspi, mem_adr, write_buff, buff_size, Timeout, 1); + MEMSPI_RES = MEMSPI_Read_Memory(&hmemspi, mem_adr, read_buff, buff_size, Timeout); +``` + + ### Функции для пользователя - MEMSPI_Base_Init() Инициализация переферии SPI и GPIO для внешней памяти - MEMSPI_Read_Memory() Считывание внешней FLASH/EEPROM