
|
INFO - FAQ - CC2-Forum - CCPro-Forum |
|
||
|
Hallo Jens, hallo liebe Helfer... Bitte seht es mir nach, dass ich Eure kostbare Zeit durch mein Versehen verschwendet habe. Man sollte doch immer den PORT[3] mit einem 10k Widerstand gegen Plus versehen. Habe ich vergessen und nach der Abringung siehe da - alles wunderbar! Viele herzliche Grüße und vielen Dank Martin > Hallo Jens! > > ich habe eine Mini mit 16 Pins. > Der Port ist über DIP oder Jumper mit GND verbunden. > > Mein Programm sieht so aus: > > DEFINE J1 PORT[1] 'AD PORT > DEFINE J2 PORT[2] 'AD PORT > DEFINE J3 PORT[5] 'AD PORT > > ' --- ABFRAGE JUMPER / DIPSCHALTER ------------------------------------------ > IF J1 = ON AND J2 = ON AND J3 = ON THEN GOTO STUFE000 > IF J1 = OFF AND J2 = ON AND J3 = ON THEN GOTO STUFE100 > IF J1 = ON AND J2 = OFF AND J3 = ON THEN GOTO STUFE010 > IF J1 = ON AND J2 = ON AND J3 = OFF THEN GOTO STUFE001 > > #STUNFE000 > Programm... > GOTO STUFE000 > > #STUNFE100 > Programm... > GOTO STUFE100 > > #STUNFE010 > Programm... > GOTO STUFE010 > > #STUNFE001 > Programm... > GOTO STUFE001 > > > Problem: > Stufe 000, 100 und 010 funktionieren. > Alle Stufen ab 001... gehen nicht und der Micro bleibt hängen. > > Was ist mein Fehler? > > LG > Martin > > > > > > > Hallo Martin! > > > > Anbei mal ein Lösungsansatz, getestet mit der Open-Micro. Mit dem DIP-Schalter an Port[3] wirst Du Probleme bekommen, das wird so nicht funktionieren, hier musst Du einen anderen Port verwenden. > > > > JG Jens > > > > > > ' --- Betriebssystem konfigurieren ----------------------------------------------------- > > include "om10.inc" ' Betriebssystem Daten laden > > RunOnErr = on ' bei Fehler Programm neustarten (Fehler in ERR) > > > > ' --- definition der Ports -------------------------------------------------- > > define RS232 Port[1] ' Serielle Schnittstelle > > define Dip1 Port[2] ' Dip1 > > define Dip2 Port[4] ' Dip2 > > define Dip3 Port[5] ' Dip3 > > > > ' --- definition der Variablen ---------------------------------------------- > > define PrgMode Byte[1] ' Programmverzweigung > > DEFINE Bit0 Bit[1] ' Bit0 vom Byte PrgMode > > DEFINE Bit1 Bit[2] ' Bit1 vom Byte PrgMode > > DEFINE Bit2 Bit[3] ' Bit2 vom Byte PrgMode > > > > ' --------------------------------------------------------------------------- > > ' --- Hauptprogramm --------------------------------------------------------- > > ' --------------------------------------------------------------------------- > > print "Progtramm gestartet..." ' Textausgabe > > #Loop > > Gosub DipAbfrage ' Dip-Schalter abfragen > > Print "Mode = ";PrgMode ' Textausgabe > > Pause 50 ' 1 Sekunde warten > > Goto Loop > > End > > > > #DipAbfrage > > PrgMode = 0 ' Reset - alle Bits löschen > > if (not Dip1) Then Bit0 = ON ' Bit0 setzen > > if (not Dip2) Then Bit1 = ON ' Bit1 setzen > > if (not Dip3) Then Bit2 = ON ' Bit2 setzen > > return |
| Antwort schreiben |