Das Open-Control-Projekt - Die Alternative zur C-Control-I


Das Forum zur C-Control-1
Welche C-Control-Varianten existieren?
Übersicht - Suchen - Neueste 50 Beiträge - Neuer Beitrag - Login - Registrieren
INFO - FAQ - CC2-Forum - CCPro-Forum 

 Re: Simulation funktioniert nicht Kategorie: Verschiedenes (von ManfredL, Homepage - 13.10.2007 11:31)
 Als Antwort auf Re: Simulation funktioniert nicht von Laien Mulli - 12.10.2007 13:37
ManfredL nutzt:  CC1-M-Unit V1.1, CC1-M-Unit V1.2/2.0, Micro, sonstige
Hallo Laien Mulli,

noch mal ganz von vorn.

Ich verwende „Conrad C-Control/CCBasic 2.0 IDE“.
Die ältere Version funktioniert aber auch.

Unter -Ansicht- werden folgende Fenster aktiviert:

Überwachte Variablen
C-Control Ausgaben
C-Control Digitalports
C-Control Analogports

Mit -Datei- -Neu- ein Editor Fenster öffnen.

Dort kopierst Du das unten aufgelistete Programm rein.

Dann mit -Entwicklung- -Compilieren- das Programm übersetzen.

Im Fenster -Überwachte Variablen- rechte Maustaste -Neuen Bezeichner einfügen-
Den Bezeichner nennst Du z.

Im Fenster -C-Control Digitalports- mit der Maus auf Nummer 15 und 16 klicken und dabei die Shifttaste festhalten. Die Ports werden hellgrün. Das bedeutet dass die Ports als Eingang high sind und bei Betätigung low werden.

Nun startest Du den Simulator im Einzelschritt (F8). Dabei muss das Editorfenster aktiv sein.

Die  Zeile z=z +1 wird gefärbt.
F8 drücken (nächster Schritt)
Im Fenster -Überwachte Variablen- wird z als 1 angezeigt.
F8 drücken
Im Fenster -C-Control Ausgaben- wird 1 angezeigt. Das entspricht einer Ausgabe zur RS232.
F8 drücken
F8 drücken
F8 drücken
Die Zeile if(not taste… wird gefärbt.
die zwei vorhergehenden Zeilen haben keine sichtbare Wirkung weil der AD1 Wert noch null ist.
Im Fenster -C-Control Analogports- mit der Maus in das Feld A/D1 klicken dann kann man mit den Pfeil Tasten rechts und links den Wert verändern. Ist der Wert größer als die Schaltschwelle dann wird beim nächsten Durchlauf vom main_program im Fenster -C-Control Digitalports- Nummer 1 rot.
Das bedeutet der Ausgang Port1 ist high.
F8 drücken
usw.

Die Tasten (Port 15,16) haben bisher keine Wirkung weil high. Zum Betätigen im Fenster -C-Control Digitalports- mit der Maus bei gedrückter Shifttaste auf Nummer 15 klicken. Dann wieder das Editor Fenster aktivieren und mit F8 weitermachen. Bei der nächsten Tastenabfrage wird dann das entsprechende Unterprogramm ausgeführt d.h. im Fenster -C-Control Digitalports- erscheint ein Balken bei D/A1.

Spiele mit dem Programm. Es funktioniert im Simulator aber auch auf der C-Control1 mit Sicherheit.

Unter -Optionen- -Umgebung- kann im Abschnitt -Simulator und Lader- festgelegt werden wie der Simulator die Uhrzeit behandelt.

Gruß Manfred


'************************************************************************************
'*             C-CONTROL - BASIC / APPLICATION
'* - Ports 15 und 16 liegen mit 10KOhm an 5V, Taster schalten Ports nach GND
'*
'************************************************************************************
'
' ----------------------------- definition ------------------------------------------
'
' pin
define taste_hoch       port[15]
define taste_runter     port[16]
define Ausgang1         port[1]
define DA_Port1         DA[1]
define AD_Port1         AD[1]
'
' variable
define DA_Wert          byte
define z                byte
'
' constant
define DA_Wert_min      1
define DA_Wert_max      254
define Schaltschwelle   50
'
' ------------------------------- main program -------------------------------------
'
#main_program
  z = z + 1
  print z
'
  DA_Port1 = DA_Wert
  if AD_Port1 > Schaltschwelle then Ausgang1 = on else Ausgang1 = off
'
  if (not taste_hoch) then gosub taste_hoch
  if (not taste_runter) then gosub taste_runter
'
goto main_program
end
'
'-------------------------------- taste_hoch ---------------------------------------
'
#taste_hoch
  if DA_Wert > DA_Wert_max then return
  DA_Wert = DA_Wert + 1
return
'
'-------------------------------- taste_runter -------------------------------------
'
#taste_runter
  if DA_Wert < DA_Wert_min then return
  DA_Wert = DA_Wert - 1
return
'
'---------------------------------end of program------------------------------------


Meine Homepage: http://www.malo-web.de

 Antwort schreiben

Bisherige Antworten:

Re: Simulation funktioniert nicht (von Laien-Mulli - 15.10.2007 22:51)
    Re: Simulation funktioniert nicht (von ManfredL - 16.10.2007 6:29)