?? motor-key.lst
字號:
A51 MACRO ASSEMBLER MOTOR_KEY 05/15/2009 20:05:43 PAGE 1
MACRO ASSEMBLER A51 V8.00d
OBJECT MODULE PLACED IN MOTOR-key.OBJ
ASSEMBLER INVOKED BY: C:\KEIL\C51\BIN\KA51.EXE MOTOR-key.asm SET(SMALL) DEBUG EP
LOC OBJ LINE SOURCE
1 ;/******************************************************************/
2 ;/* */
3 ;/* ME500單片機開發(fā)系統(tǒng)演示程序 - 鍵控步進電機正反轉(zhuǎn)實驗 */
4 ;/* */
5 ;/* */
6 ;/* 版本: V1.0 (2006/11/20) */
7 ;/* 作者: gguoqing (Email: gguoqing@willar.com) */
8 ;/* 網(wǎng)站: www.willar.com(偉納電子) www.mcusj.com(偉納單片機世界) */
9 ;/* 郵箱: support@willar.com */
10 ;/* */
11 ;/*【版權(quán)】Copyright(C)偉納電子 www.willar.com All Rights Reserved */
12 ;/*【聲明】此程序僅用于學習與參考,引用請注明版權(quán)和作者信息! */
13 ;/* */
14 ;/******************************************************************/
15
16 ; 步進電機步進角為 7.5度,一圈 360 度。
17 ; 單四拍工作方式:
18 ; A-B-C-D (即一個脈沖,轉(zhuǎn) 7.5 度)
19 ; 單雙八拍工作方式:
20 ; A-AB-B-BC-C-CD-D-DA (即一個脈沖,轉(zhuǎn) 3.75 度)
21 ; 一個取數(shù)工作周期,步進電機轉(zhuǎn)30度
22 ; 步進電機轉(zhuǎn)一圈需要48個工作脈沖
23 ;-------------------------------------------------------
24 ; A組線圈對應 P1.0 (桔色)
25 ; B組線圈對應 P1.1 (棕色)
26 ; C組線圈對應 P1.2 (黃色)
27 ; D組線圈對應 P1.3 (黑色)
28 ;-------------------------------------------------------
0094 29 K1 BIT P1.4 ;步進電機正轉(zhuǎn)
0095 30 K2 BIT P1.5 ;步進電機反轉(zhuǎn)
0096 31 K3 BIT P1.6
0097 32 K4 BIT P1.7 ;步進電機停止轉(zhuǎn)動
00B7 33 BEEP BIT P3.7
34 ;-------------------------------------------------------
0000 35 ORG 0000H
0000 020030 36 LJMP MAIN
0030 37 ORG 0030H
38 ;-------------------------------------------------------
0030 39 MAIN:
0030 758160 40 MOV SP,#60H
0033 7590F0 41 MOV P1,#0F0H ;關(guān)閉步進電機,鍵輸入線置高
0036 42 MAIN1:
0036 209407 43 JB K1,MAIN2
0039 11A7 44 ACALL BEEP_BL ;步進電機正轉(zhuǎn)
003B 3094FD 45 JNB K1,$
003E 114C 46 ACALL FFW
0040 47 MAIN2:
0040 2095F3 48 JB K2,MAIN1
0043 11A7 49 ACALL BEEP_BL ;步進電機反轉(zhuǎn)
0045 3095FD 50 JNB K2,$
0048 116A 51 ACALL REV
004A 80EA 52 JMP MAIN1
53 ;------------------------正轉(zhuǎn)-------------------------
004C 54 FFW:
55 ;MOV R3,# 64;7.5度電機正轉(zhuǎn)1圈共48個脈沖
004C 7B40 56 MOV R3,#320 ;轉(zhuǎn)5圈需48*5=240個脈沖
*** _____________________________________________^
*** WARNING #A52 IN 56 (MOTOR-key.asm, LINE 56): VALUE HAS BEEN TRUNCATED TO 8 BITS
A51 MACRO ASSEMBLER MOTOR_KEY 05/15/2009 20:05:43 PAGE 2
004E 57 FFW1:
004E 7800 58 MOV R0,#00H
0050 59 FFW2:
0050 209704 60 JB K4,FFW3 ;終止步進電機運行
0053 11A7 61 ACALL BEEP_BL
0055 800F 62 JMP FFW4
0057 63 FFW3:
0057 E8 64 MOV A,R0
0058 90009D 65 MOV DPTR,#TABLE1
005B 93 66 MOVC A,@A+DPTR
005C 60F0 67 JZ FFW1
005E F590 68 MOV P1,A
0060 120087 69 LCALL DELAY
0063 08 70 INC R0
0064 DBEA 71 DJNZ R3,FFW2
0066 72 FFW4:
0066 7590F0 73 MOV P1,#0F0H
0069 22 74 RET
75 ;---------------------------反轉(zhuǎn)--------------------------
006A 76 REV:
77 ;MOV R3,#48 ;7.5度電機正轉(zhuǎn)1圈共48個脈沖
006A 7B40 78 MOV R3,#320 ;轉(zhuǎn)5圈需48*5=240個脈沖
*** _____________________________________________^
*** WARNING #A52 IN 78 (MOTOR-key.asm, LINE 78): VALUE HAS BEEN TRUNCATED TO 8 BITS
006C 79 REV1:
006C 7800 80 MOV R0,#00H
006E 81 REV2:
006E 209704 82 JB K4,REV3 ;終止步進電機運行
0071 11A7 83 ACALL BEEP_BL
0073 800E 84 JMP REV4
0075 85 REV3:
0075 E8 86 MOV A,R0
0076 9000A2 87 MOV DPTR,#TABLE2
0079 93 88 MOVC A,@A+DPTR
007A 60F0 89 JZ REV1
007C F590 90 MOV P1,A
007E 1187 91 CALL DELAY
0080 08 92 INC R0
0081 DBEB 93 DJNZ R3,REV2
0083 94 REV4:
0083 7590F0 95 MOV P1,#0F0H
0086 22 96 RET
97
98 ;-------------------------------------------------------
0087 99 DELAY:
0087 7F28 100 MOV R7,#40 ;步進電機的轉(zhuǎn)速
0089 7EF8 101 DEL1: MOV R6,#248
008B DEFE 102 DJNZ R6,$
008D DFFA 103 DJNZ R7,DEL1
008F 22 104 RET
105 ;-------------------------------------------------------
0090 106 DELAY1:
0090 7D14 107 MOV R5,#20 ;2S 延時子程序
0092 108 DEL2:
0092 7FC8 109 MOV R7,#200
0094 110 DEL3:
0094 7EFA 111 MOV R6,#250
0096 DEFE 112 DJNZ R6,$
0098 DFFA 113 DJNZ R7,DEL3
009A DDF6 114 DJNZ R5,DEL2
009C 22 115 RET
116 ;-------------------------------------------------------
117 ; 單四拍工作方式:
009D 118 TABLE1:
009D F1F2F4F8 119 DB 0F1H,0F2H,0F4H,0F8H ;正轉(zhuǎn)表
00A1 00 120 DB 00H ;正轉(zhuǎn)結(jié)束
A51 MACRO ASSEMBLER MOTOR_KEY 05/15/2009 20:05:43 PAGE 3
00A2 121 TABLE2:
00A2 F8F4F2F1 122 DB 0F8H,0F4H,0F2H,0F1H ;反轉(zhuǎn)表
00A6 00 123 DB 00H ;反轉(zhuǎn)結(jié)束
124 ;--------------------------------------------------------
125 ;蜂鳴器響一聲子程序
126 ;--------------------------------------------------------
00A7 127 BEEP_BL:
00A7 7E64 128 MOV R6,#100
00A9 129 BL1:
00A9 11B0 130 CALL DEX1
00AB B2B7 131 CPL BEEP
00AD DEFA 132 DJNZ R6,BL1
00AF 22 133 RET
00B0 134 DEX1:
00B0 7FB4 135 MOV R7,#180
00B2 136 DEX2:
00B2 00 137 NOP
00B3 DFFD 138 DJNZ R7,DEX2
00B5 22 139 RET
140 ;---------------------------------------------------------
141
142 END
A51 MACRO ASSEMBLER MOTOR_KEY 05/15/2009 20:05:43 PAGE 4
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
BEEP . . . . . . . B ADDR 00B0H.7 A
BEEP_BL. . . . . . C ADDR 00A7H A
BL1. . . . . . . . C ADDR 00A9H A
DEL1 . . . . . . . C ADDR 0089H A
DEL2 . . . . . . . C ADDR 0092H A
DEL3 . . . . . . . C ADDR 0094H A
DELAY. . . . . . . C ADDR 0087H A
DELAY1 . . . . . . C ADDR 0090H A
DEX1 . . . . . . . C ADDR 00B0H A
DEX2 . . . . . . . C ADDR 00B2H A
FFW. . . . . . . . C ADDR 004CH A
FFW1 . . . . . . . C ADDR 004EH A
FFW2 . . . . . . . C ADDR 0050H A
FFW3 . . . . . . . C ADDR 0057H A
FFW4 . . . . . . . C ADDR 0066H A
K1 . . . . . . . . B ADDR 0090H.4 A
K2 . . . . . . . . B ADDR 0090H.5 A
K3 . . . . . . . . B ADDR 0090H.6 A
K4 . . . . . . . . B ADDR 0090H.7 A
MAIN . . . . . . . C ADDR 0030H A
MAIN1. . . . . . . C ADDR 0036H A
MAIN2. . . . . . . C ADDR 0040H A
P1 . . . . . . . . D ADDR 0090H A
P3 . . . . . . . . D ADDR 00B0H A
REV. . . . . . . . C ADDR 006AH A
REV1 . . . . . . . C ADDR 006CH A
REV2 . . . . . . . C ADDR 006EH A
REV3 . . . . . . . C ADDR 0075H A
REV4 . . . . . . . C ADDR 0083H A
SP . . . . . . . . D ADDR 0081H A
TABLE1 . . . . . . C ADDR 009DH A
TABLE2 . . . . . . C ADDR 00A2H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 2 WARNING(S), 0 ERROR(S)
PA51 中文匯編系統(tǒng)
Version 8.2 (C) Copyright 2007.7
登陸 http://pa51.cn 了解更多咨詢
技術(shù)論壇 http://bbs.pa51.cn
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -