答案:C语言的我这里有。
以下是24倒计时的程序。你修改TABLE: 中的数据内容就可以达到你的要求的了。里面用到了两片7447芯片。。。
ORG 0000h
AJMP START
ORG 0030H
START: CLR P3.1 ;D1亮
JB P3.7,START ;按下K1倒计时启动
SETB P3.1 ;D1灭
CLR P3.0 ;D2亮
MOV TMOD,#01H ;设定时器TIMER0工作在模式1
MOV DPTR,#TABLE
NEXT: MOV A,#00H
MOVC A,@A+DPTR
MOV P1,A
MOV R3,#20 ;延时1秒
LCALL DELAY
INC DPTR ;数据指针加1
CJNE A,#0FFH,NEXT
MOV P1,#0FFH
SETB P3.0
LJMP START
; ****延时0.5秒子程序****
DELAY: SETB TR0 ;起动TIMER0开始计时
AGAIN: MOV TL0,#LOW(65536-50000) ;设定时器TL0的值
MOV TH0,#HIGH(65536-50000) ;设定时器TH0的值
LOOP2: JBC TF0,LOOP3 ;判断TF=1?,是则跳转至LOOP3,并清除TF0
JMP LOOP2 ;TF0不为1则跳转至LOOP2
LOOP3: DJNZ R3,AGAIN ;R3是否为0?不是则跳转至AGAIN
CLR TR0 ;是则停止TIMER0计数
RET
;*****显示数码表*****
TABLE:
DB 24H,23H,22H,21H,20H,19H,18H,17H,16H,15H,14H,13H
DB 12H,11H,10H,09H,08H,07H,06H,05H,04H,03H,02H,01H
DB 0FFH ;结束码
END
其他:参考: http://hi.zhaoxi.net/%D7%F6%B6%F8%C2%DB%B5%C0/blog/item/2ece818af7a3f20bc9fc7aca.html
上一个:谁有会单片机的汇编TLC549程序,只需采集数据的部分(不需要数据处理的),但确实能用的,谢谢,跪求!!!
下一个:用汇编语言编当x>0时,y=1;当x=0时,y=0;当x<时,y=-1