微型計算機控制技術(shù)課程設(shè)計---步進電機角度控制_第1頁
已閱讀1頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、<p><b>  課 程 設(shè) 計</b></p><p>  課程名稱 微型計算機控制技術(shù) </p><p>  題目名稱__步進電機角度控制(2) </p><p>  學(xué)生學(xué)院____ _ 自動化________</p><p>  專業(yè)班級____ </p><p>  

2、學(xué) 號 </p><p>  學(xué)生姓名___ _</p><p>  指導(dǎo)教師______ _____</p><p>  2013 年 06月 28日</p><p>  一、軟件設(shè)計流程圖如下圖所示:</p><p><b>  二、心得與體會</b

3、></p><p>  這次的課程設(shè)計主要針對鍵盤及可編程接口芯片8255A的編程,在上機調(diào)試過程中由于自己的疏忽及算法的不完善導(dǎo)致了程序不能實現(xiàn)預(yù)期的功能,經(jīng)過一遍又一遍的檢查和思考,終于完成了這次課程設(shè)計的任務(wù)。</p><p>  雖然上機調(diào)試的經(jīng)歷是痛苦的,但是期間的細節(jié)錯誤給了我們應(yīng)有的教訓(xùn),使我們在以后的學(xué)習(xí)及工作中盡量避免,對于匯編語言的編程也有了進一步的了解加深了對步

4、進電機的理解和使用技巧,設(shè)計中,需要對步進電機進行角度控制,即需要對步進電機的角度進行計算分析,以得到所需的步數(shù)。</p><p>  總之,這次課程設(shè)計鍛煉了我解決問題的能力,激發(fā)了我的思考,相信通過這次課程設(shè)計對我以后對微機的繼續(xù)學(xué)習(xí)及以后的工作會有很大的幫助。</p><p>  任務(wù)1 連接數(shù)碼管顯示電路和鍵盤電路,實現(xiàn)如下表所示的按鍵控制,并能夠左移顯示:</p>

5、<p><b>  1.2源程序:</b></p><p>  STACK SEGMENT STACK</p><p>  DB 64 DUP(?)</p><p>  STACK ENDS</p><p>  DATA SEGMENT</p><p><b>  ORG 0

6、030H</b></p><p>  VAR1 DB 0FCH,0FCH,0FCH,0FCH</p><p>  VAR5 DB OF7H,0FBH,0FDH,0FEH</p><p>  VAR2 DB 0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH,0FCH</p><p>  VAR3 DB 00H,0

7、0H,00H,00H,00H,00H,00H,00H</p><p>  VAR4 DB 00H,00H,00H,00H,00H,00H,00H,00H</p><p>  TABLE1 DB 0FCH,60H,0DAH,0F2H,66H,0B6H,0BEH,0E0H,0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,8EH</p><p><b&

8、gt;  DATA ENDS</b></p><p>  CODE SEGMENT</p><p>  ASSUME CS:CODE,DS:DATA</p><p>  START: MOV AX,DATA</p><p><b>  MOV DS,AX</b></p><p>  M

9、OV AL,88H ;8255初始化</p><p>  MOV DX,0606H</p><p><b>  OUT DX,AL</b></p><p>  STT: MOV AL,60H</p><p>  MOV DX,0604H</p><p><b>  OUT

10、 DX,AL</b></p><p>  NEXT: MOV DX,0604H</p><p><b>  IN AL, DX</b></p><p>  AND AL,60H</p><p>  CMP AL,60H</p><p>  JNZ KEYABC</p>

11、<p><b>  CALL DISP</b></p><p><b>  JMP STT</b></p><p>  ;.............鍵盤掃描................................................. </p><p>  KEYABC:CALL TI

12、ME</p><p>  MOV DX,0604H</p><p><b>  IN AL,DX</b></p><p>  AND AL,60H</p><p>  CMP AL,60H ;PC6 PC5 =0110 0000</p><p><b>  JNZ KEY<

13、/b></p><p><b>  JMP STT</b></p><p>  KEY: MOV AL,0FEH ;掃描PC0口 PC0=0</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p> 

14、 MOV DX,0604H</p><p><b>  IN AL,DX</b></p><p>  TEST AL,20H ;檢測PC5</p><p>  JNZ KEY_F </p><p>  CALL KEYA </p><p><b>  JMP ST

