WifiRelay Blackline User Code

User Code

Es handelt sich um eine Simple Basic Sprache. Dieser Code läuft in einer Endlosschleife.

if if a=b (gleich)
if x%2 (mod)
if a=b | b=c (oder)
if a=b & c=d (und)
Vergleich
else }else{ Bedingung
for for i = 0 to 50 {}; Zählschleife
to    
delay delay(500); warte 500 Millikunden 
while while c=255 {}; Bedingung Solange c=255 ist 
setdht setdht(pin,typ);

DHT Einstellung
Bei I2C Pin16 nicht verwenden!
typ kann sein
11=DHT11
21=DHT21
22=DHT22

gettemp x=gettemp; speichert die Temperatur in der Variable x
gethumi x=gethumi; speichert die Luftfeuchte in der Variable x
udpstat udpstat; Anfordern des Status und versenden per UDP
getrel1 x=getrel1; speichert den Relayzustand in der Variable x
setrel1 setrel1(x); Setzen des Relays 1 = AN 0 = AUS
rel1tog rel1tog; Zustand des Relay 1 wechseln
imp1 imp1; Zustand des Relay 1 für eine einstellbare Zeit wechseln
getrel2 x=getrel2; speichert den Relayzustand in der Variable x
setrel2 setrel2(x); Setzen des Relays 2 = AN 0 = AUS
rel2tog rel2tog; Zustand des Relay 2 wechseln
imp2 imp2; Zustand des Relay 2 für eine einstellbare Zeit wechseln
setpin setpin(pin,value); setze den Pin auf den Zustand von value
getpin x=getpin(pin); speichert den Zustand von Pin in der Variable x
pinmode pinmode(pin,mode); setze den Pin auf mode. Mode kann sein
1 für Ausgang
0 für Eingang oder
2 für Eingang mit PullUp (Schalten gegen GND)
3 für Eingang mit PullUp und Interrupt, schaltet das Relay (Schalten gegen GND)
seti2c seti2c(sda,scl,typ); seti2c(4,5,24) konfiguriert pin 4 zu sda, pin 5 zu scl und setzt den Typ auf HTU21
verwendbare Typen
23=AM2321
24=SHT21/SI7021/GY-21/HTU21
28=BMP280
29=BH1750

Jeder Befehl muss mit einem ; abgeschlossen werden! Es sollten keine Leerzeilen vorhanden sein.
Bedinget Anweisungen haben immer folgendes Format

if Bedingung { Anweisung oder neue Bedingung }; if a=b { setpin(2,1); }else{ setpin4,1); }; Beachten Sie die Semikolon setzungen.

Beispiele:

h=gethumi;
r=getpin(2);
if r=0 {
  setpin(2,1);
  delay(500);
}else{
  setpin(2,0);
  delay(500);
};
if t<10 | h>20{
  setrel1(1);
}else{
  setrel1(0);
};