Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - Zum C-Control-I-Forum - Zum C-Control-II-Forum

Re: Schalterstellung testen Kategorie: Programmierung C (von Jenny - 21.04.2013 19:18)
Als Antwort auf Re: Schalterstellung testen von Jan - 21.04.2013 18:08

> > Hallo,
> >
> > ich versuche mit dem Application Board eine kleine Messschaltung zu steuern.
> > Dazu würde ich gerne als erstes testen, ob zwei Schalter in der richtigen Position (offen/zu) sind.
> > Leider bekomme ich mit meinem Code aber immer das gleiche Ergebnis, nämlich Schalter "ok", hier mein Code:
> >
> > //TEST: SCHALTER IN NULL-STELLUNG?
> >     Port_DataDirBit(17,0);                  //PORT PC0 ALS EINGANG DEF.
> >     if(Port_ReadBit(17)==1)
> >     {
> >         Msg_WriteText("Schalter OK");
> >     }else Msg_WriteText("Schalter falsche Position");
> >
> > Kann mir jmd. einen Tipp geben, was ich falsch mache? Hatte vermutet, dass mir ReadBit eine 1 liefert,
> > wenn der Schalter geschlossen ist ?? Ich will die Ports des SRAM für meine Zwecke nutzen (wenn das ok ist ?!)
> >
> > Viele Grü�e
>
> Hallo Jenny,
>
> Du solltest mit PortWriteBit(17,1) nach dem Def. als Eingang den Pullup- Widerstand einschalten.
> Der PortBit liegt jetzt gegen VCC und die Abfrage ergibt '1'.
> Die Schalter liegen an GND. Durch SchlieÃ?en eines Schalters wird der Eingang gegen GND gezogen und
> die Abfrage ergibt jetzt '0'. Die Bedingung in Deinem Beispiel ist also bei geöffnetem Schalter
> wahr.
> Wenn Du die Ports C und A für Deine Zwecke verwenden möchtest und das SRAM nicht benötigst, musst
> Jumper JP7 nach links umstecken. Dann ist das ok.
>
> Grü�e, Jan

Hallo Jan,

danke für den Tipp mit den Pullup-Widerständen! Bei einem Schalter funktioniert es jetzt so!
Beim zweiten Schalter noch nicht...da kommt am dazugehörigen PIN irgendwie immer eine 1 an, egal
welche Stellung^^...

Viele Grü�e


    Antwort schreiben


Antworten: