导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→好简单的程序(实时时钟程序)

* 69683: 好简单的程序(实时时钟程序)

   jola 
jola发表的帖子 

 好简单的程序(实时时钟程序)
ORG     0000H    ;程序执行开始地址
LJMP    start    ;跳至START执行
ORG     0003H    ;外中断0中断入口地址
RETI             ;中断返回(不开中断)
ORG     000BH    ;定时器T0中断入口地址
RETI             ;中断返回(不开中断)
ORG     0013H    ;外中断1中断入口地址
RETI             ;中断返回(不开中断)
ORG     001BH    ;定时器T1中断入口地址
reti          ;中断返回(不开中断)
ORG     0023H    ;串行口中断入口地址
RETI  
start:
mov a,#0ffh
mov p2,a
mov a,p2
anl a,#0fh
mov dptr,#tab
movc a,@a+dptr
mov p1,a
clr p3.0
jmp start

tab: db 48h,0deh,64h,0c4h,0d2h,0c1h,41h,0dch,40h,0c0h,10h,00h,29h,08h,21h,31h
end


;delay:
;mov r7,#0feh
;de1:mov r6,#32h
;de2:nop
;nop
;djnz r6,de2
;djnz r7,de1
;ret
;end


;;;修正版

ORG     0000H    ;程序执行开始地址
LJMP    start    ;跳至START执行
ORG     0003H    ;外中断0中断入口地址
RETI             ;中断返回(不开中断)
ORG     000BH    ;定时器T0中断入口地址
RETI             ;中断返回(不开中断)
ORG     0013H    ;外中断1中断入口地址
RETI             ;中断返回(不开中断)
ORG     001BH    ;定时器T1中断入口地址
ljmp continue            ;中断返回(不开中断)
ORG     0023H    ;串行口中断入口地址
RETI             ;中断返回(不开中断)
start:  mov r4,#08h
 mov r0,#30h
clear: mov @r0,#00h
 inc r0
 djnz r4,clear
       MOV SP,#68H
       MOV R4,#14H      
      MOV TH1,#3cH
      MOV TL1,#0B0H
      MOV TMOD,#10H     
      SETB TR1
      mov ip,#08h
      mov ie,#88h
loop:lcall disp
      jmp loop


CONTINUE:PUSH ACC                         ;实时时钟
         PUSH PSW
  CLR ET1
         MOV TH1,#3cH
         MOV TL1,#0B0H  
  DEC R4
  mov a,r4
  JNZ RETURN
  MOV R4,#14H
  INC 30H
  MOV A,30H
  CJNE A,#0AH,RETURN
  MOV 30H,#00H
  INC 31H
  MOV A,31H
  CJNE A,#09H,RETURN
  MOV 31H,#00H
  INC 32H
  MOV A,32H
  CJNE A,#0AH,RETURN
  MOV 32H,#00H
  INC 33H
  MOV A,33H
  CJNE A,#06H,RETURN
  MOV 33H,#00H         
RETURN:pop psw
      pop acc
      setb et1     
      reti

disp:
      CLR TI
      MOV A,30H
      MOV DPTR,#TAB
      MOVC A,@A+DPTR
      MOV SBUF,A
      JNB TI,$
      CLR TI
      SETB P1.0
      LCALL DELAY
      CLR P1.0
      MOV A,31H
      MOV DPTR,#TAB
      MOVC A,@A+DPTR
      MOV SBUF,A
      JNB TI,$
      CLR TI
      SETB P1.1
      LCALL DELAY
      CLR P1.1
      RET

TAB: DB 0EDH,24H,0CEH,6EH,27H,6BH,0EBH,2CH,0EFH,6FH

delay:
mov r7,#0eh
de1:mov r6,#32h
de2:nop
nop
djnz r6,de2
djnz r7,de1
ret
end



发表时间:2004年12月20日22:05:16

  
回复该帖

本主题共有 1 帖,分页:>>>>>该主题的所有内容[1]条

 *树形目录 只列出部分跟帖的标题以及简单的摘要信息 该主题的部分跟帖如下:

[上一篇帖子]:看过来[quote][b]以下是引用[i]kic在2004-12-19 4:41:25[/
[下一篇帖子]:资料备份----------------------------------------------