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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4084|回復: 9
收起左側

51單片機匯編程序時鐘 供電后,程序似乎卡住,求解

[復制鏈接]
ID:272432 發表于 2018-1-6 18:42 | 顯示全部樓層 |閱讀模式
P1口段選,P2口位選,P3.0-3.3調秒分時。供電后,程序似乎卡住,求解  
  1. ORG         00H                    JMP MAIN         
  2.                    ORG  0BH
  3.                 JMP TIM0
  4. MAIN:
  5.        MOV IE,#82H                ;使能定時器中斷
  6.            MOV TMOD,#01H           ;設置計數初始值,設置為4ms中斷一次
  7.            MOV TH0,#0F0H
  8.            MOV TL0,#60H
  9.            MOV R0,#00H                   ;1秒鐘計數器,250次后為1s
  10.            MOV 30H,#00H                   ;秒分時初始值00
  11.            MOV 31H,#00H
  12.            MOV 32H,#00H
  13.            MOV R1,#00H                   ;位選累計器
  14.            SETB TR0
  15. LOOP:                                           ;按鍵設置時分秒,循環掃描按鍵,否則執行中斷程序
  16.            JB P3.0,NOPRESS2         
  17.            CALL FILTER
  18.            MOV A,30H
  19.            ADD A,#01H
  20.            DA A
  21.            MOV 30H,A
  22.            CJNE A,#60H,NOPRESS1;等于60則清零
  23.            MOV 30H,#00H
  24. NOPRESS1:
  25.            JNB P3.0,$
  26.            CALL FILTER
  27. NOPRESS2:
  28.            JB P3.1,NOPRESS4
  29.            CALL FILTER
  30.            MOV A,31H
  31.            ADD A,#01H
  32.            DA A
  33.            MOV 31H,A
  34.            CJNE A,#60H,NOPRESS3;等于60則清零
  35.            MOV 31H,#00H
  36. NOPRESS3:
  37.            JNB P3.1,$
  38.            CALL FILTER
  39. NOPRESS4:
  40.            JB P3.2,LOOP
  41.            CALL        FILTER
  42.            MOV A,32H
  43.            ADD A,#01H
  44.            DA A
  45.            MOV 32H,A
  46.            CJNE A,#24H,NOPRESS5;等于24則清零
  47.            MOV 32H,#00H
  48. NOPRESS5:
  49.            JNB P3.2,$
  50.            CALL FILTER
  51.            JMP LOOP
  52. TIM0:
  53.            PUSH ACC
  54.            CJNE R0,#250,SCAN   ;等于250時說明到1秒,未滿則繼續掃描顯示
  55.            MOV A,#30H
  56.            ADD A,#01H
  57.            DA A
  58.            MOV 30H,A
  59.            CJNE A,#60H,INCSEC ;等于60時說明到一分
  60.            MOV A,31H
  61.            ADD A,#01H
  62.            DA A
  63.            MOV 31H,A
  64.            CJNE A,#60H,INCMIN ;等于60時說明到一小時
  65.            MOV A,32H
  66.            ADD A,#01H
  67.            DA A
  68.            MOV 32H,A
  69.            CJNE A,#24H,INCHR ;等于24說明到一天,清零時分秒寄存器
  70.            MOV 30H,#00H
  71.            MOV 31H,#00H
  72.            MOV 32H,#00H
  73. INCSEC:
  74.            JMP INCTIM
  75. INCMIN:
  76.            MOV 30H,#00H        ;滿60秒,清零秒存儲器
  77.            JMP INCTIM
  78. INCHR:
  79.            MOV 30H,#00H ;滿60分,清零分寄存器,秒存儲器
  80.            MOV 31H,#00H         
  81. INCTIM:
  82.            MOV R0,#00H  ;秒存儲器清零
  83. SCAN:
  84.            CJNE R1,#6,DISPLAY ;6位數碼管掃描值為6,則完成一次掃描
  85.            MOV R1,#00H                  ;清零掃描計數器,繼續掃描
  86.            JMP SCAN
  87. DISPLAY:
  88.            CJNE R1,#0,CHK1          ;秒低位顯示
  89.            MOV A,30H
  90.            ANL A,#0FH
  91.            MOV P2,#0DFH
  92.            JMP RELOAD
  93. CHK1:
  94.            CJNE R1,#1,CHK2          ;秒高位顯示
  95.            MOV A,30H
  96.            SWAP A
  97.            ANL A,#0FH
  98.            MOV P2,#0EFH
  99.            JMP RELOAD
  100. CHK2:
  101.           CJNE R1,#2,CHK3    ;分低位顯示
  102.            MOV A,31H
  103.            ANL A,#0FH
  104.            MOV P2,#0F7H
  105.            JMP RELOAD
  106. CHK3:
  107.            CJNE R1,#3,CHK4          ;分高位顯示
  108.            MOV A,31H
  109.            SWAP A
  110.            ANL A,#0FH
  111.            MOV P2,#0FBH
  112.            JMP RELOAD
  113. CHK4:
  114.            CJNE R1,#4,CHK5           ;時低位顯示
  115.            MOV A,32H
  116.            ANL A,#0FH
  117.            MOV P2,#0FDH
  118.            JMP RELOAD
  119. CHK5:
  120.            CJNE R1,#5,RELOAD ;時高位顯示
  121.            MOV A,32H
  122.            SWAP A
  123.            ANL A,#0FH
  124.            MOV P2,#0FEH
  125. RELOAD:
  126.            MOV P1,A                         ;掃描顯示
  127.            INC R0
  128.            INC R1
  129.            MOV TH0,#0F0H
  130.            MOV TL0,#60H
  131.            POP ACC
  132.            RETI
  133. FILTER:
  134.        MOV R6,#60H
  135. D1:           MOV R7,#248
  136.            DJNZ R7,$
  137.            DJNZ R6,D1
  138.            RET
  139.            END
