Koleżankom i Kolegom Radioamatorom, Krótkofalowcom,
Konstruktorom i Waszym Rodzinom – w tych trudnych czasach –
Zdrowych, Spokojnych i Pogodnych Świąt Bożego Narodzenia oraz
Szczęśliwego Nowego Roku

Życzy Zespół Home Made


Odpowiedz 
 
Ocena wątku:
  • 0 Głosów - 0 Średnio
  • 1
  • 2
  • 3
  • 4
  • 5
AVR-GCC
SP5FCS Offline
Adam
*****

Liczba postów: 1,072
Dołączył: 02-02-2009
Post: #1
AVR-GCC
AVR-GCC jest darmowym kompilatorem języka C (licencja GNU) służącym do pisania programów dla mikroprocesorów AVR. Każdy język programowania ma swoich zwolenników i przeciwników. Na forach przytoczono setki argumentów za i przeciw różnym kompilatorom dlatego pozostawmy tą dyskusję i skupmy się na ich praktycznym wykorzystaniu.
Nie jestem ekspertem od języka C dlatego chętnie poznam technikę programowania w tym języku. Liczę na aktywny udział w dyskusji Kolegów piszących w tym środowisku od wielu lat oraz takich jak ja, którzy chcieliby tą wiedzę pogłębić.

Napiszcie proszę o swoich doświadczeniach z tym językiem, o ciekawych stronach z opisami, literaturą, przykładami, miejscach gdzie możemy pobrać dodatkowe pliki do obsługi otoczenia procesora, może jakieś własne projekty.

Kurs AVR-GCC na diodzie
AVR-GCC w praktyce - wątek na elektrodzie
AVR_GCC Tutorial (WinAVR)
AVR Libc

Początki programowania w C
WikiBooks - Język C
WikiBooks Programowanie w C - wersja pdf
Kurs C++

Strony z gotowymi funkcjami do obsługi urządzeń:
Procyon AVRlib
AVR projects
radzio.dxp.pl

##

73 Adam
29-08-2010 15:18
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
HM_DIPOL Offline
Heniek
***

Liczba postów: 172
Dołączył: 27-04-2010
Post: #2
RE: AVR-GCC
Dużo tego jak na początek, okazuje się, że WinAVR jest bardzo popularny wśród programistów. Dla mnie składnia języka jest dość zawiła no i brak gotowców. Niby w sieci prawie wszystko jest ale nikt gwarancji nie da jak to będzie działać dlatego sami musimy to przetestować. Mam pytanie do zaawansowanych programistów, sami budujecie wszystkie biblioteki do obsługi LCD, RS232, I2C, itd. Pewnie w komercyjnych kompilatorach za kasę firma daje gotowce.

Tu jest trochę gotowców do zassania:
AVR-GCC Tutorial
Obsługa SPI - blog z opisem i kodem obsługi SPI
(Ten post był ostatnio modyfikowany: 30-08-2010 11:02 przez HM_DIPOL.)
29-08-2010 18:30
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SQ6ADE Offline
Radjoamator.
****

Liczba postów: 539
Dołączył: 05-04-2010
Post: #3
RE: AVR-GCC
(29-08-2010 18:30)dipol napisał(a):  Mam pytanie do zaawansowanych programistów, sami budujecie wszystkie biblioteki do obsługi LCD, RS232, I2C, itd. Pewnie w komercyjnych kompilatorach za kasę firma daje gotowce.

Nie jestem zaawansowanym programistą - a tylko amatorem ale jednak wrzucę 3 grosze :
Osobiście unikam jak ognia gotowców - chyba że takie które prześwietliłem od A do Z w wykonywaniu procedur. Gotowce czasami
potrafą nieźle ograniczyć możliwości albo zakłócić inny proces jeśli są słabo opisane przez autora lub źle zrozumiane przez aplikanta.
Dlatego prawie wsztstko robię po swojemu od A do Z .
Co oczywiście polecam Wink

tylko na FM UKF -> Just True Sound Hi-Fi Smile
02-09-2010 21:51
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP5FCS Offline
Adam
*****

Liczba postów: 1,072
Dołączył: 02-02-2009
Post: #4
RE: AVR-GCC
Krzysztof, metoda dobra ale bardzo pracochłonna. Przećwiczyłem to budując przez lata własne procedury i macra w assemblerze. Język C na wiele zalet ale perspektywa budowania własnego zaplecza bibliotek od zera zdecydowanie mnie zniechęca. Gdyby udało się zebrać grupę kilku Kolegów zainteresowanych współpracą i testowaniem byłoby łatwiej i szybciej. Jest kilka przykładów fajnych projektów pisanych w C grupowo. Może ktoś będzie miał gest i położy na forum coś z własnych zasobów do poćwiczenia.

73 Adam
02-09-2010 22:20
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SQ9NOX Offline
Łukasz
*

Liczba postów: 15
Dołączył: 29-03-2009
Post: #5
RE: AVR-GCC
Ja jeszcze z ciekawych narzędzi przydatnych, gdy się jest przyzwyczajonym do własnego środowiska programistycznego /w moim przypadku vim/, podrzucę odnośnik do mfile:

http://www.sax.de/~joerg/mfile/

To oprogramowanie, które po kilku kliknięciach wygeneruje dopasowany do potrzeb plik Makefile do naszego projektu.

