Простой велокомпьютер с цветным графическим LCD

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Yuri6923
Родился
Сообщения: 4
Зарегистрирован: Ср дек 03, 2025 18:17:57

Re: Простой велокомпьютер с цветным графическим LCD

Сообщение Yuri6923 »

Всем доброго времени суток. Скачал этот проект на GitHub и у меня не получается скомпилировать его в Atmel Studio, не может найти файл fonts.h хотя он в сборке есть.
Error 1 fonts.h: No such file or directory F:\1Yra\Atmel Studio\primeri\4podkluhenie LCD\TFT-ILI9341\temp\bikecomp-glcd_lib\GccApplication1\GccApplication1\gui\icons.h 10 19 GccApplication1
Так как на скриншоте выглядит сборка в папке проекта Atmel Studio, пути к файлам в исходниках я не менял.
123.png
(15.07 КБ) 44 скачивания

Подскажите пожалуйста в чем может быть причина? Очень интересный проект хотелось бы его сделать. Заранее спасибо всем за помощь.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Простой велокомпьютер с цветным графическим LCD

Сообщение WiseLord »

Я бы посоветовал попробовать собрать в каталоге без пробелов в пути.

Хотя, дело скорее всего в том, что собирать пытаетесь в Atmel Studio. Хотя в проекте есть свой Makefile и собирать его нужно просто запуская "make" из каталога "src/". В этом случае работают прописанные там опции типа "CFLAGS += -Idisplay/fonts". Как и многие другие, обязательные для правильной компиляции.

Ну или найдите аналогичную настройку в Atmel Studio - где-то там должна быть настройка путей к .h файлам проекта. Но лучше без отсебятины в виде этой IDE, а просто собирать через make.
Yuri6923
Родился
Сообщения: 4
Зарегистрирован: Ср дек 03, 2025 18:17:57

Re: Простой велокомпьютер с цветным графическим LCD

Сообщение Yuri6923 »

Спасибо что откликнулись. Перенес папку проекта на диск С. Путь стал короче все без пробелов. Выглядит это так.
123.png
(22.9 КБ) 32 скачивания

Все равно выдает такую ошибку.Error 1 fonts.h: No such file or directory c:\GccApplication1\GccApplication1\gui\icons.h 10 19 GccApplication1
124.png
(68.07 КБ) 31 скачивание

Прописал путь к файлу в Atmel Studio, он все видит и делает подсказки.
125.png
(48.01 КБ) 34 скачивания

Все равно ошибка.
Error 1 display/fonts/fonts.h: No such file or directory c:\GccApplication1\GccApplication1\gui\icons.h 11 33 GccApplication1
Хотя вот сам файл есть, и он открывается. Вот он на скриншоте
126.png
(27.12 КБ) 34 скачивания

И путь прописан правильно, как на скриншоте что выше. Что может быть - не пойму. Может нужно выбрать нужные файлы и сбросить в одну папку проекта Atmel Studio? Допустим только для работы с индикатором TFT-ILI9341? Вот сама сборка которую я пытаюсь скомпилировать.
GccApplication1.zip
(777.35 КБ) 28 скачиваний


Добавлено after 19 minutes 15 seconds:
Я не знаю как собрать через Makefile. Он у меня не активен и через него ничего не запускается.
Запускается сборка с помощью файла GccApplication1.atsln
127.png
(4.62 КБ) 30 скачиваний
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Простой велокомпьютер с цветным графическим LCD

Сообщение WiseLord »

Просто нужно зайти в каталог src проекта и запустить "make". Естественно, и make.exe и avr-gcc.exe должны быть прописаны в переменную Path винды, раз уж Вы ей пользуетесь.

Для простоты, можно их установить через arm-avr-compilerV2.0.exe

Потом, запустить cmd (консоль windows), зайти в каталог src проекта и выполнить "make". Перед этим можно в Makefile подправить параметры под себя (поменять, например DISPLAY=ILI9341, DISPVAR=SPI, если используется последняя версия кода из git).
Yuri6923
Родился
Сообщения: 4
Зарегистрирован: Ср дек 03, 2025 18:17:57

Re: Простой велокомпьютер с цветным графическим LCD

Сообщение Yuri6923 »

