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



Teraz jest 28 mar 2024, o 08:58


Strefa czasowa: UTC + 1





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

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

Witam wszystkich.
Bawię się analizatorem logicznym i oglądając transmisję ISP programator USBASP vs uC zauważyłem rozbieżności parametru -B vs częstotliwość SCK w tym co jest w AvrCalcu a rzeczywistością.
W kalkulatorze jest taka zależność -B vs Hz
0.5 - 1 = 1,5 MHz (faktycznie wysyłany parametr do avrduda to -B 0.5)
1.0 - 2.0 = 750 kHz (faktycznie wysyłany parametr do avrduda to -B 2)
2.0 - 4.0 = 375 kHz (faktycznie wysyłany parametr do avrduda to -B 4)
4.0 - 8.0 = 187,5 kHz (faktycznie wysyłany parametr do avrduda to -B 8)
8.0 - 20.96 = 93,75 kHz (faktycznie wysyłany parametr do avrduda to -B 20)
20.96 - 46.88 = 32 kHz (faktycznie wysyłany parametr do avrduda to -B 46)
46.88 - 93.75 = 16 kHz (faktycznie wysyłany parametr do avrduda to -B 93)
93.75 - 187.5 = 8 kHz (faktycznie wysyłany parametr do avrduda to -B 187)
187.5 - 375 = 4 kHz (faktycznie wysyłany parametr do avrduda to -B 375)
375 - 750 = 2 kHz (faktycznie wysyłany parametr to do avrduda -B 750)
750 - 1500 = 1 kHz (faktycznie wysyłany parametr to do avrduda -B 1500)
więcej niż 1500 = 500 Hz (faktycznie wysyłany parametr do avrduda to -B 2000)

A to są wyniki pomiarów:
0.1 - 0.6 = 1,5 MHz
0.7 - 1.3 = 750 kHz
1.4 - 2.6 = 375 kHz
2.7 - 5.3 = 187,5 kHz
5.4 - 10.6 = 93,75 kHz
10.7 - 62.5 = 10kHz
62.6 - 125 = 5 kHz
126 - 250 = 3,5 kHz
251 - 500 = 1,9 kHz
501 - 1001 = 960 Hz
1002 - 2004 = 480 Hz
Programator USBASP przy braku parametru -B ustawia domyślną prędkość 375 kHz(wynika to z jego oprogramowania). Taka też wartość jest ustawiana gdy parametr -B będzie większy niż 2004 (choć nie znam natury działania parametru przekraczającego wartość 2004 - czy jest on poprostu if>2004 czy też wynika z wielkości cyfry, która nie mieści się w max zakresie i jest w jakiś sposób obcinana).
Oczywiście pomiary mogą być opatrzone błędami pomiarowymi ale już na pierwszy rzut oka widać że brak częstotliwości SCK = 32kHz i 16kHz; ale również górne wartości mają złe zakresy oraz zła wartość B jest wysyłana bo np ustawiając z list SCK 750 kHz wysyłany parametr -B ma wartość 2 więc częstotliwość jest ustawiana na 375 kHz.
Powyższe testy zostały przeprowadzone na 3 programatorach USBASP:
1- najnowszy Atnelowski v4.1
2 - Atnelsowski wersja poprzednia (nie mam pojęcia jakim numerkiem była sygnowana ale to ten z szerszym fioletowym laminatem)
3 - chiński klon USBASP na firmware z 2009r oraz 2011r (tak dla pewności sprawdziłem te dwa ostatnie firmware ze strony autora Thomasa Fischl)
Pomiary na wszystkich powyższych konfiguracjach praktycznie takie same.

Czy ktoś z grona forum miałby chwilę czasu i ochoty na potwierdzenie powyższych pomiarów - nie chciałbym Mirkowi zawracać głowy niepotwierdzonymi informacjami...



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 mar 2018, o 10:22 
Offline
Moderator
Avatar użytkownika

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

xentis napisał(a):
zauważyłem rozbieżności parametru -B vs częstotliwość SCK w tym co jest w AvrCalcu a rzeczywistością.

dopiero zauważyłem ten wątek a widząc brak odpowiedzi postanowiłem coś napisać ;)

Po pierwsze jakie to ma znaczenie czy te częstotliwości się zgadzają "jota w jotę" z opisem ? ;) To mnie najbardziej ciekawi co tutaj może być aż tak ciekawego ? ale pewnie może czegoś nie zrozumiałem i nie piszę tego broń Boże złośliwie tylko też z ciekawości

Ten opis granicznych częstotliwości który widać w MkAvrCalcu nawet nie pamiętam skąd wziąłem ;) ale wartości patrząc od góry od 1,5MHz do 93,75kHz to są one podane wręcz w źródłach USBASP ;) ... a reszta ? ... zabij mnie a nie pamiętam to był bodajże 2008 rok ;)

Jak sam wiesz USBASP DOMYŚLNIE nie startuje z najwyższym SCK dla ISP ? Wiesz dlaczego ? Niektórym może to się wydawać dziwne ... a bywają i tacy (nie piszę tu o tobie) ... którzy wietrzą w tym jakąś teorię spiskową - że to rzekomo MkAvrCalculator spowalnia :lol: ... piszę o tym bo spotkałem się już i z takimi wypowiedziami w necie :D

Otóż Thomas Fischl w wyniku porządnych testów już dawno zauważył, że przy maksymalnej prędkości SCK niektóre procki nie dają się zaprogramować niestety i nie mówię tu o fabrycznie taktowanych 1MHz tylko tych co już mają ustawiony nawet zewnętrzny i szybki stabilny kwarc

dlatego domyślną prędkość zmniejszył o dwa kroczki i bardzo słusznie ... jak ktoś chce to może sobie próbować włączyć większą

ja np często w Eclipse sobie wpisuję

-B 0.5

i WYŁĄCZAM weryfikację wsadu ;)

i jadę "bez trzymanki" :lol: ... czy to oznacza, że może pójść coś nie tak z programowaniem ? pewnie że może ale wtedy wywala się błąd albo warto wtedy zawsze włączyć przynajmniej weryfikację wsadu. Tak robię gdy testuję prototyp bo zależy mi na czasie.

ALE GDY mam już wgrać wsad końcowy do urządzenia to w ogóle nie podaję parametru -B i włączam weryfikację wsadu! ;)

I na koniec jakież może mieć znaczenie nawet poznawcze - to dlaczego te częstotliwości są nieco inne niż w opisach ? ;) USBASP tylko zdaje się (o ile dobrze pamiętam - mogę się teraz mylić) do 93kHz jedzie na sprzętowym SPI a dla wolniejszych prędkości włącza już programowe SPI ...

toż w tym podziale chodzi po prostu o jakieś stopniowe spowalnianie taktowania ISP a nie o to aby trzymać się jak nie wiadomo czego z góry wyznaczonych częstotliwości bo np tak zostało podane gdzieś w jakiejś TAJEMNICZEJ NOCIE PDF ;)

Ot autor USBASP tak sobie wymyślił takie spowalnianie clocka dla ISP i działa ono znakomicie - a że częstotliwości są nieco inne niż w opisie ;) ... nie wiem co to może mieć za znaczenie ? ;)

NAJBARDZIEJ istotne są trzy fakty.

1. DOMYŚLNIE prędkość SCK jest dwa oczka w dół od maksymalnej dla 100% pewności programowania

2. dla procków taktowanych 1MHz można sobie śmiało programowo zmniejszyć SCK za pomocą -B żeby się do nich dobrać i czochra nas to czy będzie to częstotliwość 93kHz czy 960Hz

3. dla procków w których ktoś ustawił przez pomyłkę taktowanie 128kHz i jeszcze zostawił CKDIV8 ! :lol: i później myślą że zablokowali procka - wystarczy ustawić -B z ostatnią wartością mniejszą niż 1kHz czyli OSTATNIE OCZKO dla -B czyli SCK ok 500 Hz i procek cudownie ożywa

