Das "L" steht für "long".die zahl steht also für die mikrosekunden, aber warum steht da das "L"?
Ich meinte natürlich multiplizieren.ist * = addieren? ich dachte das wäre multipizieren.
Das "L" steht für "long".die zahl steht also für die mikrosekunden, aber warum steht da das "L"?
Ich meinte natürlich multiplizieren.ist * = addieren? ich dachte das wäre multipizieren.
Die kommen von der Trägerfrequenz für die IR-Kommunikation. In der Library des asuro wird diese Frequenz mit dem Timer2 erzeugt.woher kommen die: IR Interuptfreq=36KHz
Wavefreq=18KHz
wait_tics = 18000 / freq;
Zusätzlich ist es auch die Zeitbasis für die Sleep()-Funktion. In der orginalen CD-Version der Library war es allerdings ein 72kHz-Takt, deshalb muss man die Werte anpassen (verdoppeln), wenn man mit der orginalen Lib arbeitet. Sleep(1) dauert 1/36000 bzw. 1/72000 Sekunde. Sleep(36) bzw. Sleep(72) dauert eine Millisekunde.
Bild hier
Atmel’s products are not intended, authorized, or warranted for use
as components in applications intended to support or sustain life!
warum muss da das L stehen?
würde die zahl nicht schon reichen?kann man das weglassen?
Oder muss man bei so großen Zahlen immer L hinschreiben?
Geändert von HiroakiShi (05.06.2011 um 10:20 Uhr)
Ja, das L wird unbedingt benötigt. Du kannst ja mal ausprobieren, was passiert, wenn du's weglässt, der Compiler wird dir eine Fehlermeldung ausgeben. Zahlen werden standardmäßig als uint16 interpretiert, d.h. bis maximal 2^16 - 1 = 65535, größere müssen durch das L als uint32 gekennzeichnet werden.
Gruß
ASUR0
Lesezeichen