Я делаю проект, созданный с помощью STM32CubeMX для stm32f469i-disco.
Я основал установку на «FreeRTOSconfig.h» из проекта «Демонстрация» в репозитории STM32CubeFWF4V1.16.0. Свежий проект из CubeMX компилируется без проблем, но после добавления STemWin lib "STemWin532_CM4_OS_Keil_ot.lib" выдает ошибку
".......... \ Middlewares \ ThirdParty \ FreeRTOS \ Source \ Portable \ RVDS \ ARMCM4F \ port.c (507): error: A1586E: Неверные типы операндов (UnDefOT, Constant) для оператора ( "
Интересный факт: "Демонстрация" компилируется без этой ошибки.
Как мне настроить проект:
В CubeMX:
Добавьте необходимые периферийные устройства: DMA2D, DSIHost, FMC и т. Д.
Добавьте драйверы BSP для тачскрина и т. Д. Теперь он копируется без проблем.
Клонировать «Конфигурацию часов» на основе «Демонстраций»
На вкладке «Конфигурация» я клонирую всю конфигурацию на основе кода из «Демонстрации».
Затем в Keil: 5. Я обновляю «Включить путь» в целевых параметрах.
- Добавьте все файлы STemWin, и когда я попытаюсь скомпилировать: "... Неверные типы операндов ..."
Когда я отключаю freertos в CubeMX и добавляю не-OS STemWin lib, он компилируется без проблем. Когда я пытаюсь скомпилировать non_OS STemWin lib с включенным FreeRTOS, он терпит неудачу с тем же сообщением.
Что я пытался сделать? Обновить port.c. Ничего не изменилось.
Я что-то упустил при создании проекта?