#5 hlucheucho
Po dotazu mi učitel oznámil, že to má jít na LCD, což bych dal, teď jenom prostudovat ten příjem dat.
Příspěvky odeslané z IP adresy 91.219.241.–
rudla
Fikus
#include <avr/interrupt.h>
#include <stdlib.h>
#include <avr/sleep.h>
char sinetable [32];
char triangletable [12];
int i ;
void ioinit (void)
{
PORTB = 0b11111111;
PORTD = 0b11111111;
DDRB = 0b11111111;
DDRD = 0b00000000;
}
void timer0_setup (void) // čítač
{
TCCR0 = 0b00000001;
TCNT0 = 127;
TIMSK = 0b00000010;
}
ISR (SIG_OVERFLOW0) // Counter0 Interrupt Service
{
if (ridici==0) PORTB = (sintable[i++]); //jestli je tlačítko zapnuto, probíhá sinus
if (ridici==1) PORTB = (triangletable[i++]); //jestli je tlačítko vypnuto, probíhá trojúhelník
TCNT0 = 127;
if (i==25){
i=0;
}
}
void arraysettup (void)
{
sinetable[0]=127; // 25 kroků posílání hodnot průběhu nadefinovaných v array
sinetable[1]=153;
sinetable[2]=178;
sinetable[3]=199;
sinetable[4]=215;
sinetable[5]=225;
sinetable[6]=229;
sinetable[7]=225;
sinetable[8]=215;
sinetable[9]=199;
sinetable[10]=178;
sinetable[11]=153;
sinetable[12]=127;
sinetable[13]=101;
sinetable[14]=76;
sinetable[15]=55;
sinetable[16]=39;
sinetable[17]=29;
sinetable[18]=25;
sinetable[19]=29;
sinetable[20]=39;
sinetable[21]=55;
sinetable[22]=76;
sinetable[23]=101;
sinetable[24]=127;
}
int main (void)
{
ioinit();
arraysettup();
arraysettup2 ();
timer0_setup();
i = 0;
sei();
while (1)
{
set_sleep_mode(SLEEP_MODE_IDLE);
}
return (0);
}
void arraysettup2 (void) //12 kroků posílání hodnot průběhu nadefinovaných v array
{
triangletable[0]=127;
triangletable[1]=138;
triangletable[2]=150;
triangletable[3]=161;
triangletable[4]=173;
triangletable[5]=184;
triangletable[6]=203;
triangletable[7]=184;
triangletable[8]=173;
triangletable[9]=161;
triangletable[10]=150;
triangletable[11]=127;
Fikus
už je to na mě moc informací :D musíte na mě pomalu a jak pro někoho, kdo to vživotě neviděl :) su tedka ve škole napíšu to a zhruba za 2 hodiny budu muset už program ukazovat učitelovi... to co napišu sem hodim a dyžtak mi to trošku opravte kdyby to šlo
Jinak KIIV mohl bys to nějak zjednodušit? to tvoje moc nechápu...
Patrik
Slo by to takto??
Zasláno z mobilního telefonu.
Patrik
Je to tiny 2313. No prej o jde rikal ucitel. Rikal ze tento program rozpracovanej je dobrej jen potrebuji doresit realizaci te sinusovky a spozdeni... Ale nevim jak . Slo by to tak ze bych zadefinovane hodnoty posilal jednotlive pomoci portb? Ae jak udelat zpozdeni? A to prepnuti na obdelnik? A vsechno by melo byt ve smicce while??
Zasláno z mobilního telefonu.