Forum: Mikrocontroller und Digitale Elektronik C-Control 1 Hilfe benötigt. Wer kennt sich aus


von Sebastian S. (sebo-82)


Lesenswert?

Ich habe ein C-Control 1 mit Starterboard.

Ich möchte das relais von port 1 schalten, wenn ich port 16 mit einem 
schalter brücke.

------------
Mit meinen wenigen Programmierkenntnissen habe ich dazu folgenden text 
geschrieben.

define relais port [1]
define taster port [16]

relais = 0  'ist ja sonst auf dauer von ccontrol wenn man spannung 
anlegt

if taster = 1 then gosub an else gosub aus

#an
relais = 1

#aus
relais = 0
-----------

Wenn ich nun das Programm rüber schiebe und das c-control starte 
schaltet das programm das relais aus, wenn ich nun port 16 brücke 
schaltet das relais ein. Allerdings lässt es sich durch erneutes brücken 
nicht mehr ausschalten.

Was mache ich falsch ?

Für so ein einfaches Programm habe ich nirgendwo ein passendes Beispiel 
gefunden.

Ich bin für alle Tips dankbar .

Grüße
Sebastian

von Klaus2m5 (Gast)


Lesenswert?

Am Ende jedes Unterprogramms muss ein RETURN stehen.

von Sebastian S. (sebo-82)


Lesenswert?

Okay das mit dem return habe ich ausprobiert.

Das ergebniss: Wenn ich das C-control starte, geht er für eine sekunde 
an und dann aus also bleibt garnicht erst im start modus. Wenn ich den 
Knopf dann gedrückt halte rattert das Relais.

von Lasse S. (cowz) Benutzerseite


Lesenswert?

Ohne Ahnung davon zu haben, wie die Programmiersprache aussieht:

Fehlt da nicht irgendwo ne Dauerschleife? (Um die Tasterabfrage herum)

Gruß
Lasse

von Klaus 2. (klaus2m5)


Lesenswert?

So sollte Dein Programm eigentlich aussehen:
1
define relais port [1]
2
define taster port [16]
3
4
relais = 0
5
6
#loop
7
if taster = 0 then tog relais           'Taste gedrückt zieht Eingang auf Masse
8
pause 5                                 '100ms Tastenprellen abwarten
9
#wait_taste
10
if taster = 0 then goto wait_taste      'warten, bis Taste losgelassen
11
pause 5                                 '100ms Tastenprellen abwarten
12
goto loop

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
Noch kein Account? Hier anmelden.