wait- oder waitms-Befehl wartet nicht ?

OP #839553
Lesenswert?

...kennt einer den Effekt ? in einigen Fällen scheint der Wait-Befehl 
nicht zu  warten ?!

wie behebe ich das ?

...habe die Bascom-Version 1.11.8.8


Gruß
 rumpen


------------------------------------------------------------------------ 
-
Code-Beispiel:

Do
   Print "hello"
   Waitms 5000
Loop

End

PS.: wait geht übrigens auch nicht !?
Gast #839569
Lesenswert?

Hallo

Ich habe Bascom gerade nicht zur Hand aber....
hast Du mal einen kleineren Wert versucht (Waitms 500)? Vielleicht gibt 
es da eine Obergrenze, wobei beim überschreiten dieser der Compiler eine 
Fehlermeldung abgeben sollte.

Gruß
Alber
Gast #839623
Lesenswert?

doch, der wartet, aber du merkst das einfach nicht!
was er macht ist einfach nur
"hello" ausgaben
warten 5 sek
"hello" noch mal ausgeben.
dabei bleibt auf dem Display alles unverändert.

probier mal so

Print "hello"
Waitms 2500
Clr
print "hello"
waitms 2500
loop

Viel Erfolg
MfG Alexander
OP #839675
Lesenswert?

hmm, irgendwie funzt das alles nicht wie erwartet ( danke für den 
C-schnipsel - kann aber leider kein C)

habe untenstehdnes probiert:   ... und es wartet auch nicht ? merkwürdig 
!
ich gebe das ganze über Com1 auf einen 2.ten Rechner ans Terminal
und hättte jetzt einen sehr langsamen Zeilenvorschub erwartet ( zu 
erkennen am aufblitzen des Cursors) - aber die Zeilen rauschen nur so 
durch

was tun ?

erstaunlicherweise habe ich gestern ein kurzes Testprog, in dem ein 
AD-Wert über Com1 ausgegeben wird, gestestet und da kann komfortabel 
über den waitms-Befehl die Ausgabe geschwindigkeit steuern . ??? warum 
nur hier ???


********************* das geht nicht ************
Do

Waitms 500
Waitms 500
Waitms 500
Waitms 500

Print " "
Print "hello"
Waitms 500
Waitms 500
Waitms 500
Waitms 500
Waitms 500

Print " "
print "hello"
Waitms 500
Waitms 500
Waitms 500
Waitms 500
Loop

End

***********************************************************************
hier ein Teil der AD-Demo: das geht ....

Do
  W = Getadc(channel)
  Print "Channel " ; Channel ; " value " ; W
  Waitms 1000
Loop
End
OP #841758
Lesenswert?

ahh, die Erlösung - es war das $sim-Statement !!! habe mir irgendwoher 
einen
'Kopf' kopiert, ohne alles verstanden zu haben.....

....also $sim raus.

--> wait geht !!

--> und die Ansteuerung des LCD-Displays damit auch !!!endlich !
    Es geht hier übrigens um das EA W162B-N3LW (wurde im Forum schon 
irgendwo
    mal als problematisch erwähnt )--> läuft mit der lcd4.lib....

schönen Dank an alle, die sich meinetwegen den Kopf zerbrochen haben ...


Gruß
 Rumpen

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren