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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 8234|回復: 7
打印 上一主題 下一主題
收起左側

基于51單片機的99-00倒計時秒表

[復制鏈接]
跳轉到指定樓層
樓主
;有位網友寫了一個倒計時秒表的程序,程序中的變量,采用了逐次加一的方法。;變量加一,怎么能夠倒計時呢?;原來,程序中段碼的排列次序,反過來了。;于是:;當變量是0的時候,查找出來9的段碼,送去顯示;;當變量是1的時候,查找出來8的段碼,送去顯示;;……;當變量是9的時候,查找出來1的段碼,送去顯示。

;更改一下七段碼表的次序,竟然可以使程序由正計時,變成倒計時!;構思極為巧妙。;PROTEUS 仿真截圖如下:


;程序使用匯編語言編寫,原程序的結構有些凌亂,沒有達到預期的效果。;做而論道稍加整理,可以正常工作了,全部程序如下。;硬件中,設置了一個按鍵,用以控制計時器的啟動、暫停和復位。

SECOND  EQU    30H
TCOUNT  EQU    31H
KCOUNT  EQU    32H
KEY     BIT    P3.7
    ORG   00H
    SJMP  START
    ORG   0BH
    LJMP  T0_INT
;----------------------------------------
START:
    MOV  P0, #6FH     ;開始, 數碼管顯示"99"
    MOV  P2, #6FH

    MOV  TMOD, #01H   ;T0定時方式1
    MOV  TH0, #(65536 - 50000) / 256
    MOV  TL0, #(65536 - 50000) MOD 256
    MOV  IE, #82H

    MOV  SECOND, #0
    MOV  TCOUNT, #0
    MOV  KCOUNT, #0
;----------------------------------------
K0:
    JB   KEY, $       ;等待按鍵按下
    CALL DELAY        ;延時
    JB   KEY, K0      ;沒有按下,就是抖動
    JNB  KEY, $       ;等待按鍵松開
    INC  KCOUNT       ;按鍵次數值加1
;----------------------
    MOV  A, KCOUNT    ;判斷按鍵次數
K1:
    CJNE A, #1, K2
    SETB TR0          ;第1次按鍵, 啟動定時器
    JMP  K0
;----------------------
K2:
    CJNE A, #2, START
    CLR  TR0          ;第2次按鍵, 關閉定時器
    JMP  K0
;----------------------------------------
T0_INT:
    MOV  TL0, #(65536 - 50000) MOD 256
    MOV  TH0, #(65536 - 50000) / 256
    INC  TCOUNT
    MOV  A, TCOUNT
;    CJNE A, #2, T0_END ;是否計0.1秒?
    CJNE A, #10, T0_END ;2, 速度太快,不便觀察,暫用10
    MOV  TCOUNT, #0
    INC  SECOND
    MOV  A, SECOND
    CJNE A, #100,  DISP ;是否夠10秒?
    MOV  SECOND, #0
DISP:
    MOV  DPTR, #TABLE
    MOV  A, SECOND
    MOV  B, #10
    DIV  AB
    MOVC A, @A+DPTR     ;顯示時間
    MOV  P0, A
    MOV  A, B
    MOVC A, @A+DPTR
    MOV  P2, A
T0_END:
    RETI        
;----------------------------------------
TABLE:
;9~0的段碼, 反序排序。使用反序,可顯示倒計時
    DB   6FH, 7FH, 07H, 7DH, 6DH
    DB   66H, 4FH, 5BH, 06H, 3FH
;0~9的段碼, 正序
;    DB   3FH, 06H, 5BH, 4FH, 66H
;    DB   6DH, 7DH, 07H, 7FH, 6FH
;----------------------------------------
DELAY:
    MOV  R6, #20
D1: MOV  R7, #250
    DJNZ R7, $
    DJNZ R6, D1
    RET
;----------------------------------------
    END



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂 踩
回復

使用道具 舉報

