C Control PRO STARTER SET MEGA 128 198484 ユーザーズマニュアル

製品コード
198484
ページ / 200
158
C-Control Pro Mega Series
© 2005 Conrad Electronic
5.4.16.10 Str_WriteWord
String Funktionen
Syntax
void Str_WriteWord(word n,byte base,char text[],word offset,byte
minwidth);
Sub Str_WriteWord(n As Word,base As Byte,ByRef text As Char,offset As
Word
, minwidth As Byte)
Beschreibung
Das Wort n wird in einen ASCII String konvertiert. Das Ergebnis wird im String text mit einem Versatz von
offset abgespeichert. Man kann für die Ausgabe eine beliebige Basis angeben. Mit einer Basis von 2 erhält
man Binärzahlen,  mit 8 Oktalzahlen, 10 Dezimalzahlen und bei 16 werden Hexzahlen ausgegeben, etc. Ist
die Basis größer als 16, werden weitere Buchstaben des Alphabets herangezogen. Ist z.B. die Basis 18, so
hat die Zahl die Ziffern 0-9, und 'A' - 'H'. Ist der ASCII String kürzer als minwidth, so wird der Beginn des
Strings mit Nullen aufgefüllt.
Parameter 
n 16 Bit Wort
base   Basis des Zahlensystems
text Zeiger auf den Zielstring
offset   Anzahl der Zeichen, mit der die ASCII Darstellung der Zahl verschoben in den Text String kopiert
wird
minwidth   minimale Breite des Strings
Hat offset den Wert STR_APPEND (
0xffff
), so wird als offset die Länge des Zielstrings
angenommen. In diesem Fall wird die Integer Zahl an den Text String angehängt.
5.4.17 Threads
Multithreading
Unter Multithreading versteht man die quasi parallele Abarbeitung mehrerer Abläufe in einem
Programm. Einer von diesen Abläufen wird Thread (engl. Faden) genannt. Beim Multithreading
wird in schnellen Abständen zwischen den verschiedenen Threads gewechselt, so daß beim
Anwender der Eindruck von Gleichzeitigkeit entsteht. 
Die C-Control Pro Firmware unterstützt außer dem Hauptprogramm (Thread "
0
") bis zu 13
zusätzliche Threads. Beim Multithreading wird nach einer bestimmten Anzahl von verarbeiteten
Byte Instruktionen der aktuelle Thread auf den Status "inaktiv" gesetzt  und der nächste
ausführbare Thread wird gesucht. Danach startet die Abarbeitung des neuen Threads. Der neue
Thread kann wieder derselbe wie vorher sein, je nachdem wie viele Threads aktiviert wurden oder
für eine Ausführung bereit sind. Das Hauptprogramm gilt als erster Thread. Daher ist Thread "
0
"
immer aktiv, auch wenn explizit keine Threads gestartet worden sind.
Die Priorität eines Threads kann beeinflußt werden, in dem man ändert, wie viele Bytecodes ein
Thread bis zum nächsten Threadwechsel ausführen darf (siehe 
Anzahl der Zyklen bis zum Wechsel, desto geringer die Priorität des Threads. Die Ausführungszeit
eines Bytecodes ist im Mittel 7-9 µsec. Bei einzelnen Bytecode Befehlen dauert es jedoch länger,
z.B. Floatingpoint Operationen.