Перейти к содержанию

Ошибка


Grinch

Рекомендуемые сообщения

при прошивке мк выдает ошибку. А какая именно ошибка?

avrdude -p atmega8-16PU -P lpt1 -c stk200 -U flash:w:my_test.hex

avrdude: AVR Part "atmega8-16PU" not found. (на atmega8 просто тоже менял, всё равно ошибка)

Valid parts are:

m6450 = ATMEGA6450 [D:\WinAVR-20071221\bin\avrdude.conf:12304]

m3250 = ATMEGA3250 [D:\WinAVR-20071221\bin\avrdude.conf:12115]

m645 = ATMEGA645 [D:\WinAVR-20071221\bin\avrdude.conf:11926]

m325 = ATMEGA325 [D:\WinAVR-20071221\bin\avrdude.conf:11737]

usb1287 = AT90USB1287 [D:\WinAVR-20071221\bin\avrdude.conf:11549]

usb1286 = AT90USB1286 [D:\WinAVR-20071221\bin\avrdude.conf:11360]

usb647 = AT90USB647 [D:\WinAVR-20071221\bin\avrdude.conf:11171]

usb646 = AT90USB646 [D:\WinAVR-20071221\bin\avrdude.conf:10981]

t84 = ATtiny84 [D:\WinAVR-20071221\bin\avrdude.conf:10798]

t44 = ATtiny44 [D:\WinAVR-20071221\bin\avrdude.conf:10616]

t24 = ATtiny24 [D:\WinAVR-20071221\bin\avrdude.conf:10434]

m2561 = ATMEGA2561 [D:\WinAVR-20071221\bin\avrdude.conf:10241]

m2560 = ATMEGA2560 [D:\WinAVR-20071221\bin\avrdude.conf:10048]

m1281 = ATMEGA1281 [D:\WinAVR-20071221\bin\avrdude.conf:9860]

m1280 = ATMEGA1280 [D:\WinAVR-20071221\bin\avrdude.conf:9671]

m640 = ATMEGA640 [D:\WinAVR-20071221\bin\avrdude.conf:9483]

t85 = ATtiny85 [D:\WinAVR-20071221\bin\avrdude.conf:9302]

t45 = ATtiny45 [D:\WinAVR-20071221\bin\avrdude.conf:9123]

t25 = ATtiny25 [D:\WinAVR-20071221\bin\avrdude.conf:8943]

pwm3b = AT90PWM3B [D:\WinAVR-20071221\bin\avrdude.conf:8762]

pwm2b = AT90PWM2B [D:\WinAVR-20071221\bin\avrdude.conf:8579]

pwm3 = AT90PWM3 [D:\WinAVR-20071221\bin\avrdude.conf:8396]

pwm2 = AT90PWM2 [D:\WinAVR-20071221\bin\avrdude.conf:8212]

t2313 = ATtiny2313 [D:\WinAVR-20071221\bin\avrdude.conf:8025]

m168 = ATMEGA168 [D:\WinAVR-20071221\bin\avrdude.conf:7837]

m88 = ATMEGA88 [D:\WinAVR-20071221\bin\avrdude.conf:7651]

m48 = ATMEGA48 [D:\WinAVR-20071221\bin\avrdude.conf:7464]

t861 = ATTINY861 [D:\WinAVR-20071221\bin\avrdude.conf:7276]

t461 = ATTINY461 [D:\WinAVR-20071221\bin\avrdude.conf:7087]

t261 = ATTINY261 [D:\WinAVR-20071221\bin\avrdude.conf:6898]

t26 = ATTINY26 [D:\WinAVR-20071221\bin\avrdude.conf:6741]

m8535 = ATMEGA8535 [D:\WinAVR-20071221\bin\avrdude.conf:6583]

m8515 = ATMEGA8515 [D:\WinAVR-20071221\bin\avrdude.conf:6425]

m8 = ATMEGA8 [D:\WinAVR-20071221\bin\avrdude.conf:6265]

m161 = ATMEGA161 [D:\WinAVR-20071221\bin\avrdude.conf:6125]

m32 = ATMEGA32 [D:\WinAVR-20071221\bin\avrdude.conf:5950]

m6490 = ATMEGA6490 [D:\WinAVR-20071221\bin\avrdude.conf:5757]

m649 = ATMEGA649 [D:\WinAVR-20071221\bin\avrdude.conf:5572]

m3290p = ATMEGA3290P [D:\WinAVR-20071221\bin\avrdude.conf:5389]

