В этой теме можно публиковать вопросы, которые недостаточно глобальны для создания отдельной темы, но тем не менее являются довольно животрепещущими 🙂
День добрый. Столкнулся вот с каким вопросом. Есть некоторая библиотека. Рабочая, в других проектах компилится. Подскажите, где я что-то делаю не так.
ucg_t - это тип данных
В функцию ucg_DrawBox первым аргументом надо передать экземпляр этого типа данных, например:
ucg_t myUcg; ucg_DrawBox(&myUcg, 0, 0, 35, 35);
Соответственно, далее уже зависит от того, что такое ucg_t.
ucg_DrawBox(&ucg, 0, 0, 160,128 );
К примеру вот так. И это скопировано из рабочей программы. Вставляю в свою и ошибка все та же.
Наконец-то добрался написать ответ. Действительно, не объявлена была переменная. Благодаря админу многие вещи стали понятны и в принципе разобрался в них. Спасибо большое за Ваш титанический труд!!!
помогите пожалуйста с HID
extern USBD_HandleTypeDef *hUsbDevice_0;
extern uint8_t dataToReceive[4];
extern uint8_t dataToSend[4];
extern FlagStatus USBDatainReady;
/*/*
Usb HID report descriptor.
*/*/
Static int8_t CUSTOM_HID_OutEvent_FS(uint8_t event_idx, uint8_t state)
{
/* USER CODE BEGIN 6 */
USBD_CUSTOM_HID_HandleTypeDef *hhid = (USBD_CUSTOM_HID_HandleTypeDef*)hUsbDevice_0->pClassData;
for (uint8_t i = 0; i < 4; i++)
{
dataToReceive[i] = hhid->Report_buf[i]; // To read usb data from PC
}
USBDatainReady = SET;
return (USBD_OK);
выдает ошибку undefined reference to "dataToReceive" не смотря на то что массив сделал даже глобальным
объясните пожалуйста это глюк кубы или я что-то не то нажимаю
Доброго времени )
Я как самый начинающий (с микроконтроллерами STM32) для начала помигал светодиодом, кнопку подключил. Программа stm32cubeide, плата BlackPill на F411.
https://www.youtube.com/watch?v=YcoStSkIzqY
Ролик подключения круглого IPS дисплея.
https://bitbucket.org/nadyrshin_ryu/gc9a01_stm32f411/downloads/
(ссылка для скачивания из ролика, в нём всё есть)
Скачал, откомпилировал и загрузил в контроллер - всё работает ) Но при попытке изменить *.ioc файл (например подключить порт на вывод) при компиляции выдаёт бесчисленное количество ошибок в папке с драйверами на микроконтроллер...
Задача использовать готовую библиотеку управлением дисплея (именно того который в ролике, на том контроллере).
Подсказали что проект изначально сделан в другой версии программы.
То есть нужно полностью перенести все библиотеки на новый проект ?
(Так пробовал, но на выходе те же ошибки в папке с драйверами на микроконтроллер...)
Или же может я не правильно подключаю библиотеки или ещё чего.
(Ещё раз, проект по ссылке собирается, компилируется. но при попытке изменить *.ioc файл и последующей компиляции несколько сотен ошибок...)
@aleksej-6 Добрый вечер) А можешь выложить проект, который после изменений не собирается?
https://disk.yandex.ru/d/ZTDUg31Fzq8efw
Вот. Только добавил библиотеки и сразу ошибки (
ошибки ...
два проекта открыты, ошибки от моего...
(что то не так делаю...)
Исправил - https://disk.yandex.ru/d/742aOCo9wWQ3jQ
В spim.c поменял:
#include <stm32f4xx_hal_spi.h>
на:
#include "stm32f4xx_hal.h"
Аналогично в gpio.h и в gc9a01a.c:
#include <stm32f4xx_hal_gpio.h> #include <stm32f4xx_hal_rcc.h>
тоже на:
#include "stm32f4xx_hal.h"
В main.c убираем повторное объявление:
DMA_HandleTypeDef hdma_spi1_tx;
Просто огромное СПАСИБО !!! Всё заработало !
Если бы не Вы я эту программу так бы и не "запустил".
(куда я только не задавал вопросы, к кому только не обращался..)