a to czy po drodze jest np 10kHz zamiast 16kHz dla któregoś tam progu - to powiedz mi jakie to ma znaczenie ? no jakie - jeśli i tak jeśli już używa ktoś tych parametrów to schodzi albo o jedno oczko w dół na czuja i sprawdza czy już ruszy żeby dostać się do źle np ustawionych Fusów ;) bo przecież wsadu się nie wgrywa na tak wolnych prędkościach /....


No! chyba, że ktoś zrobił jakieś zasilanie bateryjne i rzeczywiście taktuje procka 128 kHz to czemu nie

I na koniec - już niejednokrotnie i nie w jednym poradniku wspominałem o tym, że w USBASP można stosować sobie (jak ja to nazwałem TURBO czyli tę maksymalną prędkość) Ba! ... nawet jest to wykorzystywane w sposób uproszczony w MkClipse ;)

Obrazek

widzisz ? i też domyślnie jest to opisane jako NORMAL ... a wyżej widać TURBO .... poniżej są jeszcze dwa spowalniacze pod które podłączyłem jakieś tam wartości -B .... a jaki jest sens podawania tu nawet częstotliwości dokładnej ? Ja nie widzę żadnej ale to żadnej potrzeby

ale jeśli taką widzisz to podaj proszę - bo jak mówię - ja też mogę czegoś nie wiedzieć

_________________
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: 29 mar 2018, o 18:30 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

Mirku, ja to wszystko rozumiem, i nie upieram się przy tym by częstotliwości były takie a nie inne. To co tu napisałem miałem nadzieję że ktoś z forumowiczów przeprowadzi testy by potwierdzić czy dobrze to pomierzyłem.
A chodziło mi bardziej o kwestię drugiej prędkości programowania (drugiej od góry w MkAvrCalculatorze). Po jej wybraniu wysyłana jest komenda -B 2 co według moich testów wybiera prędkość nr 3, a prędkość nr 2 wogule nie da rady wybrać (chyba że na dole zaznaczymy ptaka przy opcji -B i wpiszemy wartość z zakresy 0.7 - 1.3)
Poniżej tabelka - może wyjaśni więcej:
Obrazek
Chciałem to właśnie wysłać Ci na maila, ale po tym jak ktoś potwierdzi moje spostrzeżenia, byś przy okazji jakiejś aktualizacji MkAvrCalca ujął to w poprawkach, no chyba że ja coś źle rozumuję i totalnie pokręciłem :oops:



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 mar 2018, o 20:02 
Offline
Moderator
Avatar użytkownika

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

wiesz co i proszę nie pomyśl, że piszę to złośliwie czy coś ... nie nie - absolutnie nie złośliwie

ale problem wydaje mi się być tak błahy że po prostu szkoda czasu marnować na przeróbki programu

nie mniej jednak kiedyś z ciekawości spróbuję sprawdzić te częstotliwości - ale tylko sprawdzić bo nie wiedzę potrzeby zabawy zmian w tym co robi AVRDUDE - przecież to nie zależy w żadnej mierze od MkAvrCalculatora i dla programowania nie ma wg mnie żadnego znaczenia - tak mi się wydaje

jeżeli jednak uważasz, że to ma jakieś znaczenie to napisz proszę jakie - bo jak mówię - być może ja czegoś nie dostrzegam 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: 29 mar 2018, o 21:29 
Offline
Użytkownik
Avatar użytkownika

Dołączył(a): 23 paź 2014
Posty: 1020
Lokalizacja: Trójmiasto
Pomógł: 188

