Top.Mail.Ru
Уведомления
Очистить все

[Решено] Проблема с выводом bmp картинки

(@new_user)
Level 1

Добрый день!

Я являюсь новичком в программировании STM32, на днях решил освоить работу с дисплеем, а именно как выводить картинку с помощью bmp. Для обучения использую плату STM32F429I DISCO 1. Просмотрев имеющиеся статьи и видеоролики по данному типу микроконтроллера, я наткнулся на библиотеку GUI.h (которая входит в библиотеку EmWin). Как раз с помощью нее и пытался реализовать вывод изображения на дисплей, используя функцию BSP_LCD_DrawBitmap. При попытке реализации пробного проекта мне вылезает ошибка "
undefined reference to `GUI_BitmapMethodsA565'". Судя по всему, компилятор не может обнаружить данную ссылку, хотя библиотека GUI.h подключена. Скелет программы представлен ниже. Если кто знает решение данной проблемы и сможет подсказать, то буду весьма благодарен! Стоит еще отметить, что по сути к заголовочному файлу GUI.h должен быть еще и c-шный файл, но его нет. (Полагаю, что как раз там он и должен был задефайнить BitmapMethodsA565. Хотя не могу утверждать о том, что c-шный файл необходим в данном случае). И еще немаловажное замечание: Для конвертации изображения я использовал программу Bitmap Converter for EmWin. Также пользовался программой LCD Image Converter, там уже не было ошибок при компиляции, но картинка все равно не выводилась.

Если у кого-то имеется в наличии проект с выводом картинки для данной платы, то был бы рад посмотреть на реализацию.

//main.c 

...

extern GUI_CONST_STORAGE GUI_BITMAP bmqw2;

...

BSP_LCD_DrawBitmap(100, 100, &bmqw2);
//qw2.c - название файла

#include <stdlib.h>
#include "GUI.h"

#ifndef GUI_CONST_STORAGE
  #define GUI_CONST_STORAGE const
#endif

extern GUI_CONST_STORAGE GUI_BITMAP bmqw2;


/*	Bitmap data	*/
static GUI_CONST_STORAGE unsigned short _acqw2[] = {
//тут представление картинки в виде шестнадцатеричной системы счисления
};

GUI_CONST_STORAGE GUI_BITMAP bmqw2 = {
    400, /* width */
    250, /* height */
    800, /* bytes per line */
    16, /* bits per pixel */
    (unsigned char*)_acqw2, /* Pointer to bitmap data */
	NULL,
	GUI_DRAW_BMPA565
};
image
image
Цитата
Создатель темы Размещено : 08.11.2023 14:58
Aveal
(@aveal)
Top level Admin

Привет, можешь проект скинуть с ошибками?

ОтветитьЦитата
Размещено : 08.11.2023 15:08
(@new_user)
Level 1

@aveal

ОтветитьЦитата
Создатель темы Размещено : 08.11.2023 20:25
Aveal
(@aveal)
Top level Admin

@new_user ну да, там самих библиотек статических не хватает, файлов STemWin532_CM3_IAR.a и т. д.

изображение
изображение

Это из апноута скрины:

 

 

ОтветитьЦитата
Размещено : 08.11.2023 20:58
(@new_user)
Level 1

@aveal Спасибо за ответ!

Библиотеки поставил в соответствующие папки, предварительно указав пути в настройках проекта. Но, к сожалению, опять компилятор находит ошибки и ругается... Эх.

В общем, опыт работы с дисплеем - дело наживное 🙂

ОтветитьЦитата
Создатель темы Размещено : 09.11.2023 14:30
Aveal
(@aveal)
Top level Admin

Могу попозже посмотреть новый проект с новыми ошибками тоже )

ОтветитьЦитата
Размещено : 09.11.2023 17:34
Поделиться: