
Добавил:
Andrejjavd
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Примеры решения лабораторных работ / Лаб3
.txt#include <iom8535v.h>
#include <macros.h>
int j=0;
void port_init(void)
{
PORTA=0X00;
DDRA=0X00;
PORTD=0X00;
DDRD=0XFF;
}
void timer0_init(void)
{
TCCR0 = 0x00;
TCNT0 = 0x00;
TCCR0 = 0x05;
}
#pragma interrupt_handler timer0_ovf_isr:10
void timer0_ovf_isr(void)
{
TCNT0=0x00;
if (j<3*PORTA)
{
j++;
PORTD=0;
return;
}
j=0;
if (PORTD==0)
{
PORTD=1;
if (PORTA==0xFF)
{
PORTA=0;
return;
}
PORTA++;
}
}
void init_devices(void)
{
CLI ();
port_init();
timer0_init();
TIMSK = 0x01;
SEI ();
}
void Delay(int i)
{
unsigned int p;
for (p=0;p<i;p++)
{
int tiks=1000000;
while (tiks>0)
tiks--;
}
}
void main(void)
{
init_devices();
while(1){}
}