Forum: Mikrocontroller und Digitale Elektronik AND, OR und andere mathematischen funktionen in bascom


von Thomas S. (Firma: RF-I) (rasieel)


Lesenswert?

Hallo,

ich steh vor einem problem ich will die and funktion nutzen von bascom 
leider bekomme ich es nicht hin. ich will das wenn die ports PA6 AND PA7 
high sind am ausgang PC0 eine 1 haben.

wie schreibt man dies

von Philipp B. (philipp_burch)


Lesenswert?

Und wo ist das Problem? Ich kenne BASCOM zwar nicht, dürfte aber 
irgendwie so aussehen (Vorausgesetzt, Bitschiebeoperatoren << und >> 
sind vorhanden):

If PORTA And ((1 << PA6) Or (1 << PA7)) Then
  PORTC = PORTC Or (1 << PC0)
Else
  PORTC = PORTC And Not (1 << PC0)
End If


Bäääh, das ist vielleicht hässlich... Basic hat für solche Spässe 
definitiv die falsche Syntax.

von antiLobby (Gast)


Lesenswert?

Klar zuerst mal die Ports entsprechend als Ausgang und Eingang 
deklarieren.
Weisst Du sicher.
da zb So

if pinA.6=1 and pinA.7=1 then
   PortC.6=1
else
   PortC.6=0
end if

Daran denken Bascom kann blöderweise keine Kettenporationen wie X=X+Y+Z
Das muss man immer aufteilen.

von antiLobby (Gast)


Lesenswert?

Ähh Tippfehler

PortC.0=1  bzw PortC.0=0

von Marko (Gast)


Lesenswert?

tempbyte = pina and &B11000000
if tempbyte=&B11000000 then
portc.0=1
else
portc.0=0
endif

von Thomas S. (Firma: RF-I) (rasieel)


Lesenswert?

yeah super entlich klapts

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.