新闻中心

EEPW首页 > 嵌入式系统 > 计时中断与外部中断同时存在实验

计时中断与外部中断同时存在实验

——
作者:时间:2007-11-02来源:网络收藏
执行结果: 利用计时方式,使8只LED灯每隔1s左移一次,当外部P3.2出现时8个LED灯闪烁5次,闪烁完后返回主运行。




本实验原如下:

;计时与外部同时存在实验
;*****************************************************
;* Date : 2004.4.20 --------------------------------------------------*
;* Support Mb:020-34007281 E-mail:c51cn@163.com          -------*
;* Create by :dengdewu   http://www.c51.cn  更多例程请登陆网站*
;* 网站学习资料同步更新,敬请新老朋友随时关注 --*
;*****************************************************

    ORG    0000H
    JMP    DDW
    ORG    0003H
    JMP    EXT
    ORG    000BH
    JMP    TIM
DDW: MOV   SP,#70H
     MOV   TMOD,#00000001B
     MOV   TH0,#HIGH(65536-10000)
     MOV   TL0,#LOW(65536-10000)
     SETB  TR0
     MOV   IE,#10000011B
     MOV   IP,#00000001B
     MOV   R5,#100
     MOV   R1,#0FEH
     JMP   $
TIM: PUSH  ACC
     PUSH  PSW
     MOV   TH0,#HIGH(65536-10000)
     MOV   TL0,#LOW(65536-10000)
     DJNZ  R3,LOOP
     MOV   R3,#100
     MOV   A,R1
     MOV   P1,A
     RL    A
     MOV   R1,A
LOOP: POP  PSW
     POP   ACC
     RETI
EXT: PUSH  ACC
     PUSH  PSW
     MOV   A,#00
     MOV   R2,#10
LOOP3:MOV  P1,A
     CALL  DELAY
     CPL   A
     DJNZ  R2,LOOP3
     POP   PSW
     POP   ACC
     RETI
DELAY:MOV  R5,#20
D1: MOV    R6,#20
D2: MOV    R7,#248
    DJNZ   R7,$
    DJNZ   R6,D2
    DJNZ   R5,D1
    RET
    END
linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论


相关推荐

技术专区

关闭