Milyen standard UART árak vannak?

9600, 19200, 38400, 57600, 115200 és 1,8432 Mbaud-t ismerek, de másokat nem. Miért használják ezeket az értékeket, és egyszerűen megduplázódik-e minden alkalommal, vagy valami összetettebb folyamat van (például 38400 négyszeresére nem 115200 baud?)

Azért teszem fel ezt a kérdést, hogy “m olyasmi megtervezése, amelynek különféle átviteli sebességekkel kell kölcsönhatásba lépnie. Ez inicializálódik 9600-ban, majd áttér egy adott átviteli sebességre. De nem támogatom az önkényes sebességeket, mert az általam használt dsPIC33F nem támogatja az önkényes sebességeket, mint ez egy 16 bites BRG down számlálóra korlátozódik. Ebben a tekintetben hasonló sok más processzorhoz.

Megjegyzések

  • A gyakorlatban egy 16 bites számláló, valamint az elő / utáni skálázók több mint elegendőek ahhoz, hogy a ” elég közel legyen ” az önkényes adatátviteli sebességekhez. Az UART soros elviseli az enyhe átviteli sebesség eltéréseket.
  • A Az uart a START bit közepén kezdődik, és a 7-10 bit sorosítása után a STOP bit közepe közelében kell maradnia, ami minimális, 2-3% körüli óra pontosságot eredményez, lehetőleg jobban kezelni a zajokat, jittereket, eltéréseket a forrás frekvencia …

Válasz

Nagyon régen kezdődött teletípusokkal – szerintem 75 baud . Akkor azóta többnyire megduplázódik, néhány tört (x1,5) szorzóval, például 28 800-zal, ahol olyan korlátok voltak a telefonvonalas modemtechnikában, amelyek nem igazán engedték meg a dupláját.

A standard kristályértékek ezekből a korai baudrátákból és azok elérhetőségéből származnak y diktálja a jövőbeni árfolyamokat. Pl.

\ $ \ begin {align} {7.3728 \, \ mathrm {MHz} \ 16} felett & = 460,800 \; \ text {baud} \\\\ {7.3728 \, \ mathrm {MHz} \ over 64} & = 115,200 \, text {baud}. \ vége {align} \ $

A legtöbb UARTS \ $ 2 ^ n \ szorzójának 16 \ $ óráját használja, A modernebb alkatrészek (pl. NXP LPC) osztott osztókkal rendelkeznek, hogy szélesebb tartományt kapjanak nem bináris többszörös használatával.

További általános szabványok a 31 250 (MIDI) és a 250 000 (DMX), valószínűleg mindkettőt szép többszörösként választják a “kerek” órákból, például 1 MHz-es stb.

Megjegyzések

  • Nem gondolom, hogy a frakcionális elválasztók nem szabványos, de inkább szabványos bitráták elérésére szolgálnak a nem szabványos MCU órajel frekvenciákból.
  • Kétéves, 1926-os teletípusokat újítottam fel, még az egyetemen (1976), és igen, körülbelül 75 baudon futottak. Baudot teletípusokat írtak rájuk. 110vac-ra csatlakoztatva, és egy motor biztosította az időzítést, köztük elektromos csatlakozással. Beneteltem őket benzinbe, hogy megtisztítsák őket. (Adj egy kis szünetet – 18 éves voltam. De ez sikerült!) A Ctrl-G becsületes jóságot csengetett a másiknál. Jaj, még arra sem emlékszem ‘, hogy kinek adtam át őket. 🙁 Tehát, igen, ‘ beírja a mechanikus billentyűzetet, ez mechanikusan sorosítja a billentyűleütéseket, és megszakítja a kapcsolatot, amelyet a másik fél olvas.
  • Igen, a bömbölő ‘ 20 ‘ s! Milyen minőségi technológiának kell kitartania 50 évig, és John Silva-ban véget ér ‘ fészer a kaliforniai Haywardban.
  • @DougNull Elnézést a döfésért – Kérdés 115200 bps-ért. Tehát elvette az IC órát (7,3728 MHz), és elosztotta mire ? Hogyan szereztél 64-et?

Válasz

A RealTerm, egy freeware Windows terminálprogram, felsorolja ezeket az UART arányokat Baud menüjében:

110, 150, 300, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400, 460800, 921600

Ezek azonban valójában bit / másodperc (bps), nem baud – lásd alább.

110 baudot használtak olyan 8 szintű teletípusoknál, mint az ASR-33. Nem tudom, hol használtak 150 Baud-ot, de igen megduplázása 75 baud, általában mi ed (60 baud mellett) az 5 szintű TTY-knél.

300 bps volt a szabvány az első széles körben használt telefonmodemeknek az 1960-as években. Egyszerre 30 karakter / másodperces terminál jelent meg.

300 bps / 300 baud felett, amely egyszerű frekvenciaeltolásos billentyűt (FSK) használt, a bps és a baud adatai (szimbólumok vagy hangok másodpercenként) ) nem azonosak. Például egy 1200 bps modem valójában 600 baudon, a 4800 bps modem pedig 1600 baudon fut. Lásd a cikk Sávszélességek című táblázatát. A különbség azért van, mert bizonyos másodpercenkénti hangimpulzusok mellett a fáziseltolásos billentyűzet és a egyéb módszerek is felhasználhatók, hogy ugyanabból a baudból további sávszélességet nyerjenek ki. egyre magasabb bps eléréséhez. (Tehát egy 56K-os modem valójában csak 8000 baud sebességgel működik.)

Mint láthatja, az UART-díjak listája lényegében 75-től kezdődött, és folyamatosan megduplázódott (600-at kihagyva), egészen addig, amíg 38400-ig eljutott, ahol szorozták 1,5-vel 57600-ra.56K bps az analóg telefonvonal határértéke. A magasabb 115200-as sebességet (ismét megduplázódik 57600-tól kezdődően) a vezetékes kapcsolatoknál alkalmazzák. “akkor ne legyen megduplázva, de már ritkán használják őket.

Megjegyzések

  • Nem pedáns, de a program csak milyen sebességeket támogat. a hardver megengedi. Lehet, hogy nem is zavarja a kérdezést, és csak felsorolja a szokásos sebességet. A hardveremet kérdezve, zip(*serial.Serial('COM10').getSupportedBaudrates()), így válaszol: (50, 75, 110, 134, 150, 200, 300, 600, 1200, 1800, 2400, 4800, 9600, 19200, 38400, 57600, 115200)
  • A nyolcvanas években 600 bit / s-os fél duplex akusztikus csatolót használtam. A német BTX rendszerben hosszú ideig 75 bit / s-ot használtam feltöltési irányban, a letöltés 1200 bit / s sebességgel történt.
  • Én ‘ 62,5 kbaud-t is láttam. Valójában ez a fő órájától is függ, kiszámíthatja, hogy milyen baudráták vezetnek elég alacsony hibához.

válasz

Hosszú ideje elterjedt, hogy a kommunikációhoz 115 200 alszorzatot használnak – vagy 38 400 400, vagy 57 600 vagy 115 200 kettő részszorzó erejét. A legtöbb számítógépes hardver támogatja ezeket az arányokat. Egyes számítógépes hardverek 230 400 vagy 460 800 támogatást tudnak biztosítani. Ne feledje, hogy sok beágyazott vezérlő szereti az adatátviteli sebességet, amely a saját órajelük többszöröse, és egyes USB-soros chipek támogatni tudják a 3 000 000 bps bármely egész számú többszörösét, így valószínűleg nagyobb lesz az olyan sebesség, mint 1 000 000 bps vagy 1 500 000 bps eszközök, amelyek USB-chipeken keresztül csatlakoznak a számítógépekhez.

BTW, még egy említésre méltó sebesség: 31 250 bps a szokásos MIDI-hez használt sebesség.

Válasz

Az eredeti IBM PC-n 8250 UART volt. Ehhez 1,8432 MHz-es óra kellett, és elosztotta azt egész számmal a belső óra létrehozásához, és ez az óra 16 ciklusonként fut a bitig.

Az osztó regiszter 1. beállításával 115 200-at kap, 2-t 57 600-ig, 3 38 400-at, 6-ot 19 200-at kap.

A legjobb megoldás egy olyan óra használata, amely 1,8432 MHz-es többszörösén fut a DSPIC-vel.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük