Zdravím potřeboval bych posílat z MEGY8 do PC data ve formátu ±0,00V o rychlosti 1000 hodnot/sec. Dle mých teoretických úvah by to mělo být 6 znaků+carriage return čili 7*(8+startbit+stopbit) takže 70 bitů na řádek*1000 řádků takže 70000 Bd a použil by se 32 násobek základní rychlosti tj. 76800. Je to tak? Díky
Fórum › Mikrokontroléry
Potřebná rychlost USART
Je to hodne hodnot... urcite to posilej pres buffer a preruseni... jako rychlost klidne muzes pouzit 115200 (pokud teda budes moci vydelit frekvenci krystalu do nejakejch 2% odchylky... ale melo by vetsinou fungovat i treba 125000
+ megy8 nemaj instrukci na deleni - taky to zabira nejakej cas... (ikdyz ne tolik jako cekani na odeslani retezce po usartu)
na baudrate 115200 doporučuji použít 8 MHz vnitřní oscilátor, USART nastavit na Double Speed Mode a UBRR = 8. Výsledný baudrate bude 111 111 a chyba 3,55%, což by mohlo vyhovovat. Pro lepší přesnost budeš muset použít externí krystal. Více najdeš v datasheetu http://atmel.com/Images/doc2486.pdf. Výpočty na str. 132, pro inspiraci i příklady nastavení na str 153, např s krystalem 11,0592 MHz je to přesný.
Asi bych do PC posílal přímo hodnotu z převodníku např v hex tvaru (pro 16 bitů jsou to 4 ASCII znaky) a v PC prováděl přepočet na napětí. Na straně PC je k dispozici větší početní výkon.
hu
Ono taky záleží co s tím máš dál v úmyslu, pokud to chceš posílat jen na HyperTerminal, pak by to bylo asi jak píšeš, ale pokud to chceš číst v nějakém vlastním programu (Visual Basic, C aplikace...) pak by bylo zcela zbytečné posílat znaménko, destinnou čárku, Volty i ten carriage return, protože to si můžu zformátovat až v cíli, string by pak měl jen tři znaky, rychlost by klesla na 30000 a pak by postačovala rychlost 38400 (8MHz UBRR=12) nebo 57600 (16MHz UBRR=16).
Interní oscilátor bych pro potřeby USART raději nedoporučoval natož v kombinaci s chybou skoro 4%.
Přidej příspěvek
Ano, opravdu chci reagovat → zobrazí formulář pro přidání příspěvku
×Vložení zdrojáku
×Vložení obrázku
×Vložení videa
Uživatelé prohlížející si toto vlákno
Podobná vlákna
Jaká je potřebná Živnost pro tvorbu www? — založil cosh-boy
USART u ATtiny2313 — založil rudla
SYNASER COM USART — založil Tadeáš
USART-pomoc — založil simon
ATtiny2313 - prijímanie dát cez USART — založil poprad
Moderátoři diskuze