m3290 = ATMEGA3290 [D:\WinAVR-20071221\bin\avrdude.conf:5204]

m329p = ATMEGA329P [D:\WinAVR-20071221\bin\avrdude.conf:5019]

m329 = ATMEGA329 [D:\WinAVR-20071221\bin\avrdude.conf:4835]

m169 = ATMEGA169 [D:\WinAVR-20071221\bin\avrdude.conf:4655]

m163 = ATMEGA163 [D:\WinAVR-20071221\bin\avrdude.conf:4512]

m162 = ATMEGA162 [D:\WinAVR-20071221\bin\avrdude.conf:4316]

m644p = ATMEGA644P [D:\WinAVR-20071221\bin\avrdude.conf:4126]

m644 = ATMEGA644 [D:\WinAVR-20071221\bin\avrdude.conf:3936]

m324p = ATMEGA324P [D:\WinAVR-20071221\bin\avrdude.conf:3745]

m164p = ATMEGA164P [D:\WinAVR-20071221\bin\avrdude.conf:3554]

m16 = ATMEGA16 [D:\WinAVR-20071221\bin\avrdude.conf:3376]

c32 = AT90CAN32 [D:\WinAVR-20071221\bin\avrdude.conf:3185]

c64 = AT90CAN64 [D:\WinAVR-20071221\bin\avrdude.conf:2995]

c128 = AT90CAN128 [D:\WinAVR-20071221\bin\avrdude.conf:2805]

m128 = ATMEGA128 [D:\WinAVR-20071221\bin\avrdude.conf:2627]

m64 = ATMEGA64 [D:\WinAVR-20071221\bin\avrdude.conf:2446]

m103 = ATMEGA103 [D:\WinAVR-20071221\bin\avrdude.conf:2306]

8535 = AT90S8535 [D:\WinAVR-20071221\bin\avrdude.conf:2185]

8515 = AT90S8515 [D:\WinAVR-20071221\bin\avrdude.conf:2071]

4434 = AT90S4434 [D:\WinAVR-20071221\bin\avrdude.conf:1988]

4433 = AT90S4433 [D:\WinAVR-20071221\bin\avrdude.conf:1864]

2343 = AT90S2343 [D:\WinAVR-20071221\bin\avrdude.conf:1740]

2333 = AT90S2333 [D:\WinAVR-20071221\bin\avrdude.conf:1655]

2313 = AT90S2313 [D:\WinAVR-20071221\bin\avrdude.conf:1542]

4414 = AT90S4414 [D:\WinAVR-20071221\bin\avrdude.conf:1429]

1200 = AT90S1200 [D:\WinAVR-20071221\bin\avrdude.conf:1314]

t15 = ATtiny15 [D:\WinAVR-20071221\bin\avrdude.conf:1181]

t13 = ATtiny13 [D:\WinAVR-20071221\bin\avrdude.conf:1008]

t12 = ATtiny12 [D:\WinAVR-20071221\bin\avrdude.conf:875]

t11 = ATtiny11 [D:\WinAVR-20071221\bin\avrdude.conf:811]

make.exe: *** [program] Error 1

> Process Exit Code: 2

> Time Taken: 00:00

а не, меняю на atmega8 и ошибка другая...

vrdude -p atmega8 -P lpt1 -c stk200 -U flash:w:my_test.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.00s

avrdude: Device signature = 0x1e9206

avrdude: Expected signature for ATMEGA8 is 1E 93 07

Double check chip, or use -F to override this check.

avrdude done. Thank you.

make.exe: *** [program] Error 1

> Process Exit Code: 2

> Time Taken: 00:01

"И мы построим свой лунопарк, с блэк-джеком и шлюхами..." (Робот Бэндер, Футурама)

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

avrdude -p atmega8-16PU -P lpt1 -c stk200 -U flash:w:my_test.hex

avrdude: AVR Part "atmega8-16PU" not found. (на atmega8 просто тоже менял, всё равно ошибка)

Вместо atmega8-16PU надо писать просто m8

Изменено пользователем fredo
Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

avrdude: Device signature = 0x1e9206

avrdude: Expected signature for ATMEGA8 is 1E 93 07

Проблема в том что у твоего контроллера идентификатор 1e9206, а у atmega8 должен быть 1E 93 07

с таким идентификатором у atmel вобще никакого контроллера нету

Изменено пользователем fredo
Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для заряда литий-железофосфатных (LiFePO4) аккумуляторов

Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

