Урок 2:
Създаване на файл - MakefileВ WinAVR, изходният текст на програмата се компилира с помощта на утилита make.exe, която се намира в папка WinAVR\utils\bin. Make.exe контролира генерацията на използваните файлове от изходния код на програмата. За управление на този утилит се използват именно makefile-овете. Тя съобщава на компилатора какви програми да пуска, кой изходен код да генерира и т.н...
След инсталирането на WinAVR в папката WinAVR/sample може да се намери шаблон с името Makefile, която трябва да се копира в папката с проекта и вече оттам да се редактира.
Внимание! Makefile и компилираният файл (в случая my_test.c) трябва да се намират в ЕДНА папка!Отваряме Makefile в редактора Programmers Notepad и ще редактираме няколко важни за компилатора инструкции.
Първо, задължително трябва да се посочи за какъв тип микроконтролер да бъде изходният код. Търсим следните редове:
# MCU name
MCU = atmega128
Първият ред е коментар, а във втория, вместо atmega128 пишем този микроконтролер, който ни интересува. (Например: atmega8, attiny2313, attiny26 и т.н.)
Частотата на използвания кварцов кристал (в Херци) се определя в редовете:
# Processor frequency.
F_CPU = 8000000
Името на проекта, а съответно и името на изходния файл, с функцията main и изходните файлове с разширение hex и cof, се определя в следните редове:
# Target file name (without extension).
TARGET = testpp
Тук, вместо testpp пишем нужното име на проекта (в нашия случай е my_test).
Търсим редовете:
# List C source files here. (C dependencies are automatically generated.)
SRC =
И след знака "равно" пишем $(TARGET).c, за да се получи това:
# List C source files here. (C dependencies are automatically generated.)
SRC = $(TARGET).c
Търсим редовете:
# List C++ source files here. (C dependencies are automatically generated.)
CPPSRC = main.cpp
След знака "равно" изтриваме. Трябва да се получи това:
# List C++ source files here. (C dependencies are automatically generated.)
CPPSRC =
След това, малко по-надолу намираме раздела:
#---------------- Programming Options (avrdude) ----------------
Търсим реда:
AVRDUDE_PROGRAMMER = stk500
и го заместваме с:
AVRDUDE_PROGRAMMER = stk200
След това, ще използваме за целта си упростен вариант за програматор. За тези, които още не са разбрали, STK200 е програматор от типа "Пет проводника". Ще има описание в съответната тема!
Търсим реда:
AVRDUDE_PORT = com1 # programmer connected to serial device
и заместваме с:
AVRDUDE_PORT = lpt1
Програматорът stk200 използва паралелния порт на компютъра - LPT (принтерският).
Освен това, в състава на WinAVR влиза и утилита MFile, която помага правилно да се редактира и състави Makefile-ът! Можете да я стартирате от Старт -> Програми (Programs) -> WinAVR -> MFile [WinAVR].
Това беше вторият урок! Очаквайте третият и последен, в който ще компилираме програмата, и след това вече започваме да правим схеми с експериментиране на програмите!