当前位置:首页 > 51单片机实验讲义所有源程序
CALL SPIOPAD MOV A,R5 MOV R7,#8 SPIWR1: RLC A
MOV DI,C SETB SK CLR SK
DJNZ R7,SPIWR1 CLR CS
SETB CS MOV R7,#0 SPIWR2:
JB D0,SPIWR3 DJNZ R7,SPIWR2
JMP ERROR SPIWR3:
MOV A,#EWDS MOV R7,#0 CALL SPIOPAD CLR CS
RET SPIRD:
MOV A,R6 MOV R7,A SETB CS
MOV A,#READ CALL SPIOPAD MOV R7,#8 SPIRD1:
SETB SK CLR SK
MOV C,D0 RLC A
DJNZ R7,SPIRD1 CLR CS
RET END 实验十五四相步进电机控制 STEPPORT EQU 8060H INPORT EQU 8060H CSEG AT 0 AJMP MAIN CSEG AT 30H
MAIN:
MOV R0,#0 NEXT:
MOV DPTR,#INPORT MOVX A,@DPTR ANL A,#80H
JZ NEXT3 MOVX A,@DPTR ANL A,#02H
JZ NEXT MOVX A,@DPTR ANL A,#01H
JNZ NEXT1 INC R0 SJMP NEXT2 NEXT1:
DEC R0 NEXT2:
MOV A,R0 ANL A,#03H
MOV R0,A
MOV DPTR,#PHASETAB MOV A,R0 MOVC A,@A+DPTR
MOV DPTR,#STEPPORT MOVX @DPTR,A
CALL DELAY SJMP NEXT NEXT3: SJMP $
PHASETAB:
DB 30H,60H,0C0H,90H DELAY:
MOV R7,#0 DELAY1:
MOV R6,#0 DELAY2: DJNZ R6,DELAY2 DJNZ R7,DELAY1 RET END STEPPORT EQU 8060H CSEG AT 0 AJMP MAIN
CSEG AT 30H
MAIN:
MOV DPTR,#STEPPORT CLR A
MOVX @DPTR,A
MOV R0,#0 MOV R1,#20
NEXT1:
MOV DPTR,#PHASETAB MOV A,R0
MOVC A,@A+DPTR
MOV DPTR,#STEPPORT MOVX @DPTR,A
CALL DELAY INC R0 MOV A,R0 ANL A,#03H
MOV R0,A DJNZ R1,NEXT1
MOV R1,#21 NEXT2:
MOV DPTR,#PHASETAB MMOV A,R0
MOVC A,@A+DPTR
MOV DPTR,#STEPPORT MOVX @DPTR,A
CALL DELAY DEC R0 MOV A,R0 ANL A,#03H
MOV R0,A DJNZ R1,NEXT2 SJMP $
PHASETAB:
DB 30H,60H,0C0H,90H DELAY:
MOV R7,#0 DELAY1:
MOV R6,#0 DELAY2: DJNZ R6,DELAY2 DJNZ R7,DELAY1 RET END 实验十六直流电机控制
CS0832 EQU 8031H
XFER EQU 8030H INPORT EQU 8060H BITPORT EQU 8063H SEGPORT EQU 8060H DSEG AT 30H BUF: DS 4 LPTR: DS 1 LBIT: DS 1 CNT: DS 1 CSEG AT 0 AJMP MAIN CSEG AT 0 AJMP MAIN CSEG AT 001BH AJMP T1_INT CSEG AT 30H MAIN:
MOV MOV MOV MOV MOV
MOV
MOV MOV MOV MOV MOV MOV SETB SETB SETB SETB NEXT:
MOV MOVX A,@DPTR
MOV MOVX @DPTR,A
MOV MOVX @DPTR,A
CALL SJMP NEXT
LPTR,#0 LBIT,#11H BUF,#13H BUF+1,#13H BUF+2,#13H
BUF+3,#13H
TMOD,#00010101B TH0,#0
TL0,#0
TH1,#HIGH(65536-50000) TL1,#LOW(65536-500000 ) CNT,#32 ;50MS*32=1.6S TR0 TR1 EA ET1 DPTR,#INPORT DPTR,#CS0832 DPTR,#XFER DLED
共分享92篇相关文档