WiseLord, Добрый день! Так глубоко я еще никогда не копал, никогда не работал с сборками Makefile и командной строкой. Использую только Atmel Studio и AVRDUDESS для прошивки. Сейчас изменил в файле контролер и экран зашел в терминал командной строки, запустил файл Makefile.
F:\1Yra\Atmel Studio\primeri\4podkluhenie LCD\TFT-ILI9341\temp\bikecomp-glcd_lib\bikecomp-glcd_lib\src>makeavr-gcc -g -Wall -Werror -lm -Os -mcall-prologues -fshort-enums -ffunction-sections -fdata-sections -MMD -MP -MT build/ili9341.o -MF build/display/gc320x240/ili9341.d -mmcu=atmega128a -DF_CPU=16000000 -Idisplay/fonts -I. -D_ILI9341 -D_DISP_8BIT -D_DISP_RST_ENABLED -D_DISP_READ_ENABLED -D_DISP_BCKL_ENABLED -c -o build/display/gc320x240/ili9341.o display/gc320x240/ili9341.cavr-gcc -g -Wall -Werror -mmcu=atmega128a -Wl,-gc-sections -mrelax -o build/bikecomp.elf build/adc.o build/input.o build/measure.o build/font7seg.o build/screen.o build/main.o build/gui/icons.o build/display/fonts/font-terminus-18b.o build/display/fonts/font-terminus-12.o build/display/fonts/font-terminus-32.o build/display/fonts/font-terminus-22b.o build/display/fonts/font-terminus-18.o build/display/fonts/font-terminus-16b.o build/display/fonts/font-terminus-22.o build/display/fonts/font-terminus-28.o build/display/fonts/font-terminus-16.o build/display/fonts/font-terminus-20b.o build/display/fonts/font-terminus-24b.o build/display/fonts/font-terminus-28b.o build/display/fonts/font-terminus-24.o build/display/fonts/font-terminus-20.o build/display/fonts/font-terminus-14b.o build/display/fonts/font-terminus-14.o build/display/fonts/font-terminus-32b.o build/display/glcd.o build/display/dispdrv.o build/display/gc320x240/ili9341.oavr-objdump -h -S build/bikecomp.elf > build/bikecomp.lssavr-objcopy -O ihex -R .eeprom -R .nwram build/bikecomp.elf flash/bikecomp.hex
AVR Memory Usage:
Program: 20362 bytes (.text + .data)Data: 175 bytes (.data + .bss)

Компиляция прошла успешно, bikecomp.hex создан. Но есть одно но - как отлаживать проект (допустим изменить порт на контролере, или пошаговая проверка кода) в Atmel Studio если компиляция там не проходит? Может в настройках Atmel Studio нужно что-то изменить или использовать вообще другую программу для работы с контролерами? Извините что так много вопросов но без этого никак. В вашем проекте на GitHub заложена поддержка многих дисплеев, как их можно подключать к проекту? Меняя только названия дисплея в Makefile DISPLAY = ILI9341 DISPVAR = 8BIT ? Ну и наверное где-то в каких-то файлах (включать или прописывать ) надо на портах контролера выделять какое-то количество выходов для работы дисплея, правильно? Проект у вас получился универсальный, спасибо вам за ваш труд и отзывчивость.
Аватара пользователя
WiseLord
Друг Кота
Сообщения: 4905
Зарегистрирован: Чт апр 11, 2013 11:19:59
Откуда: Минск
Контактная информация:

Re: Простой велокомпьютер с цветным графическим LCD

Сообщение WiseLord »

Насчёт настроек Atmel Studio не подскажу - никогда в ней не работал.

Насчёт поддержки многих дисплеев - на этом проекте (да и вообще на AVR) я свою библиотеку с дисплеями не тестировал, поэтому гарантий, что они все будут работать, не дам. Изначально проект был ТОЛЬКО под ILI9341 / SPI.

Уже потом я начал изучать STM32 и под проект ampcontrol-f103 и была разработана библиотека. В этот проект я просто попробовал её перенести и проверил только на двух дисплеях с разрешением 320x240 - ILI9341/SPI и S6D0129/8BIT. Возможно, будут работать и другие, но никаких гарантий.

Распиновка для 8bit дисплеев в dispconf.h; в частности, под 8-битную линию данных на AVR используется порт D.
Yuri6923
Родился
Сообщения: 4
Зарегистрирован: Ср дек 03, 2025 18:17:57

Re: Простой велокомпьютер с цветным графическим LCD

Сообщение Yuri6923 »

WiseLord, Добрый день! Что-то скомпилированная сборка Makefile в Protues из папки files не показывает симуляцию экрана. А скачанный файл bikecomp.hex полностью работает в Protues. Настройки в Makefile DISPLAY = ILI9341, DISPVAR = SPI, MCU = atmega328p.
В Protues видно что порт D работает неправильно. Что я не так делаю? Может еще нужны какие-то настройки?
Вложения
bikecomp-glcd_lib.7z
(917.76 КБ) 30 скачиваний
Ответить

Вернуться в «Статьи»