Перейти к содержанию

freeRTOS, не получается скомпилировать пустой код


Рекомендуемые сообщения

здравствуйте! пытаюсь запустить freeRTOS на чипе F105RBT6 и плате нуклео H743ZI2. собираю как делают чуваки с ютуба: в middlewire ставлю CMSIS v.1 или v.2 (по-разному пробовал), systick меняю на любой другой таймер, из GPIO выбираю 1-2 ноги (чтоб запустить 2 блинка параллельно и потестить), пробовал эту штуку -> USE_NEWLIB_REENTRANT ставить в энейбл/дисейбл. собирается код, а когда его компилирую вываливаются такие ошибки.
567589385_.png.b40a092c27f6a0819187fe9de298d364.png
на сайте freertos.org можно скачать zip-архив со всякими штуками, но куда их пихать (и надо ли это для cube IDE) непонятно. помогите пожалуйста

Ссылка на комментарий
Поделиться на другие сайты

9 часов назад, Стальной сказал:

Русских букв нет в путях к файлам?

Можно проект выгрузить сюда?

RTOS.zip
Не, русских нет. Проходили уже, при первоначальном освоении куба, все снес и специально поставил в самый корень)
C:\ST\STM32CubeIDE_1.9.0\PROJECTS\RTOS
Есть еще тут
C:\Users\Я\.stm32cubeide\.eclipse.mx\.log.txt
По этому пути есть буква "Я", но там тхт-файлы, не системные. По всему остальному функционалу куба жаловаться не на что - прогает без проблем.

Ссылка на комментарий
Поделиться на другие сайты

Сравнительное тестирование аккумуляторов EVE Energy и Samsung типоразмера 18650

Инженеры КОМПЭЛ провели сравнительное тестирование аккумуляторов EVE и Samsung популярного для бытовых и индустриальных применений типоразмера 18650. 

Для теста были выбраны аккумуляторы литий-никельмарганцевой системы: по два образца одного наименования каждого производителя – и протестированы на двух значениях тока разряда: 0,5 А и 2,5 А. Испытания проводились в нормальных условиях на электронной нагрузке EBD-USB от ZKEtech, а зарядка осуществлялась от лабораторного источника питания в режиме CC+CV в соответствии с рекомендациями в даташите на определенную модель. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Самый просто способ все скомпилить - выкинуть нафиг убожество под названием куб и поставить Keil или VisualStudio. Кроме этого никогда не использовать HAL и SPL. Сразу после этого все проблемы с компиляцией пропадут.

12 часов назад, Андрей Гараж сказал:

systick меняю на любой другой таймер

Чта? Он должен висеть строго на одном таймере, а именно SysTick.

 

12 часов назад, Андрей Гараж сказал:

вываливаются такие ошибки.

Ну так там написано чего не хватает. В чем проблема?

 

12 часов назад, Андрей Гараж сказал:

можно скачать zip-архив со всякими штуками, но куда их пихать

А прочесть инструкцию, которых в инете пруд пруди религия не позволяет? Или лень?

 

12 часов назад, Андрей Гараж сказал:

чуваки с ютуба

Учиться по ютьюбу самое худшее, что можно придумать...

Ссылка на комментарий
Поделиться на другие сайты

Новый аккумулятор EVE серии PLM для GSM-трекеров, работающих в жёстких условиях (до -40°С)

Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре. 

Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств. Подробнее параметры и результаты тестов новой серии PLM по ссылке.

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

45 минут назад, BARS_ сказал:

Ну так там написано чего не хватает. В чем проблема?

там написано, и даже создается папка middleware, в которой есть эти файлы. но почему он их не подхватывает, если сам же и создает? да и если по очереди, включать каждую папку из этой папки в проект принудительно (ПКМ -> Add/remove include path) в итоге вываливается в ошибку, что компилятор не понимает что такое osDelay();
 

Ссылка на комментарий
Поделиться на другие сайты

Литиевые батарейки и аккумуляторы от мирового лидера  EVE в Компэл

Компания Компэл, официальный дистрибьютор EVE Energy, бренда №1 по производству химических источников тока (ХИТ) в мире, предлагает продукцию EVE как со склада, так и под заказ. Компания EVE широко известна в странах Европы, Америки и Юго-Восточной Азии уже более 20 лет. Недавно EVE была объявлена поставщиком новых аккумуляторных элементов круглого формата для электрических моделей «нового класса» компании BMW.

Продукция EVE предназначена для самого широкого спектра применений – от бытового до промышленного. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

12 минут назад, Андрей Гараж сказал:

компилятор не понимает что такое osDelay();

Я же говорю, выкинь нафиг куб и все эти бестолковые прослойки типа cmsis_os. Нафиг они там нужны? Чтобы вместо vTaskDelay() писать osDelay? И смысл? Лишнее время тратить на вызов лишней функции-оболочки? Тем более в документации на RTOS будет описание родных функций ОС, без всяких прослоек.

 

14 минут назад, Андрей Гараж сказал:

но почему он их не подхватывает, если сам же и создает?

Да по тому, что это Eclipse, а он кривой.

Ссылка на комментарий
Поделиться на другие сайты

43 минуты назад, Alex сказал:

В настройках проекта нужно прописывать пути к хидерам и сорсам.

Куб сам настраивает

1 час назад, BARS_ сказал:

Он должен висеть строго на одном таймере, а именно SysTick.

 

Нет, если работает freertos

Ссылка на комментарий
Поделиться на другие сайты

