Hallo Nicole,
dann zerpflücken wir mal den Code :
void T1STart(WORD wert) {
hier geht's los : Keine Rückgabewerte der Funktion und ein (16 bit)
Parameter.
TH1=wert >> 8;
Der 16bit- Wert wird um 8 bit nach rechts geschoben, wobei immer mit
Nullen aufgefüllt wird. Ergebnis der Operation ist, dass die oberen
8bit hinterher an den bit-Stellen 7-0 stehen (untere 8bit). Diese 8bit
werden dann in TH1 eingefüllt (also auch Namensgebung von TH1 sinnvoll
- T(imer)H(High bits)1)
TL1 = wert & 0xff;
Der 16bit-Werte wird mit der binär-Zahl 11111111 bitweise
UND-verknüpft. Daraus folgt, es bleiben nur die niedrigen 8bit (7-0)
übrige, diese werden dann in TL1 eingefüllt. (T(imer)L(ow bits)1)
TMOD=((TMOD&0x1F)|0x10);
TMOD wird geladen und bitweise UND mit 11111 verknüpft. Daher bleiben
nur die niedrigen 5bit (4-0) übrig. Die restlichen bits werden zu 0
gesetzt. Anschließend wird das Ergebnis noch bitweise ODER mit 10000
verknüpft - bit4 wird eingschaltet, die anderen bleiben unverändert.
Der neue Wert von TMOD wird zurückgeschrieben.
ET1=1; TR1=1;
Simple Zusweiungen. Brauche ich wohl nicht zu erklären.
Was Du jetzt noch machen musst :
- was für ein µController wird verwendet ?
- schau ins Datenblatt und finde raus, was genau TH1 ,TL1, TMOD, ET1,
TR1 bedeuten und was sie im µController bewirken.
Falls Du diese Fragen beantworten kannst und noch immer Unklarheiten
bestehen - wieder posten oder mailen.
MfG, Khani