Żeby następnie skompilować nasz projekt w avr-gcc, wystarczy napisać

make

A żeby zaprogramować podłączony procesor:

make program

Działa pod Linuksem i pod Windows. Wymaga drobnych poprawek w celu bezproblemowego uruchomienia pod (przykładowo) Ubuntu:

plik: mfile.tcl
pierwszą linijkę zastępujemy
#!/usr/bin/wish

(bo kto ma dziś tixwisha?)

oraz - jeśli nie chcemy instalować do /usr/local/, trzeba poprawić linijkę

if {$tcl_platform(platform) == "unix"} {

na

if {$tcl_platform(platform) == "cokolwiek"} {

Miłego korzystania :-)

73 de sq9nox /5
19-09-2010 22:51
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP9FKP Offline
Piotr
*****

Liczba postów: 1,267
Dołączył: 28-06-2009
Post: #6
RE: AVR-GCC
Mikro-kontrolery ATMEL-a mają wiele zalet przemawiających za ich stosowaniem w konstrukcjach amatorskich. Jedną z nich jest dobre i darmowe środowisko projektowe. Nie mniej zawsze na końcu potrzebny jest programator. Aktualnie zastanawiam się nad wyborem czegoś do zbudowania w domu. Problem w tym, że AVR Studio zaprojektowano dla Windows i choć można go uruchomić w Linuksie, z programatorem już nie jest tak prosto. Może jakaś podpowiedź od bardziej doświadczonych Kolegów ?
12-10-2010 16:59
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP6NXI Offline
Nowicjusz
*

Liczba postów: 18
Dołączył: 29-12-2009
Post: #7
RE: AVR-GCC
Polecam programator STK-500. Współpracuje bezpośrednio zarówno z AVR-GCC (WinAVR), AVRDude, AVRStudio, jak i Bascomem. Ponieważ używam wyłącznie komputerów przenośnych nie bez znaczenia jest to, że jest to programator USB. Wyjście w standardzie 2x5 KANDA. Mój egzemplarz ma możliwość prostego przejścia do trybu AVR910 (RS232) oraz może służyć jako konwerter USB - RS232 TTL (tylko linie RX i TX). Ma także wyprowadzone źródło sygnału zegarowego, który może służyć do przeprogramowywania mikrokontrolerów z ustawionym fuse-bitem taktowanie zewnętrzne. Urządzonko ma także buforowanie sygnałów linii SPI. Cena ok 50 - 70 zł. Kupić można tu: http://www.sibit.pl/sklep/ lub, w innym wykonaniu, na znanym portalu aukcyjnym. Używam od ok. 2 lat - działa niezawodnie w systemach Windows XP i Windows 7.
(Ten post był ostatnio modyfikowany: 12-10-2010 17:32 przez SP6NXI.)
12-10-2010 17:29
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP5FCS Offline
Adam
*****

Liczba postów: 1,072
Dołączył: 02-02-2009
Post: #8
RE: AVR-GCC
Jeśli to ma być programator HM to polecam ciekawą i bardzo prostą konstrukcję programatora USBasp.
Wykonywany w wielu odmianach, jest dokumentacja, soft, pliki PCB, jest na tyle prosty, że możemy zrobić druk pod własne potrzeby, obudowę. Zastanawiam się, czy nie zrobić druku pod jakąś zgrabną i tanią obudowę.
Z fabrycznych programatorów polecam modele które obsługują nową rodzinę procesorów Xmega np AVRISP MKII.

73 Adam
12-10-2010 18:30
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SP9FKP Offline
Piotr
*****

Liczba postów: 1,267
Dołączył: 28-06-2009
Post: #9
RE: AVR-GCC
Ćwiczebnie zmontowałem ten programator. Wybór był prosty: miałem akurat "pod ręką" ATtiny2313. AVRDUDE rozpoznaje go prawidłowo w obu znanych mi systemach. Niestety, WINE ma problem z emulacją USB. Jak do tej pory nie udało mi się uruchomić transmisji do programatora z AVR Studio. Jeszcze się nie poddaję ...
12-10-2010 20:17
Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
SQ9NOX Offline
Łukasz
*

Liczba postów: 15
Dołączył: 29-03-2009
Post: #10
RE: AVR-GCC
(12-10-2010 16:59)sp9fkp napisał(a):  Problem w tym, że AVR Studio zaprojektowano dla Windows i choć można go uruchomić w Linuksie, z programatorem już nie jest tak prosto. Może jakaś podpowiedź od bardziej doświadczonych Kolegów ?

Ja pod Linuksem programuję za pomocą kabelka wpiętego w płytę z Atmelem [pracuję na klasycznej płytce testowej]. Całość konfiguruje się jako programator "bascom" na porcie /dev/parport0, i zapisuje plik .hex [AVR studio powinien go potrafić wygenerować] za pomocą programu AVRdude. Całość mam zautomatyzowaną dzięki Makefile wygenerowanemu za pomocą programu, który opisałem parę wpisów wcześniej.

73 de Łukasz sq9nox /5
13-10-2010 8:21
Odwiedź stronę użytkownika Znajdź wszystkie posty użytkownika Odpowiedz cytując ten post
Odpowiedz 


Skocz do:


Użytkownicy przeglądający ten wątek: 1 gości
Loading...