用单片机设计电子时钟的汇编语言

要求开机时显示12:00:00,并且有时分秒的调整按钮!谢谢啦

第1个回答  2010-05-11

我这里有一个AVR的 AT90S2313 的样板 

你可以参考  是汇编的  不过没有对秒进行调节

http://hi.baidu.com/19014299/blog/item/78943ff5fcdfab24bc3109bb.html

参考资料:http://hi.baidu.com/19014299/blog/item/78943ff5fcdfab24bc3109bb.html

第2个回答  2010-05-12
START:
MOV P3,#0FFH
MOV DPTR,#TABLE
MOV A,#0
MOV R0,A
MOV R1,A
MOV R2,A

LOOP:
MOV R3,#50
ACALL DISPLAY
INC R0
CJNE R0,#60,LOOP
MOV R0,#0
INC R1
CJNE R1,#60,LOOP
MOV R1,#0
INC R2
CJNE R2,#24,LOOP
MOV R2,#0
AJMP LOOP
DISPLAY:
MOV A,R2
MOV B,#10
DIV AB
MOVC A,@A+DPTR
CPL A
MOV P2,A
CLR P3.7
ACALL DELAY
SETB P3.7

MOV A,B
MOVC A,@A+DPTR
CPL A
MOV P2,A
CLR P3.6
ACALL DELAY
SETB P3.6

MOV A,#01000000B

MOV P2,A
CLR P3.5
ACALL DELAY
SETB P3.5

MOV A,R1
MOV B,#10
DIV AB
MOVC A,@A+DPTR
CPL A
MOV P2,A
CLR P3.4
ACALL DELAY
SETB P3.4

MOV A,B
MOVC A,@A+DPTR
CPL A
MOV P2,A
CLR P3.3
ACALL DELAY
SETB P3.3

MOV A,#01000000B

MOV P2,A
CLR P3.2
ACALL DELAY
SETB P3.2

MOV A,R0
MOV B,#10
DIV AB
MOVC A,@A+DPTR
CPL A
MOV P2,A
CLR P3.1
ACALL DELAY
SETB P3.1

MOV A,B
MOVC A,@A+DPTR
CPL A
MOV P2,A
CLR P3.0
ACALL DELAY
SETB P3.0

DJNZ R3,DISPLAY
RET
DELAY:
MOV R5,#100
DEL1: MOV R6,#10
DJNZ R6,$
DJNZ R5,DEL1
RET
TABLE:
DB 0C0H,0F9H,0A4H,0B0H
DB 99H,92H,82H,0F8H
DB 80H,90H,88H,82H
DB 0C6H,0A1H,86H,8EH
END
修改下就好