filesystem init. step 3 of 3 -- failed. https://pkm.iovchinnikov.ru/share/HVYJIiG0JuDv
This commit is contained in:
+13
-1
@@ -76,6 +76,9 @@ uint16_t rxIndex = 0; // Индекс в буфере приёма
|
||||
/* USER CODE BEGIN Variables */
|
||||
extern FATFS USERFatFs;
|
||||
extern char USERPath[4];
|
||||
|
||||
// Импортируем флаг из драйвера USB
|
||||
extern volatile uint8_t pc_wrote_file_flag;
|
||||
/* USER CODE END Variables */
|
||||
/* Definitions for defaultTask */
|
||||
osThreadId_t defaultTaskHandle;
|
||||
@@ -180,7 +183,16 @@ void StartDefaultTask(void *argument)
|
||||
/* Infinite loop */
|
||||
for(;;)
|
||||
{
|
||||
// Наш будущий код для мигания светодиодом будет здесь
|
||||
// Проверяем, совершил ли ПК запись на наш диск
|
||||
if (pc_wrote_file_flag == 1)
|
||||
{
|
||||
// Включаем светодиод (замените GPIOB и GPIO_PIN_0 на пин)
|
||||
HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_7);
|
||||
HAL_GPIO_TogglePin(GPIOB, GPIO_PIN_14);
|
||||
|
||||
// Сбрасываем флаг, чтобы ждать следующей записи
|
||||
pc_wrote_file_flag = 0;
|
||||
}
|
||||
vTaskDelay(pdMS_TO_TICKS(50));
|
||||
}
|
||||
/* USER CODE END StartDefaultTask */
|
||||
|
||||
@@ -113,6 +113,8 @@ const int8_t STORAGE_Inquirydata_FS[] = {/* 36 */
|
||||
/* USER CODE END INQUIRY_DATA_FS */
|
||||
|
||||
/* USER CODE BEGIN PRIVATE_VARIABLES */
|
||||
// Флаг будет взводиться в 1, когда ПК пишет данные на диск
|
||||
volatile uint8_t pc_wrote_file_flag = 0;
|
||||
|
||||
/* USER CODE END PRIVATE_VARIABLES */
|
||||
|
||||
@@ -265,6 +267,9 @@ int8_t STORAGE_Write_FS(uint8_t lun, uint8_t *buf, uint32_t blk_addr, uint16_t b
|
||||
UNUSED(blk_addr);
|
||||
UNUSED(blk_len);
|
||||
|
||||
// Взводим флаг: ПК только что записал сектор (файл загружается/обновляется)
|
||||
pc_wrote_file_flag = 1;
|
||||
|
||||
return (USBD_OK);
|
||||
/* USER CODE END 7 */
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user