
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
Hallo Wolfgang, eine Übertragungsgeschwindigkeit von 110 Baud ist an der normalen seriellen Schnittstelle ohne Quarzwechsel nicht realisierbar. Konstanten für den BAUD-Befehl: R9600 = 192 = %11 000 000 = 9615 Baud (siehe 6.11.5 im 68HC05-Manual) R4800 = 201 = %11 001 001 = 4808 Baud R2400 = 210 = %11 010 010 = 2404 Baud R1200 = 219 = %11 011 011 = 1202 Baud (228 = %11 100 100 = 601 Baud) (237 = %11 101 101 = 300 Baud) (246 = %11 110 110 = 150 Baud) (255 = %11 111 111 = 75 Baud) Wie sich die Konstanten für den BAUD-Befehl berechnen lassen findest Du im Kapitel 6.11.5 des 68HC05-Manuals. Die dort angegebene Gleichung lautet: baudTx=fop/(16*NP*NT). Genaugenommen sind dort zwei Gleichungen angegeben, deshalb kann man für den Empfang und das Senden unterschiedliche Baudraten einstellen. Die Größe fop ist die interne Taktfrequenz, die bei einem 4-MHz-Quarz 2 MHz beträgt. Der einzig sinnvolle Wert für NP (Prescaler division ratio) ist 13. Man könnte noch 1, 3 oder 4 wählen, aber dabei würden sehr krumme Baudraten mit rechnerisch bis zu 125000 Baud herauskommen, die mit NT, bzw. NR um 2^NT, mit NT=0..7 geteilt werden können. Selbst der SLOWMODE, in dem die Baurate um Faktor 16 kleiner ist, wird Dir nicht weiterhelfen, es sei denn, die Gegenstelle ist sehr tolerant gegenüber nicht 100%-ig passender Baudrate (1953/16=122 Baud). Ansonsten könnte man natürlich eine an zwei Pins emulierte Schnittstelle verwenden. Sourcecode dafür findest Du unter anderem auf der Site von DIE HARD. Gruß, Dietmar Meine Homepage: http://ccintern.dharlos.de |
| Antwort schreiben |