Casovace pro AVRka

Zdenek zdej@atlas.cz
Pondělí Květen 5 21:57:09 CEST 2008


Uz jsem skoro zapomnel, ze existuje prikaz goto :-)

Stacilo by ty podminky seradit od nejvetsi k nejmensi a goto vynechat. 
Pripadne nejak osetrit zadani mimo rozsah.

Zdenek

Petr Stehlik napsal(a):
> Neni to lepsi strcit primo do avr?
> 
> //-----------------------------------------------
> // Systemovy casovac inicializace
> // vstupy: frekvence krystalu hodin a pozadovana frekvence
> //-----------------------------------------------
> void SystemTimeIni(long int krystal, long int pozadovana )
> {
>   long int pomer ;
>   char predelic=0;
> 
>   pomer=krystal/pozadovana;
> 
>   if (pomer<65535)
>   {
>     pomer=pomer;
>     predelic=1;             // preddelicka 1
>     goto hototo;
>   }
>   if (pomer<524280)
>   {
>     pomer=pomer/8;
>     predelic=2;             // preddelicka 8
>     goto hototo;  
>   }
>   if (pomer<4194240)
>   {
>     pomer=pomer/64;
>     predelic=3;             // preddelicka 64
>     goto hototo;  
>   }
>   if (pomer<16776960)
>   {
>     pomer=pomer/256;
>     predelic=4;             // preddelicka 256
>     goto hototo;  
>   }
>   hototo:
> 




Další informace o konferenci Hw-list