logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

prosty program wytłumaczenie

diamonxxx 05 Sty 2011 19:39 781 1
REKLAMA
  • #1 8962514
    diamonxxx
    Poziom 10  
    Witam :). Mam ty prosty program do atmega8 i prosił bym o wytłumaczenie po słowie "for" co każda linijka znaczy a szczególnie co znaczy
    _delay_ms(1000); i PORTD &= 0xaa;


    int main(void)
    {
        /* Wszystkie linie portu D będą wyjściami */
        DDRD  = 0xFF;
    
        /* Początek nieskończonej pętli */
        for(;; )
        {
            PORTD = 0x0f;  /* Ładuje do PORTD wartość 0x0f*/
            /* opóźnienie 1 sek. */
             _delay_ms(1000);
            PORTD |= 0xf0;  /* 
             _delay_ms(1000);
            PORTD &= 0xaa;  /*
             _delay_ms(1000);
            PORTD ^= 0x0f;  /* 
             _delay_ms(1000);    
            PORTD = 0x00;
            /* opóźnienie 2 sek. */
             _delay_ms(2000); 
    


    Pozdrawiam :)

    Proszę pamiętać o używaniu znaczników code. - arnoldziq
  • REKLAMA
  • #2 8962687
    dj_west
    Poziom 17  
    Piszcie ludzie na odpowiednich forach! Od tego jest forum Mikrokontrolery.

    _delay_ms(1000) masz opisane (w sumie nie jest trudno się po nazwie domyślić).
    A o operatorach bitowych (np. &) poczytaj sobie na przykład tu. 0xAA jest szesnastkowo zapisaną liczbą dziesiętną 170 (lub 10101010 binarnie).

    PORTD &= 0xAA
    to to samo co
    PORTD = PORTD & 0xAA
REKLAMA