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



Teraz jest 29 kwi 2026, o 20:10


Strefa czasowa: UTC + 1





Utwórz nowy wątek Odpowiedz w wątku  [ Posty: 26 ] 
Autor Wiadomość
PostNapisane: 14 paź 2015, o 15:57 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Witam od jakiegoś czasu buduję pewien układ sterowania. Jako mikro-kontroler wykorzystałem AtMege16.Gdzy cały program sterowania był już gotowy postanowiłem dograć mu jeszcze możliwość ładowania wsadu przez MkBootloader. Jako że układ ma komunikację po RS485 ze światem zewnętrznym to przerobiłem plik w wiadomym miejscu w boodloaderze aby działał mi po Rs485. Wszystkie próby zakończyły się pomyślnie.
Po jakimś czasie chciałem rozbudować układ sterowania o nowe funkcjonalności i jako że Atmega16 okazała się pamięciowo za mała wykonałem kopię układu sterowania opierając projekt na Atmedze328p. Dokonałem zmian pinów,rejestrów itp w programie sterującym. Układ działał poprawnie jak stary tylko że miałem teraz więcej pamięci.

Przyszła pora na wgranie programu boodloadera wykonałem kopie tego przerobionego pod działanie na Rs485 zmieniając jedynie typ procesora i to co trzeba było z konfiguracji. Tutaj zaczęły się problemy z którymi nie mogę sobie poradzić.
Fuse bity wyglądają tak:

Obrazek

Po podłączeniu zasilania układ wysyła mi do terminala znaki ????? ale zdecydowanie ze zbyt wielką częstotliwością zarzucając w parę sekund całą stronę. Posyłając znaki ui czasem ale rzadko udaje się uzyskać odpowiedz z układu ale te nadlatujące ? zaśmiecają komunikację

Obrazek

Oryginalny program też czasami wyłapie odpowiedz ale 1 na 10 razy

Obrazek

Wgrać wsadu się nie udaje wcale.

Obrazek

Po odremontowaniu linii z pliku jak na zdjęciu udaje się ograniczyć ilość znaków ? i spowolnić ich wysyłanie.

Obrazek

Efekt jest taki że terminal dostaje odpowiedzi z układu.Ale jak widać na zdjęciu po posłaniu u oraz i przed odesłaniem sygnatury układu wtrąca się zawsze jeden ? tak samo jest po posłaniu literki w myślę że to może zakłóca prace programu Bootloadera.

Obrazek

Oryginalny program bootloadera też identyfikuje procesor ale wsadu wgrać nie idzie.


Wnioski:
1.Mam dwa identyczne układy sprzętowo i dostosowane oprogramowania pod odpowiednie procesory.
2.Program sterujący działa prawidłowo na jednym i na drugim korzystając z komunikacji po RS485 inne funkcje układów też działają poprawnie.

3.Nie działa mi bootloader w układzie z procesorem AtMega328p. Częstotliwość wysyłania znaku ? jest niepokojąco wysoka.Tak jak by źle wyliczały się czasy na podstawie rezonatora.

Może mi ktoś coś podpowie...

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 16:29 
Offline
Użytkownik
Avatar użytkownika

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

Wiesz co - ja mam wgrany mirkowy bootoader to ponad 20 płytek Arduino pro mini (atmega 328p), lekko zmodyfikowany pod rs485 i wszystko działa. Mam wprawdzie 16MHz i 18,432MHz.

Ja miałem problem z tym, że moje sn75176 potrzebowały chwili z przełączaniem rx< - >tx i dołożenie delay_ms(2) pomogło.
Składnia: [ Pobierz ] [ Ukryj ]
język c
Musisz się zalogować, aby zobaczyć kod źródłowy. Tylko zalogowani użytkownicy mogą widzieć kod.


Pomyśl również żeby każdy układ resetowała inna komenda, np. $numer_układu# ($01#)



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 16:44 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Robię połączenie 1 do 1 testy takie i mam takie problemy więc nie mam problemu z resetowaniem.Ta częstotliwość odsyłania tego znaku ? mnie nie pokoi co pisałem wyżej.Pomimo zastosowania identycznych rezonatorów 11059MHz. Poza tym program ten sterujący steruje prawidłowo wszystkie czasy zachowane. Dopiero ten program samego bootloadera mi szalej.

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 17:37 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