15、TK</b></p><p>  KEY_F: TEST AL,040H ;檢測PC6口 </p><p>  JNZ KEY_0 </p><p>  CALL KEYF </p><p>  JMP STTK </p><p>  KEY_0:MOV AL,0FDH ;掃

16、描PC1口, PC1=0</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0604H</p><p><b>  IN AL,DX</b></p><p>  TEST AL,20H

17、 ;檢測PC5</p><p>  JNZ KEY_2 </p><p>  CALL KEY0 </p><p><b>  JMP STTK</b></p><p>  KEY_2:TEST AL,040H ;檢測PC6口</p><p>  JNZ KEY_6

18、 </p><p>  CALL KEYF ;否則是按鍵2</p><p><b>  JMP STTK </b></p><p>  KEY_6:MOV AL,0FBH ;PC2=0</p><p>  MOV DX,0604H</p><p><b>  OUT D

19、X,AL</b></p><p>  MOV DX,0604H</p><p><b>  IN AL,DX</b></p><p>  TEST AL,20H ;檢測PC5</p><p>  JNZ KEY_7 </p><p><b>  CALL KEY

20、6</b></p><p><b>  JMP STTK</b></p><p>  KEY_7:TEST AL,040H ;檢測PC6口</p><p><b>  JNZ KEY_3</b></p><p><b>  CALL KEY7</b></p

21、><p><b>  JMP STTK </b></p><p>  KEY_3:MOV AL,0F7H PC3=0</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0604H</

22、p><p><b>  IN AL,DX</b></p><p>  TEST AL,20H ;檢測PC5</p><p>  JNZ KEY_B </p><p><b>  CALL KEY3</b></p><p><b>  JMP STTK<

23、/b></p><p>  KEY_B:TEST AL,040H ;檢測PC6口</p><p>  JNZ KEY_111</p><p><b>  CALL KEYB</b></p><p>  KEY_111:JMP STTK</p><p>  ;...............

24、...數(shù)字XIANSHI............</p><p>  KEYA: CMP BH,00H</p><p><b>  JZ KEYA_1</b></p><p>  KEYA_1: CALL LP1</p><p>  MOV AL,0EEH</p><p>  MOV [SI]

25、,AL</p><p>  MOV AL,0AH</p><p>  MOV [DI],AL</p><p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  KEYF: CMP BH,00H</p>&l

26、t;p><b>  JZ KEYE_1</b></p><p>  KEYF_1:CALL LP1</p><p>  MOV AL,8EH</p><p>  MOV [SI],AL</p><p>  MOV AL,0FH</p><p>  MOV [DI],AL</p>

27、<p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  KEY0:CMP BH,00H</p><p><b>  JZ KEY1_1</b></p><p>  KEY0_1:CALL LP1</p&g

28、t;<p>  MOV AL,0FCH</p><p>  MOV [SI],AL</p><p>  MOV AL,00H</p><p>  MOV [DI],AL</p><p><b>  CALL DISP</b></p><p><b>  RET</b&

29、gt;</p><p>  KEY2:CMP BH,00H</p><p><b>  JZ KEYF_1</b></p><p>  KEY2_1:CALL LP1</p><p>  MOV AL,0DH</p><p>  MOV [SI],AL</p><p>  

30、MOV AL,02H</p><p>  MOV [DI],AL</p><p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  KEY6:CMP BH,00H</p><p><b>  JZ KEY7_1&

31、lt;/b></p><p>  KEY6_1:CALL LP1</p><p>  MOV AL,0BEH</p><p>  MOV [SI],AL</p><p>  MOV AL,06H</p><p>  MOV [DI],AL</p><p><b>  CALL D

32、ISP</b></p><p><b>  RET</b></p><p>  KEY7:CMP BH,00H</p><p><b>  JZ KEYA_1</b></p><p>  KEY7_1:CALL LP1</p><p>  MOV AL,0E0H&

33、lt;/p><p>  MOV [SI],AL</p><p>  MOV AL,07H</p><p>  MOV [DI],AL</p><p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  K

34、EY3:CMP BH,00H</p><p><b>  JZ KEY8_1</b></p><p>  KEY3_1:CALL LP1</p><p>  MOV AL,0F2H</p><p>  MOV [SI],AL</p><p>  MOV AL,03H</p><