來自 4#
ID:308903 發表于 2018-7-16 16:59 | 只看該作者
用以控制計時器的啟動、暫停和復位:::::::::::: 從上面程序分析,K0 是用來計數,K1 是用來啟動定時器,K2是用來關掉定時器,那前面二次還好理解,第一次按下,計數一,且打開定時,也就是倒計時開始。那么第二次按下,計數二,并且關掉定時,那倒計時定住不走。 要是,到了第三次按下,計數清零,倒計時復位99...., 也就是說,暫停之后,不是繼續倒計時,而是復位了了。

嗯準確點就是  啟動,停止,復位。  三個功能

不知道分析的對不對,盯了一下午,眼花頭暈了

評分

參與人數 1黑幣 +60 收起 理由
admin + 60 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

沙發
ID:308903 發表于 2018-7-16 08:37 | 只看該作者
我喜歡匯編....謝謝樓主
回復

使用道具 舉報

板凳
ID:372341 發表于 2018-7-16 10:19 | 只看該作者
謝謝樓主
回復

使用道具 舉報

5#
ID:308903 發表于 2018-7-18 16:56 | 只看該作者
PS: 程序一個個打出來仿真了下,有個注意點提醒下在看的同學們:=======
TO_INT:
。。。。。。。。。

;    CJNE A, #2, T0_END ;是否計0.1秒?
    CJNE A, #10, T0_END ;2, 速度太快,不便觀察,暫用10
。。。。。。。。。
========
這里面,選  CJNE A, #2, T0_END    才是按秒倒數,所以,用的時候,把前面的冒號去掉
下面那句, CJNE A, #10, T0_END    應該是放慢5倍來倒減,即5秒減一個數

另外,不知道為啥,個人遇到的問題,望知道的同學解惑下

MOV        TH0,#(65536 - 50000) / 256
MOV        TL0,#(65536 - 50000) MOD 256


賦初值 的語句,竟然在proteus 13 的自帶軟件中編譯不了,而在KEIL 中可以編譯





微信圖片編輯_20180718165213.jpg (9.27 KB, 下載次數: 64)

說超出范圍...

說超出范圍...

評分

參與人數 1黑幣 +80 收起 理由
admin + 80 回帖助人的獎勵!

查看全部評分

回復

使用道具 舉報

6#
ID:308903 發表于 2018-7-19 09:33 | 只看該作者
今天又重新仿真了下,發現,昨天說錯了...., CJNE A, #2, T0_END  是記 0.1秒  CJNE A, #10, T0_END  記1秒....額,為啥呢,難道晶振選錯了? 初值付錯了?
回復

使用道具 舉報

7#
ID:308903 發表于 2018-7-19 09:54 | 只看該作者
但是,就個位在變,十位一直不動
回復

使用道具 舉報

8#
ID:741432 發表于 2020-5-13 11:39 | 只看該作者
tcount是代表什么?
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 天天射中文 | 一区二区三区免费 | 欧美日韩电影一区二区 | 免费成年网站 | 黄色免费网址大全 | 亚洲一区中文字幕在线观看 | 国产一级电影在线 | 欧美一区二区三区在线播放 | 久久久久久久久久影视 | 成人免费视频一区 | 91一区二区三区在线观看 | 91久久久久久久久久久 | jlzzjlzz国产精品久久 | 免费在线看黄 | 中文字幕丁香5月 | 国产午夜精品久久久 | 日韩欧美一区二区三区 | 91免费电影 | 久久99精品视频 | 91美女在线 | 久久久久国产精品一区 | 免费一区二区 | 亚洲日韩中文字幕一区 | 日韩在线中文字幕 | 在线视频一区二区三区 | 久久久精品视频一区二区三区 | 亚洲精品福利在线 | 欧美黑人激情 | 亚州午夜精品 | 久久久久久久久中文字幕 | 国产成人高清成人av片在线看 | 日本超碰 | 三级高清 | www.久久久 | 在线看片网站 | 国产激情视频网站 | 91成人免费电影 | 国产999精品久久久影片官网 | 狠狠操狠狠操 | 古装三级在线播放 | 97人人超碰 |