久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索

C51單片機按鍵秒表程序求助

查看數: 2616 | 評論數: 7 | 收藏 0
關燈 | 提示:支持鍵盤翻頁<-左 右->
    組圖打開中,請稍候......
發布時間: 2020-1-4 10:32

正文摘要:

我用中斷按鍵加中斷計時器的方法去運行,但是加上按鍵就不好用,按鍵只能按一次,寄存器R7會賦值1,但是按第二次就不能外部中斷了,如果把按鍵全部去掉的話,秒表是能正常用的,但是加上按鍵秒表就一直顯示00,新手 ...

回復

ID:678057 發表于 2020-1-4 15:49
已解決
                        ORG                0000H
                        LJMP        START
                        ORG                0003H
                        LJMP        KEY
                        ORG                000BH
                        LJMP        T0_INT
//----------------------------------
//主程序:
                        ORG                0030H
START:                MOV                IE,#83H                        ;CPU開中斷,T0開中斷,外部中斷0打開
                        CLR                IT0                                ;設置電平觸發
                        MOV                R0,#00H                        ;個位數字
                        MOV                R1,#00H                        ;十位數字
                        MOV                R2,#00H                        ;判斷是否溢出標志
                        MOV                B,#00H
                        MOV                P0,#0C0H                ;初始
                        MOV                P2,#03H       
                        MOV                TMOD,#02H                ;T0方式2
                        MOV                TH0,#6                        ;計時器賦值
                        MOV                TL0,#6
                        MOV                R5,#39                        ;設置循環次數
                        MOV                R6,#100
                        MOV                R7,#00H                        ;按鍵次數
                        MOV                DPTR,#TAB_LED        ;指針指向段碼
                        CJNE        R7,#01H,$                ;等待鍵盤                       
RUN:                SETB        TR0                                ;啟動T0
LOOP:                MOV                A,R0                        ;顯示個位
                        MOVC        A,@A+DPTR                ;
                        MOV                P2,#02H                        ;
                        MOV                P0,A                        ;送段碼顯示
                        LCALL        DELAY_10MS                ;動態延時10ms
                        MOV                A,R1                        ;送十位
                        MOVC        A,@A+DPTR                ;顯示十位
                        MOV                P2,#01H                        ;
                        MOV                P0,A                        ;送段碼顯示
                        LCALL        DELAY_10MS                ;動態延時10ms
                        CJNE        R2,#00H,OVER        ;判斷是否溢出
                        MOV                A,B
                        CJNE        A,#00H,START
NEXT:                LJMP        LOOP                        ;循環
OVER:                MOV                P2,#00H                        ;關斷
                        LJMP        $
//----------------------------------
//共陽極段碼表:
TAB_LED:        DB                0C0H,0F9H,0A4H,0B0H,99H
                        DB                92H,82H,0F8H,80H,90H
//----------------------------------
//T0中斷:
T0_INT:                DJNZ        R5,INT_END               
                        MOV                R5,#39
                        DJNZ        R6,T0_INT
                        MOV                R6,#100
                        INC                R0                                 ;
                        CJNE        R0,#10,INT_END         ;判斷個位是否滿10
CLEAN1:                MOV                R0,#00H                         ;個位歸零
CLEAN2:                INC                R1                                 ;十位進一
                        CJNE        R1,#10,INT_END         ;判斷十位是否滿10
                        MOV                R1,#00H                         ;十位歸零
                        MOV                R2,#01H                         ;標志位置1
INT_END:        RETI
//----------------------------------
//鍵盤輸入:
KEY:                JNB                P3.2,$
                        INC                R7                                 ;R7加一
                        CJNE        R7,#02H,CLEAN_R7
                        CLR                TR0
                        LJMP        KEY_END
CLEAN_R7:        CJNE        R7,#03H,KEY_END
                        MOV                B,#01H                               
KEY_END:        RETI
//----------------------------------
//延時10ms:
DELAY_10MS:        MOV                R3,#20
L1:                        MOV                R4,#250
                        DJNZ        R4,$
                        DJNZ        R3,L1
                        RET
                        END










ID:678057 發表于 2020-1-4 14:20
大佬們救救我呀!!
ID:680894 發表于 2020-1-4 12:40
問題關鍵大家都在用C敲代碼,你整個匯編的代碼上來有多少人能看的懂,有幾個玩匯編的又在線?
ID:675483 發表于 2020-1-4 11:29
我這邊只有c語音程序,匯編語言的沒有,想要的話回復我,給你
ID:675483 發表于 2020-1-4 11:28
我這邊只有c語音程序資料
ID:678057 發表于 2020-1-4 10:41
R7我在SETB  TR0那里設置中斷,顯示是1,但是如果再在下邊一行設置直接就跑飛了,R7=71H
ID:678057 發表于 2020-1-4 10:32
求助大佬們啦,謝謝!

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩有码一区 | eeuss国产一区二区三区四区 | 综合久久av| 91麻豆精品国产91久久久更新资源速度超快 | wwww.xxxx免费 | 国产精品电影在线观看 | 中文字幕精品一区 | 中文字幕精品一区二区三区精品 | 色综合色综合色综合 | 国产精品久久久久无码av | 国产成人精品区一区二区不卡 | 成人一级视频在线观看 | 精品成人在线视频 | 一区二区三区四区在线视频 | 成人亚洲精品久久久久软件 | 91毛片网| 精品日韩电影 | 国产日韩精品一区 | 亚洲精品二区 | 欧美精品一区二区三区视频 | 国产精品亚洲二区 | 狼色网 | 精品99久久久久久 | 日本成人在线网址 | 国产目拍亚洲精品99久久精品 | 在线第一页| 日韩美香港a一级毛片免费 国产综合av | 国产精品国产三级国产aⅴ无密码 | 一区二区三区四区在线视频 | 久久久久久中文字幕 | 韩国av一区二区 | 国产精品一区二区久久 | 奇米超碰在线 | 玖玖综合网 | 日本午夜精品 | 欧美国产视频 | 狠狠干狠狠插 | 亚洲成人免费av | 国产人久久人人人人爽 | 国产欧美日韩在线观看 | 日韩国产一区二区 |