' Program STEP.TIG
'
' Illustrates how to turn a stepping motor in one direction.  Uses an
' array of patterns and advances the index through the array.

' Copyright, Krystal Donald, Morgan State University, Oct 21, '97



   ARRAY STEP_PATTERN (8) OF BYTE   'DECLARATION OF A GLOBAL ARRAY
TASK MAIN                           'STARTS MAIN
   DIR_PORT 8,0                     'SETS PORT 8 TO OUTPUTS
   BYTE STEP_INDEX                  'DECLARE BARIBLE STEP_INDEX
   
   BYTE A
   BYTE B                           
   STEP_INDEX =0B                   'THE FOLOWNG LINES ARE VALUES FOR
   STEP_PATTERN (0)=  01B           'EACH SPACE OF THE ARRAY STEP_PATTERN
   STEP_PATTERN (1)= 11B
   STEP_PATTERN (2)= 10B
   STEP_PATTERN (3)= 110B
   STEP_PATTERN (4)= 100B
   STEP_PATTERN (5)= 1100B
   STEP_PATTERN (6)= 1000B
   STEP_PATTERN (7)= 1001B
   
   B=1                           'B IS EQUAL TO ONE
   WHILE B = 1                   'RUN FOREVER
   A=STEP_PATTERN(STEP_INDEX)    'A=STEP_PATTERN(POSITION)       
   LL_IPORT_OUT 8,A              'OUTPORT VALUE OF A
   STEP_INDEX = STEP_INDEX +1    'INCREMENT POSITION
   IF STEP_INDEX = 8D THEN    	 'IF IN LAST POSITION THEN 
      STEP_INDEX = 0B             'START OVER
   ENDIF                         'END IF STATEMENT
   WAIT_DURATION  50             'DELAY
   ENDWHILE                      'END WHILE LOOP
END                              'END PROGRAM