26 минут назад, BARS_ сказал:

Ээээ, freertos должен тактироваться от SysTick

HAL от другого таймера работает

Изменено пользователем Стальной
Ссылка на комментарий
Поделиться на другие сайты

HAL ни от чего не работает. Это тупой набор оберток на стандартными регистрами. Бессмысленный и беспощадный. Да, он там дает что-то вроде _delay_ms(), что в RTOS вообще не нужно.

Изменено пользователем BARS_
Ссылка на комментарий
Поделиться на другие сайты

@BARS_ Нет, таймер нужен, по нему считаются задержки. И он не такой уж и бессмысленный, если им правильно пользоваться.298239249_.thumb.jpg.0dffe46b2ebdd514c03d9de1dba7ba96.jpg

@Андрей Гараж  вот чистый проект, есть файлы под CubeIDE и IAR. Я проверил в  IAR, собирается.

https://disk.yandex.ru/d/ewdoqTdoNSHT7Q

Изменено пользователем Стальной
Ссылка на комментарий
Поделиться на другие сайты

2 минуты назад, Стальной сказал:

Нет, таймер нужен, по нему считаются задержки.

Для RTOS они НЕ нужны. У RTOS для этого есть vTaskDelay() и свой системный таймер.

 

3 минуты назад, Стальной сказал:

И он не такой уж и бессмысленный

Более чем бессмысленный. Из минусов

  1. Огромная куча лишнего кода большая часть которого тупо проверяет, а туда ли программист пытается поставить бит.
  2. Огромная куча лишних файлов.
  3. Малейшее отсутствие возможности проверить настройки регистров по даташиту.
  4. Огромная куча лишнего когда при настройке периферии. Например, вот так выглядит настройка целого порта без HAL:
	GPIOB->MODER = 1<<30 | 1<<28 | 1<<26 | 1<<24 | 1<<22 | 1<<18 | 1<<16 | 1<<10 | 1<<8 | 1<<6 | 1<<2 | 1<<0;

Одна строка кода. И еще по одной на OTYPER и OSPEEDR. А HAL сколько страниц кода на этой займет? Аналогично в 3-5 строк настраивается большая часть интерфейсов. Плюс в HAL и SPL полно багов. А главное, на настройке МК вся работа HAL заканчивается. Ибо с интерфейсами он работает медленно, т.к. та же отправка через UART в виде простой записи в регистр USART1->DR выполнится на порядок быстрее, чем огромная HAL функция, работа которой по итогу все равно сведется к тупой записи в ровно в тот же регистр. Так в чем смысл? 

Ссылка на комментарий
Поделиться на другие сайты

6 минут назад, Стальной сказал:

не используйте функции HAL в этом месте

Тогда смысл его вообще использовать? Настроить железо без него быстрее и выглядит код читабельнее и информативнее. Быстро работать HAL тоже не умеет. Так в чем смысл?

Ссылка на комментарий
Поделиться на другие сайты

Ээээ, а в чем проблема настроить его без HAL? В режем хоста вообще ничего сложного. Тупо в прерывании выполняй те действия, о которых тебя просит ПК, шлешь гору дескрипторов, проводишь энумерацию и все, готов к работе.

Ссылка на комментарий
Поделиться на другие сайты

17 минут назад, Стальной сказал:

А так?

да, так скачалось. только mx висит почему то на этом месте... что дома, что тут на работе. месяц назад ставил, и mx и ide1030530031_.png.0b7cdfa4c6f544878e2d22798458936d.png

Ссылка на комментарий
Поделиться на другие сайты

Я вот что-то никак не пойму зачем вы полезли в такую сложную вещь, как RTOS не умея элементарно обращаться с IDE? Ну начните вы с простых проектов. Поставьте VisualStudio, там конструктор кода лучше работает. Что вы вцепились в этот калокуб?

Ссылка на комментарий
Поделиться на другие сайты

38 минут назад, Стальной сказал:

Я собирал в версии 5 6 1

тоже думал про версии, но пробовал экспортировать ваш проект и в том виде как есть и с пересборкой под мою 6ю версию. все равно виснет на coping library files. попробовал сейчас собрать другой проект, новый и без FreeRTOS, сборка завершается нормально.
может конечно я усложняю, но вдруг mx что то пытается подскачать? у "парней с ютуба" это происходит неявно, потому они об этом и не говорят. но сам куб ide и мх я скачивал через браузерный vpn, тк st-шники заблокировали российские ip в связи с "событиями" (выводится сообщение что файлы не доступны). а на самом компе vpn-а нет, вот mx и ide не могут достучаться куда надо.

Ссылка на комментарий
Поделиться на другие сайты

Мыши плакали, кололись, но продолжали жрать кактус. Ну-ну.

 

3 минуты назад, Андрей Гараж сказал:

тк st-шники заблокировали российские ip в связи с "событиями"

Мммм, отличная идея попользоваться глючным, наполовину заблоченным г..ом. И только по тому, что какой-то идиот с ютьюба тоже его использует. В то время как тот же VisualStudio ничем не заблокирован, имеет интеграцию с калокубом и прекрасно генерит проекты с HAL и прочим шлаком. Но для него нет стада макак с ютьюба, придется самому думать и кнопочки нажимать. Плюс сейчас все идет к тому, что вместо STM будем юзать китайские МК, а там калокубов. HAL и прочей шляпы и близко нет. И начнется кризис среди неокрепших умов "программистов", не умеющих настраивать МК по даташиту...

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...