Kanał - ATNEL tech-forum
Wszystkie działy
Najnowsze wątki

KURS HOME ASSISTANT

Chcesz zautomatyzować swój dom bez skomplikowanego kodowania?
Zastanawiasz się nad wyborem sprzętu, oprogramowania i aplikacji?
Od czego zacząć przygodę z HA? Co będzie najlepsze na start?

Nasz kurs Home Assistant nauczy Cię krok po kroku, jak łatwo zautomatyzować swój dom i oszczędzić na rachunkach za prąd i ogrzewanie. Bez chmur, bez zbędnych abonamentów. Twoja przygoda z Home Assistant zaczyna się tutaj!

↓↓↓

    Szanujemy Twoją prywatność. Możesz wypisać się w dowolnym momencie.




    Teraz jest 17 cze 2025, o 13:39


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 
    Autor Wiadomość
    PostNapisane: 24 mar 2012, o 23:23 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 mar 2012
    Posty: 72
    Pomógł: 5

    Witam serdecznie!

    Na wstępie chciałbym powiedzieć ,że korzystam z ATB rev 1.03 i w oparciu o książkę "mikrokontrolery AVR, Język C Podstawy programowania" doszedłem do przykładu 3 czyli multipleksowanie.

    W płytce testowej posiadam Atmega 644p i nie wiem dlaczego ale wyskakują mi błędy podczas próby wgrania wsadu do mikrokontrolera. Sporo szukałem na ten temat i owszem sporo znalazłem ale żaden wątek nie rozwiązał mojego problemu. A więc do rzeczy:

    Korzystam ze środowiska AVR STUDIO. Cały wsad jest skopiowany z dołączonej do książki płyty. Jest on przygotowany pod środowisko eclipse więc musiałem go skopiować ręcznie. Cały wsad składa sie z main.c , d_led.c i d_led.h . Przekopiowując wsad do avr studio tworzyłem nowe pliki poprzez klikniecie prawym klawiszem na "source files"/"create new source file.." nadawałem nazwe z rozszerzeniem .c i wklajelem odpowiednia czesc wsadu. Analogicznie postapilem z d_led.h. z tym ze prawym klawiszem klikalem na "header Files" i plik byl z rozszrzeniem .h.

    Nastepna rzeczą jaką musiałem zmienić było ustawienie timera. Zrobiłem to tak:
    Kod:
       // ustawienie TIMER0
       TCCR0A |= (1<<WGM01);    //tryb ctc       

       TCCR0B |= (1<<CS02);     //preskaler 1024
       TCCR0B |= (1<<CS00);        
       
       OCR0A = 39;                //dodatkowy podzial przez 39             
       
       TIMSK0 |= (1<<OCIE0A);   //zezwolenie na przerwanie COMPARE MATCH


    Kolejna niewielka zmiana w kodzie czyli zmiana nazwy przerwania:

    Kod:
    ISR(TIMER0_COMPA_vect)


    Moje pytanie: Czy opisane przeze mnie zmiany, zostały wykonane prawidłowo? Powinno to działać? ( zakladam ze tak bo wkoncu wyswietlacz pokazuje to co chce)

    Przy wgrywaniu wsadu dotyczacego diody led i microswitchow nie było najmniejszego problemu, wszystko odbywało się prawidłowo. Przed wgraniem wsadu odnosnie multipleksowania mikrokontroler laczyl sie bezproblemowo z mkavrcalculator ale kiedy wsad zostal juz wgrany to ( po ktorejs probie z kolei) wyswietlacz sie odezwal i faktycznie wyswietla takie cyfry jak powinien ale wgrywaniu wsadu towarzyszyla mrugajaca czerwona dioda led na plytce testowej.

    Wyswietlacz wciaz wyswietla cyfry takie jakie powinien ale teraz przy probie klikniecia przycisku "sprawdz podlaczony avr" wyskakuje mi taki blad AVR DUDE.


    "avrdude.exe: BitBang OK
    avrdude.exe: pin assign miso 3 sck 5 mosi 6 reset 7
    ft245r_drain called but queue is not empty 1
    avrdude.exe: drain OK

    ft245r: bitclk 4800 -> ft baud 2400
    avrdude.exe: ft245r_program_enable: failed
    avrdude.exe: initialization failed, rc=-1
    avrdude.exe: AVR device initialized and ready to accept instructions

    Reading | ################################################## | 100% 0.00s

    avrdude.exe: Device signature = 0x0f4b05
    avrdude.exe: Expected signature for ATMEGA8 is 1E 93 07
    avrdude.exe: reading signature memory:

    Reading | ################################################## | 100% 0.00s

    avrdude.exe: writing output file "C:\Documents and Settings\Intel\Moje dokumenty\mkAVRCalculator\sig_tmp.hex"

    avrdude.exe: safemode: Fuses OK

    avrdude.exe done. Thank you."





    Natomiast kiedy probuje wykonac kasowanie pamieci flasch badz przy odczytywaniu/zapisywaniu fusow wyskakuje mi taki blad AVR DUDE

    "avrdude: BitBang OK
    avrdude: pin assign miso 3 sck 5 mosi 6 reset 7
    ft245r_drain called but queue is not empty 1
    avrdude: drain OK

    ft245r: bitclk 230400 -> ft baud 115200
    avrdude: ft245r_program_enable: failed
    avrdude: initialization failed, rc=-1
    Double check connections and try again, or use -F to override
    this check.


    avrdude done. Thank you."


    Nie potrafie poradzic sobie z tym problemem i bardzo prosze o pomoc, podpowiedz co robie nie tak.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 24 mar 2012, o 23:33 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 14 lut 2012
    Posty: 598
    Lokalizacja: Warszawa
    Pomógł: 13

    banita 17 napisał(a):
    Witam serdecznie!

    Reading | ################################################## | 100% 0.00s

    avrdude.exe: Device signature = 0x0f4b05
    avrdude.exe: Expected signature for ATMEGA8 is 1E 93 07
    avrdude.exe: reading signature memory:

    Reading | ################################################## | 100% 0.00s



    Według to twój problem masz zaznaczony na czerwono



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 24 mar 2012, o 23:43 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    Malutki_27 napisał(a):
    Według to twój problem masz zaznaczony na czerwono


    To nie żaden problem to standardowe zachowanie MkAvrCalculator.

    Ale teraz do autora, proponowałbym skupić się na jednym, bo jak się zdaje opisałeś kilka problemów w jednym i ciężko coś poradzić. A już na pewno nie powinno mieć nic wspólnego to że programator nie działa z robieniem ćwiczenia o multipleksowaniu.

    Zakładając jednak (o ile się nie mylę) że teraz w ogóle nie możesz programować to skupmy się na tym:

    na początek odpowiedz mi jeszcze na kilka pytań:

    1. jakiej wersji AVR Studio używasz ?
    2. dlaczego nie korzystasz z Eclipse ?

    3. czy masz dobrze podpięte kabelki programatora w zestawie ATB zgodnie z rysunkiem:

    http://sklep.atnel.pl/pl/i/Programator-w-ATB/6

    4. czy zmieniałeś Fusebity ?

    aha - jeśli korzystałeś z PORTD dla obsługi wysw. LED - w tym pinów PD0 i PD1 to czy rozłączyłeś zworki TXD oraz RXD ??? bo przecież na tych pinach masz podpięty RS232 od przejściówki USB/RS232 na FT232R

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 mar 2012, o 00:22 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 24 mar 2012
    Posty: 72
    Pomógł: 5

    Przepraszam za swój post, faktycznie jest on bardzo rozbudowany i mało czytelny. Następnym razem będę starał się pisać bardziej przejrzyście.

    Owszem korzystałem z PORTUD. Zmieniłem na PORTA i wszystko działa jak należy.Mimo to odpowiem na pytania:


    1. Korzystam z AVR STUDIO 4. Instalowałem tą wersję która była na płycie DVD. Jako nowicjusz bałem się na początku wybrać coś innego, a i choćby nowszej wersji, żeby się nie pogubić.

    2. Ten sam powód co w odpowiedzi nr 1.

    3. Kabelki sprawdzałem kilka razy, nawet je zmieniałem na inne.

    4. Fusy przestawiałem ale tylko w fusach uproszczonych korzystając z mkavrcalculator czyli 'jtag' wylaczony, "zewnetrzny podzial zegara przez 8" wylaczony i taktowanie wewnetrznym oscylatorem 8mhz.



    Bardzo dziękuję za tak błyskawiczne odpowiedzi, rozwiązany problem i poświęcony mi czas. Rozumiem już swój błąd. Lekcja na przyszłość co może być nie tak, gdzie szukać. Jeszcze raz dziękuję i Pozdrawiam.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 25 mar 2012, o 09:26 
    Offline
    Moderator
    Avatar użytkownika

    Dołączył(a): 03 paź 2011
    Posty: 27409
    Lokalizacja: Szczecin
    Pomógł: 1043

    Wszystko dobrze ładnie ;) ale .....

    mam gorącą prośbę. Proszę zostawić obawy nowicjusza i uwierzyć mi chociaż odrobinkę. Nie po to włożyłem aż tyle wysiłku w przygotowanie filmów/lekcji VIDEO, które pozwalają właśnie każdemu TAKŻE nowicjuszowi jak najszybciej korzystać z tak profesjonalnego środowiska jak ECLIPSE. Mało tego na płycie DVD dodałem już preinstalowane wersje Eclipsa. Nic tylko obejrzeć pierwszą i kilka kolejnych lekcji VIDEO z DVD i od razu przejść na ECLIPSE. Gwarantuję, że później ciężko będzie się od niego oderwać.

    I tak dobrze, że kolega nie przeszedł na najnowsze SKOPANE wersje AVR Studio 5 albo 6 .... Już gdzieś na forum nawet napisałem, że jak ktoś będzie działał w tych wersjach to przykro mi ale nie może liczyć na moją pomoc, ponieważ wiele osób nie chce słuchać mojej porady a później w kółko rozwiązywanie tych samych problemów czyli jak obejść BABOLE w AVRS 5/6 aby na końcu uznać dlaczego warto zmienić to na Eclipse, CodeBlocks czy nawet AVRS4

    proszę czytać czasem mojego bloga:

    http://mirekk36.blogspot.com/2011/11/dl ... tudio.html

    proszę też popytać na tym forum ilu już ludzi się przekonało do Eclipsa po tym jak dzięki książce i lekcjom z DVD można w nim błyskawicznie wystartować

    ---------------------------------------

    a wracając do rozwiązania problemu we własnym zakresie ze zmianą nazw rejestrów, bitów w rejestrach i wektorów przerwań dla ATmega644PA to oczywiście gratuluję ;) bo przecież wszystko działa ... tak się właśnie przerabia kody dla innych procesorów. Oczywiście w kolejnych ćwiczeniach może być coraz więcej takich przeróbek koniecznych no ale każdy kod da radę spokojnie przerobić z m32 na m644p ;)

    i jeszcze raz proszę o jak najszybsze przejście na Eclipse

    _________________
    zapraszam na blog: http://www.mirekk36.blogspot.com (mój nick Skype: mirekk36 ) [ obejrzyj Kurs EAGLE ] [ mój kanał YT TV www.youtube.com/mirekk36 ]



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    Wyświetl posty nie starsze niż:  Sortuj wg  
    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 5 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

    Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 5 gości


    Nie możesz rozpoczynać nowych wątków
    Nie możesz odpowiadać w wątkach
    Nie możesz edytować swoich postów
    Nie możesz usuwać swoich postów
    Nie możesz dodawać załączników

    Szukaj:
    Skocz do:  
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO