AVR studio в вопросах и ответах

Обсуждаем контроллеры компании Atmel.
almir
Открыл глаза
Сообщения: 41
Зарегистрирован: Чт ноя 05, 2009 14:34:53

Сообщение almir »

Здравствуйте Все. Скачал файл по бегущему огню в обучалке (без индикатора и клавы, пока), вставил его в АВР Студию, заменил инклуд на Тини 2313, запустил буилд - ни ошибок ни предупреждений, а вот при дебаге программа автоматически останавливается на строке"rjmp Reset" - желтая стрелка и мигает курсор, я ее закоментил, так программа останавливается на следующем реджампе. Реджамп бесконечен, так говорится в инфо (ну так и бегал бы туда сюда, ан нет, останавливается). Как заставить багер не останавлисаться. Задал вопрос в разделе теория, меня отправили сюда и посоветовали разобраться с прерываниями, пытаюсь разобраться, но как то не очень. Допустим я поставлю прерывание где то в теле программы, дебагер дойдет до него и остановится. Так он и так останавливается. Так же как и я встал в этом месте и не туда и не сюда, как мне сдвинуться, но не с катушек а с этой кочки?. Да и можно ли прошивать МК, если такое происходит в дебагере?
Уж извините за тупость ну как то заклинило в этом месте.
я не схемотехник, я только учусь
Аватара пользователя
DIHALT
Потрогал лапой паяльник
Сообщения: 387
Зарегистрирован: Пт сен 12, 2008 03:26:14
Контактная информация:

Сообщение DIHALT »

Ну по идее так и должно быть :)))) Желтая стрелка это где программа в данный момент. Нажмешь F11 (ЕМНИП) - будет следующий шаг программы и так далее, пошаговая отладка. Нажмешь F5 будет выполнение кода, но при этом ты ничего не увидишь.
Изображение
almir
Открыл глаза
Сообщения: 41
Зарегистрирован: Чт ноя 05, 2009 14:34:53

Сообщение almir »

Так пока и не врубился. Терзают меня смутные сомнения, что при замене AT90S2313 на ATtiny2313, надо не только поменять инклуд, но и многое другое. Попробую запустить дебагер с родным МК и посмотреть. Когда нажал Quickwatch выскочило окошко в котором написано rjmp а в графе value"Not in scope" И вопрос, добавить для слежения. В общем пока со Студией у меня как с фортепиано - скользко.
я не схемотехник, я только учусь
Аватара пользователя
DIHALT
Потрогал лапой паяльник
Сообщения: 387
Зарегистрирован: Пт сен 12, 2008 03:26:14
Контактная информация:

Сообщение DIHALT »

Не могу понять, у тебя не шагает по командам чтоль? А попробуй вначале программы поставить несколько NOP

между тини2313 и ат902313 разница минимальная. Помнится как то написал программу, по ошибке загнал инклюд на ат902313, зашил все в тини2313 работало как часы. Заметил что инклюд не тот когда уже спустя черти сколько времени решил оптимизировать код и начал его переписывать почти с нуля.
Изображение
almir
Открыл глаза
Сообщения: 41
Зарегистрирован: Чт ноя 05, 2009 14:34:53

Сообщение almir »

Честно говоря, так и думал, поэтому переписал только инклуд, так же, думал взять кварц на 10МГц, собираясь сваять бегающие огоньки, а вот теперь засомневался. В инете нашел апноте о различиях между этими МК, но пока не изучил еще. Программа не шагает, вернее шагает но зацикливается на Инициализация l_res: между dec Temp1 и brne 1_res, дальше не идет. До инкремента счетчиков сброса не доходит. Хотя в окне процессора циклы считаются и время тоже, SREG флаги меняются. Если в автомате, то она прыгает там же. Ресет прграмму останавливает. Скорее всего я где-то не вник в обучалке или самой студии. Попробую запустить ее в WMLAB, посмотрю как там будет прыгать.
Подойдет ли кварц 10МГц для ATtiby 2313?
В начале программы вставил три NOP - выдала три ошибки, убрал один NOP- две ошибки, убрал все NOP - ни одной ошибки.
я не схемотехник, я только учусь
Аватара пользователя
DIHALT
Потрогал лапой паяльник
Сообщения: 387
Зарегистрирован: Пт сен 12, 2008 03:26:14
Контактная информация:

Сообщение DIHALT »

Гони проект целиком. Так я фиг пойму что у тебя там не так. Может код поставил до CSEG или CSEG не туда вписал.

