реклама на сайте
подробности

 
 
> Непонятки с WINAVR из AVRStudio, Что нужно сделать?
011119xx
сообщение Jan 27 2009, 06:51
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 381
Регистрация: 5-07-05
Из: Уфа
Пользователь №: 6 544



Честно говоря такие вопросы задавать стыдно, но все же может ответ на поверхности. Работаю в WINAVR из AVRStudio. Например есть 3 файла исходников на Си. Один главный в котором функция main и 2 с подпрограммами. Из главного вызываются подпрограммы, описанные в 2 других файлах. Так вот когда запускаю симуляцию по шагам, то в подпрограммы, расположенные в первом файле вход происходит и можно посмотреть что делается в них по шагам. А вот в подпрограммы, расположенные во втором файле вход не происходит, как будто подается команда на выполнения шага без захода в подпрограмму. Хидеры в главном файле объявлены. Что можно сделать, или это глюк такой у WINAVR? WINAVR у меня 20060421, AVRStudio 4.13, система XP.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
011119xx
сообщение Jan 27 2009, 08:54
Сообщение #2


Местный
***

Группа: Свой
Сообщений: 381
Регистрация: 5-07-05
Из: Уфа
Пользователь №: 6 544



Make файл

###############################################################################
# Makefile for the project MP3_Player_2
###############################################################################

## General Flags
PROJECT = MP3_Player_2
MCU = atmega128
TARGET = MP3_Player_2.elf
CC = avr-gcc.exe

## Options common to compile, link and assembly rules
COMMON = -mmcu=$(MCU)

## Compile options common for all C compilation units.
CFLAGS = $(COMMON)
CFLAGS += -Wall -gdwarf-2 -std=gnu99 -DF_CPU=8000000UL -Os -funsigned-char -funsigned-bitfields -fpack-struct -fshort-enums
CFLAGS += -MD -MP -MT $(*F).o -MF dep/$(@F).d

## Assembly specific flags
ASMFLAGS = $(COMMON)
ASMFLAGS += $(CFLAGS)
ASMFLAGS += -x assembler-with-cpp -Wa,-gdwarf2

## Linker flags
LDFLAGS = $(COMMON)
LDFLAGS += -Wl,-Map=MP3_Player_2.map


## Intel Hex file production flags
HEX_FLASH_FLAGS = -R .eeprom

HEX_EEPROM_FLAGS = -j .eeprom
HEX_EEPROM_FLAGS += --set-section-flags=.eeprom="alloc,load"
HEX_EEPROM_FLAGS += --change-section-lma .eeprom=0 --no-change-warnings


## Objects that must be built in order to link
OBJECTS = MP3_Player_2.o fat.o glcd.o id3.o mmc.o playlist.o skin.o vs1011.o

## Objects explicitly added by the user
LINKONLYOBJECTS =

## Build
all: $(TARGET) MP3_Player_2.hex MP3_Player_2.eep MP3_Player_2.lss size

## Compile
MP3_Player_2.o: ../MP3_Player_2.c
$(CC) $(INCLUDES) $(CFLAGS) -c $<

fat.o: ../fat.c
$(CC) $(INCLUDES) $(CFLAGS) -c $<

glcd.o: ../glcd.c
$(CC) $(INCLUDES) $(CFLAGS) -c $<

id3.o: ../id3.c
$(CC) $(INCLUDES) $(CFLAGS) -c $<

mmc.o: ../mmc.c
$(CC) $(INCLUDES) $(CFLAGS) -c $<

playlist.o: ../playlist.c
$(CC) $(INCLUDES) $(CFLAGS) -c $<

skin.o: ../skin.c
$(CC) $(INCLUDES) $(CFLAGS) -c $<

vs1011.o: ../vs1011.c
$(CC) $(INCLUDES) $(CFLAGS) -c $<

##Link
$(TARGET): $(OBJECTS)
$(CC) $(LDFLAGS) $(OBJECTS) $(LINKONLYOBJECTS) $(LIBDIRS) $(LIBS) -o $(TARGET)

%.hex: $(TARGET)
avr-objcopy -O ihex $(HEX_FLASH_FLAGS) $< $@

%.eep: $(TARGET)
-avr-objcopy $(HEX_EEPROM_FLAGS) -O ihex $< $@ || exit 0

%.lss: $(TARGET)
avr-objdump -h -S $< > $@

size: ${TARGET}
@echo
@avr-size -C --mcu=${MCU} ${TARGET}

## Clean target
.PHONY: clean
clean:
-rm -rf $(OBJECTS) MP3_Player_2.elf dep/* MP3_Player_2.hex MP3_Player_2.eep MP3_Player_2.lss MP3_Player_2.map


## Other dependencies
-include $(shell mkdir dep 2>/dev/null) $(wildcard dep/*)

Сообщение отредактировал 011119xx - Jan 27 2009, 08:58
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 011119xx   Непонятки с WINAVR из AVRStudio   Jan 27 2009, 06:51
- - TechMike   Цитата(011119xx @ Jan 27 2009, 09:51) Чес...   Jan 27 2009, 08:17
- - _Pasha   Пользуйтесь окном дизасемблера, хоть это и неудобн...   Jan 27 2009, 09:12
- - 011119xx   Как запретить инлайнить на время отладки атрибутом...   Jan 27 2009, 09:31
|- - demiurg_spb   Читайте об аттрибутах в: C:/WinAVR/doc/gcc/HTML/gc...   Jan 27 2009, 09:39
- - 011119xx   Это не помогло.   Jan 27 2009, 10:21
|- - Сергей Борщ   Цитата(011119xx @ Jan 27 2009, 12:21) Это...   Jan 27 2009, 10:40
- - 011119xx   Отправить файл не получается. Но тем не менее, на ...   Jan 27 2009, 11:24
|- - Сергей Борщ   Цитата(011119xx @ Jan 27 2009, 13:24) Воз...   Jan 27 2009, 15:15
|- - 011119xx   Цитата(Сергей Борщ @ Jan 27 2009, 20:15) ...   Jan 28 2009, 03:13
|- - Сергей Борщ   Цитата(011119xx @ Jan 28 2009, 05:13) их ...   Jan 28 2009, 09:16
|- - IgorKossak   Цитата(011119xx @ Jan 28 2009, 05:13) ......   Jan 28 2009, 09:40
|- - ARV   Цитата(IgorKossak @ Jan 28 2009, 12:40) Н...   Jan 29 2009, 07:37
- - ARV   несколько раз натыкался на подобное, когда над одн...   Jan 27 2009, 17:41
- - Goodefine   Цитата(011119xx @ Jan 28 2009, 06:13) поя...   Jan 28 2009, 07:17
- - ermilovd   Я пользуюсь AVRStudio_4.15b619 + WinAVR_20081124rc...   Jan 29 2009, 09:55
- - _Pasha   Наступил на те же грабли. Winavr2008 - который пос...   Jan 30 2009, 12:28
- - aesok   Попробуйте --param inline-call-cost=N, с N = 4, 5...   Jan 30 2009, 15:07
- - _Pasha   Цитата(aesok @ Jan 30 2009, 18:07) Попроб...   Jan 30 2009, 18:12
- - aesok   Извините но я не знаю термина "инлайнится ...   Jan 30 2009, 18:26
- - MrYuran   Цитата(aesok @ Jan 30 2009, 21:26) Извини...   Jan 30 2009, 18:30


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 30th July 2025 - 11:40
Рейтинг@Mail.ru


Страница сгенерированна за 0.01386 секунд с 7
ELECTRONIX ©2004-2016