35、p>  MOV [DI],AL</p><p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  KEYB:CMP BH,00H</p><p><b>  JZ KEYB_1</b></p><p

36、>  KEYB_1:CALL LP1</p><p>  MOV AL,3EH</p><p>  MOV [SI],AL</p><p>  MOV AL,0BH</p><p>  MOV [DI],AL</p><p><b>  CALL DISP</b></p>&l

37、t;p><b>  RET</b></p><p>  LP1: MOV SI,OFFSET VAR1</p><p><b>  PUSH AX</b></p><p>  MOV AL,[SI+2]</p><p>  MOV [SI+3],AL</p><

38、;p>  MOV AL,[SI+1]</p><p>  MOV [SI+2],AL</p><p>  MOV AL,[SI]</p><p>  MOV [SI+1],AL</p><p><b>  POP AX</b></p><p>  MOV [SI],AL</p>

39、<p><b>  RET</b></p><p>  ;..................顯示...........</p><p>  DISP:PUSH DX</p><p><b>  PUSH CX</b></p><p>  MOV SI,OFFSET VAR1</p

40、><p>  MOV DX,0604H</p><p>  MOV AL,11111110B</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0602H</p><p>  MOV AL,[SI+3]</p><p><b>

41、  OUT DX,AL</b></p><p><b>  DEC SI</b></p><p><b>  CALL TIME</b></p><p>  MOV DX,0604H</p><p>  MOV AL,11111101B</p><p><b

42、>  OUT DX,AL</b></p><p>  MOV DX,0602H</p><p>  MOV AL,[SI+3]</p><p><b>  OUT DX,AL</b></p><p><b>  DEC SI</b></p><p><

43、b>  CALL TIME</b></p><p>  MOV DX,0604H</p><p>  MOV AL,11111011B</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0602H</p><p>  MOV AL,[SI+

44、3]</p><p><b>  OUT DX,AL</b></p><p><b>  DEC SI</b></p><p><b>  CALL TIME</b></p><p>  MOV DX,0604H</p><p>  MOV AL,111

45、10111B</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0602H</p><p>  MOV AL,[SI+3]</p><p><b>  OUT DX,AL</b></p><p><b>  DEC SI<

46、;/b></p><p><b>  CALL TIME</b></p><p><b>  POP AX</b></p><p><b>  POP DX</b></p><p><b>  RET </b></p><p>

47、;  ;.......................延時................................</p><p>  TIME: PUSH AX</p><p><b>  PUSH CX</b></p><p>  MOV CX,0006H</p><p>  TIME1: MOV A

48、X,0100H</p><p>  TIME2: DEC AX</p><p><b>  JNZ TIME2</b></p><p>  LOOP TIME1</p><p><b>  POP CX</b></p><p><b>  POP AX</

49、b></p><p><b>  RET</b></p><p>  ;................放鍵測試........................</p><p>  STTK: CALL DISP</p><p>  MOV AL,00H</p><p>  MOV DX

50、,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0604H</p><p><b>  IN AL,DX</b></p><p>  AND AL,60H</p><p>  CMP AL,60H</p>

51、<p><b>  JNZ STTK</b></p><p><b>  JMP STT</b></p><p><b>  CODE ENDS</b></p><p><b>  END START</b></p><p><b> 

52、 任務(wù)2 實現(xiàn):</b></p><p>  定義鍵盤按鍵:5個為數(shù)字鍵:0、1、3、5、9 ;3個功能鍵:設(shè)置SET、清零 CLR、開始START;按鍵分布如下表所示:</p><p><b>  2.2源程序:</b></p><p>  STACK SEGMENT STACK</p><p>  DB

53、 100 DUP(?)</p><p>  STACK ENDS</p><p>  DATA SEGMENT</p><p>  VAR1 DB OF7H,0FBH,0FDH,0FEH</p><p>  VAR2 DB 0FCH,0FCH,0FCH,0FCH</p><p>  VAR5 DB 00H,00H,

54、00H,00H,00H,00H</p><p>  TABL DB 0FCH,60H,0DH,0F2H,66H,0B6H,0BEH,0E0H,0FEH,0F6H,0EEH,3EH,9CH,7AH,9EH,8EH</p><p>  TAB_C DW 00H</p><p><b>  ORG 0100H</b></p><p

