;按鍵控制練習, 按P3.2(INT0), P2顯示值加1 buffer equ 30H mov buffer,#0 ;設定初值為0 check: jb P3.2,$ ;檢查P3.2是否為1(沒有按),若是停在此行 mov R5,#1 ;延遲 call delay jb p3.2,check ;判斷是否已變成1, 若P3.2=1表示剛才為彈跳訊號, 跳回去重新檢查 inc buffer ;buffer內的值加1 mov a,buffer ;複製至累加器 cpl a ;反向 mov p2,a ;顯示於P2 wait: jb p3.2,check ;等按鍵放開(P3.2=1) jmp wait delay: mov r6,#100 del: mov r7,#200 djnz r7,$ djnz r6,del djnz r5,delay ret end