[an error occurred while processing this directive]
Таймер 89C51
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Delavar 14 сентября 2002 г. 16:31

Тактовая частота 24 МГц.
По идее можно добиться импульсов с Т=0,5 мкс (osc/12).
У меня выходит только ~20 мкс.
Пробовал таймер 16 бит с загрузкой - тот же результат.
Пишу в Кейл и Proview.
Как решить проблему?

Вот программа

#define TIMER_H 0xFF
#define TIMER_L 0xFF

//-------------------------------------
void init_system();
void init_timer0();
void set_timer();

sbit BB = P1^0;

//=====================================
void main()
{
init_system();
while (1)
{
}
}
//===========================================
void init_system()
{
EA = 0;
init_timer0();
EA = 1;
TR0 = 1;
}
//===========================================
void init_timer0()
{
TMOD |= 0x02; //8 bit, autoreload
set_timer();
ET0 = 1; //interrupt from timer0 is enabled
}

//===========================================
void set_timer()
{
TL0 = TIMER_L;
TH0 = TIMER_H;
}
//===========================================
void isr_timer0 (void) interrupt 1 using 0
{
BB = 0;
BB = 1;
}

Составить ответ  |||  Конференция  |||  Архив

Ответы



Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru