Hallo,
ich habe vor eine art Datenlogger zu programmieren der aber auch bei einen Stromausfall die „Messdaten“ nicht verliert.
Diese Messdaten können dann nur mit einen erneuten laden eines Programms gelöscht werden.
Ich kenn das:
Code:
' --- Definitionen ---
define count word
define value word
define sec byte
define key port[2] 'Taster an Port 2
define led port[1] 'LED an Port 1
define sensor ad[7] 'Sensor an A/D 7
' --- Programmoperationen ---
count = 0
led = off 'Ausgang: LED aus!
deact key 'Eingang!
#Start
if filefree then goto loop1
led = on 'Speicher voll!
goto loop2
#loop1
sec = second
if sec = 0 or sec = 30 then gosub log 'alle 30 Sekunden messen/loggen
#loop2
if key=off then gosub dump 'Taste gedrückt: LOW-Pegel an Port 2!!!
' Keine Taste gedrückt:
goto Start
#log
beep 100, 10, 0
if sec <> 0 then goto Sek30
'Sekunde 0:
value = sensor shl 8 '1. Sensorwert (8 Bit) in obere Position schieben
pause 100 '2 Sekunden warten, damit second sicher <> 0 wird
return
#Sek30
'Sekunde 30:
value = value or sensor '2. Sensorwert ins WORD einfügen
open# for append
print# value
close#
count = count + 2 '2 Werte gespeichert
pause 100 '2 Sekunden warten, damit second sicher <> 30 wird
return
#dump
print
print count, " Messwerte"
led = off 'Speicher wird wieder leer!
count = 0 'Zähler zurücksetzen
open# for read
#dumpnext
if eof then return
input# value
print (value shr 8); " "; 'oberes Byte (1. Wert) zeigen
print (value and &H00FF); " "; 'unteres Byte (2. Wert) zeigen
goto dumpnext
Da gehen aber leider die Daten bei einem Stromabfall verloren.
Lesezeichen