Mirku, nigdzie nie pisałem że jest to problem wagi "Państwowej"; raczej mały szczegół który może funkcjonalności nie ujmuje, ale skoro w programie jest wybór aż 12 kroków prędkości działania programatora, to fajnie by było aby każda pozycja reprezentowała sobą unikalną wartość prędkości, tymczasem na chwilę obecną kilka z pozycji pomimo że nazwane są inną wartością to są poprostu zdublowane i na chwilę obecną tak na prawdę jest 10 unikalnych ustawień prędkości na 11 możliwych jakimi dysponuje USBASP.
mirekk36 napisał(a):
bo nie wiedzę potrzeby zabawy zmian w tym co robi AVRDUDE - przecież to nie zależy w żadnej mierze od MkAvrCalculatora
no ale właśnie zależy od MkAvrCalca bo poprostu złe wartości wysyła do avrdude przy wyborze poszczególnych opcji, np dla (niech już będzie częstotliwości) slow_sck = 750kHz na liście jest opis że wartość -B w zakresie 1 - 2, i do lini poleceń avrduda wstawiane jest -B 2 i konkretnie tu jest błąd bo zakres dla 750kHz wynosi 0.7 - 1.3! Przy wartości 2 usbasp ustawia prędkość 375kHz - czyli wystarczyło by zmienić w kodzie źródłowym MkAvrCalculatora by dla opcji 750kHz wstawiał do linii komend avrduda wartość -B 1 (zamiast -B 2) i już będzie OK. Tak samo kilka pozostałych pozycji. Więc przecież nie są to jakieś gigantyczne zmiany w kodzie (choć może się nie znam i jest inaczej?), a spowodują że opcja ta będzie działać bezbłędnie a nie poprostu jakoś działa, ale niekoniecznie zgodnie z opisem (już pal licho dokładne wartości częstotliwości, ba na liście może wogule ich nie być bo pewnie i tak niewielu użytkowników zna korelacje pomiędzy taktowaniem uC a max. możliwą prędkością CLK, nomenklatura z MkClipse jest bardziej trafna) ale żeby chociaż każda opcja na liście slow_sck reprezentowała unikalną wartość w działaniu programatora.
Nie twierdzę że jest to błąd który był od samego początku powstania MkAvrC, być może w kodzie samego avrduda twórcy nieznacznie zmienili wartości parametrów -B które odpowiadają poszczególnym wartościom F_CLK.
Cytuj:
jeżeli jednak uważasz, że to ma jakieś znaczenie to napisz proszę jakie - bo jak mówię - być może ja czegoś nie dostrzegam ok?
po prostu nie lubię półśrodków, jak coś ma być i działać to lubię jak działa dobrze - tym bardziej że są warunki by mogło działać dobrze. (choć może słowo działać jest nie na miejscu bo to działa, a problem jest bardziej natury kosmetycznej, więc może "wyglądać" dobrze..?)
Poza tym często prosisz o zgłaszanie błędów, więc po wykryciu takowego poprostu chciałem go zgłosić. Podkreślam - chciałem - bo na razie przedstawiłem swoje spostrzeżenia tu na forum, by inni mogli zweryfikować ich trafność; niestety nikt się nie pokusił...
mirekk36 napisał(a):
ale problem wydaje mi się być tak błahy że po prostu szkoda czasu marnować na przeróbki programu
Ok, nie będę nalegał. Ale czasem trudno mi Ciebie zrozumieć. Z jednej strony patrząc na twoje projekty widać ogrom pracy włożonej w dopracowanie szczegółów, a z drugiej cytowana wypowiedź... Ja osobiście mam tak że jeśli w moim projekcie ujawnia się coś co odstaje od zamysłu, to potrafię kilka nocy zarwać by "wyrwać chwasta" niezależnie czy jest to "konar drzewa czy źdźbło trawy".
No ale nic, jesteśmy tylko ludźmi, a każdy człowiek jest inny i ma inne gusta i inne priorytety.



Góra
 Zobacz profil  
cytowanie selektywne  Cytuj  
PostNapisane: 29 mar 2018, o 21:45 
Offline
Moderator
Avatar użytkownika

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

hmmm ok - przyjrzę się temu jeszcze raz w wolnej chwili czasu - dlatego mówię - ja nie zawsze mogę dostrzegać problem - nie jestem alfą i kocią omegą ;) dlatego pisałem żebyś mnie starał się przekonać - bo ja na razie do tematu tak troszkę z doskoku ... ale ok ;) postaram się

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

Strefa czasowa: UTC + 1


Kto przegląda forum

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