Hex-Zahl in TH0 und TL0 (in C)

Gast #1340455
Hallo,

Bei meinem Programm geht es darum, vier Schrittmotoren mit 
unterschiedlichen Frequenzen anzusteuern.
Die generierung der Frequenzen ist ausgearbeitet und funktioniert.
Bisher jedoch muss man die HEX-Zahlen für TH0 und TL0 von Hand eingeben.
Möchte aber, dass die abhängig von einer bestimmten variablen sind, so 
dass ich für jeden Schrittmotor eine andere Frequenz erhalte und diese 
darüber regeln kann.
>> ich erhalte eine Hex-Zahl z.B. d0fc, welche ich jedoch für TH0 und TL0 in 0xdc 
und 0xfc aufteilen muss. kann mir da jmd helfen. bzw. was für Möglichkeiten gibt 
es?

Vielen Dank schon mal.

Hoffe ich habe mich genau genug ausgedrückt, ansonsten eben Rückfragen:)
In C ist es vollkommen wurscht, ob Du Zahlen dezimal, hex oder octal 
hinschreibst.
Da der Mensch aber Dezimalzahlen besser versteht, sollte man diese auch 
verwenden.

Um nun einen 16-Bit Wert in 2*8-Bit zu splitten, gibts den Klassiker:
1
  low_byte = wert & 0xFF;
2
  high_byte = (unsigned int)wert >> 8;

Beim Timer ist zu beachten, daß man ihn vorher anhält. Sonst kann es zu 
einem Überlauf kommen, d.h. einem Fehler von 256.

Weiterhin ist zu beachten, daß man ein Reload durch Addition zum Timer 
macht, wenn eine hohe Genauigkeit gefordert ist. Dadurch rechnet sich 
nämlich die Interrupteinsprungzeit, Register pushen usw. raus.


Peter
Gast
vielen Dank,
das war genau das was ich gesucht habe.

kann mir auch jmd sagen, wie ich zwei unterschiedliche while-Schleifen 
gleichzeitig ablaufen lassen kann? denn bisher läuft nur diejenige ab, 
die in meinem Quelltext an erste Stelle steht. Warum?!

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.