?? 999jishu.asm
字號:
;********************************************************************************
;6位數的計數器源程序,可以從0一直到999999,按p3.2計數,開機顯示000000 *
;.數碼管數據p0,數碼管控制p2口,按鍵p3.2口 *
;********************************************************************************
;* 日期: 2007-3-25 *
;* 版本: 3.0 *
;* 作者: 深圳學林電子有限公司 專業8051單片機教學站 *
;* 郵箱: sxj1974@163.com *
;* 網站: http://www.51c51.com http://www.8951.com 更多例程請登陸網站 *
;********************************************************************************
;* 硬件:此程序在本公司xlisp系列單片機實驗儀運行通過 *
;********************************************************************************
;* 【版權】 Copyright(C)深圳學林電子有限公司 www.51c51.com All Rights Reserved *
;* 【聲明】 此程序僅用于學習與參考,引用請注明版權和作者信息! *
;********************************************************************************
a_bit equ 20h ;個位寄存器
b_bit equ 21h ;10位寄存器
c_bit equ 22h ;百位寄存器
d_bit equ 23h
e_bit equ 24h
f_bit equ 25h
org 0000h
ajmp star
org 0020h
star: ;初始化把所有的位全部清零
mov a,#00h
mov a_bit,a
mov b_bit,a
mov c_bit,a
mov d_bit,a
mov e_bit,a
mov f_bit,a
stlop: acall display ;調用顯示
jb p3.2,stlop ;監測鍵盤,如果p3.2按下那么執行顯示
we: acall display ;顯示保持!
acall d1ms ;延時1ms避免鍵盤誤動作
jnb p3.2,we ;如果p3.2還沒有放開繼續延時
count: ;計算數據部分
inc a_bit ;個位加1
mov a,a_bit
cjne a,#10,stlop ;如果在10以內顯示
mov a_bit,#00h ;如果到了10則清除
inc b_bit ;10位加1
mov a,b_bit
cjne a,#10,stlop ;如果在10以內顯示
mov b_bit,#00h ;如果到了10則清除
inc c_bit ;百位加1
mov a,c_bit
cjne a,#10,stlop
mov c_bit,#00h
inc d_bit
mov a,d_bit
cjne a,#10,stlop
mov d_bit,#00h
inc e_bit
mov a,e_bit
cjne a,#10,stlop
mov e_bit,#00h
inc f_bit
mov a,f_bit
cjne a,#10,stlop
mov f_bit,#00h
ajmp stlop
display: ;顯示
mov dptr,#numtab ;送數據表
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -