Спасибо, только что опробовал. Знал бы прикуп, жил бы в СочиCOKPOWEHEU писал(а):У большинства AVR есть фуз EESAVE...
AVR studio в вопросах и ответах
-
Пока_без_кота
- Потрогал лапой паяльник
- Сообщения: 359
- Зарегистрирован: Чт авг 08, 2013 01:06:54
Re: AVR studio в вопросах и ответах
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: AVR studio в вопросах и ответах
Неужели ни разу не интересовались какие фузы есть у вашего контроллера
Ну теперь знаете еще одни грабли и сможете при необходимости на них наступить их обойти.
Ну теперь знаете еще одни грабли и сможете при необходимости на них наступить их обойти.
Re: AVR studio в вопросах и ответах
Всем привет!
Тут в смежной ветке уже как-то обсуждался вопрос касательно Atmel Studio и Proteus... но все меняется.
Так вот Atmel Studio 7 и Proteus 8. Код под Atmega 8.
В качестве файла-прошивки в Proteus выбран elf-файл.
Проблема в следующем.... при дебаге кода в Proteus все строки кода маркированы набором ----- и пройти по коду не получается.
Оптимизация кода в студии отключена.
В чем проблема?
Тут в смежной ветке уже как-то обсуждался вопрос касательно Atmel Studio и Proteus... но все меняется.
Так вот Atmel Studio 7 и Proteus 8. Код под Atmega 8.
В качестве файла-прошивки в Proteus выбран elf-файл.
Проблема в следующем.... при дебаге кода в Proteus все строки кода маркированы набором ----- и пройти по коду не получается.
Оптимизация кода в студии отключена.
В чем проблема?
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: AVR studio в вопросах и ответах
возможно, не тот формат или отключена генерация отладочной информации. компилировать надо в режиме генерации отладочной информации в формате dwarf-2
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: AVR studio в вопросах и ответах
да elf вроде как и есть этот самый dwarf-2/
Мож где-то в опциях студии включается формирование отладочной информации?
Мож где-то в опциях студии включается формирование отладочной информации?
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: AVR studio в вопросах и ответах
elf это обычный исполняемый файл. Но в него можно добавить отладочную информацию опцией -gdwarf-2 компилятора gcc. Где это в Студии не знаю.
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: AVR studio в вопросах и ответах
насколько я понимаю, добавление отладочной инфы осуществляется опцией -gn, где n - номер "объема" отладочной инфы (0 - отключено, 3 - максимум), а уж потом вышеупомянутой опцией задается формат, отличающийся от того, что используется по умолчанию.COKPOWEHEU писал(а):в него можно добавить отладочную информацию опцией -gdwarf-2 компилятора gcc.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: AVR studio в вопросах и ответах
Допустимы оба варианта, вроде они в чем-то отличаются, точнее надо в документации смотреть.
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: AVR studio в вопросах и ответах
в чем отличие - я и написал.COKPOWEHEU писал(а):вроде они в чем-то отличаются
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: AVR studio в вопросах и ответах
Отдельно объем информации, о котором вы написали, отдельно формат. Можно указать что-то одно, тогда второе будет взято по умолчанию. К примеру, AVRStudio в makefile указывает только формат (-gdwarf-2), но не объем (-gN).
- ARV
- Ум, честь и совесть. И скромность.
- Сообщения: 18544
- Зарегистрирован: Чт дек 28, 2006 08:19:56
- Откуда: Новочеркасск
- Контактная информация:
Re: AVR studio в вопросах и ответах
зачем вы повторяете уже сказанное? я об этом говорил ужеCOKPOWEHEU писал(а):Отдельно объем информации, о котором вы написали, отдельно формат.
читайте внимательно, прежде чем демонстрировать свою эрудициюARV писал(а):добавление отладочной инфы осуществляется опцией -gn, где n - номер "объема" отладочной инфы (0 - отключено, 3 - максимум), а уж потом вышеупомянутой опцией задается формат, отличающийся от того, что используется по умолчанию.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!
Re: AVR studio в вопросах и ответах
Не ругайтесь!
COKPOWEHEU, я ответил в другом форуме
Повторюсь и тут:
Установил студию 6.2 SP2 параллельно с 7-й студией. Скомпилировал этот же код - и проблемы нет. Даже с ключом -g2. Код можно отлаживать в Proteus.
Сравнил ключи компилятора для C Compiler и С Linker - ключи одинаковые (кроме нескольких ключей include).
Делаю вывод, что что-то не так с 7-й версией студии. Кстати, даже не помню откуда ее взял. Может даже с сайта Atmel.
Вроде как это последняя версия. Думаю надо подождать сервиспака.
А касательно *.elf - вот описание с Atmel:
COKPOWEHEU, я ответил в другом форуме
Повторюсь и тут:
Установил студию 6.2 SP2 параллельно с 7-й студией. Скомпилировал этот же код - и проблемы нет. Даже с ключом -g2. Код можно отлаживать в Proteus.
Сравнил ключи компилятора для C Compiler и С Linker - ключи одинаковые (кроме нескольких ключей include).
Делаю вывод, что что-то не так с 7-й версией студии. Кстати, даже не помню откуда ее взял. Может даже с сайта Atmel.
Вроде как это последняя версия. Думаю надо подождать сервиспака.
А касательно *.elf - вот описание с Atmel:
Т.е. по сути это файл отладки.ELF/DWARF debug information is an open standard. The debug format supports a complete set of debug information and symbols to support all type of watches. The version of the format read by Atmel Studio is DWARF2. AVR-GCC versions configured for DWARF2 output can generate this format.
- COKPOWEHEU
- Говорящий с текстолитом
- Сообщения: 1525
- Зарегистрирован: Чт июн 10, 2010 20:11:19
Re: AVR studio в вопросах и ответах
Здесь вы утверждаете, что для отладки опция -gN обязательна, я же говорил и даже пример привел, что это не так. Опять вы заводитесь на пустом месте.ARV писал(а):добавление отладочной инфы осуществляется опцией -gn, а уж потом вышеупомянутой опцией задается формат, отличающийся от того, что используется по умолчанию.
https://ru.wikipedia.org/wiki/Executable_and_Linkable_FormatЭто стандартный формат исполняемых файлов UNIX-подобных операционных систем. В него можно включить отладочную информацию, но можно и не включать. Именно поэтому elf - выходной формат gcc. Специально ради вас написал Hello world и скомпилировал (чтобы выложить на форум, пришлось сменить расширение на .txt, но так даже проще читать). Вряд ли у вас запустится, разве что пользуетесь 64-битным линуксом или cygwin. Главное - обратите внимание на первые 3 байта, там ASCII по белому написано ELFА касательно *.elf
- Вложения
-
- a.txt
- (6.56 КБ) 258 скачиваний
- aurifer
- Грызет канифоль
- Сообщения: 286
- Зарегистрирован: Ср ноя 28, 2012 05:16:37
- Откуда: Новотроицк Оренбургской обл.
Re: AVR studio в вопросах и ответах
При установке atmel studio 7, не ставятся драйвера USB. В процессе выскакивают такие сообщения на примере Jungo:

