⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 time.asm

📁 串口通信 频率测量 EEPROM读写程序
💻 ASM
字号:
       
          .include "c:\appnotes\8515def.inc"
          .org $000
           rjmp main
           .org $007
            rjmp timer0
           .org $008
           rjmp SPI_TXC    
          .org $00d
     MAIN: ldi r17,$5f
           out SPL,r17
           ldi r17,$02
           out SPH,r17  ;setup STACK pointerin internal SRAM so that
                       ;RCALL and interruptsubroutine can use it for
                       ; return
           ldi r25,$80
           out SREG,r25 ;enable globle interrupt          
           ldi r17,$08  
           out WDTCR,r17;enable watchdog
           wdr          ;reset wachdog
           ldi r17,$02
           out TIMSK,r17;enable timer0 overflow                 
           ser r16
           out DDRB,r16 ;portb is output mode and turn off all LEDS                           
           sbi DDRB,5    ;set MOSI(PB.5) output mode whwn SPI is master.
           sbi DDRB,7    ;set SCK (PB.7) output mode when SPI is master
           sbi DDRB,4    ;set SS output mode so that this byte cann't
                         ;influence SPI master work mode .
           ldi r17,0b11111100
           out SPCR,r17  ;set SPIE,SPE,MSTR,CPOL,CPHA ,reset the others   
           ldi r21,$73   ;display "P"
           out SPDR , r21
           ldi r17,$01
           out PORTB,r17 ;PB.0 output 1 ,the rightest LED display "P"  
           rcall one_minute           
           ldi r21,$00                      
           out SPDR,r21 ; turn off "P" at the rightest LED;            
           ldi r17,$01
           out PORTB,r17 ;PB.0 output 1 ,the rightest LED display "P"  
           rcall one_minute
           rjmp main                          
   SPI_TXC:sbi SPCR,4
           reti
   timer0: inc r20
           reti
 one_minute:ldi r17,$00
           out TCNT0,r17;timer0  up count FF  
           ldi r17,$05
           out TCCR0,r17;CK/1024 and star counting         
           clr r20
           clr r21
    disp:  wdr                       
           cpi r20,255 ; if timer0 overflow shut down "P" display                      
           breq again
           rjmp disp
    again: inc r21
           cpi r21,7    
           breq return
           clr r20
           rjmp disp
   return: ret

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -