Forum: Mikrocontroller und Digitale Elektronik Ports über schleife schalten


von Jo H. (haveaniceday)


Lesenswert?

Hallo zusammen,

ich würde gerne mehrere Zweipunktregler (Heizungen mit Temperatursensor) 
über eine Schleife schalten lassen.
Allerdings habe ich keine Ahnung, wie den jeweiligen Port über die 
Schleife schalten bzw. Rücksetzen lassen soll.

Habe es hier mal schematisch angedeutet.

1
for (i=0;  i<3; i++)
2
{
3
  if (Temperatur[i]<27)
4
    PORTB |= (1 << PB[i]);
5
  else  
6
    PORTB &=~(1 << PB[i]);
7
  }

Am liebsten wäre mir sogar noch, wenn es Port übergreifend erfolgen 
würde, falls mal mehr als 8 Ausgänge erforderlich sind, also z.B. 
P[j][i].

Würde mich sehr freuen wenn einer paar einen Lösungsvorschlaf für mich 
hat

Beste Grüße

Hannes

von gascht (Gast)


Lesenswert?

hinter PB0 steht auch nur eine 0 als define, du kannst also für einen 
z.B. schreiben PORTB |= (1 << 0);

von Jo H. (haveaniceday)


Lesenswert?

Ja perfekt, viele Dank :)
Also vielmehr
1
PORTB |= (1 << [i]);

Aber wie sieht es mit dem PortB bzw. Port[j] aus? Gibt es da auch eine 
Möglichkeit?

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.