TomekTomek55 napisał(a):
Nie działa mi bootloader w układzie z procesorem AtMega328p. Częstotliwość wysyłania znaku ? jest niepokojąco wysoka.Tak jak by źle wyliczały się czasy na podstawie rezonatora.
A plik bootloadera wygenerowałeś na nowo i zmieniłeś pod RS485, bo jest różnica i dla nowszych procesorów jest dodatkowa funkcja wyłączająca watchdoga.

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 18:18 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Coś jaśniej napisz bo nie kumam co za funkcja. No po zmianach w pliku bootladera kompiluje pliki i potem wgrywam.jak możesz to prześlij mi na priva tą funkcje jak nie chcesz tutaj rozpowszechniać. To może być to bo pod AtMegą 16 działa ok wszystko.

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 18:33 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

Krauser napisał(a):
dla nowszych procesorów jest dodatkowa funkcja wyłączająca watchdoga.


W zakladkch zobacz linie w ktorej jest napisanie

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


tam jest funkcja odpowiedzialna za wylaczenie extended watchdog - tylko nie wiem czy to jest przypadek w m328p - wiem z autopsji ze jest w przypadku m88p

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 18:44 
Offline
Użytkownik
Avatar użytkownika

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

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



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 18:47 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Mam tak w zakładce:

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


Myśle że to jest ok nie jest zaremowane

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 18:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

a zrob sobie na gorze

#define WDIF

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 18:58 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Nic to nie daje ani wstawienie tej nini jakie pierwszej sugerowane ani tej drugiej

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


Procesor ciągle ze zbyt wielką częstotliwością wysyła znak ?.

_________________
http://mojekonstrukcje.pl/



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

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

Mialem juz to samo z bledem BLS - czy na pewno kompilujesz majac wybrane pliki w zakladkach i czy napewno tam dobrze zmodyfikowales procesor , BLS adres i baudrate ?

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 19:15 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

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

_________________
http://mojekonstrukcje.pl/



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

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

TomekTomek55 napisał(a):
BLS_START = 0x3E00

to jest dla m328 ? tak ?

_________________
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 paź 2015, o 19:30 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Obrazek

------------------------ [ Dodano po: 5 minutach ]

No Panie Mirku dałem 3E00 bo miało być więcej niż 256 słów nie mniej a jak odczytam możliwości wyboru dla mojego procesora to dostaje że dla 3E00 mam 512 słów a że nie mam tam sugerowanego 7E00 to uznałem że więcej niż 256 będzie OK

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 19:44 
Offline
Uzytkownik zasłużony dla forum.atnel.pl
Avatar użytkownika

Dołączył(a): 16 lip 2012
Posty: 2088
Lokalizacja: Leżajsk / Kraków
Pomógł: 411

We fusebitach podawane jest w słowach, a BLS_START podaje się w bajtach
http://www.atnel.pl/mkbootloader.html

_________________
Dragonus Cracovus: Biomagia



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 20:28 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

To gdy mam BLS_START=7E00 to w opcjach procesora jaki mam wybrać adres w Mkavrkalkulatorze ?

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 20:32 
Offline
Moderator
Avatar użytkownika

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

TomekTomek55 napisał(a):
To gdy mam BLS_START=7E00 to w opcjach procesora jaki mam wybrać adres w Mkavrkalkulatorze ?

sorki ale takie pytania mnie troszkę załamują .... Powiedz pan czy chociaż RAZ, przynajmniej JEDEN RAZ zajrzałeś do instrukcji programu na stronie producenta?
http://atnel.pl/mkbootloader.html

gdzie masz to wyłożone jak .... eeeeh szkoda jakby gadać

------------------------ [ Dodano po: kilkunastu sekundach ]

pokazane nawet z obliczaniem na kalkulatorze

