super man的笔记 https://passport2.21ic.com/?228812 [收藏] [复制] [RSS] 2012期待龙子的诞生

日志

PIC16F877A初学之定时器中断篇

已有 938 次阅读2006-6-15 09:03 |系统分类:单片机


程序功能:让RC口的八个灯亮65MS灭65MS采用定时器0中断来完成


程序如下:


 tmr0     equ       01h
 pcl       equ       02h
status    equ       03h
option_reg equ      81h
   intcon     equ      0bh
   portc      equ      07h
    trisc      equ      87h
tmr0_b     equ      0
    w          equ      0
     f          equ      1
  rp0        equ      5
   t0if       equ      2
w_temp     equ      7fh
portc_b    equ      23h
flag       equ      24h        
          org       0000h
          nop
          goto      main
          org       0004h
 tmr0_serv
          movwf     w_temp
          bcf       intcon,t0if
          movlw     tmr0_b
          movwf     tmr0
          btfss     flag,0
          goto      loop0
          bcf       flag,0
          goto      loop1
loop0
          bsf       flag,0
          movlw     0ffh
          movwf     portc
          goto      retfie_b
loop1    
          movlw     00h
          movwf     portc
retfie_b
          movf      w_temp,w
          retfie
      main 
          bsf      status,rp0
          movlw    0
          movwf    trisc
          movlw    07h
          movwf    option_reg
          bcf      status,rp0
          movlw    00h
          movwf    portc
          movlw    0a0h
          movwf    intcon
          bcf      intcon,t0if
          movlw    tmr0_b
          movwf    tmr0
          goto     $
          end
 以上程序已经运行通过


以后的笔记中会将外部中断  RB电平变化中断的程序放到BLOG上来:)


路过

鸡蛋

鲜花

握手

雷人

评论 (0 个评论)