Hallo Freunde ! An was kann es liegen, dass ich aus meinen Unterprogramm eine Werte an meiner ISR übergeben kann? void IncBCD(char Value*) { Value* = Value* + 1; if ((Value* & 0x0F) == 0x0A) { Value* += 6; } }
Thomas H. schrieb: > Hallo Freunde ! > > An was kann es liegen, dass ich aus meinen Unterprogramm eine Werte an > meiner ISR übergeben kann? Die Frage solltest du nochmal überdenken. Wenn du es kannst, dann wohl, weil du es korrekt programmiert hast.
Thomas H. schrieb: > Hallo Freunde ! > > An was kann es liegen, dass ich aus meinen Unterprogramm eine Werte an > meiner ISR übergeben kann? Wenn ich mir da jetzt allerdings ein 'NICHT' dazudenke, dann ist das eine Variation von 'funktioniert nicht'. Um das zu beantworten, hast du zu wenige INformationen geliefert. Die Funktion ist gut und schön, aber man kann auch Fehler beim Aufrufer machen. Ganz zu schweigen von der ersten Fragestellung, die sich stellt: Was genau bedeutet eigentlich 'funktioniert nicht'
ich möchte meine Uhrzeit stellen... if (!(key_port&(1<<key_left))) { IncBCD(Stunden); DisplayTime(); } mit diesem Befehl übergebe ich die Stunden.... In meinem Unterprogramm siehe Oben möchte ich verhindern das z.B bei 20 Sonderzeichen oder Buchstaben erscheinen... Leider kann ich es via. Unterprogramm nicht nutzen... schmeiße ich den "Umwandel" code jedoch direkt in die ISR so klappt es... Also denke ich mal, dass die Werte von meinem Unterprogramm nicht zurück gegeben werden ?!
Thomas H. schrieb: > An was kann es liegen, dass ich aus meinen Unterprogramm eine Werte an > meiner ISR übergeben kann? Da hapert es aber gewaltig mit der Grammatik (der deutschen Sprache)... Und der gepostete Quelltext scheint auch irgendwie nicht zum Thema zu passen. Weit und breit keine ISR zu sehen... Sonst könnte man ja vielleicht noch erraten, was du eigentlich tun wolltest und warum das nicht funktioniert oder auch was du nicht haben wolltest, was aber trotzdem passiert... Kurzfassung: Lerne deutsch oder schreibe in einer Sprache, die du beherrschst. Sonst wird das nix.
Thomas H. schrieb: > schmeiße ich den "Umwandel" code jedoch direkt in die ISR so klappt > es... Gut, das ist doch toll. Fertig. Du könntest natürlich deinen verbastelten Code einfach hier mal als *.c Anhang beifügen, dann könnte man dir evtl. was raten und müsste nicht dauernd raten...
Thomas H. schrieb: > void IncBCD(char Value*) Bei einer solchen Deklaration kann der Compiler nichts falsches finden. Normalerweise hat eine ISR ja auch ein entsprechendes Merkmal wie __isr oder _interrupt oder sonstwas, das sie eindeutig als Interrupt-Routine ausweist. Wenn du das korrekt hingeschrieben hättest, wäre die Welt in Ordnung und dein Compiler würde das Argument anmahnen. W.S.
Thomas H. schrieb: > Hallo Freunde ! Hallo! > An was kann es liegen, dass ich aus meinen Unterprogramm eine Werte an > meiner ISR übergeben kann? > > void IncBCD(char Value*) *Hier fehlt die Fußnote. Oder was soll das Sternchen bedeuten? mfg.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.