Кварц на тини2313 будет работать нормально. (даже на 2313V хоть она и до 8мгц, но гонится неплохо. Главное чтобы напруга была 5 вольт). Разумеется при работе от кварца надо будет подправить фузы. Ну и не забыть сбросить бит CKDIV8 т.к. он тебе дает деление частоты на 8.
Изображение
PeLazginec
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Пт дек 04, 2009 16:35:57

Сообщение PeLazginec »

Здраствуйте всем! У меня проблема с установкой AVRStudio 4.13. Когда юзаю на установку программы,то выходит окошко с ошибкой: AVRSudio 4.13 must be installed. Что за инсталлятор нужен,не подскажете?
PeLazginec
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Пт дек 04, 2009 16:35:57

Сообщение PeLazginec »

Ссылку не выложишь? Никак не могу найти
PeLazginec
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Пт дек 04, 2009 16:35:57

Сообщение PeLazginec »

DiGiCat писал(а):
PeLazginec писал(а):Скачал программу AVRStudio 4.13,юзаю клик на установку,а он выдает ошибку вида "avrstudio 4.13 must be installed",подскажите пожалуйста с чем это связано
Эт ругается, что сама AVR Studio еще не установлена. :) Похоже сейчас пытаешься вместо самой AVR Studio, пакет ее обновлений установить - не то ставишь сейчас, установить вместо AVR Studio, пытаешься ServicePack ( он около 40 весит, сама Studio около 100мб ). Скачивай и ставь сначала другой файл..
В названии написано AVRStudio4.13SP2 и весит эт все 46 мегабайт. Я думаю,путаю,как вы сказали. Ссылку на реальную студию.18 не подскажете?
Аватара пользователя
devmind
Родился
Сообщения: 14
Зарегистрирован: Сб июл 05, 2008 16:04:58
Откуда: Одесса, Украина
Контактная информация:

Сообщение devmind »

PeLazginec писал(а):Ссылку на реальную студию.18 не подскажете?


http://www.atmel.com/dyn/Products/tools_card.asp?tool_id=2725

Выбираешь "AVR Studio 4.18 (build 684) (116 MB, updated 11/09)", заполняешь форму и качаешь. Потом можешь по той же ссылке скачать SP1 и накатать его поверх уже установленной AVR Studio.
Аватара пользователя
DiGiCat
Друг Кота
Сообщения: 4793
Зарегистрирован: Пт июл 11, 2008 09:42:35
Откуда: Made in USSR

Сообщение DiGiCat »

Abrikos писал(а):В архиве линки на новейшие программы ATMEL и AVR Studio - свежак :))
:) ХАроший архивчик, ссылки класные, особенно понравилось там:
Краткий курс - самоучитель
заказать почтой у известно кого
вам поможет Семонов Михаил
и цена его услуг
:)))
Тыч новый вид спама наладил - напрямую то спамить все перекрыли.. :)
PeLazginec
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Пт дек 04, 2009 16:35:57

Сообщение PeLazginec »

devmind писал(а):
PeLazginec писал(а):Ссылку на реальную студию.18 не подскажете?


http://www.atmel.com/dyn/Products/tools_card.asp?tool_id=2725

Выбираешь "AVR Studio 4.18 (build 684) (116 MB, updated 11/09)", заполняешь форму и качаешь. Потом можешь по той же ссылке скачать SP1 и накатать его поверх уже установленной AVR Studio.
Спасибо!!!!!
Аватара пользователя
gogenzzo
Встал на лапы
Сообщения: 97
Зарегистрирован: Вт ноя 03, 2009 13:38:20
Контактная информация:

Сообщение gogenzzo »

Приветствую. Не знаю сюда или нет написать проблему, вот что у меня косячит. Есть программа мигающего светодиода, нажимаем кнопу - мигает, отпускаем - не мигает :) задержка производится не по таймеру, а в цикле:

Код: Выделить всё

wait:
      push loop1
      push loop2
      push loop3

      ldi loop1, 10
wt1:
      dec loop1
      breq wt4

      ldi loop2, 100
wt2:
      dec loop2
      breq wt1

      ldi loop3, 255
wt3:
      dec loop3
      brne wt3

      rjmp wt2

wt4:
      pop loop3
      pop loop2
      pop loop1
      ret


В отладчике все работает правильно. При 4Mhz одит такт происходит за 0,25 мкс. Всего задержка подпрограммы по идее должно быть - 255*100*10*3*0,25 = 191 мс. Но в отладчике пишет что проход цикла происходит за 171 мс. Но проблема не в этом :)

Запускаю Proteus ISIS. Строю схему. И в результате переключение диода происходит с частотой около 1,4 сек. Там выставил вроде как надо. Частота микроконтроллера 4Mhz.