55、>  VAR3 DB 64 DUP(?)</p><p><b>  ORG 0200H</b></p><p>  VAR4 DW 64 DUP(?)</p><p>  COUNT DB 00H</p><p>  TABLE DB 08H,18H,10H,30H,20H,60H,40H,48H</p&g

56、t;<p>  D_COUNT DB 00H</p><p>  D_TIMES DB 00H</p><p><b>  DATA ENDS</b></p><p>  CODE SEGMENT</p><p>  ASSUME CS:CODE,DS:DATA</p><p>  

57、START: MOV AX,DATA</p><p><b>  MOV DS,AX</b></p><p><b>  PUSH DX</b></p><p>  MOV AL,88H ;8255初始化</p><p>  MOV DX,0606H</p><p&g

58、t;<b>  OUT DX,AL</b></p><p>  MOV BX,0000H</p><p>  MOV COUNT,00H</p><p>  MOV D_COUNT,00H</p><p>  MOV D_TIMES,00H</p><p>  STT: MOV AL,00H&

59、lt;/p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  NEXT: MOV DX,0604H</p><p><b>  IN AL, DX</b></p><p>  AND AL,60H</p>

60、<p>  CMP AL,60H</p><p>  JNZ KEYABC</p><p><b>  CALL DISP</b></p><p><b>  JMP STT</b></p><p><b>  POP DX</b></p><

61、p>  ;.............鍵盤掃描................................................. </p><p>  KEYABC:PUSH DX</p><p><b>  CALL TIME</b></p><p>  MOV DX,0604H</p><p&

62、gt;<b>  IN AL,DX</b></p><p>  AND AL,60H</p><p>  CMP AL,60H ;PC6 PC5 =0110 0000</p><p><b>  JNZ KEY_5</b></p><p><b>  JMP STT</b&g

63、t;</p><p><b>  POP DX</b></p><p>  KEY_5: MOV AL,0FEH ;掃描PC0口</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,060

64、4H</p><p><b>  IN AL,DX</b></p><p>  TEST AL,20H ;檢測PC5</p><p>  JNZ KEY_CLR </p><p>  CALL KEY5 ;否則 是按鍵5</p><p><b>  JMP ST

65、TK</b></p><p>  KEY_CLR: TEST AL,40H ;檢測PC6口</p><p><b>  JNZ KEY_6</b></p><p>  CALL KEYCLR</p><p>  JMP STTK </p><p>  KEY_6:MOV AL,0

66、FDH</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0604H</p><p><b>  IN AL,DX</b></p><p>  TEST AL,20H ;檢測PC5&l

67、t;/p><p>  JNZ KEY_START </p><p><b>  CALL KEY6</b></p><p><b>  JMP STTK</b></p><p>  KEY_START:TEST AL,40H ;檢測PC6口</p><p><b&

68、gt;  JNZ KEY_3</b></p><p>  CALL KEYSTART</p><p><b>  JMP STTK </b></p><p>  KEY_3:MOV AL,0FBH</p><p>  MOV DX,0604H</p><p><b>  OU

69、T DX,AL</b></p><p>  MOV DX,0604H</p><p><b>  IN AL,DX</b></p><p>  TEST AL,20H ;檢測PC5</p><p>  JNZ KEY_4 </p><p><b>  CALL K

70、EY3</b></p><p><b>  JMP STTK</b></p><p>  KEY_4:TEST AL,40H ;檢測PC6口</p><p><b>  JNZ KEY_0</b></p><p><b>  CALL KEY4</b></

71、p><p><b>  JMP STTK </b></p><p>  KEY_0:MOV AL,0F7H</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0604H</p>&

72、lt;p><b>  IN AL,DX</b></p><p>  TEST AL,20H ;檢測PC5</p><p>  JNZ KEY_SET </p><p><b>  CALL KEY0</b></p><p><b>  JMP STTK</b>&

73、lt;/p><p>  KEY_SET:TEST AL,40H ;檢測PC6口</p><p>  JNZ KEY_111</p><p>  CALL KEYSET</p><p>  KEY_111:JMP STTK</p><p>  ;...............………....................

74、....</p><p>  KEY0:CALL LP1</p><p>  MOV AL,00H</p><p>  MOV [DI],AL</p><p>  MOV AL,0FCH</p><p>  MOV [SI],AL</p><p><b>  CALL DISP<

75、/b></p><p><b>  RET</b></p><p>  KEY3: CALL LP1</p><p>  MOV AL,03H</p><p>  MOV [DI],AL</p><p>  MOV AL,0F2H</p><p>  MOV [SI]

76、,AL</p><p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  KEY4: CALL LP1</p><p>  MOV AL,04H</p><p>  MOV [DI],AL</p><p

77、>  MOV AL,66H</p><p>  MOV [SI],AL</p><p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  KEY5: CALL LP1</p><p>  MOV AL,05H<

78、/p><p>  MOV [DI],AL</p><p>  MOV AL,0B6H</p><p>  MOV [SI],AL</p><p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  KEY

79、6: CALL LP1</p><p>  MOV AL,06H</p><p>  MOV [DI],AL</p><p>  MOV AL,0BEH</p><p>  MOV [SI],AL</p><p><b>  CALL DISP</b></p><p>&l

80、t;b>  RET</b></p><p>  ;...............</p><p>  KEYSTART: CMP COUNT,00H</p><p><b>  JZ STA1</b></p><p>  MOV AL,COUNT</p><p><b>

81、;  CBW</b></p><p><b>  PUSH AX</b></p><p>  MOV SI,OFFSET VAR4</p><p>  MOV DI,OFFSET TABLE</p><p>  MOV DL,00H</p><p>  STA4: MOV BX,[

82、SI]</p><p>  MOV AX,[SI+2]</p><p>  MOV DH,0FH</p><p><b>  DIV DH</b></p><p>  MOV DH,04H</p><p><b>  MUL DH</b></p><p&g

83、t;<b>  INC SI</b></p><p><b>  INC SI</b></p><p><b>  INC SI </b></p><p><b>  INC SI</b></p><p><b>  PUSH AX</b&

84、gt;</p><p>  STA5: POP AX</p><p><b>  MOV CX,AX</b></p><p><b>  PUSH AX</b></p><p>  STA2: PUSH DX</p><p>  MOV AL,[DI]</p>

85、<p>  MOV DX,0600H</p><p><b>  OUT DX,AL</b></p><p><b>  POP DX</b></p><p><b>  INC DI</b></p><p><b>  INC DL</b>&l

86、t;/p><p>  CALL DISP1</p><p>  CALL DALLY1</p><p>  CMP DL,08H</p><p><b>  JNZ STA3</b></p><p>  MOV DL,00H</p><p>  MOV DI,OFFSET TA

87、BLE</p><p>  STA3: LOOP STA2</p><p>  CALL DISP1</p><p><b>  DEC BX</b></p><p><b>  JNZ STA5</b></p><p>  INC D_COUNT</p>&l

88、t;p>  MOV AL,COUNT</p><p><b>  POP AX</b></p><p>  CALL DISP1</p><p><b>  DEC COUNT</b></p><p><b>  JNZ STA4</b></p><p

89、><b>  POP AX</b></p><p>  CALL DISP1</p><p><b>  DEC COUNT</b></p><p><b>  JNZ STA4</b></p><p><b>  POP AX</b></p&

90、gt;<p>  MOV COUNT,AL</p><p>  MOV D_COUNT,00H</p><p>  MOV TAB_C,DI</p><p><b>  MOV CL,DL</b></p><p><b>  STA1: RET</b></p><p

91、>  ;………………………………………..</p><p>  KEYSET: LEA SI,VAR2</p><p>  LEA DI,VAR3</p><p>  MOV AL,COUNT</p><p><b>  CBW</b></p><p><b>  ADD DI,A

92、X</b></p><p><b>  ADD DI,AX</b></p><p><b>  ADD DI,AX</b></p><p><b>  ADD DI,AX</b></p><p>  MOV CX,0004H</p><p>

93、  SET1: MOV AL,[SI]</p><p>  MOV [DI],AL</p><p><b>  INC DI</b></p><p><b>  INC SI</b></p><p><b>  LOOP SET1</b></p><p&

94、gt;  LEA SI,VAR5</p><p>  MOV DX,0000H</p><p>  MOV DI,OFFSET VAR4</p><p>  MOV AL,COUNT</p><p><b>  CBW</b></p><p><b>  ADD DI,AX</b&