復制代碼


秒分時。供電后,程序似乎卡住,求解

運行時的圖片_1.png
數字表_1.png

評分

參與人數 1黑幣 +5 收起 理由
BH2RSJ + 5

查看全部評分

回復

使用道具 舉報

ID:123289 發表于 2018-1-6 20:42 | 顯示全部樓層
1、R0何時+1?
2、如果T0中斷發生在:
NOPRESS4:
           JB P3.2,LOOP
           CALL        FILTER
           MOV A,32H
           ADD A,#01H...........發生在這里

中斷返回后:
           DA A
           MOV 32H,A

這時的 DA A之后能保證正確碼?

3、當秒會不會=60H、61H、62H呢?
回復

使用道具 舉報

ID:123289 發表于 2018-1-6 20:45 | 顯示全部樓層
寫程序,先畫個框圖,框圖走通了再寫程序。
這么點邏輯關系都搞不定,復雜一些怎么辦?學會畫框圖很重要!.
回復

使用道具 舉報

ID:123289 發表于 2018-1-6 20:46 | 顯示全部樓層
以分為例:
何時清0?何時+1?
回復

使用道具 舉報

ID:111634 發表于 2018-1-6 21:18 | 顯示全部樓層
本帖最后由 zl2168 于 2018-1-6 21:28 編輯

實例93  具有校正功能的時鐘1302(LED數碼管顯示)
Proteus仿真一下,確認有效。
實例93 帶校正時分秒的時鐘1302(6位LED數碼管顯示).rar (732.75 KB, 下載次數: 5)
回復

使用道具 舉報

ID:111634 發表于 2018-1-6 21:30 | 顯示全部樓層
本帖最后由 zl2168 于 2018-1-6 21:32 編輯

實例94  模擬電子鐘(由80C51定時器產生秒時基)
Proteus仿真一下,確認有效。
實例94 模擬電子鐘(由80C51定時器產生秒時基).rar (43.05 KB, 下載次數: 5)
回復

使用道具 舉報

ID:272432 發表于 2018-1-7 11:54 | 顯示全部樓層
yzwzfyz 發表于 2018-1-6 20:42
1、R0何時+1?
2、如果T0中斷發生在:
NOPRESS4:

1,R0是每4毫秒加1,也就是每中斷1次就加一,
2,執行中斷時,我將累加器的值壓入了堆棧,中斷結束POP ACC,彈棧
3,秒不會等于大于60H,CJNE A,60H,INC MIN此時MOV 30H,00對秒請0了
回復

使用道具 舉報

ID:272432 發表于 2018-1-7 11:56 | 顯示全部樓層
yzwzfyz 發表于 2018-1-6 20:45
寫程序,先畫個框圖,框圖走通了再寫程序。
這么點邏輯關系都搞不定,復雜一些怎么辦?學會畫框圖很重要!. ...

老師,我是初學,受教了
回復

使用道具 舉報

ID:123289 發表于 2018-1-7 12:50 | 顯示全部樓層
看來你還不糊糊。
把你回答的,補寫到中斷服務程序中去。
另外DA A是依據PSW中的半進和進位標記進行調整的,你沒有保護PSW!!!
我回你的三點在中斷務程序中沒有看到。

這與你是不是初學無關,能理解、邏輯清楚就好。初學不可以作借口,態度要正確。
  
回復

使用道具 舉報

ID:272432 發表于 2018-1-7 13:14 | 顯示全部樓層
yzwzfyz 發表于 2018-1-7 12:50
看來你還不糊糊。
把你回答的,補寫到中斷服務程序中去。
另外DA A是依據PSW中的半進和進位標記進行調整 ...

保護程序標志位?什么意思啊,我回答的都是中斷程序中有的啊,搞不清楚了。。。。無知確實不是借口,但我真不清楚
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 日韩视频精品在线 | 美女激情av | 99热这里有精品 | 欧美日韩大陆 | 91网在线播放| 久久久精品一区 | julia中文字幕久久一区二区 | 正在播放国产精品 | 免费观看毛片 | 日日艹夜夜艹 | 99九九视频 | 91精品在线播放 | 日日碰狠狠躁久久躁96avv | 欧美日韩成人影院 | 国产一级在线观看 | 一区在线视频 | 日韩在线免费视频 | 羞羞视频在线观看网站 | 夜夜艹天天干 | 国产成人综合亚洲欧美94在线 | 免费精品久久久久久中文字幕 | 国产精品a久久久久 | 国产精品久久久久久久久久免费看 | 国产免费一区 | 成人中文网 | 亚洲精品视频在线播放 | 欧美成视频在线观看 | 精品久久久久久久人人人人传媒 | 在线中文字幕av | 9porny九色视频自拍 | 欧美精品综合 | 久久国产精品一区二区 | 最近免费日本视频在线 | 日韩电影在线一区 | 国产精品综合色区在线观看 | 日本一区不卡 | av一区二区三区在线观看 | 精品视频一区二区三区四区 | 国产一区二区三区免费 | 亚洲精品久久久蜜桃 | 欧美中文字幕在线观看 |