Изображение

Изображение

PS: Я думаю, что такие задержки в программах не встречаются, все по таймеру, но все же хотелось бы разобраться, я и программу по формированию звука тоже в протеус загонял, по идее все должно играть ровно, но там очень уж медленно все было...
Аватара пользователя
gogenzzo
Встал на лапы
Сообщения: 97
Зарегистрирован: Вт ноя 03, 2009 13:38:20
Контактная информация:

Сообщение gogenzzo »

Блин, ну надо же, стока расписал, а оказалось что был включен проклятый CKDIV8 :oops:
minime
Открыл глаза
Сообщения: 42
Зарегистрирован: Пн янв 04, 2010 16:06:47

Сообщение minime »

А при чем ТУТ протеус ?
Андрейка
Первый раз сказал Мяу!
Сообщения: 25
Зарегистрирован: Пт июн 19, 2009 15:05:38
Откуда: Кострома
Контактная информация:

Сообщение Андрейка »

Привет, я - новичек, помогите разобраться с проблемой. Недавно установил AVR Studio4.16.628, написал учебную программу и при трансляции получил ошибку. Не понимаю, что он от меня хочет?

;Программа ledon

.device attiny2313
.nolist
.include "c:\Program Files\atmel\AVR tools\AVRAssembler\appnotes\tn2313def.inc"
.list
.def temp =r16

rjmp Init ;

Init:

ser temp ;
out DDRB,temp ;
out DDRD,temp ;

clr temp ;
out PortB,temp ;
out PortD,temp ;


Start:
sbi PortB,0 ;
rjmp Start ;


Build
c:\Program Files\atmel\AVR tools\AVRAssembler\appnotes\tn2313def.inc(122): error: Attempt to redefine keyword 'z'
E:\Attiny2313\Project\ledon\ledon.asm(12): info: 'c:\Program Files\atmel\AVR tools\AVRAssembler\appnotes\tn2313def.inc' included from here
c:\Program Files\atmel\AVR tools\AVRAssembler\appnotes\tn2313def.inc(382): error: Attempt to redefine keyword 'or'
E:\Attiny2313\Project\ledon\ledon.asm(12): info: 'c:\Program Files\atmel\AVR tools\AVRAssembler\appnotes\tn2313def.inc' included from here

Assembly failed, 2 errors, 0 warnings
Андрейка
minime
Открыл глаза
Сообщения: 42
Зарегистрирован: Пн янв 04, 2010 16:06:47

Сообщение minime »

Он пишет что в файл tn2313def.inc происходит попытка передефйнить or и z - возможно в свойствах прожекта у вас другой МК указан ?

советую - цепляйте архив с прожектом к вопросу.
smac
Мучитель микросхем
Сообщения: 459
Зарегистрирован: Вс июн 01, 2008 12:16:38

Сообщение smac »

Андрейка писал(а):... написал учебную программу и при трансляции получил ошибку. Не понимаю, что он от меня хочет?

строчку

Код: Выделить всё

.device attiny2313
удалить, дальше по обстоятельствам.
Андрейка
Первый раз сказал Мяу!
Сообщения: 25
Зарегистрирован: Пт июн 19, 2009 15:05:38
Откуда: Кострома
Контактная информация:

Сообщение Андрейка »

Спасибо за советы. Проблему решил. В папке установки AVR Studio4.16 имеем две версии ассемблера, как я понял старую версию AvrAssembler и новую AvrAssembler2. Сначала я написал так: .include "c:\Program Files\atmel\AVR tools\AVRAssembler\appnotes\tn2313def.inc" и получил ошибки при трансляции, а потом попробовал так: .include "c:\Program Files\atmel\AVR tools\AVRAssembler2\appnotes\tn2313def.inc" и все прошло без ошибок. Остался вопрос, зачем пихать старый AvrAssembler, если AVR Studio4.16 с ним не работает?
Андрейка
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

работает студия с обоими ассемблерами, просто вы попали на ошибку в документации Atmel. В первых документах для имен некоторых битов и для имени регистра использовались одни и те же обозначения (SP и Z), это было прописано в соответствующих inc-файлах, и естественно, ассемблер не мог понять, как это так - разные вещи с одинаковым именем. затем inc-подправили, да заодно и новый ассемблер добавили, который уже допускает переопределение имен...

вам надо было всего лишь найти в вашем inc-файле эти самые описания и заремарить их - и все! скомпилировалось бы и старым ассемблером.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Ответить

Вернуться в «AVR»