_________________
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 paź 2015, o 20:43 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Pewnie że zajrzałem ale widać czegoś nie skumałem i obejrzę jeszcze raz. A pisze tutaj bo podobno to forum jest bardzo miłe i zawsze koledzy pomogą. :)
A jak wszystko idzie dobrze i po naszej myśli to nie ma głupich pytań. Gorzej jest jak wydaje nam się że robimy dobrze a jednak nie działa. No to co się dziwić że pytamy wprost.

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 20:46 
Offline
Moderator
Avatar użytkownika

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

TomekTomek55 napisał(a):
A pisze tutaj bo podobno to forum jest bardzo miłe i zawsze koledzy pomogą.

Pewnie, że pomogą - nawet ci link podałem - weź tam lepiej zajrzyj i sprawdź i przeczytaj najpierw a później pisz i ew pytaj dalej ok ?

_________________
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 paź 2015, o 21:06 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Ok mam ale niestety nie działa procesor czały czas drukuje ? z duża prędkością

Obrazek

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 21:49 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

Co to znaczy procesor drukuje z dużą prędkością ?

Sent from my GT-I9506 using Tapatalk

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 22:01 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

To że zamiast drukować wysyłać jeden znak ? na sekundę to mi drukuje w sekundzie w terminalu na oko tak szacunkowo z 50 takich znaków. Pisałem o tym na wstępie

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 14 paź 2015, o 22:25 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

Ok Tomek ,

Wydaje mi sie ,ze zle rozumiesz dzialanie bootloadera. Mam nadzieje , ze rzuciles okiem na strone producenta :) bo tam jest opisane i dodatkowo masz nawet filmiki. Ale zeby nie odsylac Cie golo slownie - ten znak jest drukowany w regularnych odstepach np PRZEZ 3-5 sekund ( w zaleznosci ile ustawisz ) wiec o ile nie zmieniales delay dla wyswietlania tego znaku to raczej bedzie drukowac z duza predkoscia :D

Gdyby cos bylo dalej nie jasne to powiedz w ktorym miejscu instrukcja jest nie jasna to postaramy Ci sie przyblizyc temat :)

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 paź 2015, o 05:10 
Offline
Użytkownik

Dołączył(a): 02 cze 2014
Posty: 123
Pomógł: 0

Ale ten uklad co mam jest identyczny jaki mialem zbudowany na Atmedze16 i tam bootloader uruchomilem i dziala.Natomias problem pojawia sie przy tym nowym procesorze. Atmega328p. Przez 3 do 5 sekund ale jak masz wgranywgrany juz program wlasciwy a nie tylko bootloader co pisalem wczesniej.

------------------------ [ Dodano po: 39 minutach ]

Chyba mylisz tez dwa czsy czas wysylania tego znaku z odste.pami czasu w jakich jest on wysylany.Ja pisalem o duzej predkosci wysylania mialem na mysli duza ilosc znakow w krotkim czasie.

_________________
http://mojekonstrukcje.pl/



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 15 paź 2015, o 08:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 12 maja 2014
Posty: 1089
Pomógł: 34

Tomek ,

Bo dyskusja schodzi na temat abstrakcyjny szybkosci wysylania znaku "?" :O Jesli mozesz zeby bylo jasne dla wszystkich czy mozesz zrobic screeny jak generujesz bootloader krok po kroku ? Abys nie pomyslal , ze chcemy Ci utrudnbic zycie to jesli uzyjesz wbudowanego w windos narzedzia screeny zrobia sie za Ciebie :) http://windows.microsoft.com/pl-pl/windows7/how-do-i-use-problem-steps-recorder

Daj znac

_________________
sig off ;(



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 16 paź 2015, o 17:05 
Offline
Użytkownik
Avatar użytkownika

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

Tak, jak pisałem Ci Tomku w PW,po wgraniu bootloadera należy coś wstrzyknąć do procesora - inaczej może świrować.



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

Strefa czasowa: UTC + 1


Kto przegląda forum

Użytkownicy przeglądający ten dział: Brak zidentyfikowanych użytkowników i 22 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