95、gt;</p><p><b>  ADD DI,AX</b></p><p><b>  ADD DI,AX</b></p><p><b>  ADD DI,AX</b></p><p>  MOV AL,[SI]</p><p>  MOV [DI

96、],AL</p><p>  MOV AL,[SI+1]</p><p>  MOV BL,64H</p><p><b>  MUL BL</b></p><p><b>  ADD DX,AX</b></p><p>  MOV AL,[SI+2]</p>

97、<p>  MOV CL,0AH</p><p><b>  MUL BL</b></p><p><b>  ADD DX,AX</b></p><p>  MOV BL,[SI+3]</p><p><b>  CBW</b></p><p&g

98、t;<b>  ADD AX,DX</b></p><p>  MOV [DI+2],AX</p><p>  MOV CX,0004H</p><p>  LEA SI,VAR2</p><p>  LEA DI,VAR5</p><p>  SET2: MOV [SI],0FCH</p

99、><p>  MOV [DI],00H</p><p><b>  INC SI</b></p><p><b>  INC DI</b></p><p><b>  LOOP SET2</b></p><p><b>  CALL DISP<

100、;/b></p><p><b>  INC COUNT</b></p><p><b>  RET</b></p><p>  ;…………………………………….</p><p>  KEYCLR: CMP COUNT,00H</p><p><b>  JZ

101、 CLR1</b></p><p>  MOV DI,TAB_C</p><p>  MOV SI,OFFSET VAR4</p><p><b>  MOV DL,CL</b></p><p>  TEST DL,DL</p><p><b>  JNZ CLR6</

102、b></p><p>  MOV DL,08H</p><p>  MOV DI,OFFSET TABLE</p><p>  MOV AL,07H</p><p><b>  CBW</b></p><p><b>  ADD DI,AX</b></p>

103、<p>  CLR6: DEC DI</p><p><b>  DEC DL</b></p><p>  CLR4: MOV BX,[SI]</p><p>  MOV AX,[SI+2]</p><p>  MOV DH,0FH</p><p><b>  DIV DH&

104、lt;/b></p><p>  MOV DH,04H</p><p><b>  MUL DH</b></p><p><b>  INC SI</b></p><p><b>  INC SI</b></p><p><b>  IN

105、C SI</b></p><p><b>  INC SI</b></p><p><b>  PUSH AX</b></p><p>  CLR5: POP AX</p><p><b>  MOV CX,AX</b></p><p>&l

106、t;b>  PUSH AX</b></p><p>  CLR2: PUSH DX</p><p>  MOV AL,[DI]</p><p>  MOV DX,0600H</p><p><b>  OUT DX,AL</b></p><p><b>  POP DX

107、</b></p><p><b>  DEC DI</b></p><p><b>  DEC DL</b></p><p>  CALL DALLY</p><p>  TEST DL,DL</p><p><b>  JNZ CLR3</b&g

108、t;</p><p>  MOV DL,08H</p><p>  MOV DI,OFFSET TABLE</p><p>  MOV AL,07H</p><p><b>  CBW</b></p><p><b>  ADD DI,AX</b></p>&l

109、t;p>  CLR3: LOOP CLR2</p><p><b>  DEC BX</b></p><p><b>  JNZ CLR5</b></p><p>  MOV AL,COUNT</p><p><b>  POP AX</b></p><

110、;p><b>  DEC COUNT</b></p><p><b>  JNZ CLR4</b></p><p>  MOV COUNT,00H</p><p>  CLR1: MOV CX,0004H</p><p>  LEA SI,VAR3</p><p>  

111、LEA DI,VAR4</p><p>  CLR7: MOV [SI],0FCH</p><p>  MOV [DI],00H</p><p><b>  INC SI</b></p><p><b>  INC DI</b></p><p><b>  LOOP

112、 CLR7</b></p><p><b>  CALL CLRR</b></p><p><b>  CALL DISP</b></p><p><b>  RET</b></p><p>  ;…………………………………..</p><p&g

113、t;  DISP1: PUSH AX</p><p><b>  PUSH BX</b></p><p><b>  PUSH CX</b></p><p><b>  PUSH DX</b></p><p><b>  PUSH SI</b></p

114、><p><b>  PUSH DI</b></p><p>  MOV D_TIMES,BL</p><p>  MOV AL,D_COUNT</p><p><b>  CBW</b></p><p>  MOV BX,OFFSET TABL</p><p

