forget wt $ 5 const wt { ### Die Konstante wt legt die Länge einer Warteschleife fest; { ### nötig bei zweikanaliger Messung nach Umschalten des { ### Multiplexers zur "Beruhigung der AD-Wandler-Einheit" { >>> 240 const anf 3ff const end { ### Anfangs- und Endadressen im SRAM des Prozessors; unter 240 Daten- { ### sicherheit nicht gewährleistet { >>> : , & . $ d EMIT RET : ,, d EMIT ." Zeit" 21 EMIT & . $ ." ms" d EMIT 21 EMIT RET { ### Varianten von Druckbefehlen: Zeilenvorschubzeichen wird { ### mitgesandt bzw. ein Ausrufezeichen zur Synchronisierung des { ### PC-Terminals, Kommentartexte und wieder Zeilenvorschubzeichen { >>> $ : DLY 1 REPEAT SWAP DUP ROT INK DUP ROT >= UNTIL DROP DROP RET { ### Hilfswort Warteschleife { >>> $ : ULR anf REPEAT INK INK DUP 21 EMIT DUP RD vch0 norm , end >= UNTIL DROP RET { ### liest die gespeicherten Messwerte aus dem SRAM aus, { ### normalisiert sie und sendet sie an den PC - einkanalige Messung { >>> $ : ULR2 anf REPEAT INK INK DUP 21 EMIT RD vch1 norm & . $ INK INK DUP DUP RD vch0 norm , end >= UNTIL DROP RET { ### dito - einkanalige Messung { >>> : STORE1 $ FFFF DUP MS SWAP anf REPEAT wt DLY INK INK DUP DIFIN SWAP WR DUP end >= UNTIL DROP TIME - ,, ULR RET { ### Einkanalige Messung; die Messwerte werden im SRAM zwischen- { ### gespeichert; dann wird die benötigte Zeit in ms an den PC { ### gesandt, dann erst werden die Messwerte aus dem SRAM ausgelesen { ### und normalisiert an den PC gesandt. { >>> : test adc_on store1 adc_off ret { ### Beispielwort für Nutzung von store1 { >>> : STORE2 $ FFFF DUP MS anf REPEAT INK INK DUP wt DLY mux0 rb admux wb difin SWAP WR INK INK DUP wt DLY mux1 rb admux wb difin SWAP WR DUP end >= UNTIL DROP TIME - ,, ULR2 RET { ### Zweikanalige Messung; analog STORE2 { >>> : test2 adc_on2 store2 adc_off ret { ### Beispielwort für Nutzung von store2 { ### von $ anf = 240 bis $ end = 3ff können 223 Datenworte zu je 2 Bytes abgelegt werden.