Forum: Mikrocontroller und Digitale Elektronik Port als Eingang macht probleme


von Markus (Gast)


Lesenswert?

Hallo,

hab da ein problem mit meinem 80c537 und zwar macht der nur
undefinierte Sachen. Das Programm erstelle ich mit dem c-compiller von
keil im prog. steht:

#include<reg515.h>
#include<stdio.h>

#define ein P54
#define aus P41
void main (void)
{
ein=1;
aus=0;
if(ein==1)
{
aus=1;
}
}
jetz hab ich das Problem das er in den if-zweig springt oder mal auch
nicht. Der Schalter "ein" ist ne elektronische Lichtschranke.
Danke schon mal im vorraus!!!

von Adrian (Gast)


Lesenswert?

ueberpruefst du in einer endlosschleife den zustand der lichtschranke?

hier sieht es so aus, als waere dein programm nach einer ueberpruefung
beendet.

von Josef (Gast)


Lesenswert?

Pullups ?

von Markus (Gast)


Lesenswert?

@adrian

ja das läuft in einer Endlosschleife durch. Vor der Zeile "aus=1;"
steht ein Unterprogrammaufruf zu ner Warteschleife.

@josef was ist mit der Frage "Pullups ?" genau gemeint?

von Peter D. (peda)


Lesenswert?

Da fehlt die Hauptschleife !

Das main() darf niemals enden, sonst rennst Du ins Nirwana.


main()
{
           // Initialisieren
  for(;;){
           // Hier must Du drin bleiben !!!
  }
}


Peter

von Adrian (Gast)


Lesenswert?

er meinte doch dass er da eine warteschleife drin hat die das ganze wohl
wieder aufruft; allerdings glaube ich dass da das problem liegt, denn
wenn er die vor aus=1 einfuegt, dann kann die warteschleife eigentlich
nicht einen geschlossenen kreis bilden...

vielleicht zeigst du uns ja mal den kompletten code....

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.