Ставлю галочку "доверять" и нажимаю установить. Один хрен спрашивает тоже самое и так до бесконечности...
Пробовал отключать проверку цифровых подписей драйверов через F8 при загрузке ПК, с помощью gpedit.msc через групповые политики. Всё равно выскакивает. Устанавливаю от имени администратора.
Винда 7 х64, студия с оф.сайта (пробовал и веб установщик и полный). Как быть?
Ставлю галочку "доверять" и нажимаю установить. Один хрен спрашивает тоже самое и так до бесконечности...
Пробовал отключать проверку цифровых подписей драйверов через F8 при загрузке ПК, с помощью gpedit.msc через групповые политики. Всё равно выскакивает. Устанавливаю от имени администратора.
Винда 7 х64, студия с оф.сайта (пробовал и веб установщик и полный). Как быть?
Re: AVR studio в вопросах и ответах
Вопросик такой почему в Atmel studio 7_0_1006 когда шагаю в симуляторе не переходит в прерывание хотя флаг срабатывает, а дальше шагает по main.
Пробовал в свойствах проекта AVR/GNU C Compiler выбирать оптимизацию None (-O0) Optimize for size (-Os),
Debugging выбирать Minimal (-g1). Не помогает
#include <avr/io.h>
#include <avr/interrupt.h>
#define LED PORTB1
#define LED_DDR DDB1
#define Ind_DDR DDRB
#define Ind_Port PORTB
#define Ind_PIN PINB
char A;
ISR (TIMER1_COMPA_vect)
{
// Ind_Port |=(1<<LED);
TIFR = 0;
TIFR &=~(1<<OCF1A);
A = A+1;
if (A<10)
{
Ind_Port &=~(1<<LED);
}
else
{
Ind_Port |=(1<<LED);
if (A==20)
{
A=0;
}
}
}
int main(void)
{
Ind_DDR |=(1<<LED_DDR);
Ind_Port &=~(1<<LED);
OCR1A=13;
OCR1B=250;
OCR1C=253;
TIMSK |=(1<<OCIE1A);
TCCR1 |=(1<<CTC1);//mode CTC
TCCR1 |=(1<<CS11)|(1<<CS10);//CLK/4
A = 0;
asm("sei");
TIFR &=~(1<<OCF1A);
while (1)
{
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
}
}
Пробовал в свойствах проекта AVR/GNU C Compiler выбирать оптимизацию None (-O0) Optimize for size (-Os),
Debugging выбирать Minimal (-g1). Не помогает
Спойлер
#define F_CPU 8000000UL#include <avr/io.h>
#include <avr/interrupt.h>
#define LED PORTB1
#define LED_DDR DDB1
#define Ind_DDR DDRB
#define Ind_Port PORTB
#define Ind_PIN PINB
char A;
ISR (TIMER1_COMPA_vect)
{
// Ind_Port |=(1<<LED);
TIFR = 0;
TIFR &=~(1<<OCF1A);
A = A+1;
if (A<10)
{
Ind_Port &=~(1<<LED);
}
else
{
Ind_Port |=(1<<LED);
if (A==20)
{
A=0;
}
}
}
int main(void)
{
Ind_DDR |=(1<<LED_DDR);
Ind_Port &=~(1<<LED);
OCR1A=13;
OCR1B=250;
OCR1C=253;
TIMSK |=(1<<OCIE1A);
TCCR1 |=(1<<CTC1);//mode CTC
TCCR1 |=(1<<CS11)|(1<<CS10);//CLK/4
A = 0;
asm("sei");
TIFR &=~(1<<OCF1A);
while (1)
{
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
asm("nop");
}
}
Re: AVR studio в вопросах и ответах
Пошаговая отладка в прерывание не прыгнет, ставьте в прерывании Поинт и запускаете выполнение программы 
Re: AVR studio в вопросах и ответах
При запуске по F5 и заранее установленном брэйкпоинте у меня срабатывало поэтому меня и интересует Пошагово не предусмотрено, что ли? В Debug -> Options -> Tools -> Tool settings -> Опция Mask interrupts while stepping -> True разрешить. Для чего тогда эта настройка? Disable/re-enable interrupts, to prevent entering ISR routines while single-stepping.
Re: AVR studio в вопросах и ответах
Кстати сейчас запретил опцию Debug -> Options -> Tools -> Tool settings -> Опция Mask interrupts while stepping -> False запретить. И у меня в пошаговом режиме сработало прерывание, перескочило в дизассемблерный код и там шагает дальше! Так что все заработало! После шагания по коду прерывания, вернулось в основной код.
Re: AVR studio в вопросах и ответах
Народ скиньте пожалуйста аппнот на attiny2313
отсюда: C:\Program Files (x86)\Atmel\AVR Tools\AvrAssembler2\Appnotes\tn2313def.inc
Решил пофиксить таблицу векторов там. Оказывается там прерывания RESET нет
Дофиксился и куча ошибок вылезла.
отсюда: C:\Program Files (x86)\Atmel\AVR Tools\AvrAssembler2\Appnotes\tn2313def.inc
Решил пофиксить таблицу векторов там. Оказывается там прерывания RESET нет
Re: AVR studio в вопросах и ответах
Ты предлагаешь по инету залезть в твой диск С: и там найти нужный апноут ? Проблематично это
Вот тебе этот файл, только он у меня лежит в С:\Program Files\... Cгодится ?
Только поменяй расширение .txt на .inc У меня с .inc почему-то не отправляется. И никакой таблицы векторов там нет, а есть только определения символьных имен. Таблицу можешь скопипастить из ПДФ-ки на тиньку, стр 48. И потерявшийся RESET там окажется
И какой смысл ты вкладываешь в слово "пофиксить" ? На программерском жаргоне это значит "исправить баги"
Вот тебе этот файл, только он у меня лежит в С:\Program Files\... Cгодится ?
И какой смысл ты вкладываешь в слово "пофиксить" ? На программерском жаргоне это значит "исправить баги"
- Вложения
-
- tn2313def.txt
- (12.57 КБ) 272 скачивания
