AVR overclocking - UART

Witam,

Zastanawiam się czy 2313 pociągnie na UARCie więciej niż 115200?

Czyli jakby np ustawić na UBRR 1 zamiast 3 na kwarcu 7.3728, to miałbym

230kbps, czy to nie da rady? Sprawdzał to ktoś może?

Albo zostawiam to 3, i daje kwarca 10MHz, i mam 156kbps... (AVR ma gadać z AVRem)

Do ilu to tak "bezpiecznie" można podkręcać? I czy w ogóle się da?

A jak z podkręcaniem UARTów w 51? Nie wiem, 89S52 ciągnie już oficjalnie

115200? A jeśli nie, to czy pociągnie nieoficjalnie? :)

I tak przy okazji? Jak działają podkręcane AVRy? I do ilu można tak bezpiecznie podkręcić 10MHz-owego 2313? :)

Pozdrawiam, jeleń

Reply to
jelen
Loading thread data ...

A w czym problem? Możesz nawet ustawić UBRR na 0 i wtedy masz fCK/16 i to jest maximum sprzętowe. Pozostaje zawsze pytanie z czym chcesz przy takiej prędkości się łączyć i czy medium transmisyjne to wytrzyma.

...

Poszukaj w archiwach AVRFreaks, sporo o tym było. IMHO w domu można się bawić (tylko jaki miałby być cel takich zabaw?), a do produkcji wymagałoby kosztownego testowania każdego egzemplarza procka (bez sensu).

Pozdrawiam,

Reply to
Artur Lipowski

Hy? To czemu mi się jakoś wydawało że on tylko 115200 ciągnie, a jakieś mega cośtam mają szybsze uarty... Chyba, że chodziło o to, że tam można było Mb wyciągnąć... bo 10MHz/16 to 625kbps...

Ale przy 51 było napisane że uart do 57,6... nie było tak?

I do ilu można tak bezpiecznie podkręcić 10MHz-owego 2313? :)

Cel? No bo to czasem nie daje rady... a tak jakby 10-ke na 16-tu puścić, to jest 160% mocy jakby nie było...

Pozdr, j.

a btw - może "troche" OT, jakiego DSP da się tanio kupić, przylutować (w domu) i podpiąć do względnie zwykłego SRAMu... ?

Reply to
jelen

A ja gonilem 2051 przy transmisji 250 kb/s. Ale tylko przy kwarcu 16 albo 8 MHz. Wiec mozna szybciej niz 57,6. ;-)

Reply to
Milosz Skowyra

Bez problemu. Popedzasz kwarcem 11.0592 MHz i wyciagasz 1/16 tego czyli

691200 bps. ATmegi maja lepiej, bo posiadaja tryb wymagajacy dzielenia zegara tylko przez 8 (czyli UART mozna popedzic 2x szybciej). 115200 bps AVRki wyciagaja z kwarcem 1.8432 MHz. Tak ze nawet do nominalnych 10 MHz (max dla '2313) masz jeszcze duuzo.
Reply to
Adam Dybkowski

Tia...a miałeś czas na zrobienie czegokolwiek z tymi danymi? Bo wiesz, samo przesylanie nie ma chyba wielkiego sensu ;-))

__ Pzd, Irek.N.

Reply to
Ireneusz Niemczyk

Obsluga 8 kanalow dimmera w 7 bitowym zakresie sciemniania. Poziomow swiatla bylo 128, tak dla wygody. Przy 10-12 kanalach juz sie zatykal, przy 64 poziomach swiecenia ciagnal na pewno 12 kanalow, tyle sprawdzalem, ale pewnie mozna by go wyzylowac bardziej. Kwarc 16 MHz, cykl zegarowy 750ns, pelna ramka danych co 44us, to daje jakies ~60 cykli na odebrany bajt. Liczac bajtu ale sie da.

Reply to
Milosz Skowyra

Wow, niezle, no toś mnie zaskoczyl! ...masz strumien 22k/s, procek faktycznie ma niecałe 60 taktów na odebranie i obsłużenie bajtu. Czy robiles jakies synchronizacje z siecia w tych dimmerach? Moze nie powinienem pytac, ale pewnie ramka nie jest cała przeznaczona dla jednego urzadzenia - czyli wybierasz z niej jakis fragment...moze dlatego calosc ci sie wyrabiala. Pamietam jaką walkę stoczylem dopasowując 600k ISP z 115k RS-em w programatorze...tyle tylko że tam każdy bajt ważny, trzeba bufory obsłużyć...ale za to procek znacznie szybszy. ;-)

Miłego wieczoru Miłosz.

__ Pzd, Irek.N.

Reply to
Ireneusz Niemczyk

Ale to nie jest

Zakladajac ze przy nastepnym bajcie nie bedzie sie nic dziac, to mozesz to przeciagnac do 80-100 taktow ;-)

Jasne, inaczej sie nie da jasnoscia operowac ;-))) Standardowy LM339.

Nie, protokol jest standardem zwanym DMX 512. Ramki leca po kolei, start to stan niski na linii przez min 88us (czas 2 znakow), potem leci ramka zerowa o spec. znaczeniu (niby, bo w praktyce nieuzywana) a potem do 512 bajtow z wartosciami i tak w kolko. W praktyce ramki i bajty tylko w niektorych urzadzeniach leca natychmiast po sobie, w wiekszosci sa przerwy pomiedzy bajtami, dodatkowo czasem jest spora przerwa po calej ramce (wtedy z reguly konsole cos sobie przeliczaja i dopiero startuja transmisje kolejnej ramki). Ale faktem jest ze w Avolites-ie ktorego widzies ramki trzymja sie standardu, mozna opozniac transmisje w ustawieniach, ale przy maksymalnych parametrach urzadzenie i tak dziala ok.

Generalnie dzialalo to tak, po uruchomieniu odczyt adresu z dipswitch-a, czekanie na poczatek ramki, potem odbieranie ramek az do momentu gdy odczytalo sie te 8 istotnych wartosci i ignorowanie transmisji tak dlugo az otrzymany bit 9 byl zerem (to te 88 us). O tyle kiepsko ze transmisja musiala miec najwyzszy priorytet, bo w '51 nie ma znacznika buffer overrrun, dodatkowo w avr-ze jest framing error (czyli sprzetowo mozna znalezc poczatek ramki). W miedzyczasie w przejsciu przez zero odpalany Timer, w przerwaniach Timera dekrementowany licznik, porownywany z wartosciami z transmiji i jak sie zgadzalo to odpalenie optotriaka. Drugi timer afair wylaczal optotriaki (albo wylaczalem je w przejsciu przez zero, juz nie pamietam).

Milej niedzieli i nadchodzacego week-a ;-)

Reply to
Milosz Skowyra

Hm, a w sumie czemu zamiast bawic sie w zylowanie nie uzyles silniejszego procka? :-)

Pozdrawiam Piotr Wyderski

Reply to
Piotr Wyderski

Bo to byl okres czasu w ktorym posiadalem lutownice transformatorowa i programator Picollo z podstawka do 2051, dopiero zaczynalem zabawe z mikrokontrolerami. Poza tym to byly jedyne kostki do kupienia w miescie, dodatkowo urzadzenie mialo byc gotowe na za 3 dni ;-) Za to nabralem pewnej wprawy ;-))) Teraz bez problemu wzialbym cos wiekszego i z glowy. Nie zaluje zabawy ;-)

Reply to
Milosz Skowyra

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.