Dzień dobry.
Jest to mój pierwszy temat na forum więc proszę o odrobinę wyrozumiałości. Ostatnio postanowiłem nauczyć się programować mikrokontrolery avr i w końcu postanowiłem podłączyć wyświetlacz LCD 16x2 z dołączonym ekspanderem PCF8574 (tylko taki miałem pod ręką). W internecie znalazłem program jednak nie chcę mi się on skompilować mimo wielu prób, wszystko kompiluję przy pomocy pliku makefile. Mikrokontroler to ATmega328p a system operacyjny to Linux ubuntu 20.04.
Po wpisaniu w terminalu "make all" otrzymuję taki efekt:
Niestety nie mam pomysłu jak to naprawić.
Aby nie było problemów dołączam wszystkie pliki programu
Z góry dziękuję za wszelką pomoc.
Jest to mój pierwszy temat na forum więc proszę o odrobinę wyrozumiałości. Ostatnio postanowiłem nauczyć się programować mikrokontrolery avr i w końcu postanowiłem podłączyć wyświetlacz LCD 16x2 z dołączonym ekspanderem PCF8574 (tylko taki miałem pod ręką). W internecie znalazłem program jednak nie chcę mi się on skompilować mimo wielu prób, wszystko kompiluję przy pomocy pliku makefile. Mikrokontroler to ATmega328p a system operacyjny to Linux ubuntu 20.04.
Po wpisaniu w terminalu "make all" otrzymuję taki efekt:
avr-gcc -Wall -Os -DF_CPU=16000000 -mmcu=atmega328p -I./ -c twi.c -o twi.o
avr-gcc -Wall -Os -DF_CPU=16000000 -mmcu=atmega328p -I./ -c lcdvtwi.c -o lcdvtwi.o
avr-gcc -Wall -Os -DF_CPU=16000000 -mmcu=atmega328p -I./ -c main.cpp -o main.o
In file included from lcdvtwi.c:1:0,
from main.cpp:5:
lcdvtwi.h:66:6: error: redefinition of ‘char lcdvtwi_status’
char lcdvtwi_status;
^
In file included from main.cpp:4:0:
lcdvtwi.h:66:6: note: ‘char lcdvtwi_status’ previously declared here
char lcdvtwi_status;
^
In file included from main.cpp:5:0:
lcdvtwi.c:3:6: error: redefinition of ‘char lcdvtwi_status’
char lcdvtwi_status;
^
In file included from main.cpp:4:0:
lcdvtwi.h:66:6: note: ‘char lcdvtwi_status’ previously declared here
char lcdvtwi_status;
^
main.cpp: In function ‘int main()’:
main.cpp:13:24: warning: deprecated conversion from string constant to ‘char*’ [-Wwrite-strings]
lcdvtwi_write_text("");
^
make: *** [makefile:96: main.o] Błąd 1Niestety nie mam pomysłu jak to naprawić.
Aby nie było problemów dołączam wszystkie pliki programu
Z góry dziękuję za wszelką pomoc.