я поменял на m8 - не работает. Я первый раз прошиваю мк, мош чета не правильно... У меня мк atmega8-16pu

MakeFile

# - Makefile - myROBOT.ru

#=======================================
# Тип используемого микроконтроллера
MY_MCU = atmega8
# Частота кварцевого резонатора (Hz)
MY_F_CPU = 8000000
# Название файла проекта (без расширения)
MY_TARGET = my_test
# Используемый программатор (для AVRDUDE)
MY_AVRDUDE_PROGRAMMER = stk200
# Порт, к которому подключен программатор
MY_PROGRAMMER_PORT = lpt1
#=======================================


# MCU name
MCU = $(MY_MCU)

# Processor frequency.
F_CPU = $(MY_F_CPU)

# Output format. (can be srec, ihex, binary)
FORMAT = ihex

# Target file name (without extension).
TARGET = $(MY_TARGET)

# Object files directory
OBJDIR = obj

# List C source files here. (C dependencies are automatically generated.)
SRC =$(TARGET).c

# List C++ source files here. (C dependencies are automatically generated.)
CPPSRC = 

# List Assembler source files here.
ASRC =

# Optimization level, can be [0, 1, 2, 3, s]. 
OPT = s

# Debugging format.
DEBUG = dwarf-2

# List any extra directories to look for include files here.
EXTRAINCDIRS = 

# Compiler flag to set the C Standard level.
CSTANDARD = -std=gnu99

# Place -D or -U options here for C sources
CDEFS = -DF_CPU=$(F_CPU)UL

# Place -D or -U options here for C++ sources
CPPDEFS = -DF_CPU=$(F_CPU)UL
#CPPDEFS += -D__STDC_LIMIT_MACROS
#CPPDEFS += -D__STDC_CONSTANT_MACROS

#---------------- Compiler Options C ----------------
CFLAGS = -g$(DEBUG)
CFLAGS += $(CDEFS)
CFLAGS += -O$(OPT)
#CFLAGS += -mint8
#CFLAGS += -mshort-calls
CFLAGS += -funsigned-char
CFLAGS += -funsigned-bitfields
CFLAGS += -fpack-struct
CFLAGS += -fshort-enums
#CFLAGS += -fno-unit-at-a-time
CFLAGS += -Wall
CFLAGS += -Wstrict-prototypes
CFLAGS += -Wundef
#CFLAGS += -Wunreachable-code
#CFLAGS += -Wsign-compare
CFLAGS += -Wa,-adhlns=$(<:%.c=$(OBJDIR)/%.lst)
CFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS))
CFLAGS += $(CSTANDARD)

#---------------- Compiler Options C++ ----------------
CPPFLAGS = -g$(DEBUG)
CPPFLAGS += $(CPPDEFS)
CPPFLAGS += -O$(OPT)
#CPPFLAGS += -mint8
#CPPFLAGS += -mshort-calls
CPPFLAGS += -funsigned-char
CPPFLAGS += -funsigned-bitfields
CPPFLAGS += -fpack-struct
CPPFLAGS += -fshort-enums
CPPFLAGS += -fno-exceptions
#CPPFLAGS += -fno-unit-at-a-time
CPPFLAGS += -Wall
#CPPFLAGS += -Wstrict-prototypes
CFLAGS += -Wundef
#CPPFLAGS += -Wunreachable-code
#CPPFLAGS += -Wsign-compare
CPPFLAGS += -Wa,-adhlns=$(<:%.cpp=$(OBJDIR)/%.lst)
CPPFLAGS += $(patsubst %,-I%,$(EXTRAINCDIRS))
#CPPFLAGS += $(CSTANDARD)

#---------------- Assembler Options ----------------
ASFLAGS = -Wa,-adhlns=$(<:%.S=$(OBJDIR)/%.lst),-gstabs 

#---------------- Library Options ----------------
# Minimalistic printf version
PRINTF_LIB_MIN = -Wl,-u,vfprintf -lprintf_min

# Floating point printf version (requires MATH_LIB = -lm below)
PRINTF_LIB_FLOAT = -Wl,-u,vfprintf -lprintf_flt

# If this is left blank, then it will use the Standard printf version.
PRINTF_LIB = 
#PRINTF_LIB = $(PRINTF_LIB_MIN)
#PRINTF_LIB = $(PRINTF_LIB_FLOAT)

# Minimalistic scanf version
SCANF_LIB_MIN = -Wl,-u,vfscanf -lscanf_min

