www.mikrocontroller.net

Forum: Projekte & Code 16 Bit Timer Calculator


Autor: Jornbyte (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Das Berechnen des 16 Bit Timer's fand ich immer Nervend und habe
deshalb  mal ein kleines Tool geschrieben. Testet es mal :)

mfg jornbyte

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"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

Autor: Jornbyte (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Peter Dannegger (peda)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
"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

Autor: Jack88 (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Thomas O. (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

@Jornbyte: Mit welchen Programm hast du dieses Programm erstellt?
VisualBasic?

Autor: Kalle (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
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)

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.