專注電子技術(shù)學(xué)習(xí)與研究
當(dāng)前位置:單片機(jī)教程網(wǎng) >> MCU設(shè)計實例 >> 瀏覽文章

51系列匯編語言

作者:未知   來源:會員上傳   點擊數(shù):  更新時間:2014年05月20日   【字體:

 

a)  單個按鍵與多個LED燈(位操作輸入與字節(jié)操作輸出)判斷與子程序
此處只是將輸出指令由位指令換成了字節(jié)指令,而輸入判斷仍然是位判斷指令。
ORG 0000H
MAIN:
  CLR C
   MOV C,P2.0 ;獲取P2.0位狀態(tài) 送位累加器;位與字節(jié)轉(zhuǎn)換需要判斷指令
JNC ZIJIE;JC位累加器—進(jìn)位位為1轉(zhuǎn)移到ZIJIE ,
JNC位累加器為0轉(zhuǎn)移到ZIJIE,否則順序執(zhí)行。
MOV C,P1.0
ZIJIE:;子程序起始
MOV  A,#00H
    MOV  P3,A
RET;子程序結(jié)束并返回調(diào)用處
END
 
 
b)  單個按鍵與多個LED燈(位操作輸入與位、字節(jié)操作輸出)
l  位輸入控制位或字節(jié)輸出
ORG 0000H
MAIN:
  CLR C
   MOV C,P1.0 ;獲取P1.0位狀態(tài) 送位累加器;位與字節(jié)轉(zhuǎn)換需要判斷指令
JNC ZIJIE      ;JC位累加器—進(jìn)位位為1轉(zhuǎn)移到ZIJIE ,JNC位累加器為0轉(zhuǎn)移到ZIJIE,否則順序執(zhí)行。
  MOV P0.0,C ;送位累加器到P0.0位等,P1.0位狀態(tài)變化則輸出隨之變化
    ACALL  DELAY   ; 調(diào)延時子程序
  MOV P0.1,C
      ACALL  DELAY
  MOV P0.2,C
      ACALL  DELAY
  MOV P0.3,C
    ACALL  DELAY 
  MOV P0.4,C
    ACALL  DELAY 
         MOV P0.5,C
    ACALL  DELAY          MOV P0.6,C
    ACALL  DELAY    MOV P0.7,C    ACALL  DELAY     
SJMP MAIN ;相對轉(zhuǎn)移時間短,用AJMP絕對轉(zhuǎn)移時間長,RET是用于子程序的返回
ZIJIE:
  MOV A,#00H
  MOV P2,A      ACALL  DELAY 
  MOV P3,A    ACALL  DELAY
     CLR A      MOV P0,A
   MOV P1,A     ACALL  DELAY  
  RET
  DELAY:      ; 延時子程序 - 這是一個非常有用、而且常見的一個子程序
  MOV R5,#04H    ;將16進(jìn)制數(shù)04H傳遞給寄存器R5
F1:
  DJNZ  R7, F1 ;寄存器R7減1非0跳轉(zhuǎn)到F1,直到減為0順序執(zhí)行下一指令
  RET       ; 子程序結(jié)束,返回子程序入口處  ACALL  DELAY   ; 調(diào)延時子程序 
  END
l  位輸入控制字節(jié)輸出
 
 
c)  單個按鍵與單個電機(jī)控制開環(huán)控制
單“位”P口1位--單個燈位輸出,單個按鍵控制硬控制與軟控制
一個按鍵,一盞照明燈,一個繼電器。硬件接口問題—線路連接、硬件硬驅(qū)動問題(程序稱為軟驅(qū)動)。
一個按鍵,兩盞燈(指示、照明),一個繼電器。硬件接口問題—線路連接、硬件硬驅(qū)動問題。程序稱為軟驅(qū)動:就是利用兩個端口,通過延時或計時器完成轉(zhuǎn)換。
說明:
硬件特性,驅(qū)動與控制信號,程序編寫
由繼電器引出的強(qiáng)電驅(qū)動電器的控制問題,如電動機(jī)交流電機(jī)、直流電機(jī)、步進(jìn)電機(jī)、伺服電機(jī);單項或多項
 
1.  單個開關(guān)(按鍵)與多個LED數(shù)碼管點陣問題最小系統(tǒng)輸出擴(kuò)展
a)        單個按鍵與多個LED燈(位操作輸入與字節(jié)操作輸出)
b)        單個按鍵與多個LED數(shù)碼管(位操作輸入與字節(jié)操作輸出)數(shù)組
c)         單個按鍵與多個數(shù)碼管(位操作輸入與多字節(jié)操作輸出)靜態(tài)數(shù)組
d)        多個按鍵與多個數(shù)碼管(位操作輸入與字節(jié)操作輸出)動態(tài)掃描函數(shù)
e)         單個按鍵與多個數(shù)碼管點陣(位操作輸入與字節(jié)操作輸出)靜態(tài)
f)         多個按鍵與多個數(shù)碼管點陣(位操作輸入與字節(jié)操作輸出)動態(tài)

 

關(guān)閉窗口

相關(guān)文章