Guten Tag! Ich hätte gerne einen UART mit 115kbps Geschwindigkeit. So weit, wie ich es kenne, geht es mit dem AT89-Controller nicht. Da ist die höchste Frequenz mit 24MHz begrenzt und es wird minimal durch 192 geteil, um Baudrate zu erzeugen. Das macht schon 125000, die man noch durch Baudrate teilen soll, so weit kann man damit nicht anfangen. Geht's irgenwie schneller? Oder kennt jemand andere 8051-Controller, die so was erlauben? Mit freundlichen Grüßen in der Hoffnung auf ihre Hilfe!
Hallo Aleksej, ich habe vor ein paar Jahren mit den 51 ern DMX empfangen. Das sind 250 kBaud. Die UART kannst du in einen bestimmten Modus zwingen, Clock/64. Und dann mußt du den Quarz entsprechend wählen. Ich glaube, ich habe damals Mode 2 oder 3 genommen. Eben mal nachgelesen: die max. Baudrate ist Clock/32. Bei 24 MHz kommst du auf 750KBaud. Michael
Mit 24MHz gehts nicht, aber nimm mal 22,1184MHz: Durch 12 ergibt 1,8432MHz CPU Takt, und der wird nochmal vom Timer durch 16 geteilt, ergibt 115200kHz. Nimmt man jetzt einen Reloadwert von 255 erhält man 115200Baud. So einfach ist das...
2Benedikt: Das hab ich schon mal gerechnet, aber ich bin nicht sicher, ob es genau genug wird. Wie würdest du es einschätzen? Ich hab kein 22,1184MHz Quarz zur Zeit aber soll so schnell wie möglich einen Controller auswählen, so hab keine Möglichkeit zu testen.
http://wwwiti.cs.uni-magdeburg.de/~buchmann/privat/generator.htm Damit kannste das ganz einfach ausrechnen ;). Bei 22,1184 Mhz, kommt man azf genau 115200baud, ohne Abweichungen. mfg
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.