115、>  MOV SI,OFFSET VAR1</p><p>  MOV DI,OFFSET VAR3</p><p><b>  ADD DI,AX</b></p><p><b>  ADD DI,AX</b></p><p><b>  ADD DI,AX</b>&l

116、t;/p><p><b>  ADD DI,AX</b></p><p>  MOV AL,[SI]</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV AL,D_TIMES</p>&l

117、t;p><b>  XLAT</b></p><p>  MOV DX,0602H</p><p><b>  OUT DX,AL</b></p><p><b>  CALL TIME</b></p><p><b>  INC SI</b><

118、;/p><p><b>  INC DI</b></p><p>  MOV CX,0003H</p><p>  DIR1: MOV AL,[SI]</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p>&l

119、t;p>  MOV AL,[DI]</p><p>  MOV DX,0602H</p><p><b>  OUT DX,AL</b></p><p><b>  CALL TIME</b></p><p><b>  INC SI</b></p><

120、;p><b>  INC DI</b></p><p><b>  LOOP DIR1</b></p><p><b>  POP DI</b></p><p><b>  POP SI</b></p><p><b>  POP DX&l

121、t;/b></p><p><b>  POP CX</b></p><p><b>  POP BX</b></p><p><b>  POP AX</b></p><p><b>  RET</b></p><p>  

122、;………………………………………</p><p>  LP1: MOV CX,0003H</p><p>  LEA SI,VAR2</p><p>  LEA DI,VAR5</p><p>  LP2: MOV AL,[SI+1]</p><p>  MOV [SI],AL</p><p>

123、  MOV AL,[DI+1]</p><p>  MOV [DI],AL</p><p><b>  INC DI</b></p><p><b>  INC SI</b></p><p><b>  LOOP LP2</b></p><p><

124、b>  RET</b></p><p>  ;…………………………………</p><p>  DISP: LEA SI,VAR1</p><p>  LEA DI,VAR2</p><p>  MOV CX,0004H</p><p>  DIR: MOV AL,[SI]</p><

125、;p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV AL,[DI]</p><p>  MOV DX,0602H</p><p><b>  OUT DX,AL</b></p><p><b>

126、;  CALL TIME</b></p><p><b>  INC SI</b></p><p><b>  INC DI</b></p><p><b>  LOOP DIR</b></p><p><b>  RET</b></p&

127、gt;<p>  ;……………………………..</p><p>  CLRR: MOV CX,0004H</p><p>  LEA SI,VAR2</p><p>  LEA DI,VAR5</p><p>  CLR8:MOV [SI],0FCH</p><p><b>  INC SI&l

128、t;/b></p><p><b>  LOOP CLR8</b></p><p><b>  RET</b></p><p>  ;………………………………….</p><p>  TIME: PUSH AX</p><p><b>  PUSH CX<

129、;/b></p><p>  MOV CX,0010H</p><p>  TIME1:MOV AX,00300H</p><p>  TIME2:DEC AX</p><p><b>  JNZ TIME2</b></p><p>  LOOP TIME1</p><p

130、><b>  POP CX</b></p><p><b>  POP AX</b></p><p><b>  RET</b></p><p>  DALLY:PUSH CX</p><p><b>  PUSH AX</b></p>

131、<p>  MOV CX,1000H</p><p>  A6: MOV AX,0010H</p><p>  A7:DEC AX</p><p><b>  JNZ A7</b></p><p><b>  LOOP A6</b></p><p><

132、b>  POP AX</b></p><p><b>  POP CX</b></p><p><b>  RET </b></p><p>  DALLY1:PUSH CX</p><p><b>  PUSH AX</b></p>&

133、lt;p>  MOV CX,0010H</p><p>  AA6: MOV AX,0500H</p><p>  AA7:DEC AX</p><p><b>  JNZ AA7</b></p><p>  LOOP AA6</p><p><b>  POP AX<

134、/b></p><p><b>  POP CX</b></p><p><b>  RET </b></p><p>  ;..............放鍵測試............. </p><p>  STTK: CALL DISP</p>&l

135、t;p>  MOV AL,00H</p><p>  MOV DX,0604H</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,0604H</p><p><b>  IN AL,DX</b></p><p>  AND AL,

136、60H</p><p>  CMP AL,60H</p><p><b>  JNZ STTK</b></p><p><b>  JMP STT</b></p><p><b>  CODE ENDS</b></p><p><b>  EN

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論