\ This program simulates the temperature reading zones \ through the use of a resitor pot, an analog input and \ three color leds on the 'Pod(TM). It also demonstrates the use of \ the Virtually Parallel Machine Architecture language. \ \ Use a single turn 10K resistor pot \ connect the wiper, pin 2 to AD0 \ connect pin 1 to VREF, pin 3 to VSSA \ Download this program then press reset \ Led color will display based on the rotary pot zone as shown below \ --------------------------+ \ WARM | \ 1.5 | \ 1 > ^ < 2 | \ / \ | \ | \ YEL / | | \ | \ / | | \ COOL ^ GRN | RED V HOT | \ \ | / | \ < v > | \ 0|3 | \ | \ --------------------------+ \ SCRUB ( convert ad0 data to decimal value, 0.0-3.3 save on stack ) : AD0VAL ADC0 ANALOGIN 3.30e FSWAP S>F 32760.0e F/ F* ; EEWORD MACHINE LOW EEWORD ON-MACHINE LOW APPEND-STATE LO EEWORD MACHINE MID EEWORD ON-MACHINE MID APPEND-STATE MI EEWORD MACHINE HIGH EEWORD ON-MACHINE HIGH APPEND-STATE HI EEWORD IN-STATE LO CONDITION ( if ad0 value < 1.0 ) AD0VAL 1.0E F< CAUSES REDLED OFF YELLED OFF GRNLED ON THEN-STATE MI TO-HAPPEN IN-EE IN-STATE MI CONDITION ( if ad0 value > 1 && < 2 ) AD0VAL FDUP 2.0E F< 1.0E FSWAP F- F0< AND CAUSES REDLED OFF YELLED ON GRNLED OFF THEN-STATE HI TO-HAPPEN IN-EE IN-STATE HI CONDITION ( if ad0 value > 2.0 ) AD0VAL 2.0E FSWAP F- F0< CAUSES REDLED ON YELLED OFF GRNLED OFF THEN-STATE LO TO-HAPPEN IN-EE : MAIN ( -- turn off all leds on reset -- ) REDLED OFF YELLED OFF GRNLED OFF ( -- start isomax clock -- ) 50000 PERIOD ISOMAX-START ( -- install machine low -- ) LO SET-STATE INSTALL LOW ( -- install machine mid -- ) MI SET-STATE INSTALL MID ( -- install machine high -- ) HI SET-STATE INSTALL HIGH ; EEWORD AUTOSTART MAIN SAVE-RAM