功能:51單片機用一位數碼管循環顯示0-9,A-f ,十六位字,變換間隔為一秒 程序:主要使用查表的方法(從程序存儲器里裝載數據) ORG 00H START: SETB P2.7;打開位選鎖存器 MOV P0,#0FEH;載入位選信號,第一位顯示 CLR P2.7;關閉位選鎖存器 MOV R0,#0;這一句和下一句是將A清零操作(初始化) LOOP: MOV A,R0;將A清零操作 MOV DPTR,#TAPE ;裝載表頭 MOVC A,@A+DPTR;查表取數據 SETB P2.6;打開段選鎖存器 MOV P0,A;輸出數據到P0口 CLR P2.6;關段選鎖存器 CALL DELAY;延時一秒 INC R0;將R0自加一(準備取下一表頭數據) CJNE R0,#16,LOOP;比較指令,看否取到了十六位否 則繼續取表數據 JMP START;跳到"START開始 DELAY:MOV R5,#50;延時一秒子程序 D1:MOV R6,#100 D2:MOV R7,#100 DJNZ R7,$ DJNZ R6,D2 DJNZ R5,D1 RET;子程序返回 TAPE: DB 3FH,6H,5BH,4FH;表頭 DB 66H,6DH,7DH,7H DB 7FH, 6FH,77H,7CH DB 39H,5EH,79H,71H END ;結束