欧美极品高清xxxxhd,国产日产欧美最新,无码AV国产东京热AV无码,国产精品人与动性XXX,国产传媒亚洲综合一区二区,四库影院永久国产精品,毛片免费免费高清视频,福利所导航夜趣136

標(biāo)題: 簡(jiǎn)單單片機(jī)記錄按鍵次數(shù),匯編語(yǔ)言 [打印本頁(yè)]

作者: q109744884    時(shí)間: 2011-3-12 19:26
標(biāo)題: 簡(jiǎn)單單片機(jī)記錄按鍵次數(shù),匯編語(yǔ)言

最近剛學(xué)單片機(jī),為了方便,用了proteus和keil 電腦仿真,剛調(diào)試成功,用兩個(gè)數(shù)碼管顯示按鍵次數(shù),經(jīng)測(cè)試正確。

代碼可能不是很有效,也希望有朋友幫忙改進(jìn).

以此而推可以顯示更多位.現(xiàn)傳上proteus 設(shè)計(jì)圖和源碼,帶注解,因?yàn)榭戳苏搲夏俏环胃缘馁N,要養(yǎng)好寫(xiě)注解的習(xí)慣。

KEYCARD     BIT    00H             ;用于標(biāo)志是否有鍵按下
KEYCOU  EQU    5AH        ;用于記錄按下鍵的次數(shù)

ORG     0000H             ;程序開(kāi)始
AJMP    START
ORG     30H               ;為避免占用中斷向量區(qū),主程序從30H開(kāi)始

START:
    MOV    SP,#5FH        ;設(shè)置堆棧的初始地址
    MOV    P2,#0H         ;P2,P3的初始化
    MOV    P3,#0FFH
    CLR    KEYCARD         ;有按鍵標(biāo)志清0
    MOV    KEYCOU,#0       ;計(jì)數(shù)初值賦0

LOOP:                      ;循環(huán)掃描鍵盤(pán)

    ACALL  KEY_CHECK
    JNB    KEYCARD,DISPLAY
    INC    KEYCOU
      

DISPLAY:                    ;顯示程序

MOV    DPTR,#ASCII          ;獲得對(duì)應(yīng)的顯示碼
PUSH B

MOV A,KEYCOU
MOV B,#0AH
DIV AB                       ;選顯示第一位高位

 MOVC   A,@A+DPTR
 MOV    P0,A                 ;把顯示碼傳至A口
 SETB P2.1                   ;選通P2.0,顯示
ACALL  DELAY1S
CLR P2.1

MOV A, B
POP B
 MOVC   A,@A+DPTR
 MOV    P0,A                 ;把顯示碼傳至A口
 SETB P2.0                   ;選通P2.0,顯示
 ACALL  DELAY1S
 CLR P2.0
  AJMP    LOOP

 

KEY_CHECK:                   ;看有沒(méi)有鍵按下
    MOV    A,P3
    ANL    A,#0fFH ;邏輯與
    CJNE    A,#0FFH,KEY_CER   ;如果讀入的與寫(xiě)出的不相等,延時(shí)消抖
    CLR    KEYCARD
    RET

KEY_CER:       ;延時(shí),再讀入,看是否真的有鍵按下
    ACALL    DELAY1S
    MOV    A,P3
    ANL    A,#0FFH
    CJNE    A,#0FFH,KEY_CE
    CLR    KEYCARD
    RET

KEY_CE:
 MOV     A,P3     ;直等到按鍵放下,則算作一次
 ANL     A,#0FFH
 CJNE    A,#0FFH,KEY_CE
    SETB    KEYCARD        ;真的有鍵按下,則置標(biāo)志位
    RET
DELAY1S:       ;延時(shí)函數(shù)
    MOV    R7,#10
D1:
    MOV    R6,#50
    DJNZ    R6,$
    DJNZ    R7,D1
    RET


ASCII: DB  0C0H,0F9H,0A4H,0B0H,099H
       DB  092H,082H,0F8H,080H,090H
       DB  088H,083H,0C6H,0A1H,086H
       DB  08EH,08CH,0BFH,0FFH


END

 

 



作者: admin    時(shí)間: 2011-3-12 21:28

不錯(cuò) 很牛啊


作者: yanxinjie88    時(shí)間: 2011-3-14 00:21
 學(xué)習(xí)了,很不錯(cuò),頂一個(gè)




歡迎光臨 (http://www.raoushi.com/bbs/) Powered by Discuz! X3.1