下載手機(jī)汽配人

數(shù)碼管顯示0到9,用定時器延時,為什么只顯示0.

代碼如下: ORG 0010HMAIN: MOV TMOD,#10H;選擇方式1 MOV TH1,#3CH ; MOV TL1,#0B0H ; MOV P0,#0; MOV DPTR,#TAB; 傳遞表頭地址 MOV R6,#0; 負(fù)責(zé)記錄輸出的計數(shù)器 MOV A,R6;START: CLR P1.0; P1.0置0 CLR P2.7;P2.7置0 MOV R5,#50; 負(fù)責(zé)中斷的計數(shù)器 MOVC A,@A+DPTR; 查表 MOV P0, A; MOV A, R6; 負(fù)責(zé)記錄輸出的計數(shù)器LOOP: SETB EA; EA置1 SETB ET1; ET1置1 SETB TR1; LCALL BRT1; NEXT: DJNZ R5,LOOP; INC A; MOV R6,A; SETB P1.0 CJNE A,#10,START; SJMP MAIN;BRT1: MOV TH1, #3CH; 定時器重置 MOV TL1, #0B0H; CPL P3.0; RETI; TAB: DB 0C0H DB 0F9H DB 0A4H DB 0B0H DB 099H DB 092H DB 082H DB 0F8H DB 080H DB 090H END
提問者:網(wǎng)友 2017-06-15
最佳回答
定時器中斷不是你那樣寫的。定時中斷滿足條件時,自動進(jìn)入中斷,而不能用LCALL調(diào)用。這樣:ORG 00HAJMP 30HORG 1BHAJMP BRT1MAIN:... 另外 ,你的程序其它地方太明白,計數(shù)R6什么用的?
回答者:網(wǎng)友
產(chǎn)品精選
搜索問答
還沒有汽配人賬號?立即注冊

我要提問

汽配限時折扣

本頁是網(wǎng)友提供的關(guān)于“數(shù)碼管顯示0到9,用定時器延時,為什么只顯示0.”的解答,僅供您參考,汽配人網(wǎng)不保證該解答的準(zhǔn)確性。