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

program + schemat, jaki??

20rafalo 10 Lip 2009 23:21 1026 3
REKLAMA
  • #1 6764396
    20rafalo
    Poziom 19  
    Witam
    Jestem początkującym, to muj drugi program, jednak żadnego jeszcze nie uruchomiłem fizyczie. Działam na atinie 2313.
    mój program to:
    #include <avr/io.h>
    #include <avr/delay.h>
    
    int main(void)
    
    {
    DDRD=0x7c;
    for(;;)
    	{
    	PORTD=0x7c;
    	
    	_delay_loop_2(0xffff);
    	PORTD=0;
    	_delay_loop_2(0xffff);
    	
    	}
    	return 0;
    }
    


    Jaki do tego najprostszy schemat??
    Próbowałem samo zasilanie + dioda i rezystor(0,5k) na port PD1-PD5 i nic :-(
    Diodę odwracałem minusem do masy i odwrotnie, potem do plusa itd. Nic :-(
    Dodam, że nie zauważyłem poboru prądu na wskazówce analogowej zasilacza (50mA zauważam :-))
    Z góry dziękuję

    Proszę umieszczać listingi programów w znacznikach "Code". [c_p]
  • REKLAMA
  • #2 6764491
    ksarim
    Poziom 15  
    Z tego co widzę ustawiasz piny PD6, PD5, PD4, PD3, PD2 na wyjścia a potem na te wyjścia dajesz stan wysoki.

    Zacznijmy od początku. Ustaw wszystkie piny portu D jako wyjścia i podaj na nie 0.
    #include <avr/io.h>
    #include <avr/delay.h>
    
    int main(void)
    {
    DDRD=0xFF;
    PORTD=0x00;
    while(1)
    {
    }
    return 0;
    }

    Następnie spróbuj sprawdzić ten kod. Do katody diody LED(krótsza nóżka) przylutuj jedną nóżkę rezystora. Następnie podłącz anodę diody (nóżka dłuższa) do +5V a drugą nóżkę rezystora podaj na któryś z pinów portu D. Jeżeli masz dobrze podłączone zasilanie do uC to wydaje mi się, że to powinno działać ale skoro udaje Ci się programować uC to z zasilaniem jest wszystko ok.
  • REKLAMA
  • #3 6769364
    20rafalo
    Poziom 19  
    Udało mi się rozwiązać problem - pokazuję kod dla początkujących, którzy chcą uruchomić swój pierwszy program -"mrugająca dioda" - mrugają diody na porcie PD0, PD1 bez mrugania.
    W kursach, a przede wszystkim w książkach jest wiele niedociągnięć i dziwne postępowanie autora (pomijanie drobnych kroków- które są bardzo ważne na początku), których początkujący nie jest w stanie wyeliminować - szybko się zniechęcając.



    #include <avr/io.h>
    #include <avr/delay.h>
    
    int main(void)
    
    {
    DDRD=0xff;
    for(; ; )      
    	{
    	PORTD=0x00;
    	
    	_delay_loop_2(0xffff);
    	PORTD=1;
    	_delay_loop_2(0xffff);
    	
    	}
    	return 0;
    }
    


    Bez pomocy kolegów z tego forum nie dał bym rady skonfigurować środowiska, a tym bardziej uruchomić działającego programu.

    Do moderatora - nie umiem umieszczać kodu programu ja w/w
  • #4 6770001
    Brutus_gsm
    Poziom 25  
    20rafalo napisał:
    Do moderatora - nie umiem umieszczać kodu programu ja w/w
    To żadna wymówka ;) Dodajesz tagi CODE i już masz ładnie wklejony kod programu ;) Jak piszesz odpowiedź, to zaznaczasz dany tekst i klikasz u góry button "Code".
REKLAMA