# Floating point + %[ scanf version (requires MATH_LIB = -lm below)
SCANF_LIB_FLOAT = -Wl,-u,vfscanf -lscanf_flt

# If this is left blank, then it will use the Standard scanf version.
SCANF_LIB = 
#SCANF_LIB = $(SCANF_LIB_MIN)
#SCANF_LIB = $(SCANF_LIB_FLOAT)

MATH_LIB = -lm


#---------------- External Memory Options ----------------
EXTMEMOPTS =

#---------------- Linker Options ----------------
LDFLAGS = -Wl,-Map=$(TARGET).map,--cref
LDFLAGS += $(EXTMEMOPTS)
LDFLAGS += $(PRINTF_LIB) $(SCANF_LIB) $(MATH_LIB)
#LDFLAGS += -T linker_script.x



#---------------- Programming Options (avrdude) ----------------
AVRDUDE_PROGRAMMER = $(MY_AVRDUDE_PROGRAMMER)

# com1 = serial port. Use lpt1 to connect to parallel port.
AVRDUDE_PORT = $(MY_PROGRAMMER_PORT)

AVRDUDE_WRITE_FLASH = -U flash:w:$(TARGET).hex
#AVRDUDE_WRITE_EEPROM = -U eeprom:w:$(TARGET).eep

#AVRDUDE_ERASE_COUNTER = -y

#AVRDUDE_NO_VERIFY = -V

#AVRDUDE_VERBOSE = -v -v

AVRDUDE_FLAGS = -p $(MCU) -P $(AVRDUDE_PORT) -c $(AVRDUDE_PROGRAMMER)
AVRDUDE_FLAGS += $(AVRDUDE_NO_VERIFY)
AVRDUDE_FLAGS += $(AVRDUDE_VERBOSE)
AVRDUDE_FLAGS += $(AVRDUDE_ERASE_COUNTER)

#---------------- Debugging Options ----------------

# For simulavr only - target MCU frequency.
DEBUG_MFREQ = $(F_CPU)

# Set the DEBUG_UI to either gdb or insight.
# DEBUG_UI = gdb
DEBUG_UI = insight

# Set the debugging back-end to either avarice, simulavr.
DEBUG_BACKEND = avarice
#DEBUG_BACKEND = simulavr

# GDB Init Filename.
GDBINIT_FILE = __avr_gdbinit

# When using avarice settings for the JTAG
JTAG_DEV = /dev/com1

# Debugging port used to communicate between GDB / avarice / simulavr.
DEBUG_PORT = 4242

# Debugging host used to communicate between GDB / avarice / simulavr, normally
DEBUG_HOST = localhost

#============================================================================
# Define programs and commands.
SHELL = sh
CC = avr-gcc
OBJCOPY = avr-objcopy
OBJDUMP = avr-objdump
SIZE = avr-size
NM = avr-nm
AVRDUDE = avrdude
REMOVE = rm -f
REMOVEDIR = rm -rf
COPY = cp
WINSHELL = cmd

# Define Messages
# English
MSG_ERRORS_NONE = Errors: none
MSG_BEGIN = -------- begin --------
MSG_END = --------  end  --------
MSG_SIZE_BEFORE = Size before: 
MSG_SIZE_AFTER = Size after:
MSG_COFF = Converting to AVR COFF:
MSG_EXTENDED_COFF = Converting to AVR Extended COFF:
MSG_FLASH = Creating load file for Flash:
MSG_EEPROM = Creating load file for EEPROM:
MSG_EXTENDED_LISTING = Creating Extended Listing:
MSG_SYMBOL_TABLE = Creating Symbol Table:
MSG_LINKING = Linking:
MSG_COMPILING = Compiling C:
MSG_COMPILING_CPP = Compiling C++:
MSG_ASSEMBLING = Assembling:
MSG_CLEANING = Cleaning project:
MSG_CREATING_LIBRARY = Creating library:

# Define all object files.
OBJ = $(SRC:%.c=$(OBJDIR)/%.o) $(CPPSRC:%.cpp=$(OBJDIR)/%.o) $(ASRC:%.S=$(OBJDIR)/%.o) 

# Define all listing files.
LST = $(SRC:%.c=$(OBJDIR)/%.lst) $(CPPSRC:%.cpp=$(OBJDIR)/%.lst) $(ASRC:%.S=$(OBJDIR)/%.lst) 

