久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 按鍵計數器

按鍵計數器

作者: 時間:2011-02-25 來源:網絡 收藏
知識要點:理解熟悉散轉結構的程序

;運行結果:按P3.2或3.3(低4位的任意一個鍵盤)第一位數碼管加1直到9循環

; 開始顯示0把P3送OFH,判斷有沒有按鍵,沒有則反復循環,有按R0加1,如到10

;那么則清除, 最后根據R0的值散轉.

ORG 0000H;

LJMP MAIN;程序開始

ORG 030H;

MAIN: MOV P0,#028H;數碼管顯示0

clr p2.1 ;打開第一個數碼管

MOV R0,#00H;r0送0fh

ST: MOV P3,#0FH;p3 送0fh

MOV A,P3;

CJNE A,#0FH,F1;如果p3口的值等于0f,那么按鍵沒有按,

ACALL DEL;

AJMP ST;繼續檢測

F1: ACALL DEL;

CJNE A,#0FH,F2;再次判斷有沒有按

AJMP ST;繼續檢測

F2: INC R0;r0加1

CJNE R0,#0AH,F3;如果r0等于10轉道f3;OAH就是10, 到這里轉移重新

MOV R0,#00H;

F3: MOV DPTR,#JPTAB;取地址

MOV A,R0;

CLR C;清除進位

RLC A;a的內容右移

JNC NADD;判斷有沒有進位, 有向下無到NDDA

INC DPH;有進位DPH加1

NADD: JMP @A+DPTR;根據A的內跳轉到PR1,PR2....

JPTAB: NOP;

NOP;

AJMP PR1;

AJMP PR2;

AJMP PR3;

AJMP PR4;

AJMP PR5;

AJMP PR6;

AJMP PR7;

AJMP PR8;

AJMP PR9;

DEL: MOV R7,#04H;延時子程序

DEL1: MOV R6,#0FFH;

DEL2: MOV R5,#01FH;

DEL3: DJNZ R5,DEL3;

DJNZ R6,DEL2;

DJNZ R7,DEL1;

RET;

PR1: MOV P0,#7eH;顯示1

ACALL DEL;

AJMP ST;

PR2: MOV P0,#0a2H;顯示2

ACALL DEL;

AJMP ST;

PR3: MOV P0,#62H;顯示3

ACALL DEL;

AJMP ST;

PR4: MOV P0,#74H;顯示4

ACALL DEL;

AJMP ST;

PR5: MOV P0,#61H;顯示5

ACALL DEL;

AJMP ST;

PR6: MOV P0,#21H;

ACALL DEL;

AJMP ST;

PR7: MOV P0,#7aH;

ACALL DEL;

AJMP ST;

PR8: MOV P0,#20H;

ACALL DEL;

AJMP ST;

PR9: MOV P0,#60H;

ACALL DEL;

AJMP ST;

END

程序在倚天版運行的狀態按鍵顯示數字2

程序在倚天版運行的狀態按鍵顯示數字4



評論


相關推薦

技術專區

關閉