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

Atmega32 - Miganie diodami [C]

adi84_84 24 Lut 2011 16:27 5762 3
REKLAMA
  • #1 9197728
    adi84_84
    Poziom 14  
    Witam wszystkich :)
    Po zabawie z Bascomem postanowiłem przesiąść się na C.Napisałem taki program(najpierw 5 razy miga LED1 potem 5 razy miga LED2).Niestety LED2 nawet nie mrugnie:(
    Proszę o pomoc i z góry dziękuję ;)
    Oto kod:

    /*
     * main.c
     *
     *  Created on: 2011-02-24
     *      Author: adi84_84
     */
    
    //dołączenie plików nagłówkowych
    #include <avr/io.h>
    #include <util/delay.h>
    
    //definicje dla preprocesora
    #define LED1_PIN (1<<PC6)
    #define LED2_PIN (2<<PC7)
    #define LED1_ON PORTC &= ~LED1_PIN //załączenie diody 1
    #define LED1_OFF PORTC |= LED1_PIN //wyłączenie diody 1
    #define LED2_ON PORTC &= ~LED2_PIN //załączenie diody 2
    #define LED2_OFF PORTC |= LED2_PIN //wyłączenie diody 2
    
    //definicje zmiennych
    uint8_t x;
    
    //****** funkcja main ******
    int main(void)
    {
        //****** inicjalizacja *****
    	DDRC |= ( LED1_PIN | LED2_PIN ); //kierunek pinu PC6,PC7 - wyjściowy
    	PORTC &= ~ LED1_PIN | LED2_PIN; // wyłączenie diód
    
    	//**** pierwsza pętla ****
    	x=0;
    	while(x<5) //wykona się pięć razy
    	{
    		LED1_ON; //załączenie diody
    		_delay_ms(1000); //czekaj 1s
    		LED1_OFF; //wyłączenie diody
    		_delay_ms(1000); //czekaj 1s
    		x=x+1;
    	}
    	//**** druga pętla ****
    	x=0;
    		while(x<5)
    		{
    			LED2_ON; //załączenie diody
    			_delay_ms(1000); //czekaj 1s
    			LED2_OFF; //wyłączenie diody
    			_delay_ms(1000); //czekaj 1s
    			x=x+1;
    		}
    
    }
  • REKLAMA
  • #2 9197778
    Pituś Bajtuś
    Poziom 28  
    (2 << PC7) ????? Nic dziwnego że nie miga. Ma być (1 << PC7).
  • REKLAMA
  • #3 9197786
    KubeqZ
    Poziom 16  
    a nie powinno byc #define LED2_PIN (1<<PC7) ?
  • #4 9197799
    adi84_84
    Poziom 14  
    Dzięki.3 godz nad tym siedziałem i sie nie dopatrzyłem ;)
    Temat zamykam
REKLAMA