Subs habe ich bereits verwendet, klar ich kann es irgendwie besser machen, muss mal schauen ob ich gute Beispiele finde..
Hallo!
Nein, du sollst nicht schauen, ob du irgendwelche Beispiele findest..... du sollst dir selbst Gedanken machen!
Ich habe nichts dagegen, wenn man sich das eine oder andere Programm zu Beginn aus dem Internet holt, um das Prinzip zu verstehen, oder sich erst mal ein Bild zu machen.
Danach sollte mit dem "abgucken" aber Schluss sein.
Am Ende kannst du vielleicht ein paar Programme lesen, aber selber keine schreiben. Nur weil du nicht weißt, wie du deine Gedanken nun in ein Programm bringen sollst.
Da hilft eben nur ausprobieren, ausprobieren und noch mal ausprobieren!
irgendwie war das Problem ( Compiler verlangte nach Return ) aber bascom sollte wissen woher man "gekommen ist" in die Sub Routine oder `?
Na, na, na..... BASCOM weiß ganz genau vorher du gekommen bist, wenn du in eine Subroutine verzweigst.
Nach Verlassen einer Sub setzt das Programm genau an der nächsten Stelle fort, wo es zuvor verlassen wurde.
Es kann aber nicht sein, nur weil DU es falsch programmiert hast, scheint BASCOM einen Fehler zu machen.
Wenn dir die Fehlerhilfe beim Kompilieren schon auf die Sprünge hilft, dass ein "Return" fehlt und es daher keinen Sinn machen würde das Programm zu übersetzen, dann sei BASCOM doch für den Hinweis dankbar..... und programmiere es richtig.
BASCOM möchte dich ja nicht ärgern, sondern will dir lediglich helfen!
das habe ich auch schon bemerkt aber wusste ich nicht wie...
Tja und damit sind wir wieder oben beim Thema angekommen.
Nur weil dies in den "gesaugten" Beispielen aus dem Internet vielleicht nicht vorhanden war, muss es doch irgendwie gehen, oder?
Wie ich schon ein paar mal geschrieben habe.....
Dein Uhrenprojekt als erste Übung finde ich klasse. Zumnal du es selbst geschrieben hast.
Ich habe allerdings schon einige Zeit den Eindruck, dass du dein Uhrenprogramm zwar selber per Hand getippt hast, aber letztlich ein Großteil der Funktionen doch nur "zusammen kopiert" sind.
Ich würde daher sagen, pack dein jetziges Programm mal an die Seite und beginne mit einzelnen Teilen.
Bleiben wir mal beim LCD......
Nimm einen Timer, der dir z.B. jede Sekunde einen Interrupt erzeugt.
In dieser ISR (= Interrupt Service Routine, also Subroutine) zählst du eine Variable hoch.
Diese Variable lässt du dir auf dem Display an einer bestimmten Stelle anzeigen...... aber dies nur EINMAL, sobald sich der Variablenwert verändert hat. Wenn es nicht neues anzuzeigen gibt, wird das Display auch nicht aktualisiert.
Versuch es doch einfach mal..... und such nicht im Internet nach Lösungen.
Kannst ja deine Versuche und Ansätze ruhig hier einstellen. Auch wenn sie nicht funktionieren.
Den einen oder anderen Tipp wirst du dann bestimmt erhalten..... aber mit Sicherheit keine fertige Lösung.
Wird schon klappen!
Gruß,
Cassio