Das Berechnen des 16 Bit Timer's fand ich immer Nervend und habe deshalb mal ein kleines Tool geschrieben. Testet es mal :) mfg jornbyte
"Das Berechnen des 16 Bit Timer's fand ich immer Nervend..." Was muß man denn da bloß berechnen ??? Ich hab noch nie was selber berechnen müssen. Wozu ist denn schließlich der Compiler / Assembler da, die können doch schon prima rechnen. Ich schreibe immer nur die Formel hin, z.B.: http://www.mikrocontroller.net/forum/read-4-57760.html Peter
Eine Antwort ist schon mal besser als keine. Mir ging es dabei nicht nur um die eine Sekunde, oft ist ein anderer Wert gefragt, egal ob Frequenz oder Zeit.
"oft ist ein anderer Wert gefragt" Na klar, die Sekunde ist doch nur ein Beispiel. Jeder andere Faktor ist ebenso möglich. In C kann man auch mit Kommazahlen rechnen, Hauptsache der Ganzzahlwert ist zum Schluß nicht größer als 16 Bit, damits noch in den Timer paßt. In Assembler sind nur 32Bit Ganzzahlen möglich, daher die Multiplikationen möglichst am Anfang und die Divisionen zum Schluß. sonst könnte es zu große Rundungsfehler geben. Und drauf achten, daß Zwischenergebnisse nicht größer als 4294967295, der Assembler warnt nicht bei einem Überlauf. Und auch die Baudratenteiler lasse ich immer den Assembler / Compiler selber ausrechnen. Wäre ja auch viel zu umständlich, wenn man jedesmal, wenn man eine andere Quarzfrequenz nimmt, sämtliche Timer und Baudraten neu berechnen müßte. Deshalb steht in meinen Programmen immer am Anfang: .equ XTAL = 11059200 bzw.: #define XTAL 14.7456e6 Peter
I have a project to be done. The is project is about building a 16-bit simple maths calculator using 8051 microcontroller. Where do i get the information to build the calculator? Please help. Thank you.
Hallo, @Jornbyte: Mit welchen Programm hast du dieses Programm erstellt? VisualBasic?
Hallo! Ich verstehe folgende nicht. Warum steht der Hex Wert 0xCF2B nicht in den Registern TCNT1H und TCNT1L? Da müsste doch für TCNT1H = 0xCF und für TCNT1L = 0x2B stehen oder? (Siehe Bild im Anhang)
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.