Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
11.01.2011, 18:52
|
|
Прописка
Регистрация: 31.08.2008
Сообщений: 183
Сказал спасибо: 25
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
AVR Studio 4 не симулирует прерывания?
Здравствуйте. Подскажите пожалуйста:
контроллер ATiny2313, должно происходить прерывание таймера-счетчика по переполнению, а не происходит. Включаю так:
ldi R16,0x01 ;установка коэффициента пред деления таймера
out TCCR0,R16
ldi R16,0x02 ;разрешение прерывания таймера
out TIMSK,R16
sei ;разрешение глобальных прерываний
не становиться на вектор прерывания ну никак, может это глюк AVR Studio?
Описываю прерывания так:
.cseg ; Сегмент кода программы
.ORG $000 ; (RESET)
RJMP Reset
.ORG $001
RETI
.ORG $002
RETI
.ORG $003
RETI
.ORG $004
RETI
.ORG $005
RETI
.ORG $006
RJMP tick ;переполнение таймера (5 мс)
.ORG $007
RETI
.ORG $008
RETI
.ORG $009
RETI
.ORG $00A
RETI
.ORG $0B
RETI
.ORG $00C
RETI
.ORG $00D
RETI
.ORG $00E
RETI
.ORG $00F
RETI
.ORG $010
RETI
.ORG $011
RETI
.ORG $012
RETI
.ORG INT_VECTORS_SIZE ; Конец таблицы прерываний
P.S. Кстати, кто знает, где прописан этот INT_VECTORS_SIZE? в файле tn2313def.inc его нет? Не понимаю его назначения.
__________________
Kvsrk85(Андрей)
Последний раз редактировалось kvark85; 11.01.2011 в 18:58.
|
|
|
|
11.01.2011, 19:24
|
|
Гражданин KAZUS.RU
Регистрация: 14.11.2008
Сообщений: 701
Сказал спасибо: 298
Сказали Спасибо 283 раз(а) в 193 сообщении(ях)
|
Re: AVR Studio 4 не симулирует прерывания?
Установка коэффициента предделения таймера не TCCR0, а TCCR0B.
|
|
|
|
11.01.2011, 19:28
|
|
Почётный гражданин KAZUS.RU
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,048
Сказал спасибо: 60
Сказали Спасибо 3,954 раз(а) в 2,309 сообщении(ях)
|
Re: AVR Studio 4 не симулирует прерывания?
почитайте даташит. Нет такого регистра TCCR0
Есть TCCR0А и TCCR0В - что в них записано?
|
|
|
|
12.01.2011, 09:55
|
|
Прописка
Регистрация: 31.08.2008
Сообщений: 183
Сказал спасибо: 25
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: AVR Studio 4 не симулирует прерывания?
Значит вот что у меня было. Переходил на другой микроконтроллер а в свойствах проекта забыл поменять МК. Становится на прерывание теперь, не смотря на то что я неправильно выставлял частоту предделителя она менялась правильно, то есть при изменении TCCR0 менялся TCCR0B. Это еще не все странности. Дело в том что я еще не указал начало стека и несмотря на это все работает правильно. Он у меня в "Processor" сразу после компиляции программы указывается. Так и должно быть? Нужно ли его при это в программе инициализировать?
__________________
Kvsrk85(Андрей)
Последний раз редактировалось kvark85; 12.01.2011 в 10:30.
|
|
|
|
12.01.2011, 10:43
|
|
Гражданин KAZUS.RU
Регистрация: 04.08.2006
Сообщений: 911
Сказал спасибо: 28
Сказали Спасибо 180 раз(а) в 139 сообщении(ях)
|
Re: AVR Studio 4 не симулирует прерывания?
Если это ассемблер, то естественно стек требуется инициализировать вручную.
|
|
|
Сказали "Спасибо" SasaVitebsk
|
|
|
12.01.2011, 11:17
|
|
Почётный гражданин KAZUS.RU
Регистрация: 20.06.2006
Адрес: Украина, Запорожье
Сообщений: 7,982
Сказал спасибо: 0
Сказали Спасибо 4,941 раз(а) в 2,370 сообщении(ях)
|
Re: AVR Studio 4 не симулирует прерывания?
kvark85,
для того, чтобы выходить сюда с такими смелыми заявлениями, надо хотя бы прочитать весь хэлп к студии, систему команд процессора, знать принципы построения программы и знать, где хоть раположен!!! файл tn2313def.inc. ![Очень смешно](images/smilies/icon_veryhappy.gif)
да, и не мешало б еще знать настройки студии и что в ней два!!! ассемблера.
кстати, строка .ORG INT_VECTORS_SIZE ; Конец таблицы прерываний - не нужна в аасемблере, это похоже Си-шный рудимент
Последний раз редактировалось jump; 12.01.2011 в 11:26.
|
|
|
|
12.01.2011, 12:07
|
|
Прописка
Регистрация: 31.08.2008
Сообщений: 183
Сказал спасибо: 25
Сказали Спасибо 6 раз(а) в 6 сообщении(ях)
|
Re: AVR Studio 4 не симулирует прерывания?
jump, я ничего смело не заявлял, я спрашивал. Спасибо, проблема решена.
__________________
Kvsrk85(Андрей)
Последний раз редактировалось kvark85; 12.01.2011 в 12:12.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 02:14.
|
|