Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: atmega48_help
Форум разработчиков электроники ELECTRONIX.ru > Микроконтроллеры (MCs) > AVR
algidim
Подскажите пожалуйста, какие fuse bit нужно запрограмировать, чтобы atmega 48 работала от внутренего гениратора на частоте 1 или 8 мгц ?
А то пишу прогу

SIGNAL(SIG_OVERFLOW0)
{
if(S){S=0;PORTD&= ~_BV(3);}
else{S=1;PORTD|= _BV(3);}

TCNT0=0xFF;
}


int main(void)
{
DDRD|= _BV(3);
PORTD|= _BV(3);

TCNT0=0xFF;

TCCR0B=0x2;
TIMSK0|= (1<<TOIE0);

sei();
while(1){}
}
На выходе получается порядка 10 Кгц,откуда она берётся непонимаю unsure.gif по расчетам должна быть
CLK/8.Когда делал на AT90s2313 так оно и было правда там был внешний кварц
white.wind
Поправте, если не прав.

По ДШ у камня есть Calibrated Internal RC Oscillator на 1-8 Мгц раздел 7.6 (8 по умолчанию) и есть 128 KHz Internal Osc. раздел 7.7

Первый выбирается в качестве системного установкой CKSEL0..3 = 0010, второй CKSEL0..3 = 0011.

Частота 1-8 мегагерц регулируется в регистре прескалера CLKPR.
white.wind
Слегка ошибся... По умолчанию запрограммирован бит CKDIV8 (= 0), таким образом заводская частота не 8, а 1 Мгц.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.