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

 
 
> AVRStudio vs IAR vs me, кого глючит?
Balaganov
сообщение Oct 10 2005, 20:54
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 41
Регистрация: 16-02-05
Пользователь №: 2 688



Здравствуйте господа, такой вопрос:
имеется IAR 4.10B, имеется AVRStudio 4.11.401, имеется MEGA32 (частота 4 МГц), имеется тупая задержка от timer0 де-то 200 мкс
теперь вопрос: почему перечисленныые проги ,при работе в режиме симулятора, ведут себя по разному при одинаковом коде, который, кстати тоже имеется:

#pragma vector=TIMER0_OVF_vect
__interrupt void irqHandler(void)
{
TIMSK=0; //здесь тормозим таймер пока не выполнится функция задержки
...
void del();
}

void del(void) //сюда приходим после прерывания
{
TIMSK=1; //здесь запускаем таймер (разрешаем прерывание)
... //здесь успеваем сделать нечто не связанное с прерыванием
}

void main(void)
{
init_peref();
...
}

void init_peref(void)
{
...
TCCR0=0x02; //делитель clk/8
TCNT0=0x06; //начальное значение = 6
OCR0=0x00; //сравнить с 0 (итого де-то 200 мс)
asm ("sei");
}

Так вот студия после TIMSK=1 сразу переходит на #pragma...
А IAR после TIMSK=1 продолжаетвыполнять код.
Короче как оно должно быть на самом деле?
Где истина?
ЗЫ Сейчас в отпуске на даче, даташита под рукой нет, да даже еслибы и был все равно момент интересный. Кто объяснит?
Go to the top of the page
 
+Quote Post



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

 


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


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