Gast
#536474
Hallo zusammen, ich habe hier mal wieder eine Idee und weiß nicht so recht, ob das was werden könnte... Bin hier immer noch damit beschäftigt, die Software für meine Heizungssteuerung zu schreiben. Da ich leider nur ASM kann ist das ganze von der späteren erweiterbarkeit, ohne den Code zu ändern sehr schlecht möglich. Jetzt habe ich mir überlegt, eine art "Basic" interpreter zu schreiben. Dieser ist natürlich sehr abgespeckt und kennt auch nur Befehle die zur Steuerung der Anlage interessant sind. Soll dann alles über V.24 (Terminalprogramm) gesteuert werden. Ein 4x20 LCD zeigt entsprechende, Programmierte Anlagendaten an. Geschriebene Programme können dann auf einer SD/MMC Karte gespeichert und geladen werden. Dies kann dann auch zum aufzeichnen eines Log Files dienen. Wenn ich jetzt eine Zeile in den Puffer hole, muß diese erst zerlegt werden, auf Fehler überprüft werden und ausgeführt werden. Bei einfachen Befehlen wie "RELAIS X:=1" -> Relais x einschalten kein Problem. Wie geht man aber am besten bei einer IF THEN Anweisung ran? Es gibt ja mehrere varianten, die erkannt werden müssen. Bsp: IF X > 1 THEN PUMPE N:=1 IF X = Y THEN GOTO 20 IF (X-5) = 2 THEH Z:=12 oder Mathematische Operationen X:=(Z+3)*Y-5*2 Ist im Prinzip eine ganz einfache Taschenrechner Punkt vor Strich rechnung mit Klammer. Wie kann man soetwas realisieren? Ist ja im prinzip nichts neues konnte der ZX81 glaub ich auch schon alles. Bin für jeden Tipp/Link dankbar, denn ich denke das dies die Lösung meines Problemes mit der Erweiterbarkeit der Steuerung ist. Jedes Relais, jeder PWM Kanal, jeder Temp Sensor Raumfühler LCD bekommt eine Adresse auf dem RS-485 Bus zugewiesen und ist vom Interpreter dann unter dieser ansprechbar. Da es sich hier 'nur' um eine Heizungssteuerung/Temperaturregelung handelt, spielt Geschwindigkeit eine sehr untergeordnete Rolle. Viele Grüße und besten dank im voraus, Tubie