ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
21 ноября
1461037 Топик полностью
Бoмж (03.09.2024 21:48, просмотров: 237) ответил AlexBi на Пытаюсь задействовать FreeRTOS, но не получается. Для опытов взят Artery AT32F407, хотя не думаю что это существенно. Копилятор - кейл. Порт FreeRTOS взят из примера у Artery, да он и на сайте FreeRTOS такой же, универсальный, для CM4F. Проблема в том, что он пишет, что ему надо включенное FPU, но как его включить мне не понятно. И почему нет варианта без FPU тоже не понятно.
Чтобы включить FPU (Floating Point Unit) в микроконтроллере Artery AT32F407, нужно выполнить следующие шаги: 
  1. Настройка компилятора: Убедитесь, что ваш компилятор настроен на использование FPU. Например, в среде разработки Keil или IAR нужно выбрать соответствующий флаг для включения поддержки FPU.

  2. Инициализация FPU в коде: Включите FPU в коде, добавив соответствующие инструкции. Пример для среды Keil:

    #include "stm32f4xx.h"
    
    void enableFPU(void) {
        // Включение FPU
        SCB->CPACR |= ((3UL << 10*2) | (3UL << 11*2));
    }
    
    int main(void) {
        enableFPU();
        // Ваш код
        while (1) {
        }
    }
  3. Проверка конфигурации: Убедитесь, что FPU действительно включен, проверив соответствующие регистры и настройки в отладчике.

memento mori