Я поднимаю этот вопрос во время использования freertos fat. Среда разработки с использованием iar-компилятора и MCU использует cortex-m4. я использую библиотеку HAL и содержимое Freertos FAT config.h являются следующие:Проблемы с жирным циклом FreeRTOS, есть ли шанс, что я могу написать 512 байт с 50 Гц?
#define BUS_4BITS 1
#define SDIO_USES_DMA 1
Я генерируется только одна задача, SDCard писать, что писать 400byte с 50Гц задача заключается в следующем:
void SDCARD_WRITE_Task(void * pvParameters)
{
uint32_t PreviousWakeTime = 0;
SDcard_Init();
SDcard_SetFileName("FDR","/FDR");
for(;;)
{
HAL_GPIO_WritePin(GPIOG, GPIO_PIN_6,GPIO_PIN_SET); //pin high
PreviousWakeTime = osKernelSysTick();
SDcard_Write(ucFileName, SDCARD_Buffer, sizeof(SDCARD_Buffer));
HAL_GPIO_WritePin(GPIOG, GPIO_PIN_6,GPIO_PIN_RESET); // pin low
vTaskDelayUntil(&PreviousWakeTime, 20/portTICK_PERIOD_MS);
}
}
PG6, штифт высок в начале, будет низким состояние в конце цикла, чтобы проверить время обработки SDcard записи содержимого функция заключается в следующем:
SDCARD результаты Задача WRITE осциллографов подтвержденные случаи неожиданного длительность происшедшие во время испытания, я поставил его 50Hz писать 400byte, но иногда это занимает 200 ~ 250мс oftenly
даже если я изменить длина байтов проблема все еще произошла
Почему эта проблема происходит?
есть ли шанс, что я могу написать 512 байт с 50 Гц?
или есть ли ограничение на байты или частоту для записи SD-карты?