Forum Index

Rules | Points | Add... | Recent posts | Search | Register | Log in

This site uses cookies. Learn more about cookies and changing the settings in your browser.
Using this website you agree to cookies in accordance with the current browser settings.

[atmega16][c] HIDKeys, czyli problem z klawiaturą USB na AVR


Post new topic  Reply to topic      Main Page -> Forum Index -> Microcontrollers Generally -> AVR Microcontrollers -> [atmega16][c] HIDKeys, czyli problem z klawiaturą USB na AVR
Oponeo - Prosta Droga do Nowych Opon
Author
Message
patyk12343
Poziom 4
Poziom 4


Joined: 27 Feb 2010
Posts: 9

Post#1 Post from the author of the topic 10 Mar 2010 20:20   

[atmega16][c] HIDKeys, czyli problem z klawiaturą USB na AVR


Witam!

Po paru problemach przy odpaleniu atmegi16 postanowiłem zabrać się do stworzenia klawiatury USB na podstawie projektu ze strony http://www.obdev.at/products/vusb/hidkeys.html. Rozpakowałem, poczytałem trochę tych plików, wszystkie o rozszerzeniu .h wrzuciłem do /winavr/avr/include, podmieniłem Makefile na ten z moimi parametrami, ale podczas kompilacji pliku main.c wyskakuje mi błąd

Code:
> "make.exe" all

-------- begin --------
avr-gcc (WinAVR 20090313) 4.3.2
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.


Linking: main.elf
avr-gcc -mmcu=atmega16 -I. -gdwarf-2 -DF_CPU=8000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=main.o  -std=gnu99 -MMD -MP -MF .dep/main.elf.d main.o --output main.elf -Wl,-Map=main.map,--cref     -lm
main.o: In function `usbFunctionSetup':
D:\avr\Nowy folder (9) - Kopia - Kopia/main.c:233: undefined reference to `usbMsgPtr'
D:\avr\Nowy folder (9) - Kopia - Kopia/main.c:233: undefined reference to `usbMsgPtr'
D:\avr\Nowy folder (9) - Kopia - Kopia/main.c:240: undefined reference to `usbMsgPtr'
D:\avr\Nowy folder (9) - Kopia - Kopia/main.c:240: undefined reference to `usbMsgPtr'
main.o: In function `main':
D:\avr\Nowy folder (9) - Kopia - Kopia/main.c:261: undefined reference to `usbInit'
D:\avr\Nowy folder (9) - Kopia - Kopia/main.c:266: undefined reference to `usbPoll'
D:\avr\Nowy folder (9) - Kopia - Kopia/main.c:283: undefined reference to `usbTxLen1'
D:\avr\Nowy folder (9) - Kopia - Kopia/main.c:288: undefined reference to `usbSetInterrupt'
make.exe: *** [main.elf] Error 1

> Process Exit Code: 2
> Time Taken: 00:01


No i teraz pytania:

Czy wystarczy skompilować plik main.c?
Czy może trzeba jeszcze zrobić coś z plikami z usbdrv?
Co zrobić, żeby to zadziałało?

Z góry dziękuję za wszystkie odpowiedzi.
Back to top
   
Google

Google Adsense


Post# Post from the author of the topic 10 Mar 2010 20:20   





Back to top
   
_Robak_
Poziom 22
Poziom 22


Joined: 16 Apr 2006
Posts: 2239
Location: Bytom

Post#2 10 Mar 2010 20:32helpful post - solution   

Re: [atmega16][c] HIDKeys, czyli problem z klawiaturą USB na


Pliki .h nie dajesz do katalogu include;) Wrzucasz do katalogu z projektem i dołączasz w ten sposób
Code:

#include "costam.h"

Natomiast pliki .C przeciągasz do plików projektu w avrstudio.
Widać że w mainie używasz funkcji których nie widzi kompilator po prostu.
Back to top
   
Google

Google Adsense


Post# 10 Mar 2010 20:32helpful post - solution   





Back to top
   
patyk12343
Poziom 4
Poziom 4


Joined: 27 Feb 2010
Posts: 9

Post#3 Post from the author of the topic 10 Mar 2010 20:51   

Re: [atmega16][c] HIDKeys, czyli problem z klawiaturą USB na


Dodałem wszystkie pliki .c do jednego projektu, lecz wyświetla mi się


Code:
> "make.exe" all
make.exe: *** No rule to make target `all'.  Stop.

> Process Exit Code: 2
> Time Taken: 00:00


Szczerze powiedziawszy, to moje dotychczasowe projekty nie wykraczały poza jeden plik .c, stąd to zdezorientowanie...
Back to top
   
Google

Google Adsense


Post# Post from the author of the topic 10 Mar 2010 20:51   





Back to top
   
_Robak_
Poziom 22
Poziom 22


Joined: 16 Apr 2006
Posts: 2239
Location: Bytom

Post#4 10 Mar 2010 20:54helpful post - solution   

Re: [atmega16][c] HIDKeys, czyli problem z klawiaturą USB na


Najpierw zrób sobie prosty projekt, do niego dołącz jedną funkcję w innym pliku i poćwicz;) Ściągnij sobie z neta jakieś projekty, zobacz jak to wygląda. Zasada jest taka, includujesz tylko pliki h.
Back to top
   
patyk12343
Poziom 4
Poziom 4


Joined: 27 Feb 2010
Posts: 9

Post#5 Post from the author of the topic 11 Mar 2010 17:01   

Re: [atmega16][c] HIDKeys, czyli problem z klawiaturą USB na


Tak więc udało mi się skompilować te wszystkie pliki. Plik Makefile edytowałem i zamiast
Code:
SERIAL = `echo /dev/tty.KeySerial*`
UISP = uisp -dprog=avr910 -dserial=$(SERIAL) -dpart=auto

wstawiłem
Code:
AVRDUDE_PROGRAMMER = usbasp
AVRDUDE_PORT = usb


i
Code:
COMPILE = avr-gcc -Wall -Os -Iusbdrv -I. -mmcu=atmega8 #-DDEBUG_LEVEL=1

zamieniłem na

Code:
COMPILE = avr-gcc -Wall -Os -Iusbdrv -I. -mmcu=atmega16 #-DDEBUG_LEVEL=1


Program wgrał się bez błędów. Po podłączeniu system wykrywa nowe urządzenie, lecz jest ono dla niego nieznane... Czy ktoś spotkał się z podobnym problemem i wie jak go rozwiązać?
Back to top
   
Post new topic  Reply to topic      Main Page -> Forum Index -> Microcontrollers Generally -> AVR Microcontrollers -> [atmega16][c] HIDKeys, czyli problem z klawiaturą USB na AVR
Page 1 of 1
Similar topics
Problem z programem w Bascomie AVR i ATmega16 (2)
[ATmega16][Bascom AVR] problem z ds18b20 (14)
[Atmega16][C][AVR] Atmega16 i ADS1110 dziwne wartości (1)
[ATMEGA16]AVR ATMEGA16 v2 PROGRAMATOR FT232 FTDI (3)
[ATMEGA16][ASAMBLER] AVR ATMEGA16 v2-Diody LED PierwszySoft (13)
[Atmega16][C][WinAVR][AVR-USB] Jak kompilować źródła avr-usb (19)
[Atmega16][C][AVR Studio] Problem z przerwaniem od licznika (5)
[avr-gcc, ATmega16] regeler 3f + UART + encoder = problem (5)


Administrator || Moderators || Forum Rules || General Rules || Cookies information || Widgets and banners || Contact

Page generation time: 1.488 seconds

elektroda.pl topic RSS feed