kod[waz +przerwania]


#include
#define F_CPU 1000000UL //taktowanie zegara 1 MHz
#include
#include
#include

volatile char i = 1;
volatile int kierunek = 0;

ISR(PORTF_INT0_vect){
kierunek=1;
}
ISR(PORTF_INT1_vect){
kierunek=0;
}

int main( void )
{
sei();

PMIC.CTRL |= PMIC_HILVLEN_bm |PMIC_MEDLVLEN_bm|PMIC_LOLVLEN_bm;

PORTF.DIR = 0x00;

PORTE.DIR = 0xff;

PORTCFG.MPCMASK=0xFF;

PORTF.PIN1CTRL= PORT_OPC_WIREDANDPULL_gc;
PORTF.PIN2CTRL= PORT_OPC_WIREDANDPULL_gc;


PORTF.INTCTRL |= PORT_INT1LVL_LO_gc;
PORTF.INTCTRL |= PORT_INT0LVL_LO_gc;

PORTF.INT0MASK = 0x02;
PORTF.INT1MASK = 0x04;

PORTF.PIN0CTRL = PORT_ISC_RISING_gc;

PORTE.OUT = 255;


while (1){

PORTE.OUT = ~i;

switch(kierunek)
{
case 0:
i <<= 1;
if(i == 0x00)
i = 1;
break;
case 1:
i >>= 1;
if(i == 0x00)
i = 0x80;
break;
}
_delay_ms(500);
}
return 0;
}

Wyszukiwarka

Podobne podstrony:
kod[waz ze zmiana asm]
kod[waz asm]
kod[waz easy]
kod z WOŚP polecane chomiki by closer9
Rozdział 04 System obsługi przerwań sprzętowych
KOD RAMKI 16
KOD RAMKI 69
KOD RAMKI 72
kod atrakcyjnosci
kod do czcionek i obrazka
mb kod usterki P1403
czy przerwa przy komputerze
The Serpent And The Rainbow Wąż i Tęcza 1988

więcej podobnych podstron