Hallo, was ist das langsamste Quarz was man verwenden kann, um noch über UART Daten senden zu können, egal ob mit 300baud oder 1200baud
:
Gesperrt durch User
Da praktisch kein µP mit "Quarzgeschwindigkeit" sendet ist die Frage nicht zielführend. Intern wird der Quarztakt üblicherweise geteilt, um irgendwie auf ein 16-faches der gewünschten Baudrate zu kommen. Es gibt aber sogenannte Baudratenquarze, deren Takt sich ganzzahlig, ohne Divisionsrest, auf die üblichen Baudraten teilen lassen. Ist vor allem bei hohen Übertragungsraten interessant. Baudratenquarze haben so komische Frequenzen wie z.B. 14,7456 MHz und nicht 16 MHz. Habe diese Rechnungen schon lange nicht mehr gemacht, aber es könnte eventuell bei extrem geringen Baudraten Probleme geben. Dann muss natürlich ein Quarz mit geringerer Frequenz herhalten. Da Du beim Programmieren sowieso diese(n) Teiler einstellen musst und dich somit mit diesem Teil des Handbuches beschäftigen musst, kann ich Dir nur empfehlen diesen Teil vorzuziehen.
natürlich setze ich ein Baudratenquarz vorraus, also 1,xxx MHz oder was ist mit 32.xxxkhz Uhrenquarz noch möglich?
@Tanja (Gast) >was ist das langsamste Quarz was man verwenden kann, um noch über UART >Daten senden zu können, egal ob mit 300baud oder 1200baud Grundrechenarten?
1 | F_CPU = 16 * F_BAUD * Vorteiler |
Je nach CPU kann Vorteiler eine 8, 12 oder 16 Bit Zahl sein. Die meisten AVRs haben einen 12 Bit Vorteiler, man kommt bei 300 Baud also auf
1 | F_CPU = 16 * 300 * 4096 = 19660800 |
Man kommt also sogar bei ~ 19 MHz auf 300 Baud runter. Also gehen auch kleine Frequenzen, wenn es ein Baudratenquarz ist. Der Klassiker hat 1,8432 MHz. Quarze unter 1 MHz sind eher exotisch.
> natürlich setze ich ein Baudratenquarz vorraus, also 1,xxx MHz > oder was ist mit 32.xxxkhz Uhrenquarz noch möglich? Wenn der Microcontroller das kann dann sind auch mit einem 32k Uhrenquarz 9600Baud (oder von mir aus auch 300B) moeglich. Dazu muss er einen fraktionalen Teiler verwenden. Funktioniert, sieht aber auf dem Oszi gewoehnungsbeduerftig aus. :-) Olaf
Falk B. schrieb: > Quarze unter 1 MHz sind eher exotisch. 38,4kHz und 76,8kHz sind problemlos zu bekommen. Und auch 307,2kHz gibts noch von der Stange.
Als nächste Frage steht dann im Raum, welcher Takt wird mindestens für SPI benötigt? Natürlich weiterhin Atmega32! also kein Multiplikator etc Ich gehe davon aus mit 32.xxxkhz ist beim Mega32 kein Uart mehr möglich?
Bei den ATMegas gibt es nur eine Quarzfrequenz. Da der gesamte, interne Ablauf hierdurch bestimmt wird, bewirkt ein unnötig langsamer Quarz auch eine unnötig langsame Arbeitsfrequenz und damit unnötig geringe Rechenleistung. Du solltest immer im Auge behalten, dass der Rechner außer dem Senden von Daten noch die Vor- und Aufbereitung derselben übernehmen muss. Werden auch noch Daten empfangen, so folgt hieraus ebenfalls ein ganzer Rattenschwanz an Tätigkeiten.
STM332 LPUART kann "300 baud/s to 9600 baud/s using a 32.768 kHz clock"
der Mega soll nur Daten senden, der empfängt nichts..und er SOLL! so langsam wie möglich laufen! Wenn das beim STM332 geht, bedeutet das aber nicht das es beim Mega32 auch geht oder? Da der Atmega ja keine PLL hat
Falk B. schrieb: > Man kommt also sogar bei ~ 19 MHz auf 300 Baud runter. Also gehen auch > kleine Frequenzen, wenn es ein Baudratenquarz ist. die Frage war aber anders rum, nicht nach der größten Frequenz, sondern nach der kleinstmöglichen
Hallo, ich fasse mal zusammen: UART (also Serielle Schnittstelle, soll langsam senden?) 300 - 1200 Baud/s AVR Core soll auch langsam laufen, bzw. möglichst langsam laufen, dann wären wir doch (da der kleinste Faktor sollte 8 sein) bei 2400Hz, dann macht der halt nicht mehr viel ausser zu senden. MfG myasuro
Ich verweise auf: Beitrag "Re: 32768 Hz und ser und Mega48" Mit nem 32,768 kHz Uhrenquarz, U2X und UBRR=36 kommt man auf zuverlässige 110 Baud. Das wäre die langsamste Standardrate beim PC. Drunter wirds eher nix.
Der Threadstarter ist der Ansicht, daß für ihn(!) die Nutzungsbedingungen des Forums nicht gelten, da er in diesem Thread als zwei Personen auftritt.