| ??? 01/02/08 22:00 Read: times |
#148973 - SWITCHES Responding to: ???'s previous message |
Thanks so much Jon,
The step portion is working now with delays, but not proper amount of delays. I just added the return in to steplooper portion. and will try. Here is elaborated step portion with comments ...STEPW50: JB SWITCH1,STEPW100 ; GO TO STEPW100 IF SWITCH 1 IS HIGH
JB SWITCH2,STEPW100 ; GO TO STEPW100 IF SWITCH 1 IS HIGH
CALL STEPLOOP ; move 180 degrees
CALL DELAY ; DELAY 1/2 SEC
SJMP MAIN ; BACK TO MAIN
STEPW100: JB SWITCH2,STEPW150 ; GO TO STEPW100 IF SWITCH 2 IS HIGH
JNB SWITCH1,STEPW150 ; GO TO STEPW100 IF SWITCH 1 IS LOW
CALL STEPLOOP ;move 180 degrees
CALL DELAY ; DELAY 1/2 SEC
CALL DELAY ; DELAY 1/2 SEC
ljmp MAIN
STEPW150: JNB SWITCH1,STEPW200 ; GO TO STEPW200 IF SWITCH 1 IS HIGH
JB SWITCH2,STEPW200 ;GO TO STEPW200 IF SWITCH 2 IS LOW
CALL STEPLOOP ;move 180 degrees
CALL DELAY ; DELAY 1/2 SEC
CALL DELAY ; DELAY 1/2 SEC
CALL DELAY ; DELAY 1/2 SEC
ljmp MAIN ; BACK TO MAIN
STEPW200:
CALL STEPLOOP ;move 180 degrees
CALL DELAY ; DELAY 1/2 SEC
CALL DELAY ; DELAY 1/2 SEC
CALL DELAY ; DELAY 1/2 SEC
CALL DELAY ; DELAY 1/2 SEC
ljmp MAIN ; BACK TO MAIN
;***************************************
STEPLOOP: MOV R1,#200 ;LOOP COUNTER SET TO 200 TIMES
STEPLOOPER: setb STEPOUT ; TURN ON STEP OUTPUT PIN
CALL STEPON ; LEAVE PIN ON 1uSEC
clr STEPOUT ; TURN OFF STEP OUTPUT PIN
CALL STEPOFF
DJNZ R1,STEPLOOPER
RET
;***************************************
;***************************************
; .5 SEC DELAY ROUTINE
DELAY: MOV SP,#70H
MOV R7,#0AH ;OUTER LOOP COUNTER SET TO 10 TIMES
MOV R5,#236 ;INNER LOOP COUNT SET TO 236 TIMES
LOOP2: MOV R6,#00H ;MIDDLE LOOP SET TO 256 TIMES
LOOP1: DJNZ R5,LOOP1;LOOP 256 TIMES
DJNZ R6,LOOP1;LOOP 236 TIMES
DJNZ R7,LOOP2;LOOP 10 TIMES
RET ;RETURN PROGRAM
;***************************************
;***************************************
; 1 uSEC DELAY WHILE STEP PUSE OUTPUTTED
STEPON: MOV R5,#02H ;LOOP SET TO 2 TIMES
LOOP3: DJNZ R5,LOOP3;LOOP 2 TIMES
RET
;***************************************
;***************************************
; TIME OFF BETWEEN EACH STEP PULSE
STEPOFF: MOV R5,#04H ; OUTER LOOP SET TO 4 TIMES
MOV R6,#00H ; INNER LOOP SET TO 256
LOOP4: DJNZ R6,LOOP4 ; LOOP 256 TIMES
DJNZ R5,LOOP4 ; LOOP 4 TIMES
RET
;***************************************
...
Steve |
| Topic | Author | Date |
| 8052 help w/ my code please | 01/01/70 00:00 | |
| How to program a stepper driver | 01/01/70 00:00 | |
| Delay | 01/01/70 00:00 | |
| this makes absolutely no sense | 01/01/70 00:00 | |
| tried commenting delay | 01/01/70 00:00 | |
| no offense, but THINK | 01/01/70 00:00 | |
| ah | 01/01/70 00:00 | |
| yes | 01/01/70 00:00 | |
| What is oscillator speed? | 01/01/70 00:00 | |
| osc speed | 01/01/70 00:00 | |
| MEGAHENRY? | 01/01/70 00:00 | |
| oops | 01/01/70 00:00 | |
| Try this | 01/01/70 00:00 | |
| Not the cure | 01/01/70 00:00 | |
| SWITCHES | 01/01/70 00:00 | |
| Was that YOUR simulator, Jon? :-) | 01/01/70 00:00 | |
| Pinnacle52 | 01/01/70 00:00 | |
| Found it | 01/01/70 00:00 | |
| Almost there | 01/01/70 00:00 | |
| any LEDs? | 01/01/70 00:00 | |
| no led's | 01/01/70 00:00 | |
| then use the scope as a LED... :-) | 01/01/70 00:00 | |
| but not THIS nonsense! | 01/01/70 00:00 | |
| good idea | 01/01/70 00:00 | |
| Try it now. | 01/01/70 00:00 | |
| I think, Steve meant, he will try to use the scope | 01/01/70 00:00 | |
| Oh..OK | 01/01/70 00:00 | |
It works | 01/01/70 00:00 |