# Compiler flags to generate dependency files.
GENDEPFLAGS = -MD -MP -MF .dep/$(@F).d

# Combine all necessary flags and optional flags.
# Add target processor to flags.
ALL_CFLAGS = -mmcu=$(MCU) -I. $(CFLAGS) $(GENDEPFLAGS)
ALL_CPPFLAGS = -mmcu=$(MCU) -I. -x c++ $(CPPFLAGS) $(GENDEPFLAGS)
ALL_ASFLAGS = -mmcu=$(MCU) -I. -x assembler-with-cpp $(ASFLAGS)


# Default target.
all: begin gccversion sizebefore build sizeafter end

# Change the build target to build a HEX file or a library.
build: elf hex eep lss sym
#build: lib


elf: $(TARGET).elf
hex: $(TARGET).hex
eep: $(TARGET).eep
lss: $(TARGET).lss
sym: $(TARGET).sym
LIBNAME=lib$(TARGET).a
lib: $(LIBNAME)

# Eye candy.

begin:
@echo
@echo $(MSG_BEGIN)

end:
@echo $(MSG_END)
@echo

# Display size of file.
HEXSIZE = $(SIZE) --target=$(FORMAT) $(TARGET).hex
ELFSIZE = $(SIZE) -A $(TARGET).elf
AVRMEM = avr-mem.sh $(TARGET).elf $(MCU)

sizebefore:
@if test -f $(TARGET).elf; then echo; echo $(MSG_SIZE_BEFORE); $(ELFSIZE); \
$(AVRMEM) 2>/dev/null; echo; fi

sizeafter:
@if test -f $(TARGET).elf; then echo; echo $(MSG_SIZE_AFTER); $(ELFSIZE); \
$(AVRMEM) 2>/dev/null; echo; fi

# Display compiler version information.
gccversion : 
@$(CC) --version

# Program the device.  
program: $(TARGET).hex $(TARGET).eep
$(AVRDUDE) $(AVRDUDE_FLAGS) $(AVRDUDE_WRITE_FLASH) $(AVRDUDE_WRITE_EEPROM)


# Generate avr-gdb config/init file which does the following:
gdb-config: 
@$(REMOVE) $(GDBINIT_FILE)
@echo define reset >> $(GDBINIT_FILE)
@echo SIGNAL SIGHUP >> $(GDBINIT_FILE)
@echo end >> $(GDBINIT_FILE)
@echo file $(TARGET).elf >> $(GDBINIT_FILE)
@echo target remote $(DEBUG_HOST):$(DEBUG_PORT)  >> $(GDBINIT_FILE)
ifeq ($(DEBUG_BACKEND),simulavr)
@echo load  >> $(GDBINIT_FILE)
endif
@echo break main >> $(GDBINIT_FILE)

debug: gdb-config $(TARGET).elf
ifeq ($(DEBUG_BACKEND), avarice)
@echo Starting AVaRICE - Press enter when "waiting to connect" message displays.
@$(WINSHELL) /c start avarice --jtag $(JTAG_DEV) --erase --program --file \
$(TARGET).elf $(DEBUG_HOST):$(DEBUG_PORT)
@$(WINSHELL) /c pause

else
@$(WINSHELL) /c start simulavr --gdbserver --device $(MCU) --clock-freq \
$(DEBUG_MFREQ) --port $(DEBUG_PORT)
endif
@$(WINSHELL) /c start avr-$(DEBUG_UI) --command=$(GDBINIT_FILE)

# Convert ELF to COFF for use in debugging / simulating in AVR Studio or VMLAB.
COFFCONVERT = $(OBJCOPY) --debugging
COFFCONVERT += --change-section-address .data-0x800000
COFFCONVERT += --change-section-address .bss-0x800000
COFFCONVERT += --change-section-address .noinit-0x800000
COFFCONVERT += --change-section-address .eeprom-0x810000

coff: $(TARGET).elf
@echo
@echo $(MSG_COFF) $(TARGET).cof
$(COFFCONVERT) -O coff-avr $< $(TARGET).cof

extcoff: $(TARGET).elf
@echo
@echo $(MSG_EXTENDED_COFF) $(TARGET).cof
$(COFFCONVERT) -O coff-ext-avr $< $(TARGET).cof

# Create final output files (.hex, .eep) from ELF output file.
%.hex: %.elf
@echo
@echo $(MSG_FLASH) $@
$(OBJCOPY) -O $(FORMAT) -R .eeprom $< $@

