Program Mfile

Program Mfile

Dla przeprowadzenia kompilacji potrzeba podać kompilatorowi szereg opcji. Aby uniknąć każdorazowego wklepywania ciągów poleceń, parametrów i przełączników stosuje się plik o nazwie „Makefile” zawierający w sobie wszystkie niezbędne informacje o plikach źródłowych, rodzaju mikrokontrolera na który kompilujemy program, a nawet dane niezbędne dla zaprogramowania kostki.
Jeśli masz zainstalowane WinAVR, to masz również przykładowy plik Makefile. Możesz go skopiować do katalogu Twojego projektu i odpowiednio zmodyfikowć.
Aby ułatwić tworzenie i modyfikację Makefile, Joerg Wunsch napisał program o nazwie „Mfile” który znajdziesz w katalogu „c:\Winavr\Mfile”. Jeżeli pracujesz pod Linuksem możesz ściągnąć go z http://www.sax.de/~joerg/mfile/  link .tar.gz version (Unix)  jest na dole tamtej strony.
Zgodnie z zaleceniami autora, archiwum rozpakowujemy (jako root) do katalogu „/usr/local/share/mfile”, po czym w katalogu „/usr/bin”, tworzymy dowiązanie do pliku „/usr/local/share/mfile/mfile.tcl”

Powyzszy obrazek pokazuje jak to jest zrobione u mnie. Zwróć uwagę na plik „makefile_template”. Jest to szablon pliku Makefile. Można go modyfikowac w edytorze tekstowym. Dla swojej wygody zmieniłem ten plik w ten sposób, że:

  • domyślnym kontrolerem jest ATmega8
  • domyślnym formatem pliku dla debuggera jest extended coff umożliwiający symulację w VMLAB 3.10 i AVRstudio >4.07
  • domyślnym programatorem jest stk200
  • domyślnym portem dla podłączenia programatora jest pierwszy port równoległy (/dev/parport0)
  • wpisanie polecenia „make program” powoduje użycie „Avrdude”, a polecenie „make load” wywołuje „uisp” (zrobiłem tak ze względu na to, że dla niektórych dystrybucji Linuksa paczki binarne z avrdude nie są dostępne, a nie kazdy lubi kompilować ze żródeł)

Jesli Ci to odpowiada możesz ściągnąć ten plik stąd (nie będzie działał pod Windows). Natępnie nadpisz nim oryginalny szablon.
Ale idźmy dalej. Teraz przejdź do katalogu w którym masz swój projekt dla AVR i wpisz polecenia „mfile” (jako zwykły uzytkownik). Pod Windows powinieneś mieć ikonkę na pulpicie. Zobaczysz okienko programu (takie samo pod Linuksem jak i pod Windows).

Rozwiń menu Makefile
Widzisz dosyć długa listę. Pozycje które Ciebie jako początkującego nie interesują to:

  • Output format
  • Optimization level
  • C standard level
  • printf() options
  • scanf() options
  • External RAM options
  • Assembler source files

Wybierz pozycję „Main file name”. Pojawia się okienko gdzie podajesz nazwę Twojego pliku z kodem w C ale bez rozszerzenia. Klikasz OK.

Teraz wybierasz z listy rodzaj kontrolera.

Następnie format pliku zawierającego informację dla debuggera. Chyba najlepszy dla nas jest „AVR-ext-COFF” umożliwiający potem symulację i debugowanie  w  AVRStudio  i VMlab.

mfile_4.png

Rodzaj programatora – sugeruję stk200 (zgodny z konstrukcją ze strony Claudio Lanconelli) lub, jeśli nie masz portu równoległego, jeden z licznych programatorów pod .
mfile_5.png

Jeżeli masz ustrojstwo wykonane zgodnie ze schematem podanym przez Claudio’a, podłączasz je do portu równoległego (drukarkowego) „/dev/parport0” (Linux) lub bardziej poetycko „lpt1” (Windows).

mfile_6.png

Nie sądzę abyś na początku miał program zawarty w kilku plikach źródłowych i dlatego nie ruszamy na razie pozycji „C/C++ source file(s)”. Będzie to pokazane w dziale Programy/Klawiatura 4×4.
Na tym można zakończyć. Wybierz „File/Save as” i zapisz Twój Makefile w katalogu projektu.
Jesli czujesz nieodpartą chęć modyfikacji ręcznej tego pliku zaznacz „Enable Editing of Makefile”. Wowczas Mfile pracuje jako prosty edytor tekstowy.
Zresztą Makefile można edytować dowolnym edytorem tekstowym.

%d blogerów lubi to: