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 lip 2025, o 21:09


    Strefa czasowa: UTC + 1





    Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 7 ] 
    Autor Wiadomość
    PostNapisane: 14 sty 2015, o 11:30 
    Offline
    Użytkownik

    Dołączył(a): 12 mar 2014
    Posty: 266
    Lokalizacja: Warszawa
    Zbananowany użytkownik

    Pomógł: 2

    Witam

    Zaczynam zabawę z MkBootloader. Ogólnie wszystko już mi działa jak należy, tylko po załadowaniu programu przez bootloader program nie wstaje. Trzeba procek zresetować przyciskiem. Co może być przyczyną?

    I druga sprawa którą "zaleczyłem", ale wymaga poprawy, to program MkBootloader w wersji 2.0.0 build 4. Niestety nie działa BLS stworzony w tej wersji dla ATMEGA328P. Może przyczyną jest brak opcji 7. Watchdog aktywny po resecie ? W starszej wersji 1.0.0 build 5 jest ta opcja i po jej zaznaczeniu BLS działa bez problemu. Można ładować zarówno ze starej wersji (idzie wolno) jak również z nowej (z turbodoładowaniem).

    I trzecia sprawa. Chciałem przekopiować kod z zakładki Reset proc, ale niestety nie kopiuje się to do schowka. Musiałem ręcznie przepisywać.

    _________________
    Wysłane z Nokii 3310



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 sty 2015, o 12:57 
    Offline
    Użytkownik
    Avatar użytkownika

    Dołączył(a): 20 sie 2013
    Posty: 795
    Lokalizacja: Poznań
    Pomógł: 59

    Widząc Atmega328P tak popularną w arduino i MkBootloader to nic tylko Mirekduino mi przychodzi do głowy.



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 sty 2015, o 13:31 
    Offline
    Użytkownik

    Dołączył(a): 12 mar 2014
    Posty: 266
    Lokalizacja: Warszawa
    Zbananowany użytkownik

    Pomógł: 2

    Możesz jaśniej?

    Po dalszych próbach dochodzę do wniosku, że pierwszy problem jest związany z brakiem wyłączenia Watchdoga po resecie. Niestety program jest napisany właśnie w ARDUINO. A kod ze strony http://atnel.pl/mkbootloader.html nie kompiluje się pod arduino. Umieściłem więc jedynie


    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Na samym początku funkcji void setup() i tu pewnie jest problem, bo może zostaje przekroczony czas?

    Zmieniłem softwarowy reset na.
    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.
    bawiłem się czasami aż do 8S, ale to nie pomaga.

    Jak prawidłowo wyłączyć watchdoga w Arduino?

    ------------------------ [ Dodano po: 51 minutach ]

    OK, problem nr 1 rozwiązałem tak.

    Na początku funkcji void setup() zostawiłem jedynie wpis

    Składnia: [ Pobierz ] [ Ukryj ]
    język c
    Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


    Pozostałe 2 linijki skasowałem i wygląda na to, że wszystko działa. W układzie docelowym zamontuję Bluetooth HC-06 i poprawki w sofcie, oraz aplikowanie nowych fukcjonalności będę mógł wkońcu robić bez rozkręcania obudowy. :D

    _________________
    Wysłane z Nokii 3310



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 sty 2015, o 14:35 
    Offline
    Moderator
    Avatar użytkownika

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

    Właśnie aż wziąłem ATmega328P .... wgrałem BLS za pomocą MkBootloader 2.0.0 build 4, i WSZYSTKO ŚLICZNIE ŚMIGA GRA I BUCZY

    nie ma ŻADNEGO znaczenia w czym piszesz wsad, czy w Bascomie, czy w asemblerze, czy w C czy w Arduino ...... to KOMPLETNIE nieistotne

    jeśli po załadowaniu program nie startuje to oznacza TYLKO jedno zrobiłeś babola. BLS wygenerowany przez MkBootloader spokojnie dba o wyłączenie watchdoga pomimo że nie ma już ptaszka ! absolutnie to nie jest problemem

    problem może być że to TWÓJ wsad nie wyłącza watchdoga po starcie bo BLS zwraca sterowanie do WSADU RESTARTUJĄC w pełni procka i nie pozostawia po sobie śladów żadnych - więc jak mówię to ty musisz zadbać o watchdoga w prockach typu m88/168/328 itp

    ------------------------ [ Dodano po: 1 minucie ]

    Radziu napisał(a):
    Na samym początku funkcji void setup() i tu pewnie jest problem, bo może zostaje przekroczony czas?

    oczywiście że to może być problem bo to się robi w sekcji INIT jeśli chodzi o język C .... a jak to robi Arduino ? - nie mam zielonego ani czerwonego pojęcia. Może warto zacząć jednak uczyć się programować w C ? ;)

    _________________
    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: 14 sty 2015, o 14:58 
    Offline
    Użytkownik

    Dołączył(a): 12 mar 2014
    Posty: 266
    Lokalizacja: Warszawa
    Zbananowany użytkownik

    Pomógł: 2

    Mirku, uczę się w C i to z BlueBooka ;) , jednak ten program napisałem już ARDUINO ponad rok temu i nieustannie go wzbogacam, raczej nie chciałbym go pisać od początku w C, tym bardziej że jeszcze za słabo znam C, żeby ogarnąć wszystkie funkcje jakie napisałem w Arduino.

    Tak jak napisałem - już wszystko działa jak należy.

    Pozostaje tylko problem trzeci nie da się kopiować kodu z zakładki reset proc w MkBootloader.

    _________________
    Wysłane z Nokii 3310



    Góra
     Zobacz profil  
    cytowanie selektywne  Cytuj  
    PostNapisane: 14 sty 2015, o 16:28 
    Offline
    Moderator
    Avatar użytkownika

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

    Radziu napisał(a):
    Pozostaje tylko problem trzeci nie da się kopiować kodu z zakładki reset proc w MkBootloader.

    ok - nad tym jeszcze popracujemy ;)

    _________________
    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: 17 lut 2017, o 12:53 
    Offline
    Nowy

    Dołączył(a): 23 mar 2013
    Posty: 11
    Pomógł: 0

    Witam serdecznie. Podepnę się trochę pod temat, być może ktoś się jeszcze odezwie.

    Mam podobny problem z również z procesorem atmega328p. Postanowilem uruchomić stary projekt na tej płytce który wcześniej działał na arduino.
    Generuję wsad bootloadera najnowszym programem v2.0.0 build11 i wszystko ładnie gra. Fuse bity ustawione:
    Obrazek

    Problem zaczyna się gdy chcę wgrać cokolwiek do procesora. Zacząłem oczywiście od prostego programu, który wygląda tak:
    Kod:
    #include <avr/io.h>
    #include <util/delay.h>
    #include <avr/wdt.h>

    int main(void){
       wdt_disable();

       DDRD |= (1<<PD1);
       PORTD &= ~(1<<PD1);

       while(1){
          PORTD ^= (1<<PD1);
          _delay_ms(1000);
       }
    }


    Program waży 180B i dla pewności wyłączam w nim bootloader. Niestety pomimo wgrania programu procesor nie wstaje a na port UART wysyła cały czas "?". Zauważyłem, że jeżeli wgram większy program to procesor startuje ale zaczynają się dziać dziwne rzeczy z programem, Uart przestaje działać albo nie wysyła prawidłowo znaków.

    Pomyślałem, że skoro bootloader jest osobnym "programem" to wylaczenie opcji "Boot reset vector" w mkavrbootloader powinno ominąć sekcję bootloadera i włączyć mój prosty program, niestety na UART dalej wysylane są znaki zapytania a program nie wstaje.

    Generalnie nie ma znaczenia czy wygeneruję program z "plików źródłowych" czy z zakładek, zachowanie jest cały czas identyczne.

    Co robić, jaka może być przyczyna takiego zachowania?



    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: 7 ] 

    Strefa czasowa: UTC + 1


    Kto przegląda forum

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


    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:  
    cron
    Sitemap
    Technologię dostarcza phpBB® Forum Software © phpBB Group phpBB3.PL
    phpBB SEO