Форум

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

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

В сети

Пользователей: 177
Из них просматривают:
Аналоги: 59. Видео: 1. Галерея: 1. Даташиты: 49. Инструкции: 3. Магазин: 1. Новости: 19. Обзор: 1. Остальное: 5. Партнёры: 1. Программы: 1. Профиль пользователя: 5. Расчёты: 1. Форум: 30.
Участников: 2
Гостей: 175

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
Не в сети
В принципе вопрос правильно задан: Зачем???
Ведь я его инициализирую програмно!!!)))



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


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

Разное

Интересно

Хранение мелких крепежных деталей. Для любого радиолюбителя когда-то возникает необходимость иметь какое-то количество - болтиков, винтиков, шайб. Это набора вполне достаточно для любого крепежа. А вот хранить это все - в одном месте - можно в баночках из-под растворимого кофе. В баночках - на 50 гр или 25 чашек. В каждую такую баночку вмещается 3 коробочки из-под монпасье (леденцов). В каждой коробочке из-под леденцов можно хранить достаточное колическо деталей мелкого крепежа. На банке сделать надпись - допустим, М3. Винты, шайбы, гайки.