Форум

Радиолюбительский форум.

Если у Вас возникли вопросы, задавайте их на форуме.

В сети

Пользователей: 126
Из них просматривают:
Аналоги: 58. Даташиты: 48. Новости: 6. Остальное: 1. Производители: 1. Профиль пользователя: 3. Расчёты: 1. Форум: 8.
Участников: 2
Гостей: 124

Google , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

В настоящее время нет объявлений.

Просмотр этой темы: 

 1 анонимных пользователей
atmega48p(WDT)
Главный Технолог
Зарегистрирован:
01.07.2011 19:44
Из: Тольятти
Сообщений: 305
Не в сети
Всем привет.
Ситуация следующая:
Устройство все время спит(загоняю его в повер-доун).
По прерыванию вотчдога(8с и только режим прерывания без ррежима системного сброса) просыпается и делает дело.
Но только вот в протеусе что-то не работает. Среда: CodeVisionAVR
Кусок кода:
void main (void)
{
...
#pragma optsize-

#asm("wdr")
WDTCSR=0b01111001; // 1024 - prescaler (WDE&WDCE - for setting prescaler)
WDTCSR=0b11100001; // interrupt mode

#ifdef _OPTIMIZE_SIZE_
#pragma optsize+
#endif

SMCR|= 0b00000101; // enable sleep mode (power-down mode)
#asm("nop")
#asm("nop")
#asm("nop")
PRR |= 0b10001100; // disable SPI TWI TIM1
#asm("nop")
#asm("nop")
#asm("nop")

#asm("sei")

while (1)
{
// Place your code here
send_BYTE(0x49);
#asm("sleep")
#asm("nop")
}
}

// Watchdog timeout interrupt service routine
interrupt [WDT] void wdt_timeout_isr(void)
{
WDTCSR|=(1<WDTCSR|=(1<// Place your code here
Send_Packet(0x69,0x45);
}

Правильно ли я его инциализирую или это глюки протеуса? Даташит перечитал несколько раз вроде все правильно, а глючит (пишет,что временная последовательность истекла и вотчдог впадает в аут!!!)
(((



Re: atmega48p(WDT)
Модератор
Зарегистрирован:
26.01.2010 23:26
Из: Тирасполь
Сообщений: 3926
Не в сети
а прошить и испытать в железе?



Re: atmega48p(WDT)
Главный Технолог
Зарегистрирован:
01.07.2011 19:44
Из: Тольятти
Сообщений: 305
Не в сети
пока еще не пробовал. Просто заранее интересуюсь. Может в коде дело а может и протэус? Вот и написал.
Код правильно написан?



Re: atmega48p(WDT)
Модератор
Зарегистрирован:
26.01.2010 23:26
Из: Тирасполь
Сообщений: 3926
Не в сети
проверь, удостоверься что не работает, а потом пиши- проверять каждый чих слишком накладно.



Re: atmega48p(WDT)
Главный Технолог
Зарегистрирован:
01.07.2011 19:44
Из: Тольятти
Сообщений: 305
Не в сети
Правильно говоришь!!! Спасибо!!!)))



Re: atmega48p(WDT)
Главный Технолог
Зарегистрирован:
01.07.2011 19:44
Из: Тольятти
Сообщений: 305
Не в сети
Да еи еще вопрос. Фьюз WDTON надо программировать?



Re: atmega48p(WDT)
Главный Технолог
Зарегистрирован:
01.07.2011 19:44
Из: Тольятти
Сообщений: 305
Не в сети
Ну так что по поводу WDTON?



Re: atmega48p(WDT)
Модератор
Зарегистрирован:
26.01.2010 23:26
Из: Тирасполь
Сообщений: 3926
Не в сети
Зачем?



Re: atmega48p(WDT)
Главный Технолог
Зарегистрирован:
01.07.2011 19:44
Из: Тольятти
Сообщений: 305
Не в сети
В принципе вопрос правильно задан: Зачем???
Ведь я его инициализирую програмно!!!)))



Поиск по форуму


Расширенный поиск

Разное

Интересно

При пайке деталей над горловиной кинескопа накройте ее куском материи.
Этим Вы убережёте кинескоп от случайно падающего расплавленного припоя и, следовательно, от трещин в его стекле.