/*
* GccApplication2.c
*
* Created: 03.10.2018 18:02:37
* Author : student
*/
#include <avr/io.h>
#include <inttypes.h>
#include <avr/interrupt.h>
#include <avr/sleep.h>
// te makra wywołuje framework
// tu piszemy minimum kodu, resztę wewnątrz pętli w main()
// komunikacja pomiędzy tymi funkcjami za pomoca zmiennych globalnych volatile
int tablica[] = {0x7E, 0x30, 0x6D, 0x79, 0x33, 0x5B, 0x5F, 0x70, 0x7F, 0x7B };
volatile int ix = 0;
volatile int sw1=0;
volatile int sw2=0;
ISR(INT0_vect)
{
ix=9;
TIMSK=_BV(OCIE1A);
OCR1A=0x7A0;
}
ISR(INT1_vect)
{
OCR1A=0x3D0;
}
ISR(TIMER1_COMPA_vect)
{
if(ix>0)
ix--;
TCNT1=0;
}
int main(void)
{
// same jedynki => ustawiamy na wyjście
DDRB=0xFF;
//PORTB=tablica[ix];
// 4 jedynki, 4 zera => 4 doiody powinny sie zapalic
sei();
TCNT1=0;
TCCR1A = _BV(WGM10)|_BV(WGM11);
TCCR1B = _BV(CS12) | _BV(CS10) | _BV(WGM13) | _BV(WGM12);
PORTB=~0x1;
//TIMER1_COMPA_vect
MCUCR = _BV(ISC11) | _BV(ISC01);
GICR = _BV(INT0) | _BV(INT1);
OCR1A=0x7A0;
while (1)
{
sleep_mode();
// TIFR=_BV(OCIE1A);
/* if(sw1==1){
TCNT1=0;
OCR1A=0x7A0;
sw1=0;
}
if(sw2==1){
TCNT1=0;
OCR1A=0x2620;
sw2=0;
}
*/
//PORTB = PORTB<<1;
PORTB=tablica[ix];
if(ix==0)
TIMSK=~_BV(OCIE1A);
}
}
{"html5":"htmlmixed","css":"css","javascript":"javascript","php":"php","python":"python","ruby":"ruby","lua":"text\/x-lua","bash":"text\/x-sh","go":"go","c":"text\/x-csrc","cpp":"text\/x-c++src","diff":"diff","latex":"stex","sql":"sql","xml":"xml","apl":"apl","asterisk":"asterisk","c_loadrunner":"text\/x-csrc","c_mac":"text\/x-csrc","coffeescript":"text\/x-coffeescript","csharp":"text\/x-csharp","d":"d","ecmascript":"javascript","erlang":"erlang","groovy":"text\/x-groovy","haskell":"text\/x-haskell","haxe":"text\/x-haxe","html4strict":"htmlmixed","java":"text\/x-java","java5":"text\/x-java","jquery":"javascript","mirc":"mirc","mysql":"sql","ocaml":"text\/x-ocaml","pascal":"text\/x-pascal","perl":"perl","perl6":"perl","plsql":"sql","properties":"text\/x-properties","q":"text\/x-q","scala":"scala","scheme":"text\/x-scheme","tcl":"text\/x-tcl","vb":"text\/x-vb","verilog":"text\/x-verilog","yaml":"text\/x-yaml","z80":"text\/x-z80"}