%.eep: %.elf
@echo
@echo $(MSG_EEPROM) $@
-$(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" \
--change-section-lma .eeprom=0 -O $(FORMAT) $< $@

# Create extended listing file from ELF output file.
%.lss: %.elf
@echo
@echo $(MSG_EXTENDED_LISTING) $@
$(OBJDUMP) -h -S $< > $@

# Create a symbol table from ELF output file.
%.sym: %.elf
@echo
@echo $(MSG_SYMBOL_TABLE) $@
$(NM) -n $< > $@

# Create library from object files.
.SECONDARY : $(TARGET).a
.PRECIOUS : $(OBJ)
%.a: $(OBJ)
@echo
@echo $(MSG_CREATING_LIBRARY) $@
$(AR) $@ $(OBJ)

# Link: create ELF output file from object files.
.SECONDARY : $(TARGET).elf
.PRECIOUS : $(OBJ)
%.elf: $(OBJ)
@echo
@echo $(MSG_LINKING) $@
$(CC) $(ALL_CFLAGS) $^ --output $@ $(LDFLAGS)

# Compile: create object files from C source files.
$(OBJDIR)/%.o : %.c
@echo
@echo $(MSG_COMPILING) $<
$(CC) -c $(ALL_CFLAGS) $< -o $@ 

# Compile: create object files from C++ source files.
$(OBJDIR)/%.o : %.cpp
@echo
@echo $(MSG_COMPILING_CPP) $<
$(CC) -c $(ALL_CPPFLAGS) $< -o $@ 

# Compile: create assembler files from C source files.
%.s : %.c
$(CC) -S $(ALL_CFLAGS) $< -o $@

# Compile: create assembler files from C++ source files.
%.s : %.cpp
$(CC) -S $(ALL_CPPFLAGS) $< -o $@

# Assemble: create object files from assembler source files.
$(OBJDIR)/%.o : %.S
@echo
@echo $(MSG_ASSEMBLING) $<
$(CC) -c $(ALL_ASFLAGS) $< -o $@

# Create preprocessed source for use in sending a bug report.
%.i : %.c
$(CC) -E -mmcu=$(MCU) -I. $(CFLAGS) $< -o $@ 

# Target: clean project.
clean: begin clean_list end

clean_list :
@echo
@echo $(MSG_CLEANING)
$(REMOVE) $(TARGET).hex
$(REMOVE) $(TARGET).eep
$(REMOVE) $(TARGET).cof
$(REMOVE) $(TARGET).elf
$(REMOVE) $(TARGET).map
$(REMOVE) $(TARGET).sym
$(REMOVE) $(TARGET).lss
$(REMOVEDIR) $(OBJDIR)
$(REMOVE) $(SRC:.c=.s)
$(REMOVE) $(SRC:.c=.d)
$(REMOVEDIR) .dep

# Create object files directory
$(shell mkdir $(OBJDIR) 2>/dev/null)

# Include the dependency files.
-include $(shell mkdir .dep 2>/dev/null) $(wildcard .dep/*)

# Listing of phony targets.
.PHONY : all begin finish end sizebefore sizeafter gccversion \
build elf hex eep lss sym coff extcoff \
clean clean_list program debug gdb-config

my_test.c

/************************************************

ПРИМЕР МИГАНИЯ СВЕТОДИОДАМИ

*************************************************/ 

  #include <avr/io.h>
  #include <avr/delay.h>
  #define F_CPU 8000000UL  // 8 MHz


  int main(void)			  // начало основой программы
  {

  DDRD = 0xff;			/* все выводы порта D сконфигурировать как выходы */

	while (1) {			  // Бесконечный цикл

		PORTD = 0xff; /* установить "1" на всех линиях порта D */

		_delay_ms(250);   // Ждем 0.25 сек.

		PORTD = 0x00;  /* установить "0" на всех линиях порта D */

		_delay_ms(250);   // Ждем 0.25 сек.

	}	   // закрывающая скобка бесконечного цикла

  }	  // закрывающая скобка основной программы

Изменено пользователем Zer

"И мы построим свой лунопарк, с блэк-джеком и шлюхами..." (Робот Бэндер, Футурама)

Ссылка на комментарий
Поделиться на другие сайты

А. Вроде нашел ошибку - не поставил перемычку на 2-12 выводы программатора... ща исправлю и проверю <_<

"И мы построим свой лунопарк, с блэк-джеком и шлюхами..." (Робот Бэндер, Футурама)

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...